/* CMS fields stay inside the supplied RAWK typography and spacing system. */
body[data-accent="orange"]{--acid:#f4af78}body[data-accent="violet"]{--acid:#c5a5ef}body[data-accent="orange"] .contact{background:#f4af78}body[data-accent="violet"] .contact{background:#c5a5ef}.cms-tone-light .work,.cms-tone-light .archive-body,.cms-tone-light .studio-story,.cms-tone-light .cms-article,.cms-tone-light .cms-section:not(.cms-background-dark):not(.cms-background-accent){background:#eef0e5;color:#173228}.cms-tone-light .work p,.cms-tone-light .project-caption small,.cms-tone-light .archive-description,.cms-tone-light .studio-story p,.cms-tone-light .cms-article p,.cms-tone-light .cms-section:not(.cms-background-dark):not(.cms-background-accent) .cms-section-body,.cms-tone-light .cms-section:not(.cms-background-dark):not(.cms-background-accent) .cms-section-intro{color:#4c6658}.cms-tone-light .cms-card{background:#f6f7f0;color:#173228;border-color:#234d3425}.cms-tone-light .cms-card p{color:#4c6658}.cms-tone-light .cms-section .button-light{background:#173228;color:#eef0e5}body[data-animation="none"] .marquee-track,body[data-animation="none"] .status-dot,body[data-animation="none"] .orbit-dot,body[data-animation="none"] .scroll-line::after,body[data-animation="none"] .sonar-point>i::after{animation:none!important}body[data-animation="reduced"] .marquee-track{animation-duration:90s}body[data-animation="reduced"] .release{display:none}
.cms-multiline,[data-field="description"]{white-space:pre-line}.cms-languages{display:flex;gap:9px;font:8px var(--mono)}.cms-languages a{color:var(--muted)}.cms-languages a[aria-current="page"]{color:var(--acid)}.desktop-nav{padding-left:2vw;gap:26px}.header-right{gap:24px}.cms-section{position:relative;border-top:1px solid var(--rule);background:#0a191ee6}.cms-section-copy{max-width:800px}.cms-section-copy h2,.cms-section-heading h2{font-size:clamp(38px,5.1vw,80px);line-height:1.02}.cms-section-body,.cms-section-intro{font-size:15px;line-height:1.9;color:#a9bbb4;margin-top:28px;max-width:780px}.cms-section-copy .button{margin-top:30px}.cms-section-heading{margin-bottom:42px}.cms-section-heading .eyebrow{margin-bottom:27px}.cms-section-text_image{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.cms-section-text_image.cms-layout-left .cms-section-image{grid-column:1;grid-row:1}.cms-section-text_image.cms-layout-left .cms-section-copy{grid-column:2;grid-row:1}.cms-section-image{margin:0}.cms-section-image img{display:block;width:100%;height:auto;max-height:650px;object-fit:cover}.cms-layout-center{text-align:center}.cms-layout-center .cms-section-copy,.cms-layout-center .cms-section-body{margin-left:auto;margin-right:auto}.cms-background-light{background:#e8eadf;color:#14241f}.cms-background-light .cms-section-body,.cms-background-light .cms-section-intro{color:#4d6257}.cms-background-dark{background:#051016}.cms-background-accent{background:#c3e791;color:#14251a}.cms-background-accent .cms-section-body,.cms-background-accent .cms-section-intro{color:#395334}.cms-background-accent .button-light{background:#14251a;color:#e8eddf}.cms-quote{max-width:1000px;margin:0 auto}.cms-quote p{font:italic clamp(34px,5.5vw,82px)/1.12 var(--serif);letter-spacing:-.045em}.cms-quote cite{display:block;margin-top:30px;font:10px var(--mono);letter-spacing:1.4px;color:var(--muted)}.cms-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.cms-card{display:block;position:relative;border:1px solid var(--rule);background:#0a1b20;padding:26px;min-height:245px}.cms-card:hover{border-color:#c3ef8080}.cms-card>img{width:calc(100% + 52px);aspect-ratio:1.55;object-fit:cover;margin:-26px -26px 24px;display:block}.cms-card h3{font-size:25px;letter-spacing:-.8px;line-height:1.1;margin:18px 0}.cms-card>p{font-size:12px;line-height:1.8;color:#a9bbb4;padding-right:18px}.cms-card-arrow{display:block;font-size:25px;color:var(--acid);margin-top:23px}.cms-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.cms-gallery figure{margin:0}.cms-gallery img{width:100%;display:block;aspect-ratio:1.3;object-fit:cover}.cms-gallery figcaption{font-size:12px;margin-top:15px;color:#b2c4ba}.cms-gallery figcaption p{font-size:11px;line-height:1.8;margin-top:8px}.cms-standard-hero{padding-bottom:75px}.cms-standard-hero>.eyebrow{margin:45px 0 27px}.cms-standard-hero>.sub-lead{margin-top:30px;max-width:620px}.cms-standard-hero>.button{margin-top:30px}.cms-standard-cover{padding:0 var(--gutter);margin:60px 0}.cms-standard-cover img{display:block;width:100%;max-height:650px;object-fit:cover}.cms-article{max-width:1100px;margin:auto}.cms-article p{font-size:18px;line-height:1.95;color:#b3c6bc}.cms-event-meta{display:flex;gap:20px;font-size:17px;color:var(--acid);padding-top:35px;padding-bottom:35px;border-bottom:1px solid var(--rule)}.cms-empty{font:13px/1.8 var(--sans);color:var(--muted);padding:30px 0}.hero-description p{max-width:350px;white-space:pre-line}.cms-cover-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.case-cover-art{width:100%!important;height:100%!important;left:0!important;top:0!important;mask-image:none!important}.project-image{width:100%;height:100%;object-fit:cover;display:block}.cms-section-accordion{display:grid;grid-template-columns:1fr 1.25fr;gap:7vw}.cms-section-accordion .service-list{padding-top:0}.cms-section-cta,.cms-section-hero{padding-top:90px;padding-bottom:90px}.cms-section-contact{background:#0b211d}.cms-card .eyebrow{font-size:8px}.cms-section [hidden]{display:none!important}
body[data-preview="true"] [data-edit-section]{cursor:pointer}body[data-preview="true"] [data-edit-section]:hover{outline:2px solid #4a968e;outline-offset:-2px}body[data-preview="true"] [data-edit-section].cms-selected{outline:3px solid #b8ea89;outline-offset:-3px}body[data-preview="true"] [data-edit-section]::after{content:attr(data-edit-label);position:absolute;right:10px;top:10px;font:11px Arial,sans-serif;letter-spacing:0;background:#1b5c51;color:white;border-radius:5px;padding:5px 9px;z-index:19;pointer-events:none;opacity:0}body[data-preview="true"] [data-edit-section]:hover::after{opacity:1}.hero-content{pointer-events:auto}.cms-preview-image{display:block;width:100%;height:auto}
@media(max-width:1050px){.desktop-nav{gap:18px}.desktop-nav a{font-size:11px}.header-right{gap:14px}.contact-nav{gap:10px}.cms-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.cms-section-text_image,.cms-section-accordion{grid-template-columns:1fr;gap:35px}.cms-section-text_image.cms-layout-left .cms-section-image,.cms-section-text_image.cms-layout-left .cms-section-copy{grid-column:auto;grid-row:auto}.cms-section-text_image.cms-layout-left .cms-section-image{order:-1}.cms-section-copy h2,.cms-section-heading h2{font-size:38px}.cms-section-body,.cms-section-intro{font-size:13px}.cms-cards{grid-template-columns:1fr}.cms-gallery{gap:14px}.cms-event-meta{font-size:13px;gap:10px;flex-wrap:wrap}.cms-standard-hero{padding-bottom:45px}.cms-standard-hero>.sub-lead{font-size:14px}.cms-standard-hero .sub-title{font-size:clamp(45px,12vw,80px)}.cms-article p{font-size:16px}.cms-section-heading{margin-bottom:28px}.cms-section-image img{max-height:420px}.cms-languages{font-size:9px}.hero-content{max-width:87%}.hero h1{font-size:clamp(60px,13vw,100px)}.hero-description p{max-width:260px}.cms-quote cite{font-size:8px}}
@media(prefers-reduced-motion:reduce){.cms-section{scroll-behavior:auto}}

/* The desktop hero fills the viewport; the marquee starts below the fold. */
@media(min-width:761px){body[data-view="home"] .hero{height:100svh;min-height:780px;max-height:none}}
.wordmark{display:block;width:max-content;white-space:nowrap;flex-shrink:0}.logo-dot{display:inline}

.lightbox{border:0;padding:0;background:transparent;max-width:min(96vw,1600px);max-height:96vh;overflow:visible}.lightbox::backdrop{background:#03090cf2}.lightbox figure{margin:0;display:grid;justify-items:center;gap:14px}.lightbox img{max-width:min(96vw,1600px);max-height:84vh;object-fit:contain;display:block}.lightbox figcaption{color:#d6e2d9;font-size:14px;text-align:center}.lightbox-close,.lightbox-nav{position:fixed;top:50%;transform:translateY(-50%);border:0;background:#0a1b20cc;color:#fff;font-size:34px;line-height:1;width:52px;height:52px;border-radius:50%;cursor:pointer}.lightbox-close{top:18px;right:18px;transform:none;font-size:28px}.lightbox-prev{left:18px}.lightbox-next{right:18px}.lightbox-counter{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);color:#9cae9a;font-size:12px}a[data-lightbox]{display:block;cursor:zoom-in}a[data-lightbox] img{transition:opacity .2s}a[data-lightbox]:hover img{opacity:.88}.cms-case-title-row{grid-template-columns:1fr}.cms-case-lead{grid-template-columns:1fr;gap:26px;max-width:900px}.cms-case-lead .tags{justify-content:start}.cms-case-meta{display:flex;flex-wrap:wrap;gap:24px 46px;margin:0;padding-top:22px;border-top:1px solid var(--rule)}.cms-case-meta div{display:grid;gap:8px}.cms-case-meta dt{font:9px var(--mono);letter-spacing:1.4px;color:var(--muted)}.cms-case-meta dd{margin:0;font:11px var(--mono);letter-spacing:.8px}.cms-case-meta dd.tags{display:flex;flex-wrap:wrap;gap:8px}.cms-case-facts{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:12px}.cms-case-facts li{font:11px var(--mono);letter-spacing:.8px;display:grid;gap:4px}.cms-case-facts li span{font-size:8px;color:var(--muted);letter-spacing:1.3px}.cms-cover-link{position:absolute;inset:0;display:block;cursor:zoom-in}.cms-cover-link .cms-cover-image{position:absolute;inset:0}.cms-case-related{border-top:1px solid var(--rule)}

.video-player,.video-embed{margin:0;position:relative;width:100%;aspect-ratio:16/9;background:#0b1512;overflow:hidden;border-radius:.6rem}.video-player video,.video-embed img,.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}.video-embed-consent{position:absolute;inset:0;display:grid;place-content:center;gap:.8rem;text-align:center;padding:1.5rem;background:#0b1512b3;color:#fff}.video-embed-consent p{font-size:.85rem;max-width:34rem;margin:0}.video-embed-consent a{color:inherit}.video-embed.is-loaded .video-embed-consent{display:none}
.cms-section-video{margin-top:40px}
