/* Approved editorial layout: shared alignment, product hierarchy and local glass navigation. */
:root{--gutter:clamp(24px,6.4vw,112px)}
.nav{padding-left:var(--gutter);padding-right:var(--gutter)}
.nav nav{font-size:12px;gap:32px}
.hero{padding-left:var(--gutter);padding-right:var(--gutter)}
.hero h1{left:var(--gutter);font-weight:400;letter-spacing:-.035em;line-height:1.23}
.hero-head .eyebrow,.hero-head .edition{font-size:12px;color:rgba(242,240,237,.8)}
.hero-bottom{left:var(--gutter);right:var(--gutter)}
.hero-bottom .intro{font-size:14px;line-height:1.85;max-width:355px}
.hero-bottom .intro p:last-child{margin-top:8px}
.hero-head .edition{letter-spacing:.12em}
.products{padding-top:100px;padding-bottom:96px}
.section-label{border-top:1px solid #3a3a38;padding-top:22px;color:#c2c0bb}
.section-label h2{font-size:13px}
.rolin{margin-top:72px}
.product-heading{grid-template-columns:1fr 1fr;gap:8vw;align-items:start}
.product-heading .eyebrow,.cam-copy>.eyebrow{font-size:11px;letter-spacing:.04em;color:#aaa8a5}
.product-heading h3{font-size:clamp(64px,6.3vw,96px);line-height:1.04;letter-spacing:-.055em;margin-top:20px}
.product-copy{max-width:490px;padding-top:2px}
.product-slogan{font-size:clamp(25px,2.4vw,36px);line-height:1.4;letter-spacing:-.015em;margin-bottom:18px}
.product-copy>p:not(.product-slogan){font-size:14px;line-height:1.9;max-width:390px}
.button{background:transparent;color:#f2f0ed;border-bottom:1px solid #777570;border-radius:0;padding:10px 0 12px;margin-top:18px;gap:40px;font-size:13px}
.button:hover{background:transparent;color:#fff;transform:none;border-color:#f2f0ed}
.screen-frame{margin-top:44px}
.screen-crop{border-radius:3px;box-shadow:0 0 0 1px rgba(255,255,255,.075)}
.screen-frame figcaption{padding-top:16px;color:#aaa8a5;font-size:11px}
.motion-ready .rolin{height:160vh;min-height:1150px}
.motion-ready .rolin-sticky{top:54px}
.cam{margin-top:112px;padding:64px 0 0;border-top:1px solid #3a3a38;border-radius:0;background:transparent;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:start;overflow:visible}
.cam h3{font-size:clamp(36px,3.8vw,56px);letter-spacing:-.055em;line-height:1.08;margin-top:20px}
.cam-slogan{font-size:clamp(28px,2.8vw,40px);line-height:1.38;letter-spacing:-.02em;margin-top:34px}
.cam-body{font-size:14px;line-height:1.9;max-width:375px;margin-top:22px}
.companion{margin-top:26px;font-size:11px}
.cam-screen{margin-top:0;max-width:none}
.cam-screen .screen-crop{border-radius:3px}
.company{padding-top:80px;padding-bottom:84px}
.company-grid{border-top:1px solid #3a3a38;padding-top:38px;grid-template-columns:1.4fr 1fr .6fr;gap:5vw}
.company-grid .eyebrow{font-size:11px;margin-bottom:20px}
.company-grid>div>p:not(.eyebrow),address{font-size:13px;line-height:1.9}
.email{font-size:clamp(20px,2vw,28px);letter-spacing:-.04em}
footer{padding-top:30px;padding-bottom:38px}
.footer-top{border-top:1px solid #3a3a38;padding-top:22px;font-size:11px}
.footer-word{width:min(76%,850px);margin:66px 0 28px}
.footer-tagline{margin-top:0;font-size:12px;text-align:left;color:#aaa8a5}
@media(min-width:601px){.motion-ready .rolin-screen{width:min(100%,max(520px,calc((100svh - 310px)*1.87)))}}
@media(max-width:900px){
 .product-heading{grid-template-columns:1fr 1fr;gap:36px}
 .product-heading h3{font-size:70px}
 .cam{grid-template-columns:1fr 1fr;gap:36px}
 .cam h3{font-size:34px}.cam-slogan{font-size:29px}.cam-body{font-size:13px}
 .company-grid{grid-template-columns:1.25fr 1fr;gap:32px}
 .company-grid>div:last-child{grid-column:2}
}
@media(max-width:700px){
 :root{--gutter:24px}
 .nav{height:82px}.nav nav{gap:19px;font-size:11px}.brand{width:112px}
 .hero{padding-left:24px;padding-right:24px}
 .hero h1{left:24px;top:24%;font-size:clamp(43px,11.4vw,66px);line-height:1.27;letter-spacing:-.04em}
 .hero-head .eyebrow{font-size:10px;max-width:245px}.hero-head .edition{font-size:9px}
 .hero-bottom{left:24px;right:24px;bottom:30px;gap:22px}
 .hero-bottom .intro{font-size:12px;line-height:1.85;max-width:320px}
 .hero-bottom .scroll-link{font-size:11px}
 .products{padding-top:66px;padding-bottom:70px}
 .section-label{padding-top:18px;font-size:11px}.section-label h2{font-size:12px}
 .rolin{margin-top:48px}
 .product-heading{display:block}
 .product-heading h3{font-size:68px;margin-top:16px}
 .product-copy{margin-top:26px;padding-top:0}
 .product-slogan{font-size:27px;margin-bottom:14px}
 .product-copy>p:not(.product-slogan){font-size:13px;max-width:340px;line-height:1.9}
 .button{margin-top:16px;font-size:12px;padding-bottom:9px}
 .screen-frame{margin-top:32px}.screen-frame figcaption{font-size:10px;padding-top:13px}
 .motion-ready .rolin{height:auto;min-height:0}.motion-ready .rolin-sticky{position:static}
 .motion-ready .rolin-screen{width:100%}
 .cam{margin-top:64px;padding-top:38px;display:block}
 .cam h3{font-size:42px;margin-top:16px}
 .cam-slogan{font-size:30px;margin-top:27px;line-height:1.35}
 .cam-body{font-size:13px;max-width:340px;margin-top:18px}
 .companion{font-size:10px;margin-top:20px}
 .cam-screen{margin-top:30px;max-width:none}
 .company{padding-top:16px;padding-bottom:48px}
 .company-grid{grid-template-columns:1fr 1fr;padding-top:29px;gap:32px 22px}
 .company-grid>div:first-child{grid-column:1/-1}
 .company-grid>div:last-child{grid-column:auto}
 .company-grid .eyebrow{margin-bottom:12px;font-size:10px}
 .company-grid>div>p:not(.eyebrow),address{font-size:12px}
 .email{font-size:25px}
 footer{padding-top:16px;padding-bottom:30px}
 .footer-top{font-size:10px;padding-top:18px;gap:16px}
 .footer-word{width:100%;margin-top:42px;margin-bottom:22px}
 .footer-tagline{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.motion-ready .rolin{height:auto;min-height:0}}

/* Give navigation and supporting copy stable contrast over the photograph. */
.nav{background:transparent;border-bottom:0;backdrop-filter:none;-webkit-backdrop-filter:none}
.nav nav{font-size:14px;font-weight:500;color:#f2f0ed;gap:28px;padding:0 18px;background:rgba(10,11,11,.3);border:1px solid rgba(242,240,237,.16);border-radius:16px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.nav nav .locale{margin-left:0;padding-left:22px;border-left:1px solid rgba(242,240,237,.18)}
.nav nav a{min-height:44px;display:inline-flex;align-items:center;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.nav nav a:hover{color:#fff;text-decoration:underline;text-underline-offset:7px}
.hero-bottom .intro{position:relative;isolation:isolate;font-size:16px;line-height:1.8;max-width:420px;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.65)}
.hero-bottom .intro::before{content:"";position:absolute;inset:-36px -38px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,rgba(0,0,0,.72) 0,rgba(0,0,0,.48) 48%,transparent 74%);filter:blur(10px)}
.hero-bottom .intro p:last-child{font-size:14px;line-height:1.85;color:rgba(255,255,255,.94);margin-top:9px}
.hero-bottom .scroll-link{color:#f2f0ed;text-shadow:0 1px 6px #000}
@media(max-width:700px){
 .nav nav{font-size:12px;gap:13px;padding:0 12px;border-radius:14px}
 .nav nav .locale{padding-left:12px}
 .hero-bottom .intro{font-size:14px;max-width:325px;line-height:1.85}
 .hero-bottom .intro p:last-child{font-size:13px;line-height:1.85;margin-top:7px}
 .hero-bottom .intro::before{inset:-24px -20px}
}
@media(max-height:600px) and (min-width:701px){
 .hero-bottom .intro{font-size:14px;max-width:400px}
 .hero-bottom .intro p:last-child{font-size:13px}
}
@media(max-width:380px){
 .brand{width:96px}
 .nav nav{gap:8px;padding:0 8px}
 .nav nav .locale{padding-left:8px}
}
