/* Source: /assets156/lower.css */
/* The building is cropped through solid ground, not balanced on its last alpha pixel.
   Source1254: y1160 spans x21..1236 with a continuous opaque lawn/plinth. */
.government .capitol-frame .capitol{bottom:calc(-16.866 * var(--u))}
.footer{min-height:calc(292 * var(--u));padding-top:calc(69 * var(--u));padding-bottom:calc(20 * var(--u))}
.footer:before{background:linear-gradient(180deg,#001d2600 0%,#001d2640 17%,#001b22c4 40%,#00191ee6 78%,#00171def 100%)}
.footer .certifications a{background:transparent;border:0;border-radius:0;padding:0;width:clamp(88px,calc(62 * var(--u)),120px);height:clamp(88px,calc(62 * var(--u)),120px);box-shadow:none}
.footer .certifications img{width:100%;height:100%;object-fit:contain}
.footer .certifications a:hover{background:transparent;box-shadow:none}
.footer .certifications{gap:12px}
.footer-bottom{margin-top:calc(23 * var(--u))}
/* Rejected toolkit removed; new human art is deliberately confined to its choice page. */
.people .studio-copy{max-width:calc(345 * var(--u));width:auto}
.people .studio-copy p{max-width:calc(282 * var(--u))}
@media(max-width:1100px) and (min-width:761px){.footer .certifications{gap:8px}.footer .certifications a{width:80px;height:80px}}
@media(max-width:760px){
 .government .capitol-frame .capitol{bottom:-18.741px}
 .footer{min-height:0;padding-top:62px;padding-bottom:24px}
 .footer:before{background:linear-gradient(180deg,#092c426e 0%,#052c40ba 17%,#001d27cf 44%,#00171ded 85%)}
 .footer-main{row-gap:23px;column-gap:18px}
 .footer .certifications{gap:8px}
 .footer .certifications a{width:clamp(68px,19.5vw,82px);height:clamp(68px,19.5vw,82px)}
 .footer-bottom{margin-top:24px}
 .people .studio-copy{max-width:100%;width:auto}
 .people .studio-copy p{max-width:350px}
 .people{min-height:0!important;padding-bottom:32px}
}
@media(max-width:350px){.footer .certifications a{width:63px;height:63px}.footer-main{column-gap:16px}}

/* Source: /assets156/hero.css */
/*156: an actual rock lip meets the exact SVG shoreline; pointer/scroll never moves it. */
html:not(.hero-layout-editing) .hero-foreground{top:auto;bottom:var(--foreground-grounding,calc(12 * var(--u)));transform:none}
.station{overflow:visible}
.station-tab-trace{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:3;fill:none;stroke-linejoin:round}
.station-tab-trace path{vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .14s ease-out}
.station-tab-keyline{stroke:#17394f;stroke-width:4;opacity:.9}
.station-tab-light{stroke:#ffe29b;stroke-width:2.3}
.station.is-connected .station-tab-trace path{stroke-dashoffset:0;transition-duration:.36s;transition-timing-function:cubic-bezier(.16,1,.3,1)}
.station-copy>span{transition:background-color .22s,color .22s}
.station.is-connected .station-copy>span{background-color:#f8eed3;color:#16394d}
.leader-base{fill:none;stroke:#17394f;stroke-width:1.35;opacity:.72}
.leader-keyline,.leader-draw{fill:none;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;stroke-linecap:round;transition:stroke-dashoffset .16s ease-out}
.leader-keyline{stroke:#183e50;stroke-width:5.7}
.leader-draw{stroke:#ffe09a;stroke-width:3.25}
.leader.is-active .leader-keyline,.leader.is-active .leader-draw{stroke-dashoffset:0;transition-duration:.62s;transition-delay:.17s;transition-timing-function:cubic-bezier(.16,1,.3,1)}
.leader-tip{fill:#173d50;stroke:#fff3d6;stroke-width:1.25;transition:fill .18s}
.leader-halo{fill:#11354880;stroke:#ffe09a;stroke-width:2.15;transition:opacity .18s .28s}
.leader.is-active .leader-tip{fill:#ffe09a}
.island-life{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.island-life [data-gull],.island-water{opacity:0}
.island-life .gull-wing{fill:#e4e7df;stroke:#233c44;stroke-width:.65;stroke-linejoin:round}
.island-life .gull-body{fill:#f6f3df;stroke:#34505a;stroke-width:.6}
.island-water{fill:none;stroke:#f3fcff;stroke-linecap:round}
.island-flow{stroke-width:2.5;stroke-dasharray:7 27 2 39}
.island-ripple{stroke-width:1.7}
@media(max-width:760px){html:not(.hero-layout-editing) .hero-foreground{bottom:var(--foreground-grounding,7px)}.station-tab-light{stroke-width:2}.station-tab-keyline{stroke-width:3.6}}
@media(prefers-reduced-motion:reduce){.station-tab-trace path,.leader-keyline,.leader-draw,.leader-tip,.leader-halo{transition:none!important}.island-life{display:none}}

/* Source: /assets159/life.css */
/*159: one source-coordinate layer; the underlying original stays untouched. */
.island-life159{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;contain:layout style;z-index:1}
@media(prefers-reduced-motion:reduce){.island-life159{display:none}}
html.hero-layout-editing .island-life159{visibility:hidden}

/* Source: /assets159/footer.css */
/* Review159: keep the approved scenery's top registration while trimming 60px
   from the footer. The art/scrim planes retain the preceding footer height;
   overflow removes their last 60px instead of changing cover's image scale. */
.footer{
 min-height:calc(292 * var(--u) - 60px);
 padding-top:calc(69 * var(--u) - 30px);
 padding-bottom:calc(20 * var(--u) - 14px);
 background-image:none;
 overflow:hidden;
}
.footer::after{
 content:"";
 position:absolute;
 inset:0 0 -60px;
 z-index:-2;
 background:#082c35 url("/assets149/coast.webp") center center / cover no-repeat;
 pointer-events:none;
}
.footer::before{bottom:-60px;pointer-events:none}
.footer-bottom{margin-top:calc(23 * var(--u) - 16px)}

/* At tablet widths the lifted navigation reaches the pale sky. Reuse the
   established phone reading scrim; the scenery scale/registration stays fixed. */
@media(min-width:761px) and (max-width:1100px){
 .footer::before{background:linear-gradient(180deg,#092c426e 0%,#052c40ba 17%,#001d27cf 44%,#00171ded 85%)}
}
@media(max-width:760px){
 .footer{min-height:0;padding-top:38px;padding-bottom:16px}
 .footer::after{background-position:45% center}
 .footer-main{row-gap:15px}
 .footer-bottom{margin-top:12px}
}

/* Source: /assets159/people.css */
/* The exact approved seven-person fan. Its geometry and faces remain still. */
.studio>.people{
 display:grid;
 grid-template-columns:minmax(0,1fr) minmax(0,1fr);
 align-items:center;
 column-gap:calc(9 * var(--u));
 padding-right:calc(16 * var(--u));
}
.people .studio-copy{width:auto;max-width:none}
.people .studio-copy p{max-width:none}
.people .people-art.people-fan{
 position:relative;
 display:block;
 width:100%;height:auto;max-width:none;
 inset:auto;
 align-self:end;
 object-fit:contain;
 transform:none;filter:none;mask-image:none;
}
@media(max-width:760px){
 .studio>.people{display:block;min-height:0!important;padding:33px 24px 22px}
 .people .studio-copy,.people .studio-copy p{max-width:100%}
 .people .people-art.people-fan{width:100%;max-width:430px;margin:0 auto}
}

/* Source: /assets163/responsive.css */
/* 163: mobile wayfinding uses the same station symbols on the actual island. */
.mobile-station-pins{display:none}
/* Keep the footer's approved crop/height. Match the hero's type weights exactly. */
.footer .brand-name{font-weight:600}
.footer .wm small{font-weight:450}
.footer-invite .button-gold{font-weight:650}
/* More of the retained, landscaped Capitol rises beyond the section. The
   1198/1254 source baseline retains foreground planting and the front plinth. */
.government .capitol-frame{width:calc(270 * var(--u));top:calc(-160 * var(--u))}
.government .capitol-frame .capitol{bottom:calc(-12.0574 * var(--u))}
/* Compact the public-work arrow so it clears the retained Capitol foliage. */
@media(min-width:761px){
 .government .text-link{gap:calc(4 * var(--u))}
 .government .text-link svg{width:calc(12 * var(--u));height:calc(12 * var(--u))}
}
/* Two generous, editorial halves: let the approved art breathe beside copy. */
.studio h2{font-size:calc(18.25 * var(--u));line-height:1.14}
.studio p{font-size:max(13px,calc(9.6 * var(--u)));line-height:1.5}
.studio .text-link{font-size:max(13px,calc(10 * var(--u)))}
.studio>.people{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);column-gap:calc(15 * var(--u));padding-right:calc(20 * var(--u))}
.studio>.lab{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:center;gap:calc(12 * var(--u));padding-right:calc(24 * var(--u))}
.lab .studio-copy,.lab .studio-copy p{max-width:none}
.lab .lab-art{position:relative;inset:auto;width:100%;max-width:none;height:auto;align-self:center}
@media(min-width:761px) and (max-width:1100px){
 .studio h2{font-size:22px}
 .studio>.people,.studio>.lab{display:flex;flex-direction:column;align-items:stretch;gap:14px}
 .studio>.people{padding-right:calc(39 * var(--u))}
 .people .people-art.people-fan{width:100%;max-width:290px;margin:auto}
 .lab .lab-art{width:80%;max-width:210px;align-self:center}
}
@media(max-width:760px){
 .mobile-station-pins{position:absolute;inset:0;display:block;pointer-events:none;z-index:3}
 .mobile-station-pin{position:absolute;left:var(--pin-x);top:var(--pin-y);width:27px;height:27px;margin:-34px 0 0 -13.5px;display:grid;place-items:center;border:1px solid #5e756e;border-radius:50%;color:#173d50;background:#fcfbf3;box-shadow:0 2px 5px #173d5040;transition:background-color .22s,color .22s,transform .3s cubic-bezier(.16,1,.3,1)}
 .mobile-station-pin::before{content:"";position:absolute;top:26px;left:12px;width:1px;height:7px;background:#294d5a}
 .mobile-station-pin::after{content:"";position:absolute;top:31px;left:10px;width:5px;height:5px;border-radius:50%;background:#173d50;border:1px solid #fff3d6}
 .mobile-station-pin svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
 .mobile-station-pin.is-paired{background:#f1cf78;color:#102e41;transform:translateY(-2px)}
 .station.is-mobile-paired .station-icon{background:#f1cf78;color:#102e41;border-color:#846b2f}
 .station.is-mobile-paired .station-copy strong{background:#173f43;color:#fff;border-color:#173f43}
 .government .capitol-frame{width:280px;top:0;right:8px}
 .government .capitol-frame .capitol{bottom:-12.504px}
 .government{padding-bottom:218px}
 .studio h2{font-size:22px;line-height:1.15}
 .studio p{font-size:13px;line-height:1.5}
 .studio .text-link{font-size:13px}
 .studio>.people{padding:33px 26px 24px}
 .people .people-art.people-fan{margin:16px auto 0;max-width:380px}
 .studio>.lab{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);padding:33px 26px!important;gap:17px;min-height:280px}
 .lab .lab-art{width:100%;align-self:center}
 .lab .studio-copy{max-width:none}
}
@media(max-width:350px){
 .government{padding-bottom:260px}
 .government .capitol-frame{right:8px;width:270px}
 .government .capitol-frame .capitol{bottom:-12.0574px}
 .studio>.lab{grid-template-columns:1fr;gap:10px}
 .lab .lab-art{width:70%;max-width:190px;justify-self:center}
}
@media(prefers-reduced-motion:reduce){.mobile-station-pin{transition:none}.mobile-station-pin.is-paired{transform:none}}

/* Source: /assets163/deck.css */
/* Review163 — approved concept02 Screening Deck. Authentic films, ivory placard,
   and seven image-led project keys, housed in a continuous blue/brass surround. */
.work .section-heading{grid-template-columns:minmax(0,1fr) minmax(220px,300px);gap:6px 32px;align-items:end;margin-bottom:24px}
.work .section-heading .eyebrow{grid-column:1;grid-row:1;margin-bottom:2px}
.work .work-intro{grid-column:2;grid-row:1/3}
.work .section-heading h2{font-size:clamp(36px,4.05vw,68px);line-height:1.08;letter-spacing:-.04em;max-width:none}
.work .work-intro{font-size:clamp(14px,1.25vw,20px);max-width:300px;text-align:right;line-height:1.45;padding:0}
.screening-deck.cinema{padding:25px 25px 20px;border:2px solid #b69a58;border-radius:22px;background:linear-gradient(116deg,#0b394d,#03283c 49%,#001c30);box-shadow:0 18px 24px -17px #001829a6,0 4px 7px #001a2930,inset 0 2px 1px #e0d6b79c,inset 0 -3px 1px #00131ce6;color:#f7f4eb}
.screening-deck.cinema:before{inset:4px;border:1px solid #b8c8bd54;border-radius:17px;box-shadow:inset 0 1px 2px #00111c}
.screening-deck.cinema:after{left:25px;right:25px;background:linear-gradient(90deg,transparent,#fff2c9ad 22%,#d2b86f66 62%,transparent)}
.screening-deck .cinema-main{grid-template-columns:minmax(0,2.35fr) minmax(0,1fr);gap:21px;align-items:stretch}
.screening-deck .film-stage{padding:9px 9px 0;background:linear-gradient(135deg,#062b35,#001722);border:1px solid #4a707b;border-radius:15px;box-shadow:inset 0 2px 2px #000e,0 1px #a1b5ab4d;align-self:start}
.screening-deck .film-picture{border:1px solid #000;border-radius:9px 9px 0 0;outline:none;aspect-ratio:16/9;box-shadow:0 0 0 1px #62827530;background:#00141b}
.screening-deck .film-play-disc{width:56px;height:56px;border-color:#e6c674;opacity:0;transform:translate(-50%,-50%) scale(.94);transition:opacity .18s,transform .22s var(--ease);background:#042b3ded}
.screening-deck .film-play:hover .film-play-disc,.screening-deck .film-play:focus-visible .film-play-disc{opacity:1;transform:translate(-50%,-50%) scale(1)}
.screening-deck .film-controls{border:0;border-top:1px solid #afc1ae20;box-shadow:none;background:linear-gradient(180deg,#0b3342,#032333);padding:7px 0 8px;min-height:60px;border-radius:0 0 9px 9px;gap:10px}
.screening-deck[data-chrome="ready"] .film-controls{grid-template-columns:44px auto minmax(50px,1fr) repeat(3,40px);column-gap:8px}
.screening-deck .film-controls button{width:40px;height:44px;min-height:44px;border-radius:7px}
.screening-deck .film-controls button svg{width:23px;height:23px;stroke-width:1.7}
.screening-deck .film-controls .transport-play{width:42px;height:42px;min-height:42px;border-radius:50%;background:linear-gradient(155deg,#fff4c1,#e7bd67 68%,#bd8a38);border:1px solid #f3dc98;box-shadow:inset 0 2px 1px #fff6cb,0 3px 4px #0009;color:#062739}
.screening-deck .film-controls .transport-play:hover{background-color:#f8e3b3;box-shadow:inset 0 2px 1px #fff6cb,0 4px 7px #000a}
.screening-deck .film-controls .transport-play-icon{width:23px;height:23px;margin-left:1px}
.screening-deck .transport-time{font-size:13px;min-width:82px;padding:0 4px;color:#f5f5ee}
.screening-deck .transport-time-divider{color:#becdd2}
.screening-deck .transport-seek{height:44px}
.screening-deck .transport-seek::-webkit-slider-runnable-track{height:3px;background:linear-gradient(90deg,#e7c67d var(--progress),#43616c var(--progress))}
.screening-deck .transport-seek::-webkit-slider-thumb{margin-top:-4.5px;background:#fff9e7;border-color:#fbf0c8}
.screening-deck .case-context{background:linear-gradient(130deg,#fffdf7,#f4f0e8);color:#06223d;border:1px solid #d1cbb9;border-radius:12px;box-shadow:0 4px 9px #00111c63,inset 0 1px #fff;padding:clamp(20px,2vw,33px) clamp(19px,2.2vw,36px) 18px;min-width:0}
.screening-deck .case-text{flex:1;display:flex;flex-direction:column;align-items:flex-start}
.screening-deck .case-client{color:#946111;font-size:clamp(15px,1.48vw,23px);font-weight:650;letter-spacing:-.025em;line-height:1.2;margin:0}
.screening-deck .case-type{color:#415e70;font-size:clamp(14px,1.3vw,21px);line-height:1.3;margin:4px 0 22px}
.screening-deck .case-type:after{content:"";display:block;width:38px;height:2px;background:#b78735;margin-top:19px}
.screening-deck .case-text h3{font-size:clamp(25px,2.55vw,42px);font-weight:620;line-height:1.06;letter-spacing:-.035em;color:#06213e;max-width:100%;text-wrap:balance}
.screening-deck .case-description{font-size:clamp(14px,1.33vw,21px);line-height:1.42;color:#425e70;margin:19px 0 0}
.screening-deck .case-text .text-link{color:#08243f;font-size:clamp(14px,1.4vw,22px);line-height:1.35;font-weight:650;margin:24px 0 0;gap:12px}
.screening-deck .case-text .text-link svg{width:25px;height:25px;color:#ab761b}
.screening-deck .case-text .text-link:hover{color:#875d17}
.screening-deck .case-credit{color:#526a76;font-size:clamp(11px,.88vw,14px);line-height:1.4;max-width:none;margin:22px 0 0;padding:14px 0 0;border-top:1px solid #d3d2c7}
.screening-deck .case-controls{order:3;margin:17px 0 0;padding:0;border:0;box-shadow:none;gap:8px;min-height:32px}
.screening-deck .case-count{color:#526774;font-size:11px}
.screening-deck [data-case-index]{color:#213f51;font-size:15px;font-weight:600}
.screening-deck .case-controls>div{gap:6px}
.screening-deck .case-controls button{width:34px;height:32px;min-height:32px;background:#f3eee2;border:1px solid #c7c6b7;box-shadow:inset 0 1px #fff,0 2px 2px #102c3612;color:#345361;border-radius:5px}
.screening-deck .case-controls button svg{width:20px;height:20px}
.screening-deck .case-controls button:hover{background:#e4dac1;color:#06273e;border-color:#a69778}
.screening-deck .film-programme{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin:18px -4px 0;padding:4px;background:none;border:0;border-radius:0;box-shadow:none;scrollbar-width:thin;scrollbar-color:#b79858 #092d3e;scroll-padding:6px}
.screening-deck .film-programme button{display:block;position:relative;min-height:0;padding:5px 5px 10px;border:1px solid #53717a75;border-bottom-color:transparent;border-radius:10px;background:linear-gradient(135deg,#1e45582e,#08283b33);box-shadow:inset 0 1px #dce8df14;color:#edf2f1;transition:background-color .18s,border-color .18s,box-shadow .18s;overflow:hidden;font-size:14px;font-weight:450;letter-spacing:-.015em;text-align:left}
.screening-deck .film-programme button:before,.screening-deck .film-programme button:after{content:none}
.screening-deck .film-programme button:last-child{grid-column:auto;border-right:1px solid #53717a75}
.screening-deck .film-programme button:hover{background-color:#164356;border-color:#93abb381;color:#fff}
.screening-deck .film-programme button[aria-pressed="true"]{background:linear-gradient(135deg,#143f52,#022639);border:2px solid #e5bc5b;padding:4px 4px 9px;color:#f7f5e9;box-shadow:inset 0 0 0 1px #fff0b23d,0 3px 6px #00121b9c}
.screening-deck .deck-thumbnail{display:block;position:relative;aspect-ratio:16/9;border:1px solid #60808769;border-radius:6px;overflow:hidden;background:#001d2c}
.screening-deck .deck-thumbnail img{width:100%;height:100%;object-fit:contain;display:block;transition:filter .18s}
.screening-deck .film-programme button:hover img{filter:brightness(1.06)}
.screening-deck .deck-selection-mark{position:absolute;right:5px;bottom:5px;display:grid;place-items:center;width:22px;height:22px;border:1px solid #e2bc71;border-radius:50%;background:#062535e8;color:#f8d689;opacity:0}
.screening-deck [aria-pressed="true"] .deck-selection-mark{opacity:1}
.screening-deck .deck-selection-mark svg{width:13px;height:13px;fill:currentColor;stroke:none}
.screening-deck .deck-project{display:block;padding:11px 5px 0;line-height:1.3}
.screening-deck .deck-project strong{display:block;font-weight:550;font-size:clamp(12px,1.07vw,17px);line-height:1.3;letter-spacing:-.025em}
.screening-deck .deck-project>span{display:block;font-size:clamp(12px,1vw,16px);line-height:1.32;color:#d5e1e5;margin-top:6px}
.screening-deck [aria-pressed="true"] .deck-project>span{color:#f0c86e}
.screening-deck .case-context :focus-visible{outline-color:#9b6e1c}
.screening-deck .film-stage:fullscreen{padding:24px;border-radius:0;justify-content:center}
.screening-deck .film-stage:fullscreen .film-controls{min-height:62px;padding-inline:12px}
@media(min-width:1700px){.screening-deck .cinema-main{grid-template-columns:minmax(0,2.5fr) minmax(0,1fr)}.screening-deck .case-context{padding:36px}.screening-deck .film-controls{padding-block:12px}.screening-deck .transport-time{font-size:16px}}
@media(max-width:1100px){
 .work .section-heading{grid-template-columns:1fr minmax(200px,250px);gap:10px 25px}.work .section-heading h2{font-size:42px}.work .work-intro{font-size:14px}
 .screening-deck.cinema{padding:18px 18px 15px;border-radius:19px}.screening-deck .cinema-main{grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);gap:17px}
 .screening-deck .case-context{padding:19px 19px 14px}.screening-deck .case-type{margin-bottom:15px}.screening-deck .case-type:after{margin-top:13px}.screening-deck .case-text h3{font-size:27px}.screening-deck .case-description{margin-top:15px}.screening-deck .case-text .text-link{margin-top:17px}.screening-deck .case-credit{margin-top:16px}.screening-deck .case-controls{margin-top:12px}
 .screening-deck .film-programme{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:160px;overflow-x:auto;padding-bottom:10px;overscroll-behavior-x:contain;scroll-snap-type:x proximity;gap:8px}
 .screening-deck .film-programme button{scroll-snap-align:start}.screening-deck .deck-project strong{font-size:14px}.screening-deck .deck-project>span{font-size:13px}
 .screening-deck[data-chrome="ready"] .film-controls{grid-template-columns:40px auto minmax(30px,1fr) repeat(3,36px);gap:4px}.screening-deck .film-controls button{width:36px}.screening-deck .transport-time{font-size:11px;min-width:69px}.screening-deck .film-controls .transport-play{width:36px;height:36px;min-height:36px}
}
@media(max-width:1000px){
 .screening-deck .cinema-main{grid-template-columns:1fr;gap:17px}.screening-deck .case-context{display:grid;grid-template-columns:1fr auto;gap:0 25px;padding:23px}.screening-deck .case-text{grid-column:1/-1}.screening-deck .case-type{margin-bottom:13px}.screening-deck .case-type:after{display:none}.screening-deck .case-description{max-width:65ch}.screening-deck .case-credit{grid-column:1;align-self:end;margin-top:18px}.screening-deck .case-controls{grid-column:2;align-self:end;margin-top:18px;gap:14px}.screening-deck .case-text h3{font-size:30px}.screening-deck .case-text .text-link{font-size:16px}.screening-deck .film-programme{grid-auto-columns:180px}
}
@media(max-width:600px){
 .work{padding-inline:12px}.work .section-heading{display:block;margin-inline:10px;margin-bottom:21px}.work .section-heading h2{font-size:34px;max-width:360px}.work .work-intro{font-size:14px;text-align:left;max-width:360px;margin-top:14px}
 .screening-deck.cinema{padding:11px 10px 9px;border-radius:16px;border-width:1px}.screening-deck.cinema:before{inset:3px;border-radius:13px}.screening-deck .film-stage{padding:5px 5px 0;border-radius:10px}.screening-deck .film-picture{border-radius:6px 6px 0 0}
 .screening-deck[data-chrome="ready"] .film-controls{grid-template-columns:44px 1fr repeat(3,42px);column-gap:5px;padding:1px 1px 6px;row-gap:0}
 .screening-deck .transport-seek{grid-column:1/-1;grid-row:1;height:30px}.screening-deck .film-controls button{width:42px;height:44px}.screening-deck .film-controls .transport-play{width:37px;height:37px;min-height:37px;margin-left:2px}.screening-deck .transport-time{font-size:12px;min-width:0;padding:0 3px;text-align:left}.screening-deck .film-controls button svg{width:22px;height:22px}
 .screening-deck .case-context{display:flex;padding:21px 20px 16px;border-radius:9px}.screening-deck .case-client{font-size:17px}.screening-deck .case-type{font-size:14px;margin-bottom:17px}.screening-deck .case-text h3{font-size:29px;max-width:100%}.screening-deck .case-description{font-size:14px;line-height:1.5;margin-top:14px}.screening-deck .case-text .text-link{font-size:15px;margin-top:18px}.screening-deck .case-credit{font-size:11px;margin-top:18px;padding-top:13px;align-self:stretch}.screening-deck .case-controls{margin-top:12px;align-self:stretch}.screening-deck .case-controls button{width:44px;height:40px;min-height:40px}.screening-deck .case-count{font-size:12px}
 .screening-deck .film-programme{grid-auto-columns:156px;margin:12px -1px 0;gap:7px;padding:4px 4px 10px}.screening-deck .film-programme button{border-radius:8px}.screening-deck .deck-project{padding:10px 4px 0}.screening-deck .deck-project strong{font-size:13px}.screening-deck .deck-project>span{font-size:12px}.screening-deck .film-programme button:last-child{min-height:0}
 .screening-deck .film-stage:fullscreen{padding:8px}.screening-deck .film-stage:fullscreen .film-controls{padding:1px 5px 6px}
}
@media(prefers-reduced-motion:reduce){.screening-deck *{scroll-behavior:auto!important}.screening-deck .film-play-disc,.screening-deck .deck-thumbnail img{transition:none}}

/* Source: /assets164/responsive.css */
/* 164: preserve the accepted deck; give its introduction a readable measure. */
.work .section-heading{display:block}
.work .section-heading h2{margin-top:13px}
.work .work-intro{display:flex;flex-wrap:wrap;gap:3px 1.25em;max-width:none;text-align:left;margin-top:13px;line-height:1.5;text-wrap:pretty}
.work .work-intro>span{display:block}
.mobile-station-pins{display:none}
@media(max-width:760px){
 /* The visual pin stays small; its transparent touch target is 44 × 48px. */
 .mobile-station-pins{display:block;pointer-events:none}
 .mobile-station-pin{pointer-events:auto;appearance:none;position:absolute;left:var(--pin-x);top:var(--pin-y);width:44px;height:48px;margin:-48px 0 0 -22px;padding:0;display:block;border:0;border-radius:10px;background:none;color:#173d50;box-shadow:none;cursor:pointer;touch-action:manipulation;transition:none}
 .mobile-station-pin::before,.mobile-station-pin::after{content:none}
 .mobile-station-pin>.pin-symbol{position:absolute;left:8.5px;top:7px;width:27px;height:27px;display:grid;place-items:center;border:1px solid #5e756e;border-radius:50%;background:#fcfbf3;box-shadow:0 2px 5px #173d5040;transition:background-color .18s,border-color .18s}
 .mobile-station-pin>.pin-symbol::before{content:"";position:absolute;top:26px;left:12px;width:1px;height:11px;background:#294d5a}
 .mobile-station-pin>.pin-symbol::after{content:"";position:absolute;top:34px;left:10px;width:5px;height:5px;border-radius:50%;background:#173d50;border:1px solid #fff3d6}
 .mobile-station-pin svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
 .mobile-station-pin.is-paired{background:none;transform:none}
 .mobile-station-pin.is-paired>.pin-symbol{background:#f1cf78;border-color:#806524}
 .mobile-station-pin.is-paired>.pin-symbol::before,.mobile-station-pin.is-paired>.pin-symbol::after{background:#bc8726}
 .mobile-station-pin:focus-visible{outline:2px solid #173d50;outline-offset:2px}
 .station.is-mobile-paired .station-copy>span{background:#fff3cb;color:#163943}
 .work .work-intro{max-width:600px;gap:6px;margin-top:14px}
 /* Invitation → identity → navigation → credentials/socials. All use one
    shared left edge; the coast and scrim retain their existing registration. */
 .footer{padding-inline:24px;padding-top:34px;padding-bottom:18px}
 .footer-main{display:flex;flex-direction:column;gap:25px}
 .footer-invite h2{font-size:30px;line-height:1.1;max-width:350px}
 .footer-invite .button{margin-top:18px}
 .footer-utility{display:grid;width:100%;grid-template-columns:1fr auto;align-items:center;gap:16px 15px;padding:0;border:0}
 .footer-brand,.footer-links{display:contents}
 .footer-brand .lockup{grid-column:1/-1;grid-row:1;justify-self:start;padding:0}
 .footer-main .footer-links nav{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 15px;padding:0;margin:0;border:0;font-size:13px}
 .footer-main nav a{min-height:44px}
 .footer .certifications{grid-column:1;grid-row:3;display:flex;gap:9px;padding:0;border:0;margin:0;justify-content:flex-start}
 .footer .certifications a{width:clamp(63px,19.5vw,76px);height:clamp(63px,19.5vw,76px)}
 .footer .social-links{grid-column:2;grid-row:3;display:flex;gap:8px;padding:0;border:0;margin:0;align-self:center}
 .footer .social-links a{width:44px;height:44px}
 .footer-bottom{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px 12px;margin-top:21px;font-size:10px}
 .footer-bottom>span:first-child{width:auto}
 .footer-bottom>a{margin-left:0;font-size:11px;min-height:32px;display:flex;align-items:center}
}
@media(max-width:350px){
 .footer{padding-inline:22px}
 .footer-invite h2{font-size:28px}
 .footer .brand-name{font-size:24px}
 .footer .wm small{font-size:10px}
 .footer-main .footer-links nav{gap:0 10px;font-size:12px}
 .footer-bottom{margin-top:18px;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){.mobile-station-pin>.pin-symbol{transition:none}}

/* Source: /assets164/coastal-audio.css */
/* Same hero CTA, with a quiet explicit coastal-sound switch beside it. */
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px}
.hero-actions .hero-cta{flex-shrink:0}
.hero-sound{pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 11px;border:1px solid #22485675;border-radius:24px;background:#f8f5efa8;color:#103848;font:500 12px/1.2 Schibsted,sans-serif;cursor:pointer;touch-action:manipulation;transition:background-color .18s,color .18s,border-color .18s}
.hero-sound[hidden]{display:none}
.hero-sound:hover,.hero-sound[aria-pressed="true"]{background:#f9efd6;color:#0b3441;border-color:#746744}
.hero-sound:focus-visible{outline:2px solid #163f49;outline-offset:4px}
.hero-sound svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.hero-sound .coastal-waves{display:none}
.hero-sound[aria-pressed="true"] .coastal-waves{display:block}
.hero-sound[aria-pressed="true"] .coastal-cross{display:none}
@media(max-width:380px){.hero-actions{gap:8px}.hero-sound{width:44px;padding:8px}.hero-sound [data-coastal-label]{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.hero-sound{transition:none}}

/* Source: /assets165/lower.css */
/* 165: one quiet physical relationship for each approved studio object.
   Variables are absent at rest without JavaScript; no content is hidden. */
.people .people-art.people-fan{
 transform:translateY(var(--folio-lift,0px)) rotate(var(--folio-turn,0deg));
 transform-origin:50% 92%;
}
.lab .lab-art,.lab .lab-art+.ig-lower-overlay{
 transform:translateY(var(--folio-lift,0px)) rotate(var(--folio-turn,0deg));
 transform-origin:52% 85%;
}
/* Keep the same transparent COBID artwork; give its emblem room to read. */
.footer .certifications a{width:clamp(104px,calc(70 * var(--u)),132px);height:clamp(104px,calc(70 * var(--u)),132px)}
@media(min-width:761px) and (max-width:1100px){
 .footer .certifications a{width:90px;height:90px}
}
@media(max-width:760px){
 /* The coastline remains one uninterrupted backdrop to a centered close. */
 .footer{padding:28px 24px 18px;text-align:center}
 .footer-main{display:flex;flex-direction:column;align-items:center;gap:22px}
 .footer-invite{width:100%;max-width:350px;margin:0;text-align:center}
 .footer-invite h2{max-width:350px;margin-inline:auto;font-size:30px;line-height:1.1}
 .footer-invite .button{margin-top:18px}
 .footer-utility{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;padding:0;border:0}
 .footer-brand{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;margin:0;padding:0}
 .footer-brand .lockup{align-self:center;margin:0;padding:0;gap:8px}
 .footer .certifications{display:flex;justify-content:center;align-items:center;gap:16px;margin:0;padding:0;border:0}
 .footer .certifications a{width:clamp(115px,30vw,125px);height:clamp(115px,30vw,125px)}
 .footer-links{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;margin:0;padding:0;border:0}
 .footer-main .footer-links nav{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 9px;width:100%;margin:0;padding:0;border:0;font-size:12.5px}
 .footer-main nav a{justify-content:center;min-height:44px;min-width:44px}
 .footer .social-links{display:flex;align-self:center;justify-content:center;gap:8px;margin:0;padding:0;border:0}
 .footer .social-links a{width:44px;height:44px}
 .footer-bottom{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;margin-top:14px;text-align:center;font-size:10px}
 .footer-bottom>span:first-child{width:100%;flex:none;line-height:1.7}
 .footer .copyright{display:inline;margin-left:4px;max-width:none}
 .footer-bottom>a{align-self:center;justify-content:center;margin:0;min-height:30px;font-size:11px}
}
@media(max-width:350px){
 .footer{padding-inline:22px}
 .footer-invite h2{font-size:28px}
 .footer-main .footer-links nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0 7px;font-size:12px}
 .footer-main nav a{grid-column:span 2}
 .footer-main nav a:nth-child(4){grid-column:2/span 2}
 .footer-main nav a:nth-child(5){grid-column:4/span 2}
}
@media(prefers-reduced-motion:reduce){
 .people .people-art.people-fan,.lab .lab-art,.lab .lab-art+.ig-lower-overlay{transform:none!important}
}

/* Source: /assets165/sound.css */
/* Owner-requested icon-only Sound/Mute precedes the project CTA. */
.hero-actions{margin-top:calc(13 * var(--u));align-items:center}
.hero-actions .hero-cta{margin-top:0}
.hero-actions .hero-sound{flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:50%;gap:0}
.hero-actions .hero-sound svg{width:21px;height:21px;flex:none}
.hero-sound [data-coastal-label]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:760px){.hero-actions{margin-top:17px}}

/* Source: /assets166/lower.css */
/*166: one physical pose for each approved object. The Lab ray shares its plane. */
.people .people-art.people-fan,
.lab .lab-art,.lab .lab-art+.ig-lower-overlay{
 transform:translate3d(0,var(--folio-lift,0px),0) perspective(900px) rotateX(var(--folio-tip-x,0deg)) rotateY(var(--folio-tip-y,0deg)) rotate(var(--folio-turn,0deg));
}
/* The approved phone footer is untouched. Desktop seals form one centered pair
   within the existing identity column instead of expanding toward the CTA. */
@media(min-width:761px){
 .footer .certifications{width:min(100%,334px);align-self:center;margin-left:0;gap:14px}
 .footer .certifications a{width:calc((100% - 14px)/2);height:auto;aspect-ratio:1;flex:none}
}
@media(prefers-reduced-motion:reduce){
 .people .people-art.people-fan,.lab .lab-art,.lab .lab-art+.ig-lower-overlay{transform:none!important}
}

/* Source: /assets166/hero.css */
/* Existing source dot remains the visual target; this adds only usable hit area. */
.desktop-node-layer166{display:none;position:absolute;inset:0;z-index:3;pointer-events:none}
@media(min-width:761px){.desktop-node-layer166{display:block}.hero-node166{appearance:none;position:absolute;width:36px;height:36px;min-width:36px;min-height:36px;margin:-18px 0 0 -18px;padding:0;pointer-events:auto;border:0;border-radius:50%;background:transparent;box-shadow:none;color:#173d50;cursor:pointer;touch-action:manipulation;transform:none;transition:none}.hero-node166::before,.hero-node166::after{content:none}.hero-node166:hover{background:transparent;box-shadow:none;transform:none}.hero-node166:focus-visible{outline:2px solid #173d50;outline-offset:2px;box-shadow:0 0 0 4px #fff3d6}}
html.hero-layout-editing .desktop-node-layer166{display:none}

/* Source: /assets175/nav.css */
/*175: restore the previous approved text-navigation gold; island entry boxes stay unchanged. */
.site-header #main-nav > a:not(.button):is(:hover,:focus-visible){color:#906000;}

/* Source: /assets176/refinements.css */
/*176: the viewing gallery stays white; the Lab's warm ground distinguishes services. */
body{background:#fff}
.work{background:#fff}
.opening:after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 793 44' preserveAspectRatio='none'%3E%3Cpath fill='%23ffffff' d='M0 8C154 41 302 47 463 29S679 4 793 17V44H0Z'/%3E%3C/svg%3E")}
/* Keep scroll lift/turn, make a mouse's changing position visible on the actual art. */
.people .people-art.people-fan,.lab .lab-art,.lab .lab-art+.ig-lower-overlay{
 transform:translate3d(var(--folio-pan-x,0px),calc(var(--folio-lift,0px) + var(--folio-pan-y,0px)),0) perspective(680px) rotateX(var(--folio-tip-x,0deg)) rotateY(var(--folio-tip-y,0deg)) rotate(var(--folio-turn,0deg));
}
/* A short personal line, sized to its available artwork width without forced wrapping. */
.service-stage-preview{container-type:inline-size}
.service-stage-preview figcaption p{max-width:none;white-space:nowrap;font-size:clamp(18px,6.25cqw,36px);text-wrap:nowrap}
/* Keep the invitation aligned with the copy; sound is a separate island-side control. */
.world-stage>.hero-sound{position:absolute;z-index:7;left:calc(286 * var(--u));top:calc(273 * var(--u));width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:50%;gap:0;box-shadow:0 2px 8px #123d4620}
.world-stage>.hero-sound svg{width:21px;height:21px;flex:none}
@media(max-width:760px){
 .world-stage>.hero-sound{left:14px;top:clamp(148px,49vw,330px)}
}
@media(prefers-reduced-motion:reduce){
 .people .people-art.people-fan,.lab .lab-art,.lab .lab-art+.ig-lower-overlay{transform:none!important}
}

/* Source: /assets190/hero-background.css */
/*177: owner-selected sunset; only environmental framing changes. */
.opening{background-image:url("/assets271/images/sunset-1672-f2c69cebeeca.webp");background-color:#e9dfce}
@media(max-width:760px){
 .opening:not([data-background-choice]),.opening[data-background-choice="warm"]{background-size:auto calc(100% + 300px);background-position:32% -300px}
}
/*190: slight desktop overscan places the main sea stack behind the project CTA; mobile framing stays exact. */
@media(min-width:761px){.opening:not([data-background-choice]),.opening[data-background-choice="warm"]{background-size:calc(100% + 18 * var(--u)) 122%;background-position:calc(-18 * var(--u)) top}}

/* Source: /assets177/header-sound.css */
/*177: circular sound control by desktop navigation and mobile menu toggle. */
.site-header{justify-content:flex-start;column-gap:calc(12 * var(--u))}
.site-header #main-nav{margin-left:auto}
.site-header>.hero-sound{flex:0 0 auto;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border-radius:50%;gap:0;align-self:flex-start;margin-top:calc(5 * var(--u) + max(0px,(32 * var(--u) - 44px) / 2));box-shadow:0 2px 8px #123d4612}
.site-header>.hero-sound svg{width:21px;height:21px;flex:none}
@media(max-width:760px){
 .site-header{column-gap:8px}
 .site-header>.lockup{margin-right:auto}
 .site-header>.hero-sound{order:1;align-self:center;margin:0}
 .site-header>.menu-toggle{order:2;flex:0 0 44px}
 .site-header #main-nav{order:3;margin-left:0}
}
@media(max-width:360px){.site-header{padding-inline:10px;column-gap:4px}}

/* Source: /assets177/life.css */
/*177: reduced motion keeps the resting inhabitants visible; JavaScript draws once without RAF. */
@media (prefers-reduced-motion: reduce) { .island-life159 { display: block; } }

/* Source: /assets187/logo.css */
/*187: one logo lockup, blue over the hero and white over the coastline footer.
  The approved metallic IG mark is unchanged. Shared type rules prevent drift. */
:is(.site-header,.footer) .lockup {
  --logo-name:calc(18 * var(--u));
  --logo-tag:calc(7.65 * var(--u));
  --logo-mark:calc(45 * var(--u));
  --logo-gap:calc(8 * var(--u));
  --logo-tag-gap:calc(3 * var(--u));
  gap:var(--logo-gap);
}
.site-header .lockup .wm { color:#061c42; }
.footer .lockup .wm { color:#fff; }
:is(.site-header,.footer) .lockup .mono-sq { --m:var(--logo-mark); }
:is(.site-header,.footer) .lockup .brand-name {
  font-family:Schibsted,sans-serif;
  font-size:var(--logo-name);
  font-weight:600;
  letter-spacing:-.025em;
  line-height:1.12;
  color:inherit;
  text-shadow:none;
}
:is(.site-header,.footer) .lockup .wm small {
  font-family:Schibsted,sans-serif;
  font-size:var(--logo-tag);
  font-weight:450;
  letter-spacing:0;
  line-height:1.3;
  margin-top:var(--logo-tag-gap);
  color:inherit;
  text-shadow:none;
}
@media(max-width:760px) {
  :is(.site-header,.footer) .lockup {
    --logo-name:24px;
    --logo-tag:10.15px;
    --logo-mark:36px;
    --logo-gap:6px;
    --logo-tag-gap:4px;
  }
}
@media(max-width:360px) {
  :is(.site-header,.footer) .lockup {
    --logo-name:21px;
    --logo-tag:8.9px;
  }
}

/* Source: /assets189/logo-tagline.css */
/*189: match the tagline's glyph width to the unchanged company name in both lockups.
  Ratio measured with the loaded Schibsted face; no tracking, stretching or JS sizing. */
:is(.site-header,.footer) .lockup {
  --logo-tag:calc(var(--logo-name) * .4072);
}

/* Source: /assets190/service-refinements.css */
/*190: align the approved highlight with the rule endpoints; preserve its vertical fill. */
.service-stage-row a::before { inset-inline: 0; }
/*The exact existing 4% Search lift now happens inside the painter, avoiding canvas-edge clipping. */
[data-service-showcase] [data-service-scene="search"] { transform: none; }

/* Source: /assets192/copy-editor.css */
/* Editor chrome is absent on ordinary visits. Retain all incumbent page styling. */
.ig-copy-panel{position:fixed;z-index:10000;inset:auto 18px max(18px,env(safe-area-inset-bottom)) auto;width:min(460px,calc(100vw - 36px));max-height:calc(100dvh - 36px);overflow:auto;padding:16px;background:#f8f5ef;color:#061c42;border:1px solid #94a4a7;border-radius:8px;box-shadow:0 8px 28px #03273c30;font:400 14px/1.45 Schibsted,Arial,sans-serif;letter-spacing:normal;text-align:left;scrollbar-color:#567075 #f8f5ef}
.ig-copy-panel[hidden],.ig-copy-panel [hidden]{display:none!important}
.ig-copy-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:7px}
.ig-copy-heading strong{font-size:16px;font-weight:650}
.ig-copy-heading-actions{display:flex;gap:6px;flex:none}
.ig-copy-panel button{font:600 13px/1.2 Schibsted,Arial,sans-serif;min-height:40px;padding:9px 11px;border:1px solid #a7b4b3;border-radius:4px;background:transparent;color:#163b48;cursor:pointer;box-shadow:none;text-align:center}
.ig-copy-panel button:hover{background:#e9efeb;border-color:#547577}
.ig-copy-panel button:active{background:#dce7e1}
.ig-copy-panel button:focus-visible,.ig-copy-panel summary:focus-visible,.ig-copy-panel textarea:focus-visible{outline:3px solid #9b6710;outline-offset:3px}
.ig-copy-panel button:disabled{opacity:.48;cursor:default;background:transparent}
.ig-copy-panel [data-copy-action=copy]{background:#123e43;color:#fff;border-color:#123e43}
.ig-copy-panel [data-copy-action=copy]:hover{background:#21545a}
.ig-copy-panel p{font:inherit;color:inherit;margin:0;max-width:none}
.ig-copy-help{color:#294c59!important}
.ig-copy-status{margin-top:9px!important;font-size:12px!important;min-height:18px}
.ig-copy-status[data-error=true]{color:#8a391b!important}
.ig-copy-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}
.ig-copy-details{font-size:12px;margin-top:11px;color:#294c59}
.ig-copy-details summary{cursor:pointer;width:fit-content;text-decoration:underline;text-underline-offset:3px;padding:3px 0}
.ig-copy-details p{margin-top:7px}
.ig-copy-panel[data-compact=true]{padding:0;width:auto;max-width:calc(100vw - 36px)}
.ig-copy-panel[data-active=true][data-compact=true]{inset-block-start:12px;inset-block-end:auto}
.ig-copy-panel .ig-copy-summary{border:0;padding:10px 14px;max-width:100%}
.ig-copy-manual{margin-top:12px}
.ig-copy-manual label{display:block;font-weight:600;margin-bottom:6px}
.ig-copy-manual textarea{display:block;width:100%;resize:vertical;max-height:30dvh;min-height:90px;border:1px solid #809b9e;border-radius:4px;padding:8px;background:#fffdf8;color:#061c42;font:400 14px/1.4 Schibsted,Arial,sans-serif;margin-bottom:8px}
ig-copy.ig-copy-field{font:inherit;letter-spacing:inherit;line-height:inherit;color:inherit;text-transform:inherit;text-decoration:inherit}
html[data-copy-editing=true] ig-copy.ig-copy-field{outline:1px dashed #89640b;outline-offset:3px;cursor:text;pointer-events:auto;caret-color:#9b6710;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}
html[data-copy-editing=true] ig-copy.ig-copy-field:focus{outline:2px solid #9b6710;outline-offset:3px;background:#fff4cc;color:#061c42}
html[data-copy-editing=true] ig-copy.ig-copy-field:empty:before{content:' ';white-space:pre}
html[data-copy-editing=true] .footer ig-copy.ig-copy-field{outline-color:#f1c66b}
html[data-copy-editing=true] a:has(ig-copy){cursor:text}
@media(max-width:600px){.ig-copy-panel{inset:auto 10px max(10px,env(safe-area-inset-bottom)) 10px;width:auto;max-height:44dvh;padding:12px;font-size:13px}.ig-copy-panel[data-compact=true]{inset-inline-start:auto;max-width:calc(100vw - 20px)}.ig-copy-panel button{min-height:44px}.ig-copy-panel textarea{font-size:16px}.ig-copy-heading{margin-bottom:5px;gap:8px}.ig-copy-actions{gap:5px;margin-top:8px}.ig-copy-details{margin-top:7px}}

/*192: the owner can reach the footer invitation without dismissing the editor. */
.ig-copy-panel[data-active=true][data-compact=true][data-dock=bottom]{inset-block-start:auto;inset-block-end:max(18px,env(safe-area-inset-bottom))}
.ig-copy-panel[data-active=true][data-dock=top]{inset-block-start:max(12px,env(safe-area-inset-top));inset-block-end:auto}
html[data-copy-editing=true] .deck-project ig-copy.ig-copy-field{display:block}

/* Source: /assets194/service-label.css */
/*194: section label sits upper-left; preserve its heading association and editable identity. */
.service-stage-layout { position: relative; }
.service-stage-heading > .eyebrow { position: absolute; top: 10px; left: 0; max-width: 44%; margin: 0; }
@media (max-width: 760px) {
 .service-stage-heading > .eyebrow { position: static; max-width: none; margin-bottom: 12px; }
}

/* Source: /assets197/contact-flow.css */
/* Shared inquiry, continuing the approved homepage's navy, cream and gold. */
@font-face{font-family:IGContact197;src:url("/assets299/fonts/schibsted.woff2") format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
.contact197{--contact-ink:#061c42;--contact-muted:#425a6a;--contact-line:#c5cbc8;color:var(--contact-ink);font-family:IGContact197,Schibsted,sans-serif;font-size:16px;line-height:1.55;text-align:left;letter-spacing:normal;box-sizing:border-box}
.contact197 *, .contact197 *::before,.contact197 *::after{box-sizing:border-box}
.contact197 [hidden]{display:none!important}
.contact197 a{color:inherit;text-decoration:none}
.contact197 a:hover{color:#94620b}
.contact197 :focus-visible{outline:2px solid #9b6400;outline-offset:4px}
.contact197 ::selection{color:#061c42;background:#f7c65c}
.contact197-open{overflow:hidden;scrollbar-gutter:stable}
.contact197-dialog{border:1px solid #d7d0c2;border-radius:18px;padding:0;width:min(970px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;background:#fffdf7;box-shadow:0 28px 90px #03172455;overflow:auto;overscroll-behavior:contain;scrollbar-color:#82939a #f6f2e8}
.contact197-dialog::backdrop{background:#041e32b8}
.contact197-dialog[open]{animation:contact197-arrive .25s cubic-bezier(.16,1,.3,1) both}
.contact197-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:44px;padding:56px 46px 38px}
.contact197-intro{display:flex;flex-direction:column;align-items:flex-start;padding-top:3px}
.contact197 h2{font:620 clamp(30px,3.1vw,42px)/1.06 IGContact197,Schibsted,sans-serif;letter-spacing:-.035em;margin:0 0 22px;color:var(--contact-ink);text-wrap:balance}
.contact197 h2:focus{outline:none}
.contact197-intro>p{font-size:16px;line-height:1.6;margin:0 0 24px;max-width:32ch;color:var(--contact-muted)}
.contact197-intro>.contact197-next{font-size:14px;margin:0 0 32px;padding-top:23px;border-top:1px solid #d8d3c8}
.contact197-email{font-size:14px;font-weight:600;max-width:100%;margin-top:auto;overflow-wrap:anywhere;line-height:1.8}
.contact197-email>span{display:block;font-weight:400;font-size:13px;color:var(--contact-muted);margin-bottom:4px}
.contact197-email svg{width:17px;height:17px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.6;margin-left:6px;transition:transform .18s ease}
.contact197-email:hover svg{transform:translateX(3px)}
.contact197-closebar{position:sticky;top:0;height:0;z-index:5;pointer-events:none;display:flex;justify-content:flex-end}
.contact197-close{position:relative;inset:auto;margin:12px;flex:none;pointer-events:auto;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#fffdf7;color:var(--contact-ink);cursor:pointer;transition:background .18s ease}
.contact197-close:hover{background:#eae6db}
.contact197-close svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7}
.contact197-form{min-width:0}
.contact197 form{margin:0}
.contact197 .required-note{font-size:12px;line-height:1.5;color:var(--contact-muted);margin:0 0 21px}
.contact197 .field-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact197 .field{margin:0 0 18px;min-width:0}
.contact197 label{display:block;font-size:14px;font-weight:600;margin:0 0 7px}
.contact197 label span{font-size:12px;font-weight:400;color:var(--contact-muted)}
.contact197 input:not([type=hidden]),.contact197 textarea{display:block;width:100%;font:400 16px/1.45 IGContact197,Schibsted,sans-serif;letter-spacing:normal;color:var(--contact-ink);background:#fff;border:1px solid var(--contact-line);border-radius:6px;padding:10px 12px;box-shadow:0 1px 2px #061c4205;caret-color:#9b6400;transition:border-color .16s ease,box-shadow .16s ease}
.contact197 textarea{resize:vertical;min-height:138px;max-height:360px}
.contact197 input:not([type=hidden]):focus,.contact197 textarea:focus{outline:none;border-color:#9b6400;box-shadow:0 0 0 2px #9b640020}
.contact197 input[aria-invalid=true],.contact197 textarea[aria-invalid=true]{border-color:#a4322c}
.contact197 .field-hint{display:block;font-size:11px;line-height:1.5;margin-top:7px;color:var(--contact-muted)}
.contact197 #name-hint,.contact197 #email-hint{display:none}
.contact197 .field-error{display:block;color:#922c26;font-size:12px;line-height:1.45;margin-top:7px}
.contact197 .trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact197 .submit-row{display:flex;align-items:center;gap:15px;margin:24px 0 12px}
.contact197 button[type=submit],.contact197-retry{display:inline-flex;justify-content:center;align-items:center;min-height:46px;border:1px solid #02303b;border-radius:999px;background:#02303b;color:#fff;padding:12px 23px;font:550 14px/1.3 IGContact197,Schibsted,sans-serif;cursor:pointer;box-shadow:none;transition:background .18s ease,transform .18s ease}
.contact197 button[type=submit]:hover,.contact197-retry:hover{background:#164957;transform:translateY(-1px)}
.contact197 button[type=submit]:disabled{cursor:default;background:#5e737a;border-color:#5e737a;transform:none}
.contact197 #pending-note{font-size:12px;color:var(--contact-muted)}
.contact197 .privacy-note,.contact197-delivery-note{font-size:11px;line-height:1.6;color:var(--contact-muted);margin:12px 0 0}
.contact197 .privacy-note a{font-weight:600}
.contact197-delivery-note{padding-top:12px;border-top:1px solid #e1ddD3}
.contact197 .form-status{margin:0 0 22px;padding:17px 18px;background:#f8ece5;border:1px solid #d5b8ac;border-radius:7px;font-size:13px;color:#682923}
.contact197 .form-status h2{font-size:18px;letter-spacing:-.015em;line-height:1.3;margin:0 0 8px;color:inherit}
.contact197 .form-status p{margin:0 0 8px;font-size:13px;line-height:1.5}
.contact197 .form-status ul{padding-left:18px;margin:10px 0 0;font-size:12px}
.contact197 .form-status a{font-weight:600}
.contact197 .form-status.is-success{background:#ecf3ed;color:#244e3c;border-color:#b4cbbb}
.contact197-load{padding:16px 0;min-height:300px;color:var(--contact-muted);font-size:15px}
.contact197-load p{font-size:15px;line-height:1.6;margin:0 0 20px}
.contact197-load>a{display:block;font-size:13px;margin-top:20px;color:var(--contact-ink);font-weight:600}
.contact197-inline{max-width:1180px;margin:24px auto 70px;padding:0 5vw;scroll-margin-top:32px}
.contact197-inline .contact197-layout{background:#f6f2e8;border-radius:18px;padding:44px;gap:60px}
.contact197-inline .contact197-load{min-height:0}
.contact197-inline .contact197-email{margin-top:20px}
@keyframes contact197-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){
 .contact197-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:13px}
 .contact197-layout{grid-template-columns:1fr;gap:24px;padding:45px 23px 25px}
 .contact197-intro{padding:0}
 .contact197 h2{font-size:32px;max-width:14ch;margin-bottom:15px}
 .contact197-intro>p{font-size:14px;line-height:1.55;max-width:42ch;margin:0 0 16px}
 .contact197-intro>.contact197-next{font-size:12px;border:0;padding:0;margin:0 0 16px}
 .contact197-email{font-size:12px;margin:0;line-height:1.5}
 .contact197-email>span{display:inline;margin-right:6px;font-size:12px}
 .contact197-email svg{width:14px;height:14px;margin-left:4px}
 .contact197 .required-note{margin-bottom:17px}
 .contact197 .field-pair{gap:12px}
 .contact197 .field{margin-bottom:16px}
 .contact197 label{font-size:13px}
 .contact197 textarea{min-height:122px}
 .contact197-inline{padding:0 5vw;margin:15px auto 45px}
 .contact197-inline .contact197-layout{padding:30px 22px;gap:25px}
 .contact197-inline .contact197-email{margin:0}
}
@media(max-width:359px){.contact197 .field-pair{grid-template-columns:1fr;gap:0}.contact197-layout{padding-inline:19px}}
@media(prefers-reduced-motion:reduce){.contact197-dialog[open]{animation:none}.contact197 *{transition:none!important;scroll-behavior:auto!important}}

/* 203: meeting variant uses the same approved form geometry with a shorter field. */
.contact197[data-contact-mode="meeting"] textarea:not([name="message"]){min-height:96px}
.contact197 [id$="-name-hint"],.contact197 [id$="-email-hint"]{display:none}

.contact197 [id$="-pending-note"]{font-size:12px;color:var(--contact-muted)}

/* Source: /assets204/work-heading.css */
/* Review204: restore the work invitation's right-column hierarchy.
   Keep both .work-intro > span copy-editor targets and DOM reading order. */
.work .section-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
  gap: 6px clamp(32px, 3.4vw, 64px);
  align-items: end;
}
.work .section-heading h2 {
  grid-column: 1;
  grid-row: 2;
}
.work .work-intro {
  display: contents;
}
.work .work-intro > span:first-child {
  grid-column: 1;
  grid-row: 3;
  min-width: 0;
  max-width: 66ch;
  margin-top: 7px;
  font-size: clamp(16px, 1.25vw, 20px);
  line-height: 1.5;
  text-align: left;
  text-wrap: pretty;
}
.work .work-intro > span:last-child {
  grid-column: 2;
  grid-row: 2 / 4;
  justify-self: end;
  align-self: end;
  min-width: 0;
  max-width: 18ch;
  color: var(--ink);
  font-size: clamp(24px, 1.8vw, 32px);
  font-weight: 500;
  line-height: 1.14;
  letter-spacing: -.03em;
  text-align: right;
  text-wrap: balance;
}
@media (max-width: 1000px) {
  .work .section-heading {
    display: block;
  }
  .work .work-intro {
    display: block;
    max-width: 600px;
    margin-top: 14px;
    text-align: left;
  }
  .work .work-intro > span:first-child {
    margin-top: 0;
    font-size: 16px;
  }
  .work .work-intro > span:last-child {
    max-width: 25ch;
    margin-top: 16px;
    font-size: 24px;
    text-align: left;
  }
}

/* Source: /assets237/branding.css */
/*237: the badge and company name form the logo. The agency statement is
  separate footer copy, with the established coastline, scale and spacing. */
:is(.site-header,.footer) .lockup{align-items:center}
:is(.site-header,.footer) .lockup .wm{justify-content:center}
.footer > .footer-tagline{
  margin:18px 0 0;
  max-width:none;
  color:#eadfc9;
  font-family:Schibsted,sans-serif;
  font-size:clamp(12px,calc(9 * var(--u)),15px);
  font-weight:450;
  line-height:1.5;
  letter-spacing:.015em;
  text-align:left;
}
.footer > .footer-tagline + .footer-bottom{margin-top:6px}
@media(max-width:760px){
  .footer > .footer-tagline{margin-top:18px;font-size:12px;text-align:center;text-wrap:balance}
  .footer > .footer-tagline + .footer-bottom{margin-top:4px}
}

/* Source: /assets241/footer.css */
/*241: one aligned identity group, with deliberate space before legal copy.
  Preserve the original badge/name/tagline, seal sizes and coastal artwork. */
@media(min-width:761px){
  .footer .footer-brand{gap:clamp(18px,calc(10 * var(--u)),24px)}
  .footer .certifications{
    align-self:flex-start;
    justify-content:flex-start;
    margin-inline:0;
  }
  .footer > .footer-bottom{margin-top:clamp(16px,calc(10 * var(--u)),24px)}
}
@media(max-width:760px){
  .footer .footer-main{gap:20px}
  .footer .footer-utility{gap:12px}
  .footer .footer-brand{gap:8px}
  .footer > .footer-bottom{margin-top:12px}
}

/* Source: /assets248/policy.css */
/* The existing legal page owns the reading surface; this adds only policy tables
   and a shared legal-link group without changing the approved footer layout. */
.footer .footer-legal{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px 22px}
.footer .footer-legal a{display:inline-flex;align-items:center;min-height:32px;white-space:nowrap;font-size:inherit}
.footer .footer-legal a:focus-visible{outline:2px solid #f7d58f;outline-offset:5px;border-radius:2px}
.policy248{max-width:900px}
.policy248 h1{max-width:18ch;text-wrap:balance}
.policy248 .policy-meta{margin:0 0 34px;color:#365365;line-height:1.8}
.policy248 .policy-meta strong{font-weight:600}
.policy248 .policy-original{display:inline-flex;gap:10px;align-items:center;margin-bottom:22px;font-weight:600;font-size:15px}
.policy248 .policy-original svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.policy248 .policy-intro{font-size:18px;line-height:1.8}
.policy248 h2{scroll-margin-top:110px}
.policy248 ol{padding-left:24px}
.policy248 li{padding-left:5px;margin-bottom:14px}
.policy248 table{width:100%;border-collapse:collapse;margin:28px 0 40px;text-align:left;font-size:15px;line-height:1.7}
.policy248 caption{text-align:left;font-weight:600;margin-bottom:15px}
.policy248 th,.policy248 td{vertical-align:top;padding:17px 18px;border-bottom:1px solid #ccd3cf}
.policy248 thead th{font-size:13px;letter-spacing:.03em;color:#365365;border-bottom:1px solid #99aaa8}
.policy248 tbody th{font-weight:600}
.policy248 .policy-tools th:first-child{width:25%}
.policy248 .policy-tools td:nth-child(2){width:38%}
.policy248 .policy-control th{width:25%}
.policy248 .cell-label{display:none}
.policy248 a:focus-visible{outline:2px solid #76551a;outline-offset:5px}
.policy248 ::selection{background:#efd7a0;color:#03273c}
@media(max-width:760px){
 .footer .footer-legal{justify-content:center;gap:4px 20px}
 .footer .footer-legal a{font-size:11px}
 .policy248 .policy-intro{font-size:17px}
 .policy248 .policy-tools,.policy248 .policy-tools tbody,.policy248 .policy-tools tr,.policy248 .policy-tools th,.policy248 .policy-tools td{display:block;width:auto}
 .policy248 .policy-tools caption{display:block;width:100%}
 .policy248 .policy-tools thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%)}
 .policy248 .policy-tools tr{padding:18px 0;border-bottom:1px solid #ccd3cf}
 .policy248 .policy-tools th,.policy248 .policy-tools td{padding:0;border:0}
 .policy248 .policy-tools td{margin-top:12px}
 .policy248 .policy-tools th:first-child,.policy248 .policy-tools td:nth-child(2){width:auto}
 .policy248 .cell-label{display:block;font-weight:600;font-size:12px;color:#365365;margin-bottom:3px}
 .policy248 .policy-control th,.policy248 .policy-control td{padding:13px 8px;font-size:14px;overflow-wrap:anywhere}
 .policy248 .policy-control th{width:32%}
}
@media print{
 .policy248{max-width:none;padding:0}
 .site-header,.footer,.skip-link,.policy-original,.back220{display:none!important}
 .policy248 h1{font-size:30px}
 .policy248 h2{break-after:avoid}
 .policy248 tr{break-inside:avoid}
}

/* Source: /assets261/navigation.css */
/*261: one clear way home; a compact four-station rail within the approved palette. */
@media(min-width:761px){.site-header #main-nav{gap:clamp(17px,2.1vw,30px)}.site-header #main-nav>a:not(.button){white-space:nowrap}}
body.secondary197 .route-nav197{left:auto;right:5.2%;top:calc(var(--secondary-header-height198,105px) + 3px);width:max-content;max-width:89.6%;min-height:0;gap:3px;justify-content:flex-start;padding:5px;border:1px solid #bfa97685;border-radius:6px;background:#092f3ef5;box-shadow:0 5px 12px #062c401c;isolation:isolate;backdrop-filter:none}
body.secondary197 .route-nav197 a{position:relative;z-index:1;gap:8px;min-height:38px;padding:8px 15px;border:0;border-radius:3px;color:#fbf6e9;font-size:13px;line-height:1.2;font-weight:550;transition:color 180ms ease,background-color 180ms ease;white-space:nowrap}
body.secondary197 .route-nav197 a svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;flex:none;transition:transform 250ms cubic-bezier(.22,1,.36,1)}
body.secondary197 .route-nav197 a::after,body.secondary197 .route-nav197 a[aria-current=page]::after{content:none}
body.secondary197 .route-nav197 a[aria-current=page]{color:#092f3e;background:#efdfbc}
body.secondary197 .route-nav197 a:hover,body.secondary197 .route-nav197 a:focus-visible{color:#092f3e;background:#efdfbc}
body.secondary197 .route-nav197 a:hover svg{transform:translateY(-1px)}
body.secondary197 .route-nav197 a:focus-visible{outline:2px solid #f6cc7b;outline-offset:3px}
body.secondary197 .route-nav197[data-nav-ready] a{background:transparent}
body.secondary197 .route-nav197[data-nav-ready] a[aria-current=page]{color:#f4d499}
body.secondary197 .route-nav197[data-nav-ready] a.is-target261{color:#092f3e}
.route-nav197 .route-glider261{position:absolute;z-index:0;left:0;top:5px;bottom:5px;width:100px;background:#efdfbc;border-radius:3px;transform-origin:left center;pointer-events:none;opacity:0;transition:transform 250ms cubic-bezier(.22,1,.36,1),opacity 150ms ease}
body.secondary197 .route-nav197[data-nav-ready] .route-glider261{opacity:1}
@media(min-width:761px) and (max-width:1100px){.site-header #main-nav{gap:17px}.site-header #main-nav>a{font-size:14px}.site-header #main-nav>.button{padding-inline:20px}}
@media(max-width:760px){body.secondary197 .route-nav197{left:5%;right:5%;top:var(--secondary-header-height198,88px);width:90%;max-width:90%;gap:2px;padding:4px;min-height:0}body.secondary197 .route-nav197 a{flex:1;gap:6px;min-height:40px;padding:8px 7px;font-size:12px}body.secondary197 .route-nav197 a svg{width:14px;height:14px}.route-nav197 .route-glider261{top:4px;bottom:4px}}
@media(max-width:360px){body.secondary197 .route-nav197 a{gap:4px;padding-inline:5px;font-size:11px}body.secondary197 .route-nav197 a svg{width:13px;height:13px}}
@media(prefers-reduced-motion:reduce){body.secondary197 .route-nav197 a,.route-nav197 .route-glider261,body.secondary197 .route-nav197 a svg{transition:none!important;transform:none}.route-nav197 .route-glider261{display:none}body.secondary197 .route-nav197[data-nav-ready] a.is-target261{background:#efdfbc}}

/* Source: /assets265/surface.css */
/* Shared entry typography and small navigation/motion affordances.
   The approved homepage typography, artwork and scene motion stay independent. */
:root{--entry-title265:clamp(38px,4.55vw,76px);--entry-lead265:clamp(18px,1.6vw,25px);--entry-action265:clamp(16px,1.25vw,20px)}
body.secondary197 .entry-hero265 .entry-copy265 .entry-title265{font-size:var(--entry-title265);line-height:1.045;font-weight:620;letter-spacing:-.04em;margin:0;max-width:14ch}
body.secondary197 .entry-hero265 .entry-copy265 .entry-title265 span{display:block}
body.secondary197 .entry-hero265 .entry-copy265 .entry-title265 span:last-child{white-space:nowrap}
body.secondary197 .entry-hero265 .entry-copy265 .entry-lead265{display:block;font-size:var(--entry-lead265);line-height:1.45;font-weight:450;letter-spacing:-.015em;color:#244657;margin:24px 0 0!important;max-width:32ch!important;width:100%}
body.secondary197 .entry-hero265 .entry-copy265 .entry-action265{display:inline-flex;align-items:center;justify-content:center;font-size:var(--entry-action265);line-height:1.25;font-weight:600;letter-spacing:0;min-height:52px;margin-top:26px;padding:15px 25px;gap:23px;white-space:normal;text-align:left}
body.secondary197 .entry-hero265 .entry-copy265 .entry-action265 svg{width:24px;height:24px;flex-shrink:0}
body.secondary197 .entry-hero265 .contact-invitation264{margin-top:0;max-width:500px}
body.secondary197 .build197-hero.entry-hero265 .entry-copy265 .entry-lead265{width:82%;max-width:27ch!important}
.scroll-cue265{position:absolute;z-index:12;left:50%;bottom:20px;transform:translateX(-50%);display:grid;place-items:center;width:52px;height:52px;border-radius:50%;color:#fff9eb;text-decoration:none!important;isolation:isolate;border:0;background:transparent;box-shadow:none;cursor:pointer;touch-action:manipulation;opacity:1;visibility:visible;transition:opacity .22s ease,visibility 0s}
.scroll-cue265.is-scrolled268{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility 0s .22s}
.scroll-cue265 svg{width:20px;height:32px;overflow:visible;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 1px #061c42cc);transition:transform .3s cubic-bezier(.2,.7,.2,1);animation:cue-breathe269 3.6s ease-in-out infinite}
.scroll-cue265 svg>path:first-child{opacity:1}
.scroll-cue265 .cue-trace265{stroke:#f1ce82;stroke-dasharray:9 24;animation:cue-path265 2.2s cubic-bezier(.4,0,.3,1) 2}
.scroll-cue265:hover{background:transparent;box-shadow:none}
.scroll-cue265:hover svg{transform:translateY(2px)}
.scroll-cue265:active svg{transform:translateY(3px)}
.scroll-cue265:focus-visible{outline:2px solid #976921;outline-offset:2px}
/* Quiet attention inside the stationary hit target; pause once scrolled away. */
.scroll-cue265.is-scrolled268 svg{animation-play-state:paused}
.scroll-cue265:is(:hover,:focus-visible) svg{animation:none;opacity:1}
@keyframes cue-breathe269{0%,100%{transform:translateY(-2px);opacity:.55}50%{transform:translateY(2px);opacity:.95}}
@keyframes cue-path265{0%,15%{stroke-dashoffset:25;opacity:.2}65%,100%{stroke-dashoffset:-8;opacity:1}}
/* Transform the child, measure the stable frame. Horizontal yaw only. */
[data-hero-tilt265]{perspective:1100px;transform-style:preserve-3d}
[data-hero-tilt265]>[data-hero-art265]{transform:translate3d(var(--hero-pan265,0px),0,0) rotateY(var(--hero-yaw265,0deg));transform-origin:50% 55%;backface-visibility:hidden}
body.lab260 .lab260-apparatus[data-hero-tilt265]>.motion-art260[data-hero-art265]{transform:translate3d(var(--hero-pan265,0px),0,0) rotateY(var(--hero-yaw265,0deg))!important}
body.lab260 .lab265-copy .eyebrow{font-size:14px;line-height:1.5}
@media(max-width:760px){
 body.secondary197 .entry-hero265 .entry-copy265 .entry-title265{max-width:15ch}
 body.secondary197 .entry-hero265 .entry-copy265 .entry-title265 span:last-child{white-space:normal}
 body.secondary197 .entry-hero265 .entry-copy265 .entry-lead265{margin-top:20px!important;max-width:30ch!important}
 body.secondary197 .entry-hero265 .entry-copy265 .entry-action265{min-height:50px;margin-top:22px;padding:13px 20px;gap:17px}
 body.secondary197 .entry-hero265 .contact-invitation264 p br{display:none}
 body.secondary197 .entry-hero265 .contact-invitation264 .entry-lead265{color:#0a2e43;text-shadow:0 1px 5px #ffedc6,0 0 12px #ffedc6}
 .scroll-cue265{bottom:12px}
}
@media(prefers-reduced-motion:reduce){
 .scroll-cue265 svg{animation:none;opacity:1;transform:none!important}
 .scroll-cue265 .cue-trace265{animation:none;stroke-dasharray:none}
 .scroll-cue265,.scroll-cue265.is-scrolled268,.scroll-cue265 svg{transition:none}
 [data-hero-tilt265]>[data-hero-art265],body.lab260 .lab260-apparatus[data-hero-tilt265]>.motion-art260[data-hero-art265]{transform:none!important}
}

/* Source: /assets265/readability.css */
/*265 shared type floor. Component roles use one scale; larger display type,
  approved image lettering and brand geometry remain in their existing system. */
:root{--ig-type-note:14px;--ig-type-body:clamp(16px,1.25vw,18px);--ig-type-nav:clamp(14px,1.1vw,16px);--ig-type-label:clamp(14px,1.12vw,16px)}
body .eyebrow,body .route-kicker197{font-size:var(--ig-type-label)!important;line-height:1.5}
body .footer .footer-bottom,body .footer .footer-bottom>span,body .footer .copyright,body .footer .footer-legal a{font-size:var(--ig-type-note);line-height:1.5}
body .footer .footer-links nav a{font-size:var(--ig-type-nav);line-height:1.5}
body .footer .footer-legal a{min-height:32px;display:inline-flex;align-items:center}
body .route-nav197 a,body .procurement-nav260 a,body .code-tabs260 button span{font-size:var(--ig-type-note)!important;line-height:1.4}
/* Media chrome, reading navigation and short captions. */
body .case-film-caption261,body .case-chapter-label261,body .case-chapter-label261>span,body .case-film-top260>span,
body .case-back260,body .case-reading-nav261 a span,body .case-evidence260 figcaption span,
body .case-film-jump261,body .case-next-story260>span,body .case-facts260>p>strong,
body .exhibit-label span,body .exhibit-credit,body .model-toolbar>span,
body .kcad-scene-descriptions>summary,body .case-credit,body .case-count span,
body .deck-project>span,body .deck-project>strong{font-size:var(--ig-type-note)!important;line-height:1.45}
body .case-facts260>p,body .case-device260,body #kcad-description,
body .kcad-scene-descriptions p,body .exhibit-story p,body .exhibit-disclaimer,
body #model-help,body .exhibit-heading>div>p{font-size:var(--ig-type-body)!important;line-height:1.6}
body .case-next260 .button,body .case-wrap260>.button,body .exhibit-heading>.button,
body .capability260-actions .button{font-size:16px!important;line-height:1.35;min-height:48px}
body .entry261-controls label{font-size:16px;line-height:1.45}
body .contact197-load>p,body .contact197-load>a,body .intent261>p{font-size:16px;line-height:1.5}
body.contact260 .intent261 label span{font-size:var(--ig-type-note)!important;line-height:1.4}
body.contact260 .intent261>p{font-size:16px!important;line-height:1.5}
body.cases260 main .case-device260,body.cases260 main .kcad-scene-descriptions p,body.cases260 main .exhibit-disclaimer{font-size:var(--ig-type-body)!important;line-height:1.6}
body .contact197 label,body .contact197 .field-hint,body .contact197 .required-note,body .contact197 .privacy-note,body .contact197 .form-status,body .contact197 .context-summary{font-size:var(--ig-type-note)!important;line-height:1.5}
body .contact197 input:not([type=checkbox]):not([type=radio]):not([type=hidden]),body .contact197 textarea,body .contact197 select{font-size:16px!important;line-height:1.5}
body .policy248 th,body .legal220 th,body .capability260 dt,body .policy248 details nav a{font-size:var(--ig-type-note);line-height:1.5}
body .policy-tools th,body .policy-control th,body nav[aria-label="Policy contents"] a{font-size:var(--ig-type-note);line-height:1.5}
body .skip-link{font-size:16px;line-height:1.4}
/* Homepage content remains in its approved composition, at readable sizes. */
body .station-copy>span{font-size:var(--ig-type-note)!important;line-height:1.4}
body .case-description,body .government-copy>p,body .studio-copy>p{font-size:var(--ig-type-body)!important;line-height:1.55}
body .studio-copy .text-link,body .government-copy .text-link{font-size:16px;line-height:1.45}
@media(max-width:760px){
 body .hero-copy>p{font-size:16px!important;line-height:1.55}
 body .station-copy>strong{font-size:var(--ig-type-note)!important;line-height:1.35;min-height:56px}
 body .station-copy>span{min-height:3.5em}
 body .footer .footer-bottom>span{display:flex;flex-wrap:wrap;gap:4px 12px}
 body .footer .copyright{display:block}
 body .case-film-top260{gap:12px;align-items:center;flex-wrap:wrap}
 body .case-chapters260 button{min-height:58px}
 body .case-next260 .button{white-space:normal;text-align:center}
}
@media(min-width:360px) and (max-width:389px){body .route-nav197 a{padding-inline:6px;gap:5px}}
@media(max-width:359px){body .route-nav197 a{padding-inline:9px}body .route-nav197 a svg{display:none}}

/* Source: /assets265/polish.css */
/* Final265 polish: the existing paper, navy and brass system. */
:root{--ig-brass-readable:#76551a}
body.cases260 .case-step-mark261{font-size:var(--ig-type-note,14px);color:var(--ig-brass-readable)}
body.page-contact198 #project-enquiry aside>.eyebrow{color:var(--ig-brass-readable)}
body .legal220 p>a:not(.button),body .legal220 li>a:not(.button){font-weight:650}
/* Related desktop process paragraphs share a baseline; mobile stays natural. */
@media(min-width:1001px){.process265-stages h3{min-block-size:3.9em}}
/* Override the inherited thumbnail/text grid inside the newer download cards. */
@media(max-width:760px){
 .cases260 .case-posters260.case-posters264>a{display:flex;flex-direction:column;gap:12px}
 .case-posters264>a>span{width:100%;min-width:0;justify-content:space-between}
 .case-posters264>a>small{align-self:stretch}
}

