/* Shared charcoal palette and services presentation. */
:root{--ink:#1b1b1b;--panel:#222222;--paper:#e8e8e8;--muted:#a3a3a3;--accent:#66aff5;--line:#3a3a3a;--surface-alt:#282828;--button-text:#10263b;--accent-hover:#91c7fa;--header-text:#f0f0f0;--header-line:#ffffff35;--logo-paper:#f3f6fa;--media-surface:#191919;--media-gradient:linear-gradient(140deg,#2c2c2c,#1d1d1d);--media-hero-gradient:radial-gradient(ellipse at 50% 45%,#333333 0%,#222222 48%,#161616 85%);--media-overlay:#191919e8;--media-hover:#353535}
body{color:var(--paper);background:var(--ink)}
.site-header{gap:24px;color:var(--header-text);border-color:var(--header-line)}
.site-header .brand{order:0}.site-header nav{order:1;margin-left:auto}.menu-toggle{order:3}.site-header nav{gap:clamp(18px,2.2vw,38px)}.site-header nav>a:hover,.site-header nav>a[aria-current=page]{color:#91c7fa}.brand-symbol{background:transparent}.site-header nav .nav-contact{border-color:var(--header-line);margin:0}.hero{color:#f1f6fb}.hero em{color:#80d8ff}.hero .short-line{background:#80d8ff}.hero .button-primary{background:#80d8ff;color:#082136}.hero .button-primary:hover{background:#ace7ff}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:32px;flex-wrap:wrap}.hero .hero-actions .button{margin-top:0}.hero-secondary{display:inline-flex;align-items:center;gap:18px;min-height:44px;font-size:14px;border-bottom:1px solid #b2c5d3}.hero-secondary:hover{color:#80d8ff}.hero h1{font-size:clamp(62px,7.3vw,116px)}.hero-copy{max-width:900px;top:27%}.hero-description{font-size:16px}.button-primary{color:var(--button-text)}.button-primary:hover{background:var(--accent-hover)}.discipline-strip{background:var(--surface-alt);color:var(--paper);border-block:1px solid var(--line)}.discipline-strip>span:nth-child(even){color:var(--accent)}
.section-heading .eyebrow,.partnership-intro>.eyebrow,.project-copy>p:not(.eyebrow),.project-meta,.service-grid p,.partnership-intro>div>p,.concept-grid figcaption>span:last-child,.site-footer,.project-tabs button,.contact>.eyebrow{color:var(--muted)}
.project-tabs,.project-feature,.project-meta,.service-grid article,.contact{border-color:var(--line)}.text-link{border-color:var(--muted)}.service-grid h3 a:hover{color:var(--accent)}.project-meta>span:first-child,.project-tabs button[aria-selected=true],.footer-name{color:var(--paper)}.image-label{color:#f4f8fb}.project-copy{background:var(--panel)}.contact{background:var(--surface-alt)}.contact-arrow{border-color:var(--muted)}.contact-arrow:hover{color:var(--button-text)}.email-link{border-color:var(--muted)}.studio{background:var(--panel);color:var(--paper);border-top:1px solid var(--line)}.studio-brand{background:var(--logo-paper);border-radius:3px;align-self:stretch;align-items:center}.studio-brand img{mix-blend-mode:multiply}.studio-copy .eyebrow,.studio-copy>p:not(.eyebrow){color:var(--muted)}.studio-copy .text-link{border-color:var(--muted)}.studio-copy .text-link:hover{color:var(--accent)}.studio a:focus-visible{outline-color:var(--accent)}.draft-label{color:var(--accent);background:var(--panel);border-color:var(--line)}.draft-label span{color:var(--muted)}dialog{border-color:var(--line)}.dialog-copy>p:not(.eyebrow),.dialog-copy li{color:var(--muted)}.dialog-image-wrap img{object-fit:contain}.dialog-image-wrap{background:var(--media-surface)}.dialog-copy .button{white-space:normal}
/* Services: an editorial hero, followed by clearly scoped disciplines. */
.services-page .site-header{position:relative;color:var(--paper);background:var(--ink);border-color:var(--line)}.services-page .site-header nav .nav-contact{border-color:var(--muted)}.services-page .site-header nav>a:hover,.services-page .site-header nav>a[aria-current=page]{color:var(--accent)}.services-hero{position:relative;display:grid;grid-template-columns:1.25fr 1fr;column-gap:50px;padding-top:76px;padding-bottom:30px;overflow:hidden}.services-hero-copy{position:relative;z-index:2;align-self:center;padding-block:20px}.services-hero-copy>.eyebrow{display:flex;align-items:center;gap:14px;color:var(--muted);margin-bottom:30px;font-size:12px}.services-hero h1{font-size:clamp(48px,5.3vw,84px);line-height:1.04;letter-spacing:-.055em;margin-right:-100px}.services-hero-copy>p:not(.eyebrow){margin-top:28px;font-size:17px;color:var(--muted);max-width:580px}.services-hero-copy>.button{margin-top:32px}.services-hero-art{position:relative;height:550px;min-width:0}.services-hero-art img{height:100%;width:100%;object-fit:cover;object-position:58% center}.services-hero-art>span{position:absolute;bottom:15px;right:15px;color:#fff;background:var(--media-overlay);padding:7px 11px;font-size:12px}.services-hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;gap:24px;padding-top:40px;color:var(--muted);font-size:13px}.services-hero-foot>span:last-child{font-size:11px;letter-spacing:.14em}.service-jump{display:flex;justify-content:space-between;gap:20px;border-block:1px solid var(--line);padding:24px var(--space);background:var(--panel);flex-wrap:wrap}.service-jump a{font-size:14px;padding:7px 0;border-bottom:1px solid transparent}.service-jump a:hover{color:var(--accent);border-color:var(--accent)}.section-summary{color:var(--muted);font-size:16px;line-height:1.7;max-width:360px}.capability-list{margin-top:50px}.capability{display:grid;grid-template-columns:90px minmax(0,1fr) 140px;gap:30px;padding:52px 0;border-top:1px solid var(--line);scroll-margin-top:30px}.capability-number{font-size:20px;color:var(--accent);font-weight:500}.capability .eyebrow{color:var(--muted);font-size:11px;margin-bottom:18px}.capability h3{font-size:clamp(30px,3vw,46px);margin-bottom:24px;line-height:1.12}.capability>div>p:not(.eyebrow){max-width:720px;color:var(--muted);font-size:17px}.capability ul{list-style:none;padding:0;margin:25px 0 30px;display:flex;flex-wrap:wrap;gap:10px}.capability li{padding:9px 12px;border:1px solid var(--line);border-radius:2px;font-size:13px;background:var(--panel)}.capability-tag{font-size:11px;letter-spacing:.13em;color:var(--muted);text-align:right;padding-top:6px}.capability .text-link{font-size:14px}.service-art-break{margin:30px 0 55px}.service-art-break>img{height:430px;width:100%;object-fit:cover;object-position:center 55%}.service-art-break figcaption{display:flex;justify-content:space-between;gap:20px;font-size:16px;padding-top:18px}.service-art-break figcaption>span:last-child{color:var(--muted);font-size:12px;flex-shrink:0}.working-together{background:var(--panel);border-block:1px solid var(--line)}.process-grid{list-style:none;padding:0;margin:60px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}.process-grid li{border-top:1px solid var(--line);padding-top:22px}.process-grid li>span{color:var(--accent);font-size:11px;letter-spacing:.1em}.process-grid h3{font-size:24px;line-height:1.25;letter-spacing:-.025em;margin:24px 0 15px}.process-grid p{color:var(--muted);font-size:16px}.engagement-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;border-top:1px solid var(--line);padding-top:35px}.engagement-row strong{display:block;font-size:18px;margin-bottom:8px}.engagement-row span{display:block;font-size:15px;color:var(--muted)}.contact-brief{font-size:17px;color:var(--muted);margin-top:30px}
/* InRef Charcoal surfaces with blue brand accents. */
:root{--brand-gradient:linear-gradient(115deg,#66aff5 0%,#7bbcf7 58%,#91c7fa 100%);--section-gradient:linear-gradient(140deg,#1d1d1d80 0%,#24242466 58%,#1b1b1b80 100%);--card-gradient:linear-gradient(145deg,#2a2a2af0 0%,#242424eb 65%,#222222e8 100%);--soft-glow:#66aff504;--headline-gradient:linear-gradient(105deg,#a9d5ff 2%,#66aff5 48%,#4f9de8 100%)}
/* The artwork is a decorative fixed layer; copy and controls stay fully opaque. */
:root{--page-art:url("assets/beyond-the-signal.png");--art-opacity:.1;--chrome-surface:#1b1b1be6;--header-accent:#91c7fa;--header-hover:#66aff51a}
body{isolation:isolate;background:var(--ink)}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--page-art) center/cover no-repeat;filter:grayscale(.9) contrast(.85);opacity:var(--art-opacity)}
.services-page{--page-art:url("assets/project-kestrel.png")}
.about-page,.inref-page{--page-art:url("assets/the-quiet-frontier.png")}
.shunt-page,.portfolio-page{--page-art:url("assets/shunt/engine-wide.png")}
.services-page{--header-accent:var(--accent)}
.site-header{background:linear-gradient(180deg,#15151599,#1b1b1b66);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.hero-shade{background:linear-gradient(90deg,#111111c7 0%,#1515154f 57%,#19191910),linear-gradient(0deg,#111111ee 0%,transparent 48%,#15151550 100%)}
.hero em{background:linear-gradient(105deg,#c0efff 0%,#71d7ff 47%,#43a9ee 100%);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero .hero-actions .button{background:linear-gradient(110deg,#3bb3f6,#86e7f7);color:#062035;box-shadow:0 6px 25px #178cd42e,inset 0 1px #ffffff75}
.hero .hero-actions .button:hover{background:linear-gradient(110deg,#72d4ff,#b4f3ff);box-shadow:0 9px 32px #178cd455}
.hero .eyebrow{color:#d9edf9}.hero-description{color:#d5e3ed;max-width:680px}.hero-secondary{border-color:#b2dbf780}.hero-bottom{padding-top:20px;border-top:1px solid #b6d8f022}
.button{border-radius:4px;padding:18px 26px;box-shadow:inset 0 1px #ffffff26}.button-primary{background:var(--brand-gradient);color:var(--button-text);box-shadow:0 6px 20px #0068b71a,inset 0 1px #ffffff36}.button-primary:hover{background:var(--brand-gradient);filter:brightness(1.12);box-shadow:0 8px 25px #0068b72e}
.discipline-strip{background:var(--section-gradient);position:relative;border-top:0}.discipline-strip:before,.working-together:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,#2da5e680,transparent)}
.work{background:radial-gradient(ellipse at 93% 20%,var(--soft-glow),transparent 55%)}
.section-heading h2{letter-spacing:-.05em}.section-heading .eyebrow,.partnership-intro>.eyebrow{letter-spacing:.18em}
.project-feature{border-radius:7px;overflow:hidden;box-shadow:0 16px 55px #030b1614;border-color:var(--line)}.project-copy{background:var(--card-gradient)}.project-copy h3{font-weight:620;letter-spacing:-.045em}.project-tabs{border-color:var(--line)}.project-tabs button[aria-selected=true]:after{background:var(--brand-gradient);height:3px}.image-label{border-radius:3px;background:var(--media-overlay);border-color:#ffffff38}.text-link span{transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}
.partnership{background:radial-gradient(ellipse at 5% 65%,var(--soft-glow),transparent 55%)}
.service-grid article{position:relative;padding:29px 24px 24px;border:1px solid var(--line);border-radius:5px;background:var(--card-gradient)}.service-grid article:before{content:"";height:2px;width:48px;position:absolute;top:-1px;left:24px;background:var(--brand-gradient)}.service-grid h3{font-size:22px}.concept-image{border-radius:5px}.concept-grid figure{min-width:0}.concept-grid figcaption>span:first-child{font-weight:600}
.studio{background:var(--section-gradient)}.studio-brand{border:1px solid #ffffff1f;border-radius:6px;box-shadow:0 18px 50px #020e191c}.studio-copy>p:not(.eyebrow){line-height:1.85}
.contact{background:radial-gradient(ellipse at 94% 20%,var(--soft-glow),transparent 65%),var(--section-gradient);border-top:1px solid var(--line)}.contact h2 em{background:var(--headline-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}.contact-arrow{background:linear-gradient(135deg,#6bd3ff0c,#087ac318);border-color:var(--line)}.contact-arrow:hover{background:var(--brand-gradient);color:#fff;box-shadow:0 10px 40px #007ece25}.site-footer{border-top:1px solid var(--line)}.draft-label{box-shadow:0 5px 20px #05132020;border-radius:4px}
.services-page .site-header{background:var(--chrome-surface)}.services-hero{background:radial-gradient(ellipse at 38% 5%,var(--soft-glow),transparent 64%),var(--section-gradient)}.services-hero h1{font-weight:650}.services-hero h1 em{background:var(--headline-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}.services-hero-art{border:1px solid var(--line);border-radius:6px;overflow:hidden;box-shadow:0 18px 55px #030e211f}.services-hero-art:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#1111117a,transparent 35%)}.services-hero-art>span{z-index:1;border-radius:3px}.service-jump{background:var(--card-gradient)}
.capabilities{background:radial-gradient(ellipse at 90% 45%,var(--soft-glow),transparent 60%)}.capability-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.capability{display:flex;flex-direction:column;gap:25px;padding:30px;border:1px solid var(--line);border-radius:5px;background:var(--card-gradient);position:relative;box-shadow:0 8px 30px #030f1d09}.capability:before{content:"";position:absolute;left:30px;top:-1px;height:2px;width:50px;background:var(--brand-gradient)}.capability-number{font-size:17px;font-weight:600}.capability>div{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}.capability .eyebrow{font-size:11px;letter-spacing:.08em;min-height:34px}.capability h3{font-size:30px;letter-spacing:-.045em;margin-bottom:20px;min-height:68px}.capability>div>p:not(.eyebrow){font-size:16px;line-height:1.8}.capability ul{display:block;margin:24px 0 28px}.capability li{padding:0 0 0 14px;position:relative;border:0;border-radius:0;background:none;margin-bottom:13px;font-size:14px;line-height:1.6;color:var(--muted)}.capability li:before{content:"";width:5px;height:5px;background:var(--accent);position:absolute;left:0;top:9px;border-radius:50%}.capability-tag{position:absolute;top:34px;right:24px;font-size:10px;padding:0;color:var(--muted);letter-spacing:.09em}.capability .text-link{font-size:13px;gap:16px;margin-top:auto;min-height:44px}.service-art-break>img{border-radius:5px}.working-together{position:relative;background:var(--section-gradient)}.process-grid li{position:relative}.process-grid li:before{content:"";position:absolute;top:-1px;left:0;width:40px;height:2px;background:var(--brand-gradient)}.engagement-row strong{font-weight:600}.dialog-copy{background:var(--card-gradient)}dialog{border-radius:6px;box-shadow:0 30px 100px #0006}
@media(max-width:1100px){.capability-list{gap:16px}.capability{padding:24px}.capability-tag{right:20px;top:28px;font-size:9px}.capability h3{font-size:26px;min-height:62px}.capability .text-link{font-size:12px}}
@media(max-width:900px){.capability-list{grid-template-columns:1fr}.capability{display:grid;grid-template-columns:40px minmax(0,1fr);gap:20px;padding:30px}.capability>div{display:block}.capability h3{min-height:0;font-size:32px}.capability .eyebrow{min-height:0}.capability-tag{display:none}.capability .text-link{font-size:14px}.capability ul{display:flex;gap:14px 25px}.capability li{margin:0}.services-hero h1{margin-right:0}}
@media(max-width:640px){.capability{display:flex;padding:27px 22px;gap:18px}.capability h3{font-size:30px}.capability ul{display:block}.capability li{margin-bottom:12px}.service-grid article{padding:27px 23px}.hero-bottom{padding-top:16px}.hero .eyebrow{line-height:1.8}.contact-arrow{box-shadow:none}.section-heading .eyebrow{letter-spacing:.13em}}
@media(min-width:1800px){:root{--space:max(88px,calc((100vw - 1650px)/2))}}
@media(max-width:1100px){.site-header{gap:16px}.site-header nav{gap:20px}.brand-type{font-size:21px}.nav-contact span{margin-left:12px}.services-hero{column-gap:24px}.services-hero-art{height:500px}.services-hero h1{font-size:clamp(42px,5.6vw,64px)}.capability{grid-template-columns:60px minmax(0,1fr) 100px;gap:22px}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.hero .eyebrow{font-size:11px}}
@media(max-width:800px){.site-header{min-height:84px}.site-header nav{display:none;position:absolute;left:0;right:0;top:100%;margin:0;padding:22px var(--space) 30px;background:var(--media-surface);box-shadow:0 14px 20px #0004;align-items:stretch;gap:5px}.site-header nav.is-open{display:flex;flex-direction:column}.site-header nav>a{padding:13px 0}.site-header nav .nav-contact{margin:10px 0 0;padding:13px 18px}.menu-toggle{display:flex;gap:10px;align-items:center}.services-page .site-header nav{background:var(--ink)}.services-hero{grid-template-columns:1fr;padding-top:42px}.services-hero h1{font-size:clamp(48px,7.5vw,68px);margin-right:0}.services-hero-copy{padding-top:0}.services-hero-art{height:330px;margin-top:36px}.services-hero-art img{object-position:center 40%}.services-hero-foot{padding-top:25px}.hero h1{font-size:clamp(62px,8.7vw,82px)}.hero-copy{top:27%}.hero-description{max-width:600px}.capability{grid-template-columns:44px minmax(0,1fr);gap:18px}.capability-tag{display:none}.service-art-break>img{height:330px}.service-jump{gap:12px 24px;justify-content:flex-start}.section-summary{max-width:320px}.studio-brand{align-self:stretch;padding:20px}.studio-brand img{width:210px}.engagement-row{gap:25px}.hero-actions{gap:25px}}
@media(max-width:640px){.site-header{gap:10px}.brand{gap:9px}.brand-type{font-size:18px}.brand-subtitle{font-size:8px}.menu-toggle{font-size:0;padding:8px;min-height:44px}.menu-toggle span{font-size:22px}.hero{height:780px;max-height:none}.hero-copy{top:27%}.hero h1{font-size:clamp(51px,11.5vw,72px);line-height:1.04}.hero .eyebrow{font-size:10px;letter-spacing:.08em;gap:8px}.hero .short-line{width:18px;flex-shrink:0}.hero-description{font-size:16px;line-height:1.75;max-width:440px}.desktop-break{display:none}.hero-actions{gap:14px 24px;margin-top:28px}.hero-actions .button{padding:16px 20px;font-size:13px;gap:26px}.hero-secondary{font-size:13px}.hero-bottom>p,.hero-bottom>p span{font-size:11px}.discipline-strip{font-size:10px}.section-heading{gap:26px}.project-tabs button{min-height:48px}.studio-brand{justify-content:center;max-height:280px}.studio-brand img{width:180px}.studio-copy .eyebrow{font-size:11px}.contact-arrow{min-width:50px}.services-hero{padding-top:38px;padding-bottom:25px}.services-hero h1{font-size:clamp(42px,10.5vw,62px)}.services-hero-copy>.eyebrow{font-size:10px;gap:10px;letter-spacing:.1em;margin-bottom:23px}.services-hero-copy>p:not(.eyebrow){font-size:16px;line-height:1.7}.services-hero-copy>p br{display:none}.services-hero-art{height:290px;margin-top:32px}.services-hero-foot>span:first-child{font-size:12px}.services-hero-foot>span:last-child{display:none}.service-jump{padding-top:18px;padding-bottom:18px;gap:6px 22px}.service-jump a{font-size:13px;min-height:38px;display:flex;align-items:center}.section-summary{font-size:16px;max-width:none}.capability-list{margin-top:30px}.capability{padding:35px 0;grid-template-columns:1fr;gap:16px}.capability-number{font-size:15px}.capability h3{font-size:32px}.capability .eyebrow{font-size:10px}.capability>div>p:not(.eyebrow){font-size:16px}.capability ul{display:block;margin-block:20px}.capability li{margin-bottom:9px;display:table;font-size:13px}.capability .text-link{font-size:14px}.service-art-break{margin:10px 0 35px}.service-art-break>img{height:250px}.service-art-break figcaption{flex-direction:column;gap:8px;font-size:14px}.service-art-break figcaption>span:last-child{font-size:11px}.process-grid{grid-template-columns:1fr;margin:38px 0;gap:28px}.process-grid h3{font-size:24px;margin-top:18px}.engagement-row{grid-template-columns:1fr;gap:25px}.contact-brief{font-size:16px;line-height:1.7}.dialog-image-wrap img{object-fit:contain}.draft-label{font-size:10px}}
@media(max-width:360px){:root{--space:20px}.brand-type{font-size:16px}.hero h1{font-size:46px}.hero .eyebrow{font-size:9px}.hero-copy{top:24%}.hero-actions{flex-direction:column;align-items:flex-start;gap:10px}.hero-description{font-size:15px}.services-hero h1{font-size:39px}.contact h2{font-size:36px}.contact-arrow{min-width:44px;width:44px;height:44px;font-size:29px}}
@media(max-width:640px){.capability{padding:27px 22px}.capability .eyebrow{font-size:12px}.capability li,.service-jump a{font-size:14px}.service-jump a{min-height:44px}.service-grid .service-number,.section-heading .eyebrow,.studio-copy .eyebrow,.contact>.eyebrow,.site-footer{font-size:12px}}
/* Compact copy: let the artwork and service headings carry each section. */
.capability h3{min-height:0}.services-hero{padding-bottom:60px}.project-copy>.text-link{margin-top:35px}.hero h1{font-size:clamp(58px,6.6vw,105px)}
@media(max-width:800px){.hero h1{font-size:clamp(48px,7.5vw,66px)}}
@media(max-width:640px){.hero h1{font-size:clamp(40px,10.5vw,58px)}.hero-copy{top:28%}.services-hero{padding-bottom:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Give the opening artwork a full screen; the introduction follows on scroll. */
.hero.artwork-hero{height:100vh;height:100svh;min-height:0;max-height:none;background:transparent;--hero-fade:linear-gradient(180deg,#000 0%,#000 52%,#000000f5 61%,#000000cf 71%,#00000085 82%,#00000033 92%,transparent 100%)}
/* Feather both artwork layers into the same backdrop used below the fold. */
.artwork-hero .hero-image,.artwork-hero .hero-shade{-webkit-mask-image:var(--hero-fade);mask-image:var(--hero-fade)}
.artwork-hero .hero-image{object-position:60% center}
.artwork-hero .hero-shade{background:linear-gradient(180deg,#11111155,transparent 23%)}
.artwork-caption{position:absolute;right:var(--space);bottom:60px;color:#f5faff;font-size:11px;letter-spacing:.04em;text-shadow:0 1px 8px #000}
.studio-intro{display:grid;grid-template-columns:1.6fr 1fr;align-items:end;gap:55px;background:linear-gradient(180deg,transparent,#1b1b1b66 180px)}
.intro-heading .eyebrow{display:flex;align-items:center;gap:14px;color:var(--muted);margin-bottom:26px}
.intro-heading h1{font-size:clamp(44px,5.5vw,86px);line-height:1.06}
.intro-heading h1 em{background:var(--headline-gradient);background-clip:text;-webkit-background-clip:text;color:transparent}
.intro-summary>p{max-width:440px;color:var(--muted);font-size:18px}
.studio-intro .hero-secondary{color:var(--paper);border-color:var(--muted)}
.studio-intro .hero-secondary:hover{color:var(--accent);border-color:var(--accent)}
.studio-intro .hero-actions{gap:24px}

/* Each discipline is one complete, keyboard-accessible link. */
.service-grid,.capability-list{gap:20px}
.service-card,.capability.service-card{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-content:space-between;gap:30px 18px;min-height:194px;padding:28px;border:1px solid var(--line);border-radius:6px;background:var(--card-gradient);color:var(--paper);box-shadow:0 8px 30px #030f1d09;transition:transform .22s,border-color .22s,box-shadow .22s,background .22s}
.service-card:before,.capability.service-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;width:auto;height:auto;background:linear-gradient(125deg,#299cef12,transparent 70%);opacity:0;transition:opacity .22s}
.service-card h3,.capability.service-card h3{grid-column:1;grid-row:2;font-size:clamp(22px,2.2vw,32px);line-height:1.2;letter-spacing:-.035em;margin:0;min-height:0}
.service-icon{grid-column:1;grid-row:1;width:38px;height:38px;color:var(--paper);transition:color .22s}
.service-arrow{grid-column:2;grid-row:2;align-self:center;font-size:24px;line-height:1;color:var(--muted);transition:transform .22s,color .22s}
.service-card:focus-visible{border-color:var(--accent);background:var(--section-gradient);box-shadow:0 12px 30px #007cc51a;outline:2px solid var(--accent);outline-offset:4px}
.service-card:focus-visible:before{opacity:1}
.service-card:focus-visible .service-icon,.service-card:focus-visible .service-arrow{color:var(--accent)}
@media(hover:hover){.service-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 16px 36px #007cc525}.service-card:hover:before{opacity:1}.service-card:hover .service-icon,.service-card:hover .service-arrow{color:var(--accent)}.service-card:hover .service-arrow{transform:translate(3px,-3px)}}
.service-card:active{border-color:var(--accent);background:var(--section-gradient)}
.capabilities .service-art-break{margin:56px 0 0}
.enquiry-context{max-width:520px;margin-top:35px}
.enquiry-context label{display:block;font-size:13px;color:var(--muted);margin-bottom:10px}
.enquiry-context select{display:block;width:100%;min-height:50px;border:1px solid var(--line);border-radius:4px;padding:12px 40px 12px 16px;font:inherit;font-size:16px;color:var(--paper);background:var(--panel);color-scheme:inherit;cursor:pointer}
.enquiry-context select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.enquiry-context .contact-brief{margin-top:17px}
#contact-title:focus{outline:none}
@media(max-width:1100px){.studio-intro{grid-template-columns:1fr;gap:30px}.intro-summary>p{max-width:600px}.intro-heading h1{font-size:clamp(48px,6.5vw,76px)}}
@media(min-width:641px) and (max-width:900px){.capability-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.artwork-hero .hero-image{object-position:62% center}.artwork-caption{font-size:10px;bottom:62px}.intro-heading h1{font-size:clamp(36px,8.9vw,56px)}.intro-heading .eyebrow{font-size:10px;margin-bottom:22px}.intro-summary>p{font-size:16px}.service-grid,.capability-list{gap:14px}.service-card,.capability.service-card{min-height:108px;padding:22px;grid-template-columns:32px minmax(0,1fr) auto;grid-template-rows:1fr;gap:18px;align-items:center}.service-icon{grid-column:1;grid-row:1;width:32px;height:32px}.service-card h3,.capability.service-card h3{grid-column:2;grid-row:1;font-size:23px}.service-arrow{grid-column:3;grid-row:1;font-size:22px}.capabilities .service-art-break{margin-top:35px}}
@media(max-width:360px){.service-card,.capability.service-card{padding:19px;gap:13px}.service-card h3,.capability.service-card h3{font-size:20px}}

/* Quiet, responsive feedback in the frosted header. No layout changes on hover. */
.site-header .brand,.site-header nav>a{transition:color .2s ease}
.brand-symbol{transition:transform .22s ease,filter .22s ease}
.site-header nav>a:not(.nav-contact){position:relative}
.site-header nav>a:not(.nav-contact)::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:2px;border-radius:2px;background:linear-gradient(90deg,#66aff5,#91c7fa);transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
.site-header nav .nav-contact,.site-header .menu-toggle{transition:color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.site-header .menu-toggle{border:1px solid transparent;border-radius:3px}
.nav-contact span,.menu-toggle span{display:inline-block;transition:transform .22s ease}
.site-header .brand:focus-visible{color:#fff}
.site-header .brand:focus-visible .brand-symbol{filter:brightness(1.08)}
.site-header nav>a:focus-visible{color:var(--header-accent)}
.site-header nav>a:not(.nav-contact):focus-visible::after,.site-header nav>a[aria-current=page]::after{transform:scaleX(1)}
.site-header nav .nav-contact:focus-visible,.site-header .menu-toggle:focus-visible,.site-header .menu-toggle[aria-expanded=true]{color:var(--header-accent);background:var(--header-hover);border-color:var(--header-accent);box-shadow:inset 0 0 0 1px #66aff510}
@media(hover:hover) and (pointer:fine){
  .site-header .brand:hover{color:#fff}
  .site-header .brand:hover .brand-symbol{filter:brightness(1.08)}
  .site-header nav>a:hover{color:var(--header-accent)}
  .site-header nav>a:not(.nav-contact):hover::after{transform:scaleX(1)}
  .site-header nav .nav-contact:hover,.site-header .menu-toggle:hover{color:var(--header-accent);background:var(--header-hover);border-color:var(--header-accent);box-shadow:inset 0 0 0 1px #66aff510}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .site-header .brand:hover .brand-symbol{transform:translateY(-2px) scale(1.035)}
  .site-header nav .nav-contact:hover,.site-header .menu-toggle:hover{transform:translateY(-2px)}
  .site-header nav .nav-contact:hover span{transform:translate(2px,-2px)}
  .site-header .menu-toggle:hover span{transform:translateY(-1px)}
  .site-header nav .nav-contact:active,.site-header .menu-toggle:active{transform:translateY(0)}
  .site-header .brand:active .brand-symbol{transform:scale(.98)}
}
@media(prefers-reduced-motion:reduce){
  .site-header .brand,.brand-symbol,.site-header nav>a,.site-header nav>a::after,.site-header nav .nav-contact,.site-header .menu-toggle,.nav-contact span,.menu-toggle span{transition:none}
}

/* Monochrome studio mark and a restrained enquiry action. */
.site-header .brand{color:#ededed}
.site-header .brand:is(:hover,:focus-visible){color:#fff}
.brand-symbol{background:transparent;mix-blend-mode:screen}
.brand-symbol img{filter:contrast(1.2)}
.site-header nav>a.nav-contact,.services-page .site-header nav>a.nav-contact{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:46px;padding:12px 18px;border:1px solid #ffffff50;border-radius:3px;background:linear-gradient(140deg,#ffffff0b,#ffffff03);color:#ededed;box-shadow:inset 0 1px 0 #ffffff0a;font-weight:500;white-space:nowrap;transition:color .2s ease,filter .2s ease,box-shadow .2s ease,transform .2s ease}
.site-header .nav-contact span{display:inline-block;margin:0;color:#a9c5dc;font-size:18px;line-height:1}
.site-header nav>a.nav-contact:focus-visible,.services-page .site-header nav>a.nav-contact:focus-visible{background:linear-gradient(140deg,#66aff51a,#66aff50a);color:#fff;border-color:#91c7fa;box-shadow:inset 0 1px 0 #ffffff0a;outline:2px solid #a9d5ff;outline-offset:5px}
@media(hover:hover) and (pointer:fine){
  .site-header nav>a.nav-contact:hover,.services-page .site-header nav>a.nav-contact:hover{background:linear-gradient(140deg,#66aff51a,#66aff50a);color:#fff;border-color:#91c7fa;box-shadow:inset 0 1px 0 #ffffff0a}
}
@media(prefers-reduced-motion:reduce){.site-header nav>a.nav-contact,.services-page .site-header nav>a.nav-contact{transition:none}}

/* Standalone vector mark avoids sampling a full raster logo at header size. */
.brand-symbol{display:flex;align-items:center;justify-content:center;width:34px;height:50px;background:transparent;mix-blend-mode:normal}
.brand-symbol img{position:static;display:block;width:100%;height:auto;max-width:100%;filter:none;visibility:visible}
@media(max-width:640px){.brand-symbol{width:27px;height:40px}}

.studio-brand img{height:auto;object-fit:contain}

/* Shared studio footer: aligned brand/navigation and a quiet secondary row. */
.site-footer{display:block;padding:40px var(--space) 64px;background:linear-gradient(180deg,#191919e6,#151515);border-top:1px solid #ffffff14}
.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:28px}
.footer-top{padding-bottom:28px}
.footer-brand{display:inline-flex;align-items:center;gap:12px;color:var(--paper);font-size:16px;font-weight:750;letter-spacing:.12em;line-height:1.5}
.footer-brand img{width:28px;height:35px;flex-shrink:0}
.footer-brand>span>span{display:block;font-size:9px;font-weight:500;letter-spacing:.38em}
.footer-navigation{display:flex;gap:32px;font-size:13px;color:var(--paper)}
.footer-navigation a,.footer-bottom>a{display:inline-flex;align-items:center;min-height:44px;transition:color .2s ease}
.footer-navigation a:hover,.footer-bottom>a:hover{color:var(--header-accent)}
.footer-bottom{border-top:1px solid #ffffff0d;padding-top:16px;color:var(--muted);font-size:12px}
.footer-bottom small{font-size:12px}
.footer-bottom>a{gap:12px}
@media(max-width:640px){.site-footer{padding:32px var(--space) 64px}.footer-top{align-items:flex-start;flex-direction:column;gap:20px;padding-bottom:20px}.footer-navigation{gap:28px}.footer-bottom{gap:16px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.footer-navigation a,.footer-bottom>a{transition:none}}
