/* Collection 02 — art direction, composed on the shared accessible foundation. */
:root { --font:'DM Sans',sans-serif; }
body { font-size:16px; }
h1,h2,h3 { text-wrap:balance; }
p { text-wrap:pretty; }
.btn { min-height:54px; border-radius:8px; }
.wrap { width:min(1360px,calc(100% - 96px)); }
.section { padding-block:108px; }
.eyebrow { letter-spacing:.13em; }
.site-header .nav-row { height:96px; }
.brand-icon:empty { display:none; }
.site-footer .brand { font-size:24px; }
.editorial-feature { display:grid; grid-template-columns:1.1fr 1fr; gap:8%; align-items:center; }
.feature-image { position:relative; }
.feature-image img { width:100%; height:540px; }
.image-index { position:absolute; bottom:20px; left:22px; background:#fff; color:#202b2a; font-size:10px; padding:10px 14px; text-transform:uppercase; letter-spacing:.08em; }
.feature-copy h2 { font-size:clamp(2.5rem,4.3vw,4.4rem); }
.feature-copy p { margin:26px 0 32px; max-width:420px; color:var(--muted); }
.project-card .media,.product-image,.insight img { border-radius:8px; }
.contact-form .btn { justify-content:space-between; }
.contact-section h2 { max-width:12ch; }
.contact-section .eyebrow { line-height:1.6; }
/* Mason — cinematic, grounded, architectural. */
.mason { --ink:#172c2c; --paper:#f5f3ed; --accent:#e6c16b; --muted:#63736c; --line:#d3dad2; }
.mason .site-header { background:var(--ink); color:var(--paper); }
.mason .site-header .btn { background:var(--accent); color:var(--ink); }
.mason .brand { font-size:27px; letter-spacing:-.045em; }
.mason .brand-icon { border-radius:0; border:0; font-size:38px; font-family:'Cormorant Garamond',serif; border-bottom:1px solid var(--accent); color:var(--accent); }
.mason .btn { border-radius:6px; }
.mason-hero.cinematic { margin:0; max-width:none; min-height:690px; border-radius:0; background:#233333; }
.cinematic>img { object-position:center 57%; }
.mason-hero.cinematic::after { background:linear-gradient(90deg,#0c2329e8 0%,#122a2b89 47%,#15222215 100%),linear-gradient(0deg,#0e222bd9,transparent 40%); }
.cinematic-content { position:relative; z-index:2; padding-block:105px 135px; }
.cinematic .eyebrow { color:#e6c16b; margin-bottom:28px; }
.mason-hero h1 { font-size:clamp(4.7rem,7.3vw,7.5rem); line-height:1.01; letter-spacing:-.055em; }
.cinematic-content>p { font-size:17px; line-height:1.7; color:#eef1e7; margin:28px 0; }
.cinematic .actions { gap:35px; }
.hero-side-note { position:absolute; z-index:2; right:48px; top:120px; font-size:10px; line-height:1.7; letter-spacing:.16em; writing-mode:vertical-rl; }
.cinematic-foot { position:absolute; z-index:2; bottom:70px; left:48px; right:48px; display:flex; justify-content:space-between; font-size:11px; letter-spacing:.06em; text-transform:uppercase; }
.service-dock { position:relative; z-index:3; margin-top:-40px; display:grid; grid-template-columns:repeat(3,1fr); background:#fff; box-shadow:0 16px 60px #102b2810; border-radius:7px; }
.service-dock a { padding:30px 34px; position:relative; }
.service-dock a+a { border-left:1px solid var(--line); }
.service-dock span { display:block; font-size:10px; letter-spacing:.12em; color:#66746a; margin-bottom:12px; }
.service-dock strong { font-size:16px; font-weight:500; padding-right:15px; display:block; }
.service-dock i { position:absolute; right:24px; top:30px; font-size:22px; font-style:normal; }
.service-dock a:hover { background:#e6c16b25; }
.mason-intro { grid-template-columns:.8fr 1.6fr; }
.mason-services { gap:0; border-top:0; padding-top:0; }
.mason-services article { padding:35px; background:#e8ebe1; border-top:3px solid var(--accent); }
.mason-services article+article { border-left:1px solid #cdd4c7; }
.mason-services h3 { font-size:26px; }
.mason-services .eyebrow { margin-bottom:35px; }
.mason #projects .grid-3 { gap:30px; }
.mason .project-card:nth-child(2) { padding-top:65px; }
.mason .project-card img { aspect-ratio:4/4.5; }
.mason .editorial-feature { padding-top:10px; }
.mason .feature-image img { object-position:center 58%; }
.mason-process { background:#e8ebe1; }
/* Current — professional trade brand with a direct booking path. */
.current { --paper:#fffaf2; --ink:#102b3b; --accent:#ffa451; --muted:#607482; --line:#d7dedc; }
.current .service-ribbon { background:#102b3b; color:#fff; }
.current .site-header { background:#fffaf2; }
.current .site-header .btn { background:#102b3b; }
.current .brand-icon { background:var(--accent); }
.current .btn { border-radius:7px; }
.current-hero-v2 { min-height:610px; position:relative; color:white; background:#102b3b; overflow:hidden; }
.current-hero-image { position:absolute; inset:0; }
.current-hero-image img { width:100%; height:100%; object-position:60% center; }
.current-hero-v2::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#102b3b 6%,#102b3bf2 32%,#102b3b77 56%,#102b3b05 85%); }
.current-hero-layout { position:relative; z-index:2; padding-block:85px 100px; }
.current-hero-copy { max-width:700px; }
.current-hero-copy h1 { font-size:clamp(4rem,7vw,7rem); line-height:1.04; font-weight:650; letter-spacing:-.055em; }
.current-hero-copy h1 em { font-style:normal; color:var(--accent); }
.current-hero-copy .eyebrow { color:#ffbc80; }
.current-hero-copy>p { margin-top:28px; font-size:17px; color:#d7e2e9; }
.current-hero-copy .btn { color:#102b3b; }
.current-pledge { margin-top:40px; }
.current-pledge span::before { color:#ffb875; }
.current-photo-label { position:absolute; z-index:2; right:4%; bottom:70px; padding:20px 25px; background:#fffaf2; color:#102b3b; border-radius:7px; }
.current-photo-label span { font-size:9px; letter-spacing:.12em; display:block; margin-bottom:10px; }
.current-photo-label strong { font-size:17px; font-weight:500; line-height:1.3; }
.current .booking-strip { position:relative; z-index:3; margin-top:-35px; background:#fff; border-radius:9px; box-shadow:0 16px 50px #102b3b14; padding:35px; }
.current .booking-strip .btn { background:var(--accent); color:#102b3b; }
.current .booking-strip .booking-status { color:#526773; font-size:10px; }
.current .service-card { padding:38px; box-shadow:none; border:1px solid #d8e1df; }
.current .service-symbol { border-radius:10px; background:#fff0dd; color:#b85505; }
.current .service-card h3 { font-size:27px; }
.current .editorial-feature { background:#f0eee5; padding:70px; width:min(1360px,calc(100% - 96px)); border-radius:12px; }
.current .feature-image img { height:430px; border-radius:8px; }
.current-faq { background:#eef2ed; }
/* Forge — industrial scale and technical detail. */
.forge .btn { border-radius:6px; }
.forge-heading { padding-block:55px 45px; }
.forge-heading>.eyebrow { color:var(--accent); margin-bottom:28px; }
.forge-heading>div { display:flex; align-items:end; justify-content:space-between; gap:60px; }
.forge-heading h1 { font-size:clamp(3.7rem,7vw,7.2rem); font-weight:650; line-height:1.02; letter-spacing:-.055em; }
.forge-heading h1 span { color:var(--accent); }
.forge-heading p { max-width:290px; font-size:14px; color:#b4c0b8; padding-bottom:9px; }
.forge-panorama { height:470px; position:relative; margin-inline:24px; overflow:hidden; border-radius:8px; }
.forge-panorama>img { width:100%; height:100%; object-position:center 52%; }
.forge-panorama::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#09171175,transparent); }
.forge-project-tag { position:absolute; z-index:2; left:32px; bottom:32px; background:#111a17e8; border:1px solid #90a18a66; padding:28px; backdrop-filter:blur(12px); border-radius:6px; }
.forge-project-tag .eyebrow { font-size:9px; margin-bottom:18px; color:#d7ef70; }
.forge-project-tag h3 { font-size:32px; margin-bottom:25px; }
.technical-coordinate { position:absolute; right:25px; bottom:25px; color:#fff; font:10px monospace; z-index:2; }
.forge-strip { margin-top:28px; }
.capability-panel { border-radius:8px; }
.forge-work img { border-radius:8px; }
.forge-application { background:#232c27; }
.forge-application .split { align-items:center; }
.forge-application img { height:430px; width:100%; border-radius:8px; }
.forge-application p { margin:25px 0; color:#bec9c1; }
/* Form & Field — dark studio, original work as the hero. */
.agency { --paper:#1c1b1c; --ink:#f3f0e8; --muted:#b7b2ad; --line:#454045; --accent:#c7b0ed; }
.agency .site-header { border-bottom:1px solid #494149; }
.agency .brand { gap:8px; }
.agency .brand-icon { color:#c7b0ed; }
.agency .btn { border-radius:40px; }
.agency-hero-v2 { padding-top:45px; }
.agency-intro-line { display:flex; justify-content:space-between; gap:20px; }
.agency-intro-line .eyebrow { color:#c7b0ed; }
.agency-intro-line .small { color:#b7b2ad; font-size:10px; }
.agency-hero-v2 h1 { font-size:clamp(4rem,8.2vw,8.8rem); font-weight:500; letter-spacing:-.045em; word-spacing:.025em; line-height:1.02; margin:25px 0 35px; }
.agency-hero-v2 h1>span:first-of-type { font-family:'Cormorant Garamond',serif; font-style:italic; font-weight:400; }
.agency-period { color:#c7b0ed; }
.agency-hero-lower { display:flex; align-items:center; justify-content:space-between; gap:40px; padding:10px 0 45px; }
.agency-hero-lower p { font-size:15px; color:#beb9b7; }
.agency .btn.light { background:#c7b0ed; color:#1c1b1c; }
.agency-star { color:#c7b0ed; font-size:80px; line-height:1; }
.agency-showreel { display:grid; grid-template-columns:1.4fr 1fr; gap:22px; padding-bottom:45px; }
.agency-showreel a { overflow:hidden; position:relative; border-radius:8px; }
.agency-showreel img { width:100%; height:340px; object-fit:cover; transition:transform .5s; }
.agency-showreel a:hover img { transform:scale(1.04); }
.agency-showreel span { position:absolute; bottom:0; left:0; right:0; font-size:9px; letter-spacing:.1em; background:#111b; color:#fff; padding:14px 20px; }
.agency-marquee { background:#c7b0ed; color:#1c1b1c; border:0; }
.agency-work .project-card:nth-child(even) { padding-top:60px; }
.agency-work img { aspect-ratio:1.3; }
.agency-services { color:#211d28; --line:#786585; }
.agency-services .faq p { color:#51415d; }
.agency-services .faq summary { font-size:25px; }
.studio-description { color:#b7b2ad; margin-top:28px; font-size:17px; max-width:480px; }
.studio-principles { display:flex; flex-wrap:wrap; gap:22px; font-size:10px; text-transform:uppercase; margin-top:35px; letter-spacing:.08em; }
.agency .contact-section { background:#302b32; }
.agency .contact-form .btn { color:#211d28; }
.agency .dialog { background:#f3f0e8; color:#211d28; }
.agency .dialog .btn { background:#211d28; color:white; }
/* Still — complete editorial commerce. */
.still-hero { height:660px; }
.still-hero>img { object-position:center 60%; }
.still-hero::after { background:linear-gradient(90deg,#e3dcced9,transparent 75%); }
.still-hero .hero-copy { padding-top:105px; }
.still-hero h1 { font-size:clamp(5rem,8.5vw,8.5rem); }
.still-assurance { display:flex; justify-content:space-between; padding-block:25px; border-bottom:1px solid var(--line); font-size:11px; }
.still .product-image img { height:350px; }
.still-editorial { display:grid; grid-template-columns:.7fr 1.4fr; gap:60px; align-items:center; padding-bottom:100px; }
.still-editorial h2 { font-size:clamp(3rem,5vw,5.5rem); }
.still-editorial p { margin:25px 0; font-size:15px; color:#737969; }
.still-editorial-image { position:relative; }
.still-editorial-image>img { height:500px; width:100%; border-radius:8px; }
.product-hotspot { position:absolute; top:57%; left:48%; width:40px; height:40px; border-radius:50%; background:#fffffff0; font-size:24px; box-shadow:0 0 0 8px #ffffff40; }
.product-hotspot span { position:absolute; bottom:52px; left:-60px; white-space:nowrap; font:11px 'DM Sans',sans-serif; background:white; padding:12px 15px; border-radius:4px; }
.still-story { border-radius:8px; }
.still .contact-section { background:#343a30; color:#f8f6f0; }
/* Northline — authoritative and human. */
.northline .btn { border-radius:6px; }
.northline-hero-v2 { position:relative; min-height:670px; background:#0d2e3e; color:white; }
.northline-hero-v2>img { position:absolute; inset:0; width:100%; height:100%; object-position:center 45%; }
.northline-hero-v2::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,#062737f5 0%,#082c3bd9 38%,#0d2e3e22 100%); }
.northline-hero-copy { position:relative; z-index:2; padding-block:85px 120px; }
.northline-hero-copy h1 { font-size:clamp(3.8rem,6.4vw,6.5rem); line-height:1.03; letter-spacing:-.045em; }
.northline-hero-copy h1 em { font-family:'Cormorant Garamond',serif; font-weight:400; font-size:1.15em; }
.northline-hero-copy .eyebrow { color:#bce0ee; }
.northline-hero-copy p { color:#d0dce0; margin:28px 0; font-size:16px; }
.northline-hero-bottom { position:absolute; bottom:28px; left:0; right:0; z-index:2; display:flex; justify-content:space-between; padding-top:22px; border-top:1px solid #ffffff55; font-size:10px; letter-spacing:.1em; }
.northline-band { background:#e8f0f2; }
.northline-capabilities article { transition:background .2s; }
.northline-capabilities article:hover { background:#e9f0f2; }
.northline .industry-panel img,.northline .feature-image img { border-radius:7px; }
.northline .feature-image img { height:440px; }
.northline #insights { padding-top:0; }
/* Serein — slow, tactile, warm editorial wellness. */
.serein { --paper:#f3eee5; --ink:#674b41; --accent:#d9b4a3; --muted:#866f62; --line:#d8ccc0; --display:'Cormorant Garamond',serif; }
.serein h1,.serein h2 { font-weight:400; letter-spacing:-.045em; }
.serein .brand { font-size:43px; font-weight:500; letter-spacing:-.06em; }
.serein .brand-icon { font-size:35px; }
.serein .btn { border-radius:40px; font-family:'DM Sans',sans-serif; }
.serein .site-header { border-bottom:1px solid var(--line); }
.serein .nav-row { height:100px; }
.serein-hero { display:grid; grid-template-columns:1fr 1fr; gap:9%; padding-block:55px 70px; align-items:center; }
.serein-hero h1 { font-size:clamp(5rem,8.5vw,8.7rem); line-height:.92; }
.serein-hero h1 em { color:#a4715f; }
.serein-hero .eyebrow { font-size:9px; letter-spacing:.14em; }
.serein-hero p { font-size:14px; margin:28px 0; line-height:1.8; }
.serein-signature { display:block; margin-top:32px; font-family:'Cormorant Garamond',serif; font-size:24px; font-style:italic; }
.serein-hero-photo { position:relative; }
.serein-hero-photo img { width:100%; height:620px; border-radius:260px 260px 4px 4px; object-position:center 48%; }
.serein-hero-photo span { display:block; margin-top:16px; text-align:center; font-size:9px; letter-spacing:.2em; }
.serein-ribbon { background:#e4d7ca; padding:23px; display:flex; justify-content:center; gap:60px; align-items:center; font-size:10px; text-transform:uppercase; letter-spacing:.14em; }
.serein-ribbon i { font-size:25px; line-height:1; font-style:normal; }
.serein .section-head h2 { font-size:clamp(3.5rem,5.3vw,5.3rem); }
.serein .section-head p { font-size:14px; }
.ritual { border-top:1px solid var(--line); }
.ritual:last-child { border-bottom:1px solid var(--line); }
.ritual summary { display:grid; grid-template-columns:50px 1fr 130px 24px; align-items:center; padding:28px 0; gap:30px; cursor:pointer; list-style:none; }
.ritual summary::-webkit-details-marker { display:none; }
.ritual summary>span { font:11px 'DM Sans',sans-serif; }
.ritual h3 { font-size:37px; font-weight:400; letter-spacing:-.03em; }
.ritual summary i { font-size:27px; font-style:normal; transition:transform .2s; }
.ritual[open] summary i { transform:rotate(45deg); }
.ritual>div { padding:0 80px 35px; display:flex; justify-content:space-between; gap:50px; }
.ritual p { max-width:500px; font-size:14px; color:var(--muted); }
.ritual .text-link { white-space:nowrap; align-self:start; }
.serein-experience { padding-block:95px; background:#674b41; color:#f3eee5; }
.serein-experience h2 { font-size:clamp(4rem,7vw,7rem); margin-bottom:55px; }
.serein-experience h2 em { color:#dfbdac; }
.serein-experience article { padding-top:30px; border-top:1px solid #f3eee550; }
.serein-experience article>span { display:block; font-size:10px; color:#dfbdac; margin-bottom:25px; }
.serein-experience h3 { font-size:32px; }
.serein-experience p { color:#dacac0; font-size:14px; margin-top:18px; }
.serein .contact-section { background:#e4d7ca; color:#674b41; }
.serein .contact-section h2 { font-size:clamp(4rem,6vw,6rem); }
.serein .contact-form input,.serein .contact-form select,.serein .contact-form textarea { border-color:#aa9281; background:#f3eee550; }
.serein .contact-form .btn { background:#674b41; color:#fff; }
.serein .form-status { color:#674b41; }
/* Relay — contemporary automation with a precise modular system. */
.relay { --paper:#f0f2ef; --ink:#112c3b; --accent:#ff7045; --muted:#607582; --line:#cbd6d7; }
.relay .brand { font-size:34px; letter-spacing:-.07em; }
.relay .brand-icon { color:#e65b33; font-size:46px; }
.relay .btn { border-radius:6px; }
.relay .btn.accent { color:#132c39; }
.relay-hero { padding-block:45px 60px; }
.relay-hero-top { display:flex; justify-content:space-between; gap:30px; }
.relay-hero-top .eyebrow { font-size:10px; }
.relay-indicator { font:9px monospace; display:flex; align-items:start; gap:8px; padding-top:2px; }
.relay-indicator i { width:7px; height:7px; background:#e65b33; border-radius:50%; margin-top:3px; }
.relay-hero-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:55px; align-items:center; margin-top:25px; }
.relay-hero h1 { font-size:clamp(3.5rem,5.8vw,6rem); line-height:1.05; font-weight:550; letter-spacing:-.055em; }
.relay-hero h1 em { font-style:normal; color:#748b91; }
.relay-hero p { font-size:16px; max-width:380px; margin:28px 0; }
.relay-machine { position:relative; }
.relay-machine img { height:490px; width:100%; object-position:57%; border-radius:8px; }
.relay-coordinate { position:absolute; left:18px; right:18px; bottom:18px; background:#f0f2eff5; padding:18px; font:9px monospace; border-radius:4px; }
.relay-spec { display:flex; gap:25px; margin-top:45px; padding-top:22px; border-top:1px solid var(--line); font:9px monospace; color:#607582; }
.relay-solutions { background:#112c3b; color:#f0f2ef; --muted:#b8c7ca; }
.relay-solutions .grid-3 { gap:20px; }
.relay-solution { border:1px solid #ffffff30; border-radius:8px; padding:30px; }
.relay-solution .eyebrow { font:9px/1.6 monospace; color:#ffa184; }
.relay-solution h3 { font-size:30px; margin-top:55px; }
.relay-solution p { font-size:14px; color:#bbcccf; margin:22px 0 28px; }
.relay-application { display:grid; grid-template-columns:1.2fr 1fr; gap:65px; align-items:center; }
.relay-application img { height:470px; width:100%; border-radius:8px; }
.relay-application p { margin:25px 0; color:var(--muted); }
.relay .contact-section { background:#ff7045; color:#132c39; }
.relay .contact-section input,.relay .contact-section textarea,.relay .contact-section select { border-color:#8e3f294d; background:#fff2; }
.relay .contact-form .btn { background:#112c3b; color:#fff; }
.relay .form-status { color:#112c3b; }
/* Collection gallery */
.gallery { --paper:#f0f2f3; --ink:#162d3b; }
.gallery-hero { grid-template-columns:1.5fr .8fr; padding-block:75px 65px; gap:55px; }
.gallery-hero h1 { font-size:clamp(3.4rem,5.6vw,6rem); line-height:1.06; letter-spacing:-.055em; }
.gallery-hero p { font-size:15px; }
.gallery-shot { aspect-ratio:16/10; border-radius:9px; }
.gallery-card .eyebrow { font-size:9px; line-height:1.6; }
.gallery-card-meta { gap:20px; }
.reference-intro { margin-top:22px; font-size:14px; }
.gallery-notes a { text-decoration:underline; }
@media(min-width:1700px) {
 .current-hero-layout,.cinematic-content { padding-top:120px; }
 .mason-hero.cinematic { min-height:760px; }
}
@media(max-width:1100px) {
 .wrap { width:calc(100% - 56px); }
 .desktop-nav { gap:18px; }
 .nav-row { gap:22px; }
 .editorial-feature { gap:45px; }
 .current .editorial-feature { padding:45px; width:calc(100% - 56px); }
 .current-photo-label { right:28px; bottom:65px; }
 .forge-heading>div { gap:30px; }
 .forge-heading p { max-width:230px; }
 .agency-showreel img { height:280px; }
 .serein-hero { gap:50px; }
 .serein-hero-photo img { height:560px; }
 .relay-hero-grid { gap:30px; }
 .relay-machine img { height:440px; }
 .relay-spec { gap:13px; font-size:8px; }
}
@media(max-width:760px) {
 .wrap { width:calc(100% - 40px); }
 .section { padding-block:65px; }
 .site-header .nav-row { height:78px; }
 .editorial-feature { grid-template-columns:1fr; gap:32px; }
 .feature-image img { height:390px; }
 .feature-copy h2 { font-size:38px; }
 .feature-copy p { font-size:15px; }
 .mason-hero.cinematic { min-height:640px; }
 .cinematic-content { padding-block:75px 140px; }
 .mason-hero h1 { font-size:clamp(3.7rem,13vw,5.8rem); }
 .cinematic-content>p { font-size:15px; max-width:280px; }
 .cinematic .actions { gap:20px; }
 .hero-side-note { display:none; }
 .cinematic-foot { left:20px; right:20px; bottom:60px; font-size:8px; gap:20px; }
 .cinematic-foot>span { max-width:160px; }
 .service-dock { margin-top:-30px; grid-template-columns:1fr; }
 .service-dock a { padding:22px; }
 .service-dock a+a { border-left:0; border-top:1px solid var(--line); }
 .service-dock span { font-size:9px; margin-bottom:7px; }
 .service-dock strong { font-size:16px; }
 .service-dock i { top:28px; }
 .mason-intro { grid-template-columns:1fr; }
 .mason-services article { padding:28px; }
 .mason-services article+article { border-left:0; }
 .mason-services .eyebrow { margin-bottom:20px; }
 .mason .project-card:nth-child(2) { padding-top:0; }
 .mason .project-card img { aspect-ratio:1.15; }
 .mason .editorial-feature { padding-top:0; }
 .current-hero-v2 { min-height:630px; }
 .current-hero-image { inset:0; }
 .current-hero-image img { object-position:58%; }
 .current-hero-v2::after { background:linear-gradient(90deg,#102b3be8,#102b3b99),linear-gradient(0deg,#102b3b9c,transparent); }
 .current-hero-layout { padding-block:65px 100px; }
 .current-hero-copy h1 { font-size:clamp(3.8rem,13vw,5.5rem); }
 .current-hero-copy>p { font-size:15px; max-width:300px; }
 .current-hero-copy .eyebrow { font-size:9px; }
 .current-photo-label { display:none; }
 .current .booking-strip { margin-top:-35px; padding:25px; }
 .current .editorial-feature { padding:25px; width:calc(100% - 40px); }
 .current .feature-image img { height:280px; }
 .forge-heading { padding-block:40px 30px; }
 .forge-heading>div { display:block; }
 .forge-heading h1 { font-size:clamp(3.4rem,12vw,5rem); }
 .forge-heading p { margin-top:25px; max-width:330px; }
 .forge-heading>.eyebrow { font-size:9px; }
 .forge-panorama { height:390px; margin-inline:12px; }
 .forge-project-tag { left:16px; bottom:16px; padding:22px; }
 .forge-project-tag h3 { font-size:27px; }
 .forge-project-tag .eyebrow { font-size:8px; }
 .technical-coordinate { display:none; }
 .forge-application img { height:290px; }
 .agency-hero-v2 { padding-top:30px; }
 .agency-intro-line .eyebrow { font-size:9px; }
 .agency-intro-line .small { display:none; }
 .agency-hero-v2 h1 { font-size:clamp(2.9rem,10.1vw,4.5rem); letter-spacing:-.05em; line-height:1.06; margin:20px 0 28px; }
 .agency-hero-lower { gap:25px; align-items:start; flex-wrap:wrap; padding-bottom:35px; }
 .agency-hero-lower p { font-size:13px; flex-basis:100%; }
 .agency-star { font-size:60px; margin-left:auto; }
 .agency-showreel { grid-template-columns:1fr; gap:15px; padding-bottom:30px; }
 .agency-showreel img { height:260px; }
 .agency-art-side img { height:210px; }
 .agency-work .project-card:nth-child(even) { padding-top:0; }
 .studio-description { font-size:15px; }
 .studio-principles { gap:16px; }
 .still-hero { height:620px; }
 .still-hero .hero-copy { padding-top:70px; }
 .still-hero h1 { font-size:clamp(4.4rem,16vw,6rem); }
 .still-assurance { flex-wrap:wrap; gap:12px; font-size:10px; }
 .still-assurance>span:nth-child(2) { display:none; }
 .still .product-image img { height:240px; }
 .still-editorial { grid-template-columns:1fr; gap:30px; padding-bottom:65px; }
 .still-editorial h2 { font-size:49px; }
 .still-editorial-image>img { height:320px; }
 .product-hotspot { left:48%; }
 .northline-hero-v2 { min-height:650px; }
 .northline-hero-v2>img { object-position:66%; }
 .northline-hero-v2::after { background:linear-gradient(90deg,#062737eb,#062737a8); }
 .northline-hero-copy { padding-block:65px 110px; }
 .northline-hero-copy .eyebrow { font-size:9px; }
 .northline-hero-copy h1 { font-size:clamp(3.5rem,12vw,5rem); }
 .northline-hero-copy p { font-size:15px; max-width:310px; }
 .northline-hero-bottom { bottom:25px; gap:20px; font-size:8px; }
 .northline-hero-bottom>span { max-width:170px; }
 .northline .feature-image img { height:300px; }
 .serein-hero { grid-template-columns:1fr; padding-block:45px; gap:40px; }
 .serein-hero h1 { font-size:clamp(5rem,20vw,7rem); }
 .serein-hero p { font-size:14px; }
 .serein-hero-photo { width:85%; margin-left:auto; }
 .serein-hero-photo img { height:430px; }
 .serein-ribbon { gap:18px; font-size:8px; letter-spacing:.04em; padding:20px 14px; }
 .serein-ribbon i { font-size:20px; }
 .serein .section-head h2 { font-size:48px; }
 .ritual summary { grid-template-columns:23px 1fr 20px; gap:15px; padding-block:24px; }
 .ritual summary>span:nth-of-type(2) { display:none; }
 .ritual h3 { font-size:29px; }
 .ritual>div { padding:0 0 30px 38px; display:block; }
 .ritual .text-link { margin-top:18px; }
 .serein-experience { padding-block:65px; }
 .serein-experience h2 { font-size:64px; }
 .serein .contact-section h2 { font-size:64px; }
 .relay-hero { padding-block:35px 45px; }
 .relay-indicator { display:none; }
 .relay-hero-grid { grid-template-columns:1fr; gap:35px; margin-top:12px; }
 .relay-hero h1 { font-size:clamp(3rem,11.5vw,4.4rem); }
 .relay-hero p { font-size:15px; }
 .relay-spec { gap:22px; font-size:9px; margin-top:30px; }
 .relay-machine img { height:350px; }
 .relay-application { grid-template-columns:1fr; gap:32px; }
 .relay-application img { height:300px; }
 .relay-solution { padding:27px; }
 .relay-solution h3 { margin-top:35px; }
 .gallery-hero { grid-template-columns:1fr; gap:28px; padding-block:45px; }
 .gallery-hero h1 { font-size:clamp(2.7rem,9.5vw,4rem); }
 .gallery .nav-row>.small { font-size:8px; max-width:95px; text-align:right; }
 .gallery-card-meta { gap:15px; }
}
