/* ONE SKY: composition for phones and small tablets; desktop stays in shared.css. */
.mobile-inquiry,.swipe-hint{display:none}
@media(max-width:900px){
 :root{--mobile-gutter:clamp(20px,4vw,32px)}
 html{scroll-padding-top:90px}
 .wrap,.global-wrap{width:calc(100% - var(--mobile-gutter)*2)}
 .section-inner{padding-inline:var(--mobile-gutter)}
 main,main section,main figure,main article,.inquiry-copy,.inquiry-form{min-width:0}
 main p,main h1,main h2,main h3,main li,main label,main dd,main figcaption{overflow-wrap:anywhere}
 .global-header{position:sticky;top:0;background:#000;z-index:30}
 .global-header .global-wrap{min-height:72px}
 .global-brand{width:190px}
 .menu-toggle{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px}
 .global-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:16px var(--mobile-gutter) 24px;background:#080b10;border-bottom:1px solid #5a4c31;max-height:calc(100dvh - 72px);overflow-y:auto;box-shadow:0 20px 35px #0006}
 .global-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:4px}
 .global-nav>a{padding:14px 12px;font-size:1rem;min-height:48px}
 .global-nav .button{margin-top:10px;justify-content:space-between}
 .home-page .success .wrap{display:block;min-height:0;padding-block:44px}
 .home-page .success,.home-page .product,.home-page .quality,.home-page .invitation,.review-page .partner,.review-page .memories,.review-page .invitation,.partner-page .value,.partner-page .inquiry{height:auto;min-height:0}
 .home-page .product{padding:0}
 .home-page .product .wrap{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding-block:40px;gap:24px}
 .home-page .product-figure{order:-1;width:100%;margin:0}
 .home-page .product-figure img{width:100%;height:auto}
 .home-page .product .description{max-width:580px}
 .home-page .photos{margin-top:28px}
 .home-page .photos img{height:auto;aspect-ratio:3/4}
 .home-page .success h2,.home-page .quality h2,.home-page .product h2,.home-page .invitation h2,.review-page .partner h2,.review-page .impact h2,.review-page .memories h2,.review-page .invitation h2,.partner-page .editions h2,.partner-page .value h2,.partner-page .inquiry h2{font-size:clamp(2rem,5.5vw,2.65rem);line-height:1.12;letter-spacing:-.035em}
 .review-page .partner{display:block;padding-block:44px}
 .review-page .partner .body-copy{max-width:650px}
 .review-page .media-evidence{margin-top:28px;gap:16px}
 .review-page .media-image{height:auto;aspect-ratio:3/4;max-height:450px;padding:10px}
 .review-page .invitation{display:flex;flex-direction:column;align-items:stretch;gap:22px;padding-block:42px}
 .review-page .product-figure{max-width:640px;width:100%;margin-inline:auto}
 .review-page .gallery img{height:auto;aspect-ratio:3/4}
 .partner-page .edition-grid{display:grid;grid-template-columns:1fr;gap:24px}
 .partner-page .edition-card{height:auto;min-height:0;padding:26px;max-width:660px;width:100%;margin-inline:auto}
 .partner-page .edition-card+.edition-card{margin-top:0}
 .partner-page .edition-card .imagebox{height:auto;aspect-ratio:3/2;max-height:390px}
 .partner-page .edition-card .button{margin-top:26px;min-height:54px;font-size:1rem}
 .partner-page .edition-card .signature{padding-bottom:0}
 .partner-page .edition-card .benefits{margin-bottom:0;line-height:1.55}
 .partner-page .inquiry .wrap{display:block}
 .partner-page .inquiry-form{margin-top:28px;padding-top:28px;border-top:1px solid #cdc7bb;scroll-margin-top:16px}
 .partner-page .fields{grid-template-columns:1fr;gap:18px}
 .partner-page .field.full{grid-column:auto}
 .partner-page .field input{height:auto;min-height:54px;font-size:1rem;line-height:1.5}
 .partner-page .field textarea{font-size:1rem;min-height:130px;max-height:none}
 .partner-page .poster-option{align-items:center;min-height:48px;line-height:1.5}
 .partner-page .poster-option input,.partner-page .radio-option input{width:20px;height:20px;flex:none}
 .partner-page .inquiry-copy .description{margin-top:18px;max-width:620px}
 .partner-page .inquiry-copy .contact-label{margin-top:22px}
 .partner-page .inquiry-copy .contact{font-size:22px;overflow-wrap:anywhere}
 .partner-page .inquiry-copy .aside{margin-top:12px}
 .global-footer .global-wrap{flex-wrap:wrap;gap:14px 30px}
 .global-footer p{width:100%;order:3}
}
@media(max-width:720px){
 html{scroll-padding-top:84px;scroll-padding-bottom:calc(5.25rem + env(safe-area-inset-bottom))}
 figcaption,.caption,.gallery-caption{font-size:.75rem!important}
 .eyebrow{font-size:.75rem!important}
 body{padding-bottom:calc(5.25rem + env(safe-area-inset-bottom));font-size:1rem}
 .global-header .global-wrap{min-height:68px}
 .global-header .global-wrap{gap:16px}
 .global-brand{width:clamp(145px,44vw,174px);flex-shrink:1;min-width:0}
 .menu-toggle{flex-shrink:0}
 .menu-toggle{padding:9px 12px;font-size:.875rem}
 .menu-toggle span{margin-left:8px}
 .global-nav{max-height:calc(100dvh - 68px)}
 .hero .eyebrow{letter-spacing:1.4px!important;max-width:100%}
 .home-page .hero,.partner-page .hero{height:auto;min-height:0;background-color:#030405;background-size:700px 350px;background-position:right -8px top -16px;background-repeat:no-repeat}
 .home-page .hero:before,.partner-page .hero:before{background:linear-gradient(180deg,transparent 0,transparent 125px,rgba(3,4,5,.76) 192px,#030405 280px)}
 .home-page .hero .wrap,.partner-page .hero .wrap{padding-top:164px;padding-bottom:34px}
 .home-page .hero h1{font-size:clamp(2.05rem,10.5vw,3.05rem);line-height:1.035;letter-spacing:-.04em;margin-top:12px}
 .partner-page .hero h1{font-size:clamp(2rem,9.8vw,2.7rem);line-height:1.08;letter-spacing:-.035em;margin-top:12px}
 .hero .intro{font-size:1rem!important;line-height:1.55!important;margin-top:18px!important;max-width:36ch}
 .hero .intro br{display:none}
 .home-page .hero .year{font-size:.875rem!important}
 .home-page .hero .actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin-top:23px}
 .home-page .hero .button,.partner-page .hero .button{width:100%;justify-content:space-between;min-height:54px;padding:14px 18px;font-size:1rem!important}
 .home-page .hero .text-link{align-self:flex-start;min-height:44px;display:inline-flex;align-items:center;padding-block:7px;font-size:.875rem!important}
 .home-page .hero .claim,.partner-page .hero .date{margin-top:18px;letter-spacing:1.3px}
 .home-page .product .wrap{padding-block:30px 38px;gap:22px}
 .home-page .product h2{margin-top:14px;margin-bottom:18px}
 .home-page .product .eyebrow{margin-top:0}
 .home-page .product .product-name{font-size:1.125rem;line-height:1.45}
 .home-page .product .description,.home-page .success .description{font-size:1rem;line-height:1.65}
 .home-page .product .button{width:100%;justify-content:space-between;padding-inline:18px;font-size:1rem;min-height:54px}
 .home-page .product .signature{font-size:.9375rem;line-height:1.6}
 .home-page .product-figure figcaption{padding-inline:0;font-size:.75rem!important;line-height:1.5!important;max-width:300px;margin-inline:auto!important}
 .home-page .success .wrap{padding-block:38px 40px}
 .home-page .proof-words{gap:9px 18px;font-size:.875rem;line-height:1.6}
 .home-page .proof-words span+span{padding-left:0;border-left:0}
 .home-page .proof-words span{border-bottom:1px solid #cbb58f;padding-bottom:4px}
 .photo-strip,.review-page .gallery{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:calc(100% - 34px);gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:0;scrollbar-width:thin;scrollbar-color:#b89a64 #e5e1d9;padding:0 0 12px;margin-right:0;align-items:stretch;-webkit-overflow-scrolling:touch}
 .home-page .photos img,.review-page .gallery img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;scroll-snap-align:start;scroll-snap-stop:always}
 .home-page .photos .photo-tv,.review-page .gallery .couple{object-position:50% 30%}
 .home-page .photos .photo-family,.review-page .gallery .family{object-position:48% 50%}
 .home-page .photos .photo-sunset,.review-page .gallery .sunset{object-position:60% 50%}
 .swipe-hint{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#706245;font-size:.75rem;line-height:1.5;margin-top:8px}
 .home-page .photos .caption,.review-page .gallery-caption{margin-top:10px}
 .home-page .quality .wrap{padding-block:36px}
 .home-page .quality h2{max-width:330px}
 .home-page .pillars{display:block;margin-top:24px}
 .home-page .pillar,.home-page .pillar+.pillar{border-left:0;padding:18px 0}
 .home-page .pillar+.pillar{border-top:1px solid #45402f}
 .home-page .pillar:first-child{padding-top:0}
 .home-page .pillar h3{font-size:21px;line-height:1.35}
 .home-page .pillar p{font-size:1rem;line-height:1.6;max-width:100%;margin-top:7px}
 .home-page .quality .note{font-size:.875rem;line-height:1.6;margin-top:4px}
 .home-page .invitation .wrap{padding-top:170px;padding-bottom:38px}
 .home-page .invitation:before{background-size:650px 325px;background-position:right -10px top -12px;opacity:.9}
 .home-page .invitation:after{background:linear-gradient(180deg,transparent 80px,rgba(3,4,5,.45) 150px,#030405 230px)}
 .home-page .invitation h2{max-width:340px}
 .home-page .invitation .actions{display:block;margin-top:22px}
 .home-page .invitation .button{width:100%;justify-content:space-between;min-height:54px;padding-inline:18px}
 .review-page .hero{padding-top:28px;padding-bottom:34px}
 .review-page .hero h1{font-size:clamp(2rem,9.3vw,2.6rem);line-height:1.1;letter-spacing:-.035em;margin-top:16px;margin-bottom:24px}
 .review-page .hero-photo{height:auto;aspect-ratio:1.1;object-position:43% 85%}
 .review-page .hero-bottom{display:block;margin-top:20px}
 .review-page .hero-bottom p{font-size:1rem;line-height:1.6}
 .review-page .hero-bottom .text-link{margin-top:14px;min-height:44px}
 .review-page .partner{padding-block:38px}
 .review-page .partner .body-copy{font-size:1rem;line-height:1.65;margin-top:20px}
 .review-page .media-evidence{gap:12px}
 .review-page .media-image{padding:6px;aspect-ratio:2/3}
 .review-page .media-evidence figcaption{font-size:.75rem!important;line-height:1.45!important;margin-top:9px}
 .review-page .impact{padding-block:36px;min-height:0}
 .review-page .impact-grid{display:block;margin-top:25px}
 .review-page .impact-grid article+article{margin-top:24px}
 .review-page .impact h3{font-size:21px;margin-bottom:8px}
 .review-page .impact p{font-size:1rem;max-width:100%;line-height:1.6}
 .review-page .memories{padding-block:38px}
 .review-page .memories h2 br{display:none}
 .review-page .memories .intro{font-size:1rem}
 .review-page .gallery{margin-top:24px}
 .review-page .invitation{padding-block:36px;gap:18px}
 .review-page .invitation .button{width:100%;justify-content:space-between;min-height:54px;padding-inline:18px}
 .partner-page .editions{padding-block:36px}
 .partner-page .editions h2{max-width:none}
 .partner-page .editions-intro{font-size:1rem;line-height:1.6;margin-top:18px}
 .partner-page .edition-grid{margin-top:24px;gap:22px}
 .partner-page .edition-card{padding:22px 20px}
 .partner-page .edition-card h3{font-size:clamp(1.7rem,7.6vw,2rem);letter-spacing:-.035em;line-height:1.2}
 .partner-page .edition-card .subtitle{font-size:1rem;line-height:1.5;margin-top:10px}
 .partner-page .edition-card .product-figure{margin-top:18px}
 .partner-page .edition-card .imagebox{max-height:none;aspect-ratio:3/2}
 .partner-page .edition-card figcaption{padding:0;text-align:left;line-height:1.5!important}
 .partner-page .edition-card .benefits{font-size:1rem;gap:10px;margin-top:20px}
 .partner-page .edition-card .button{margin-top:22px;padding-inline:14px;gap:12px;justify-content:space-between;line-height:1.4;font-size:.9375rem!important}
 .partner-page .cert-note{font-size:.875rem;line-height:1.6}
 .partner-page .value{padding-block:36px}
 .partner-page .value h2 br{display:none}
 .partner-page .value-grid{display:block;margin-top:24px}
 .partner-page .value-grid article,.partner-page .value-grid article+article{padding:20px 0;border-left:0}
 .partner-page .value-grid article+article{border-top:1px solid #4e442f}
 .partner-page .value-grid article:first-child{padding-top:0}
 .partner-page .value-grid article:last-child{padding-bottom:0}
 .partner-page .value-grid h3{font-size:21px}
 .partner-page .value-grid p{max-width:100%;line-height:1.6;font-size:1rem}
 .partner-page .inquiry{padding-block:36px}
 .partner-page .inquiry-copy .description{font-size:1rem;line-height:1.6}
 .partner-page .inquiry-copy .contact-label,.partner-page .inquiry-copy .aside{display:none}
 .partner-page .inquiry-copy .contact{margin-top:18px;font-size:20px}
 .partner-page .radio-grid{grid-template-columns:1fr;gap:10px}
 .partner-page .radio-option{min-height:54px;padding:14px 16px;align-items:center;gap:12px;font-size:1rem!important}
 .partner-page .field label,.partner-page .poster-option{font-size:.875rem;line-height:1.5}
 .partner-page .poster-option{gap:12px}
 .partner-page .inquiry-form .button{min-height:56px;justify-content:space-between;padding-inline:18px;font-size:1rem!important}
 .partner-page .test-result{padding:20px;scroll-margin-top:16px}
 .partner-page .test-result h3{font-size:24px}
 .partner-page .test-result dl{grid-template-columns:1fr}
 .global-footer .global-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding-block:18px 28px}
 .global-footer .global-brand{width:180px}
 .global-footer a:not(.global-brand){min-height:44px;padding-block:8px}
 .global-footer p{font-size:.75rem;line-height:1.6}
 .mobile-inquiry{position:fixed;z-index:25;bottom:0;left:0;right:0;display:block;padding:10px var(--mobile-gutter) calc(10px + env(safe-area-inset-bottom));background:rgba(8,11,16,.97);border-top:1px solid #53452d}
 .mobile-inquiry .button{display:flex;width:100%;min-height:50px;justify-content:space-between;padding:12px 18px;font-size:1rem!important}
 .mobile-inquiry.is-hidden{display:none}
 body:has(.global-nav.is-open) .mobile-inquiry{display:none}
}
@media(prefers-reduced-motion:reduce){.photo-strip,.review-page .gallery{scroll-behavior:auto}}