/* NIVA — revised navigation, page structure and responsive compositions. */
:root{--header-height:88px}
html{scroll-padding-top:var(--header-height)}
.desktop-nav{gap:25px}.desktop-nav a[aria-current=page]{color:var(--olive)}
.desktop-nav a[aria-current=page]:after{transform:scaleX(1)}
.header-cta{display:flex;gap:18px;align-items:center}
.hero.hero-image{min-height:min(760px,calc(100svh - var(--header-height)));padding:0}
.hero-content{padding-block:90px 110px;width:100%}
.modules-section{padding-block:94px 90px}
.modules-section .section-heading{align-items:end}
.modules-manifesto{font-family:var(--display);font-size:clamp(24px,2.4vw,32px)!important;color:var(--olive)!important;line-height:1.25!important;letter-spacing:-.035em}
.module-image{padding:0;aspect-ratio:1.65}
.module-image img{object-fit:cover}
.module-card h3{font-weight:400}
.collection-note>.text-link{margin-left:12px}
.material-gallery{padding-block:85px}
.material-heading h2{font-size:clamp(38px,4.5vw,61px);font-weight:400;line-height:1.08}
.detail-grid{gap:38px 30px}
.detail-picture>img{object-fit:cover}
.experience-section{padding-block:85px}
.product-section{padding-block:85px}
.product-section .section-heading{margin-bottom:32px}
.exterior-panel{grid-template-columns:1fr 1.15fr}
.exterior-panel>.exterior-copy{grid-column:1;grid-row:1;padding:40px}
.exterior-panel>figure{grid-column:2;grid-row:1;padding:24px;background:#e3ded3;display:flex;flex-direction:column;justify-content:center}
.exterior-panel>figure>img{width:100%;height:auto;aspect-ratio:1.35;object-fit:cover}
.exterior-copy h3{font-size:clamp(25px,2.5vw,34px);max-width:360px}
.exterior-copy .product-number{font-size:80px;opacity:.6}
.about-teaser,.about-story{display:grid;grid-template-columns:1.15fr 1fr;gap:85px;padding-block:95px}
.about-teaser h2,.about-story h2{font-size:clamp(36px,4vw,54px);font-weight:400;margin-top:25px}
.about-teaser>div:last-child,.about-story>div:last-child{padding-top:40px;color:#666259}
.about-teaser p+p,.about-story p+p{margin-top:20px}
.about-teaser .text-link{margin-top:22px;color:var(--ink)}
/* The landscape section occupies the available screen, including its controls. */
.photo-gallery-premium .scene-shell{max-width:none;height:calc(100svh - var(--header-height));min-height:580px;padding:30px clamp(24px,4vw,72px) 20px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:15px}
.scene-heading{margin:0;gap:40px;align-items:center}
.photo-gallery-premium .scene-heading h2{font-size:clamp(32px,3.1vw,48px);margin-top:10px;line-height:1.05}
.scene-heading h2 br{display:none}.scene-heading h2 em{display:inline-block}
.scene-heading .eyebrow{font-size:10px}.scene-heading>p{font-size:13px;line-height:1.65;max-width:300px}
.scene-viewer{display:grid;grid-template-rows:minmax(0,1fr) auto auto;min-height:0;gap:12px}
.scene-stage{aspect-ratio:auto;min-height:0;height:100%;background:#1d1e1b}
.scene-stage>img{object-fit:cover;object-position:center 56%}
.scene-open-label{right:15px;top:15px}
.scene-caption{padding:0;gap:20px;align-items:center}
.scene-kicker{display:none}.scene-caption h3{font-size:22px}
.scene-caption-copy>p:last-child{font-size:12px;margin-top:4px}
.scene-navigation{flex-direction:row;gap:25px;align-items:center}
.scene-choices{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.scene-choice-picture{aspect-ratio:auto;height:clamp(40px,7svh,68px)}
.scene-choice-label{margin-top:6px;font-size:11px}.gallery-thumb.scene-choice{padding-bottom:5px}
.scene-note{margin:0;font-size:10px}.scene-choice-number{display:block}
.contact-section{padding-block:85px}
.contact-grid{grid-template-columns:.85fr 1.15fr;gap:65px}
.contact-intro{position:sticky;top:calc(var(--header-height) + 35px)}
.contact-intro h1,.contact-intro h2{font-family:var(--display);font-size:clamp(38px,4.1vw,58px);font-weight:400;line-height:1.12;margin:25px 0}
.contact-intro h1 em{color:#c2c8b0}
.contact-intro>p:not(.eyebrow){color:#d1ccbf;max-width:390px;font-size:16px}
.contact-module-link{margin-top:25px;color:#e2ded2}
.page-intro{padding-block:75px 65px}
.page-intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:end;margin-top:24px}
.page-intro h1{font-size:clamp(45px,5.7vw,78px);font-weight:400;line-height:1.08}
.page-intro-grid>p,.page-intro-grid>div{color:#666259;max-width:460px;font-size:17px;line-height:1.8}
.page-intro-grid .text-link{margin-top:25px;color:var(--ink)}
.page-modulos .modules-section{padding-top:0}
.page-cta{padding-block:85px 100px;text-align:center;border-top:1px solid var(--line)}
.page-cta .eyebrow{justify-content:center}.page-cta h2{font-size:clamp(37px,4.5vw,60px);font-weight:400;margin:25px 0}
.page-cta>p:not(.eyebrow){color:#666259;margin:15px 0 25px}.page-cta .button{margin-top:12px}
.about-panorama{position:relative;height:clamp(300px,51vw,620px);overflow:hidden}
.about-panorama img{width:100%;height:100%;object-fit:cover;object-position:center 57%}
.about-panorama figcaption{position:absolute;bottom:18px;left:var(--space);font-size:11px;color:#fff;background:#262422ba;padding:8px 12px}
.about-principles{padding-bottom:90px}
.about-principles>div{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:30px}
.about-principles article{border-top:1px solid var(--line);padding-top:22px}.about-principles article>span{color:var(--olive);font-size:13px}
.about-principles h3{font-size:30px;font-weight:400;margin:20px 0 15px}.about-principles article p{color:#666259;max-width:300px}
/* Common footer; FAQs are available only here. */
.niva-footer{background:#1d1f1a;color:var(--paper);padding-block:60px 25px}
.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:60px;padding-bottom:50px}
.footer-identity img{width:145px;height:auto}.footer-identity p{color:#bbbeb1;font-size:17px;line-height:1.6;margin-top:24px}
.footer-top nav{display:flex;align-items:start;flex-direction:column;gap:9px}
.footer-top .eyebrow{color:#a9b09a;font-size:10px;margin-bottom:14px}.footer-top nav a{font-size:14px;padding:3px 0}
.footer-top a:hover{color:#bfc5ac}
.footer-invitation>p:not(.eyebrow){font-family:var(--display);font-size:32px;line-height:1.15;letter-spacing:-.035em}
.footer-invitation .text-link{margin-top:20px;color:var(--paper)}
.footer-faq{border-top:1px solid #4b4e43;border-bottom:1px solid #4b4e43}
.footer-faq>summary{display:flex;justify-content:space-between;align-items:center;gap:30px;list-style:none;padding:23px 0;cursor:pointer;font-family:var(--display);font-size:20px}
.footer-faq>summary::-webkit-details-marker{display:none}.footer-faq>summary>span{font-size:25px;font-weight:400}.footer-faq[open]>summary>span{transform:rotate(45deg)}
.footer-faq .faq-list{padding:0 0 25px;max-width:850px;margin-left:auto;color:#d5d7ce}
.footer-faq .faq-list details{border-color:#4b4e43}.footer-faq .faq-list details>div{color:#bfc3b6}
.footer-faq .faq-list summary{font-size:14px;padding-block:17px;min-height:54px}.footer-faq .faq-list summary>span{color:#bfc5ac}.footer-faq .faq-list p{color:#bfc3b6;font-size:14px}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#a5ac9a;padding-top:25px}
@media(min-width:1600px){.scene-stage>img{object-fit:contain}}
@media(max-width:1000px){.desktop-nav{gap:17px;font-size:13px}.header-cta{font-size:12px;gap:9px}.contact-grid{gap:35px}.about-teaser,.about-story{gap:45px}.page-intro-grid{gap:40px}.footer-top{gap:35px}}
@media(max-width:900px){.desktop-nav{display:none}.header-cta{display:flex;margin-left:auto;font-size:13px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;border:1px solid var(--line);background:transparent}.menu-toggle span{width:20px;height:1px;background:var(--ink)}.mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:10px var(--space) 25px;background:var(--paper)}.mobile-nav a{padding:11px 0;border-top:1px solid var(--line)}.hero-content{padding-block:85px}.contact-grid{grid-template-columns:1fr 1.2fr}.exterior-panel>.exterior-copy{padding:28px}.footer-top{grid-template-columns:1fr 1fr}.footer-invitation{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}.footer-invitation .eyebrow{display:none}.footer-invitation>p:not(.eyebrow){font-size:28px}.footer-invitation .text-link{margin:0}.photo-gallery-premium .scene-shell{padding-top:25px}.scene-caption-copy>p:last-child{display:none}}
@media(max-width:680px){.header-inner{min-height:76px;gap:15px}.brand img{width:115px}.header-cta{font-size:11px;gap:8px}.hero.hero-image{min-height:690px}.hero-content{padding-block:220px 70px}.modules-section,.material-gallery,.experience-section,.product-section,.about-teaser,.about-story,.contact-section{padding-block:58px}.modules-section .section-heading{display:block}.modules-manifesto{margin-top:22px!important;font-size:23px!important}.modules-manifesto br{display:none}.modules-section h2{font-size:36px}.module-grid{grid-template-columns:1fr}.module-other{min-height:470px}.module-card-footer{gap:16px}.collection-note>.text-link{margin-left:0}.material-heading{display:block}.material-heading h2{font-size:37px;margin-top:18px}.detail-grid{grid-template-columns:1fr;gap:28px}.detail-photo-wide,.detail-photo-narrow{grid-column:auto}.detail-grid .detail-photo:nth-child(2) .detail-picture{aspect-ratio:1.6}.exterior-panel{grid-template-columns:1fr}.exterior-panel>.exterior-copy{grid-column:1;grid-row:2;padding:28px}.exterior-panel>figure{grid-column:1;grid-row:1;padding:18px}.exterior-copy h3{font-size:30px}.exterior-panel>figure>img{aspect-ratio:1.5}.about-teaser,.about-story,.page-intro-grid{grid-template-columns:1fr;gap:25px}.about-teaser>div:last-child,.about-story>div:last-child{padding:0}.about-teaser h2,.about-story h2{font-size:37px}.page-intro{padding-block:50px}.page-intro h1{font-size:45px}.page-intro-grid>p,.page-intro-grid>div{font-size:16px}.about-panorama{height:340px}.about-panorama figcaption{right:20px;left:20px;font-size:10px}.about-principles{padding-bottom:60px}.about-principles>div{grid-template-columns:1fr;gap:30px}.about-principles article p{max-width:none}.page-cta{padding-block:55px 65px}.contact-grid{grid-template-columns:1fr;gap:32px}.contact-intro{position:static}.contact-intro h1,.contact-intro h2{font-size:38px}.contact-intro .contact-signature{margin-top:28px}.contact-module-link{margin-top:18px}.footer-top{gap:35px 20px;padding-bottom:35px}.footer-identity img{width:125px}.footer-identity p{font-size:14px}.footer-top nav a{font-size:13px}.footer-bottom{flex-direction:column;gap:10px}.footer-faq>summary{font-size:18px}.footer-invitation>p:not(.eyebrow){font-size:27px}.niva-footer{padding-top:40px}.scene-heading>p{display:none}.scene-heading h2 br{display:block}.photo-gallery-premium .scene-heading h2{font-size:32px;margin-top:9px}.photo-gallery-premium .scene-shell{height:calc(100svh - var(--header-height));min-height:580px;padding:22px 20px 16px;gap:14px}.scene-viewer{gap:13px}.scene-caption{display:flex;gap:12px}.scene-caption h3{font-size:19px}.scene-navigation{margin:0;gap:12px}.scene-counter{display:none}.scene-controls{gap:15px}.scene-controls button{font-size:12px}.scene-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.scene-choice-picture{height:40px;aspect-ratio:auto}.scene-choice-label{font-size:10px;margin-top:3px}.scene-choice-number{display:none}.scene-note{font-size:9px;line-height:1.5}.scene-open-label{font-size:10px;padding:7px 9px}.scene-stage>img{object-fit:cover}.gallery-dialog .gallery-stage img{object-fit:contain}.scene-heading .eyebrow{font-size:9px;letter-spacing:.08em}}
@media(max-width:370px){.header-cta{display:none}.scene-navigation{gap:6px}.scene-controls{gap:10px}.scene-caption h3{font-size:17px}}
@media(max-height:700px) and (min-width:681px){.photo-gallery-premium .scene-shell{min-height:0;padding-block:18px 12px;gap:10px}.photo-gallery-premium .scene-heading h2{font-size:29px;margin-top:6px}.scene-heading>p{font-size:11px}.scene-viewer{gap:8px}.scene-choice-picture{height:38px}.scene-caption h3{font-size:19px}.scene-caption-copy>p:last-child{display:none}.scene-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
