/* Shared finishing layer. Landscape artwork and camera motion are unchanged. */
.night-site { --accent-blue:#76b5ff;--action-red:#bd3343;--muted:#b8c8dc; }
.night-site .hdr::before,.night-site .hdr::after { content:none; }
.night-site .hdr__in { gap:22px;max-width:var(--shell); }
.heritage-mark { display:flex;align-items:center;gap:10px;margin-right:auto;flex-shrink:0;color:#dce9f8; }
.heritage-mark img { width:34px;height:auto;box-shadow:0 0 0 1px #ffffff20; }
.heritage-mark span { font-size:9px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap; }
.night-site .nav { margin-left:auto; }
.night-site .nav a[aria-current=page] { color:#9ecaff; }
.night-site .btn:not(.btn--ghost):not(.btn--amazon) { background:var(--action-red);border-color:#d45160;color:white; }
.night-site .btn:not(.btn--ghost):not(.btn--amazon)::after { background:#962535; }
.night-site .btn:hover { box-shadow:0 8px 26px #bd334335; }
.night-site .night-text-link:hover,.night-site .fit__cta a { color:#9ecaff; }
.night-site .night-kicker,.night-site .eyebrow { color:#c7def8; }
.night-hero__sub { color:#e0e8f3; }
.footer-values { display:flex;gap:12px;align-items:center;color:#bdcde0;font-size:11px;line-height:1.6;margin-top:20px;max-width:270px; }
.footer-values img { width:38px;height:auto;flex-shrink:0; }
/* The copy has its own contrast surface, leaving the actual scene intact. */
.room-copy { z-index:4;bottom:8%;text-shadow:none; }
.room-copy__panel { width:360px;max-width:42%;padding:20px 22px;background:rgba(6,18,33,.94);border-left:2px solid #80baff;border-radius:0 8px 8px 0;box-shadow:0 10px 35px #0003; }
.room-copy .night-kicker { color:#d7eaff;font-size:10px!important;line-height:1.65;letter-spacing:.12em;margin-bottom:12px; }
.room-copy h2 { color:#fff;font-size:clamp(32px,3.8vw,54px);margin-bottom:14px; }
.room-copy p:last-child { color:#e0eaf5; }
.room-leader { position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;overflow:visible; }
.room-leader path { fill:none;stroke:#a9d3ff;stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 1px 3px #071422); }
.room-leader circle { fill:#a9d3ff;stroke:#142a46;stroke-width:2;opacity:0; }
/* One navy-to-white fade; contrast surfaces keep captions legible throughout. */
.anatomy-scroll { background:#141414; }
.study-heading { align-items:center; }
.study-heading>div { background:#10233df2;color:#fff;padding:18px 24px;border-left:2px solid #78b6ff;border-radius:0 7px 7px 0; }
.night-site .study-heading .night-kicker { color:#c7def8;opacity:1;margin-bottom:10px; }
.study-heading h2 { font-size:clamp(28px,3.2vw,46px); }
.study-heading>p { background:#10233df2;color:#e4edf8;padding:12px 16px;border-radius:5px;opacity:1; }
.study-label { background:#ffffffed;color:#13243a;padding:10px 12px;border-radius:5px; }
.study-label>span { color:#265b95; }
.study-label p { color:#394d66;opacity:1; }
.study-leaders path { stroke:#3c79b9;stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:1; }
.study-leaders circle { fill:#2f6ead; }
.study-progress i { background:#3e7bbd; }
.study-foot { color:#183657; }
.study-foot>span,.study-foot>a { background:#f5f8fceb;padding:7px 10px;border-radius:3px;border:0; }
.study-foot a { color:#183657; }
/* Inner pages share the homepage's typography, navy surfaces and quiet blue details. */
.inner-night { overflow-x:clip; }
.inner-night .hdr { position:sticky;padding:20px 0;background:#080e16f5;border-bottom:1px solid #30537a66; }
.inner-night main { background:#0b1018; }
.inner-night .crumbs { padding-top:25px;color:#bed0e6; }
.inner-night .section { padding-block:72px; }
.inner-night .h2,.inner-night .pdp h1 { font-family:var(--body);font-weight:400;text-transform:none;letter-spacing:-.045em;line-height:1.07; }
.inner-night .h2 { font-size:clamp(34px,4.6vw,60px); }
.inner-night .section p,.inner-night .lede { color:#cbd6e5; }
.inner-night .section--tint,.inner-night .section--fog { background:#111e30; }
.inner-night .section-head { margin-bottom:34px; }
.inner-night .pillar,.inner-night .fit,.inner-night .faq__item { border:1px solid #334962;background:#122034;border-radius:8px; }
.inner-night .pillar { border-top:2px solid #507eaf; }
.inner-night .callout { background:#14283f;border:1px solid #385c84;border-left:3px solid #80baff;border-radius:0 7px 7px 0; }
.inner-night .callout p { color:#e2ecf8; }
.inner-night .callout a { color:#a3ceff; }
.inner-night .step { border-color:#344b68; }
.inner-night .step__n,.inner-night .pillar__n { color:#96c6ff!important; }
.inner-night .field label,.inner-night .spec-table th { color:#c1d4ec; }
.inner-night .field input,.inner-night .field textarea { background:#132137;border:1px solid #4c6584;color:#fff;border-radius:5px; }
.inner-night .field input:focus,.inner-night .field textarea:focus { border-color:#9bceff;outline-color:#9bceff; }
.inner-night .faq__q { color:#f0f5fb;padding-inline:22px; }
.inner-night .faq__a>div { padding-inline:22px; }
.inner-night .spec-table td { color:#edf4fc; }
.inner-night .spec-table th,.inner-night .spec-table td { border-color:#324963; }
.inner-night .ftr { border-top:1px solid #263c58; }
.editorial-lead { display:grid;grid-template-columns:1.05fr 1fr;gap:35px 65px;align-items:center; }
.editorial-lead .section-head { margin:0; }
.editorial-lead>.callout { grid-column:1/-1; }
.editorial-image,.support-photo,.story-photo-pair figure,.pdp__context { margin:0;overflow:hidden;border-radius:8px;border:1px solid #344b67;background:#102037; }
.editorial-image img { width:100%;height:440px;object-fit:cover;display:block; }
.editorial-image figcaption,.support-photo figcaption,.story-photo-pair figcaption,.pdp__context figcaption { padding:14px 18px;color:#dceafa;font-size:12px;line-height:1.5;border-top:1px solid #344b67; }
.editorial-lead .editorial-image img[src*="install-"] { object-fit:contain;background:#e8ebec; }
.support-photo { margin-bottom:25px; }
.support-photo img { width:100%;height:320px;object-fit:cover;object-position:center 58%;display:block; }
.founder-lead { align-items:center;padding-top:30px;padding-bottom:30px; }
.founder-lead__quote { font-size:clamp(36px,4.4vw,62px); }
.founder-lead__note { border-color:#7ab7ff; }
.story-product img { object-position:center 55%;height:510px; }
.story-photo-pair { display:grid;grid-template-columns:1fr 1fr;gap:28px; }
.story-photo-pair img { width:100%;height:390px;object-fit:cover;object-position:center 55%;display:block; }
.pdp__visuals { min-width:0;display:grid;gap:24px; }
.inner-night .pdp__gallery { margin:0;border-radius:8px;border:1px solid #344b67;background:#f8fafc;aspect-ratio:1; }
.inner-night .pdp__gallery img { object-fit:contain; }
.pdp__context img { width:100%;height:380px;object-fit:contain;background:#e8ebec;display:block; }
.inner-night .pdp h1 { font-size:clamp(35px,3.8vw,52px); }
.brand-photo { position:relative;overflow:hidden;border-radius:8px; }
.brand-photo>img { width:100%;height:400px;object-fit:cover;display:block;filter:brightness(.6); }
.brand-photo>div { position:absolute;left:7%;top:20%; }
.brand-photo h2 { font-family:var(--body);font-size:clamp(30px,4vw,50px);font-weight:400;line-height:1.1;margin-top:20px; }
.brand-photo__flag { width:57px;height:auto; }
@media(max-width:1100px) { .heritage-mark span { display:none; } .night-site .hdr__in { gap:16px; } .editorial-lead { gap:30px; } }
@media(max-width:880px) {
 .night-site .nav:not(.is-open) { display:none; }
 .heritage-mark { margin-right:auto; }
 .night-site .burger { order:3; }
 .editorial-lead { grid-template-columns:1fr; }
 .editorial-image img { height:380px; }
 .founder-lead { grid-template-columns:1fr; }
 .inner-night .section { padding-block:50px; }
 .study-heading>div { padding:14px 18px; }
 .study-heading>p { display:none; }
}
@media(max-width:700px) {
 .room-copy__panel { width:180px;max-width:52%;padding:12px 13px; }
 .room-copy .night-kicker { font-size:8px!important;letter-spacing:.08em; }
 .room-copy h2 { font-size:27px; }
 .room-copy p:last-child { font-size:11px; }
 .study-heading { padding-top:35px; }
 .study-heading>div { padding:12px 16px; }
 .study-heading h2 { font-size:30px; }
 .study-label { padding:8px;width:43%; }
 .study-label h3 { font-size:12px; }
 .study-label p { font-size:10px; }
 .study-label--one,.study-label--three { left:4%; }
 .study-label--two,.study-label--four { right:4%; }
 .study-foot { gap:6px; }
 .study-foot>span { max-width:112px; }
 .study-foot a { font-size:10px; }
 .study-progress { width:40px; }
 .inner-night .h2 { font-size:37px; }
 .inner-night .section-head { margin-bottom:24px; }
 .story-photo-pair { grid-template-columns:1fr; }
 .story-product img,.story-photo-pair img { height:360px; }
 .support-photo img { height:300px; }
 .pdp__context img { height:330px; }
 .brand-photo>img { height:330px; }
}
@media(prefers-reduced-motion:reduce) { .room-leader { display:none; } .study-leaders path { stroke-dashoffset:0!important; } }

/* Quiet framing: only the component specifications retain cards. */
.study-heading>div,.study-heading>p { background:none;border:0;border-radius:0;box-shadow:none;padding:0;color:inherit; }
.night-site .study-heading .night-kicker { color:inherit;opacity:1; }
.study-heading h2,.study-heading>p,.study-foot,.study-foot a { color:inherit; }
.study-foot>span,.study-foot>a { background:none;border-radius:0;padding:0; }
.study-foot>a { border-bottom:1px solid currentColor;padding-bottom:5px; }
/* Repeat the values section's low blue glow once on each inner page. */
.inner-night main>.section:first-of-type { background:radial-gradient(ellipse at 50% 105%,#1b2940 0,transparent 65%),#0b1018; }

/* The product study stays charcoal: no background or text-color transition. */
.anatomy-scroll { background:#141414;color:#f4f4f4; }
.study-label { background:none;border:0;box-shadow:none;color:#f4f4f4;padding:0; }
.study-label>span { color:#9bbde4; }
.study-label p { color:#c9cdd2; }
.study-leaders path { stroke:#86b6e9; }
.study-leaders circle { fill:#86b6e9; }
@media(min-width:701px) {
 .study-label { width:max-content;max-width:18%; }
 .study-label--one,.study-label--three { left:2%; }
 .study-label--two,.study-label--four { right:2%; }
}
.ridge-reveal { background:#141414;color:#f4f4f4; }
.ridge-facts article { border-color:#ffffff29; }
.ridge-facts h2 span,.ridge-facts p,.fact-index { color:#b5bfcc; }
/* Preserve the real logo colors; brightness filters flatten it to white. */
.night-site .ftr__logo img { filter:none; }
/* Shirt-inspired freedom lettering; the flag stands in for the two E letters. */
.freedom-word { display:inline-flex;align-items:center;gap:.025em;font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:-.035em;line-height:1;color:#f5f3ef;white-space:nowrap;vertical-align:baseline; }
.freedom-word img { width:1.08em;height:.70em;object-fit:fill;box-shadow:none; }
.freedom-word>span { display:inline;font:inherit;letter-spacing:inherit; }
.night-site .hdr__in { position:relative; }
.heritage-mark { position:absolute;left:50%;transform:translateX(-50%);margin:0; }
.heritage-mark .freedom-word { font-size:30px; }
.home-values h2 .freedom-word,.brand-photo h2 .freedom-word { font-size:1.05em; }
.night-site .hdr .nav { gap:16px; }
@media(min-width:881px) and (max-width:1200px) {
 .heritage-mark { left:39%; }
 .night-site .hdr .nav { gap:12px; }
 .night-site .hdr .nav a { font-size:12px; }
}
@media(max-width:880px) { .night-site .burger { margin-left:auto; } }
@media(max-width:520px) {
 .night-site .hdr__logo img { max-width:112px; }
 .heritage-mark .freedom-word { font-size:25px; }
}
.founder-photo img { height:640px;object-fit:contain;background:#101820; }
.story-hands { margin-top:32px; }
.story-hands img { height:auto;aspect-ratio:1;object-fit:contain; }
.story-photo-pair img[src*="specs"] { object-fit:contain;background:#dae8f0; }
.night-site .fit__media { aspect-ratio:1; }
.night-site .fit__media img { width:100%;height:100%;object-fit:contain; }
.inner-night .fitment-intro { padding:28px 0 16px; }
.fitment-intro h1 { max-width:900px; }
.fitment-intro+.section { padding-top:22px; }
.measurement-photo { margin:22px 0; }
.measurement-photo img { display:block;width:100%;height:auto;border-radius:6px; }
.fitment-choices .fit__specs { font-size:12px; }
.fitment-choices .fit__specs>div { gap:12px; }
.fitment-choices .fit__specs>div>span:last-child { text-align:right; }
.surface-photo { margin:0;overflow:hidden;border-radius:8px;align-self:center; }
.surface-photo img { display:block;width:100%;height:auto;object-fit:contain; }
.surface-photo figcaption { font-size:12px;padding:14px 0;color:#bac9da; }
.other-surfaces .grid { align-items:center;gap:60px; }
.other-surfaces .h2 { margin-bottom:24px; }
.screw-reminder { margin:24px 0;padding:15px 0 15px 18px;border-left:3px solid #c64955;color:#dfe6ee!important;font-size:15px;line-height:1.65; }
.screw-reminder strong { color:#fff; }
.screw-reminder a,.surface-options a { color:#a8cfff;text-decoration:underline; }
.surface-options article { padding:18px 0;border-bottom:1px solid #ffffff20; }
.surface-options article:first-child { padding-top:0; }
.surface-options h3 { margin-bottom:8px;font-size:23px; }
.hardware-list { padding-left:20px;margin:25px 0;color:#dbe4f0;line-height:2; }
.universal-faq { max-width:900px; }
.universal-faq details { border-bottom:1px solid #ffffff25;padding:22px 0; }
.universal-faq summary { cursor:pointer;font-size:20px;color:#fff; }
.universal-faq details p { margin-top:16px; }
.adult-notice { display:flex;gap:20px;align-items:center;margin-top:28px; }
.adult-icon { display:flex;align-items:center;justify-content:center;flex:0 0 82px;width:82px;height:82px;border:4px solid #ce4656;border-radius:50%;font-family:'Barlow Condensed',sans-serif;font-size:36px;font-weight:700;color:#fff; }
.adult-notice p { font-size:14px;line-height:1.6;margin:0!important;color:#c9d4e2; }
.safety-intro-art { padding:30px;border:1px solid #ffffff20;border-radius:8px; }
.safety-intro-art>p { margin:20px 0 0; }
@media(max-width:700px) {
 .founder-photo img { height:auto;max-height:none; }
 .other-surfaces .grid { gap:30px; }
 .fitment-choices .fit { padding:22px; }
 .adult-notice { align-items:flex-start;gap:15px; }
 .adult-icon { flex-basis:66px;width:66px;height:66px;font-size:30px; }
 .freedom-word img { width:1.08em; }
}
.heritage-mark>.freedom-word { display:inline-flex; }
.heritage-mark .freedom-word>span { display:inline; }
@media(min-width:881px) and (max-width:1200px) {
 .heritage-mark { left:50%; }
 .heritage-mark .freedom-word { font-size:23px; }
 .night-site .hdr .nav { gap:9px; }
 .night-site .hdr .nav a { font-size:11px; }
 .night-site .hdr .nav .btn { padding:9px 12px; }
}
@media (max-width: 520px) {
  .night-site .hdr__logo img { max-width: 90px; }
  .heritage-mark .freedom-word { font-size: 21px; }
}
/* Clean product photography, with complete products visible in every card. */
.night-site #shop .pcard__img { aspect-ratio:4/3;height:auto;background:#e9e9e7;overflow:hidden; }
.night-site #shop .pcard__img img { width:100%;height:100%;object-fit:contain;padding:0;mix-blend-mode:normal; }
.night-site #shop .pcard { display:flex;flex-direction:column; }
.night-site #shop .pcard__body { flex:1;display:flex;flex-direction:column; }
.night-site #shop .pcard__foot { margin-top:auto;padding-top:24px; }
.night-site #shop .range-surface { color:#a9c9ee;font-size:12px;letter-spacing:.07em;text-transform:uppercase;line-height:1.5;margin:0 0 18px; }
.range-intro { color:#bdc7d4;max-width:600px;margin:20px auto 0; }
.product-gallery { min-width:0;align-self:start; }
.product-gallery__main { margin:0; }
.product-gallery__main>a { display:block;aspect-ratio:4/3;background:#e9e9e7;border-radius:8px;overflow:hidden; }
.product-gallery__main img { display:block;width:100%;height:100%;object-fit:contain; }
.product-gallery__main figcaption { padding:15px 0;color:#c3ccda;font-size:14px; }
.product-gallery__thumbs { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px; }
.product-gallery__thumbs button { position:relative;display:block;border:2px solid transparent;border-radius:5px;padding:0;overflow:hidden;background:#e9e9e7;cursor:pointer;aspect-ratio:1; }
.product-gallery__thumbs button[aria-pressed="true"] { border-color:#cf4354; }
.product-gallery__thumbs button:focus-visible { outline:3px solid #9bc8fb;outline-offset:3px; }
.product-gallery__thumbs img { display:block;width:100%;height:100%;object-fit:contain; }
.product-gallery__thumbs span { position:absolute;right:3px;bottom:2px;color:white;background:#10151ccc;padding:1px 4px;font-size:10px; }
.product-gallery.is-detail .product-gallery__main img { transform:scale(1.45);transform-origin:65% 45%; }
.gallery-hint { font-size:12px;color:#9aa8b9;margin-top:14px; }
.night-site .fit__media { aspect-ratio:4/3; }
.measurement-photo img { aspect-ratio:4/3;object-fit:contain;background:#e9e9e7; }
.home-values h2 { font-size:clamp(32px,4.8vw,72px);max-width:1100px;margin-inline:auto; }
@media(max-width:700px) {
 .product-gallery__thumbs { gap:7px; }
 .night-site #shop .pcard__body { padding:24px; }
}
@media(max-width:520px) {
 .night-site .logo-plaque { width:104px;padding:5px 7px; }
 .night-site .logo-plaque img { width:100%;height:auto; }
}
/* Let the portrait determine its own frame instead of letterboxing it. */
.inner-night .founder-photo { width:min(100%,378px);justify-self:center; }
.inner-night .founder-photo img { display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain; }
.night-site #shop .pcard .price { font-size:32px;font-weight:600;line-height:1.2;color:#fff; }
.night-site #shop .pcard .price sup { font-size:.65em;vertical-align:baseline;position:relative;top:-.3em;margin-right:2px; }
.shop-catalog { padding-top:40px!important; }
.shop-catalog h1 { font-size:clamp(38px,5vw,64px); }
.shop-help .shell { max-width:900px; }
.shop-help p { margin:24px 0; }
.image-lightbox { position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:60px 24px 25px;border:0;background:rgba(7,10,15,.96);color:white; }
.image-lightbox::backdrop { background:#070a0fdd; }
.image-lightbox[open] { display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px; }
.image-lightbox img { width:100%;height:calc(100% - 60px);object-fit:contain;min-height:0; }
.image-lightbox p { margin:0;text-align:center;font-size:15px; }
.image-lightbox__close { position:absolute;top:12px;right:20px;padding:8px 15px;border:1px solid #ffffff60;border-radius:5px;background:#141a23;color:white;cursor:pointer; }
.image-lightbox__close:focus-visible { outline:3px solid #94bfff;outline-offset:3px; }
@media(max-width:700px) { .inner-night .founder-photo { width:100%; } }
.shop-catalog h1 { font-weight:400; }
/* A completed scene becomes a normal, single-screen section for the return trip. */
html:has(.night-journey) { overflow-anchor:none; }
.night-journey.scene-complete { height:100svh; }
.night-journey.scene-complete .journey-sticky.night-hero { position:relative; }
.anatomy-scroll.scene-complete { height:auto; }
.anatomy-scroll.scene-complete .product-study { position:relative; }
