/* Archidexign Development: brand per the Archidexign Brand Guidelines.
   Colours: Black #0E0E0E, White #FFFFFF, Charcoal #2B2B2B, Concrete #6E6E6E, Architectural Gold #C8A24D (accent, used sparingly).
   Type: Montserrat (headings, SemiBold/Bold), Inter (body, Regular/Medium). Text left-aligned throughout.
   Layout: ONE 12-column grid (.grid) inside ONE container (.wrap). Shared columns:
     .l  = columns 1-5   (labels, section headings)
     .r  = columns 7-12  (body copy, lists, forms; always starts at the same x)
     .w8 = columns 1-8   (page H1 + lead)   .full = 1-12
   Spacing scale: 4 8 12 16 24 32 48 64 96 (px). */
@font-face{font-family:"Montserrat";src:url("../fonts/montserrat.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Inter";src:url("../fonts/inter.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

:root{
  --white:#FFFFFF; --alt:#F5F3EE;
  --ink:#0E0E0E; --charcoal:#2B2B2B; --concrete:#6E6E6E; --gold:#C8A24D;
  --rule:#DCDCDA; --rule-strong:#B4B4B1;
  --error:#B3261E; --success:#2E6B3F;
  --head:"Montserrat",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;
  --max:1240px; --gutter:clamp(20px,5vw,64px); --gap:32px;
  --section:clamp(64px,8vw,112px); --header-h:120px;
}
@media (max-width:1100px){:root{--gap:24px}}
@media (max-width:600px){:root{--gap:16px}}
@media (max-width:1040px){:root{--header-h:92px}}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
[id],.form-status h2,.form-summary h2{scroll-margin-top:calc(var(--header-h) + 24px)}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--charcoal);font-family:var(--sans);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased;text-align:left}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
p{margin:0 0 var(--s4);text-wrap:pretty}
p:last-child{margin-bottom:0}
ul,ol{margin:0;padding:0;list-style:none}
dl,dd,figure{margin:0}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.skip{position:absolute;left:var(--s4);top:-60px;background:var(--ink);color:var(--white);padding:10px 16px;z-index:100;text-decoration:none;font-weight:600}
.skip:focus{top:var(--s4)}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Type: one rhythm. label -> 16 -> heading -> 24 -> body */
h1,h2,h3{font-family:var(--head);font-weight:600;color:var(--ink);margin:0;text-wrap:balance}
h1{font-size:clamp(2.125rem,4.2vw,3.5rem);line-height:1.1;letter-spacing:-0.02em;max-width:20ch}
h2{font-size:clamp(1.5rem,2.4vw,2.125rem);line-height:1.2;letter-spacing:-0.012em;max-width:24ch}
h3{font-size:clamp(1.0625rem,1.3vw,1.1875rem);line-height:1.35;letter-spacing:-0.005em}
h1 + p,h2 + p,h2 + .prose,h1 + .lead{margin-top:var(--s5)}
.h-sm{font-size:clamp(1.25rem,1.8vw,1.5rem)}
.h-gap{margin-top:var(--s7)}
.lead{font-size:clamp(1.0625rem,1.35vw,1.1875rem);line-height:1.6;color:var(--charcoal);max-width:60ch}
.prose{max-width:62ch}
.body-muted{color:var(--concrete)}
.label{display:flex;align-items:center;gap:var(--s3);font:600 .75rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--concrete);margin:0 0 var(--s4)}
.label .num{font-variant-numeric:tabular-nums;color:var(--ink)}
.label .bar{display:inline-block;width:24px;height:2px;background:var(--gold)}
figcaption{font-size:.8125rem;line-height:1.5;color:var(--concrete);margin-top:var(--s3)}
figcaption strong{color:var(--ink);font-weight:600}
.tag{position:absolute;left:var(--s3);top:var(--s3);z-index:1;font:600 .6875rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:var(--white);border-left:3px solid var(--gold);padding:6px 8px}

/* Grid */
.wrap{max-width:calc(var(--max) + 2*var(--gutter));margin:0 auto;padding:0 var(--gutter)}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gap);row-gap:var(--s7)}
.l{grid-column:1/6}.r{grid-column:7/-1}.w8{grid-column:1/9}.full{grid-column:1/-1}
.section{padding:var(--section) 0}
.section--alt{background:var(--alt)}
.section--rule{border-top:1px solid var(--rule)}
.section--figs{padding-bottom:var(--section)}
.section-head{align-items:end;margin-bottom:var(--s7)}
.section-head .aside{color:var(--concrete);max-width:52ch}
@media (max-width:900px){
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:var(--s6)}
  .grid > *{grid-column:1/-1}
  .grid > .sm-half{grid-column:span 1}
  .section-head{row-gap:var(--s4)}
}
@media (max-width:600px){.grid > .sm-half{grid-column:1/-1}}

/* Header: logo, nav and button share one vertical centre line */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--rule)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--s5);height:var(--header-h)}
.brand{display:block;flex-shrink:0;line-height:0}
.brand img{height:96px;width:auto}
.nav{display:flex;align-items:center;gap:var(--s6)}
.nav ul{display:flex;align-items:center;gap:var(--s5)}
.nav a{display:flex;align-items:center;height:42px;text-decoration:none;font-size:.9375rem;font-weight:500;color:var(--charcoal);border-bottom:2px solid transparent}
.nav ul a:hover{color:var(--ink);border-bottom-color:var(--rule-strong)}
.nav ul a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--gold)}
.nav a.btn{padding:0 18px;border:1px solid var(--ink);color:var(--white)}
.menu-toggle{display:none;align-items:center;gap:10px;background:none;border:1px solid var(--rule-strong);border-radius:2px;height:44px;padding:0 14px;font:600 .875rem/1 var(--sans);color:var(--ink);cursor:pointer}
.menu-toggle .lines{width:18px;height:10px;position:relative}
.menu-toggle .lines::before,.menu-toggle .lines::after{content:"";position:absolute;left:0;right:0;height:1.5px;background:currentColor}
.menu-toggle .lines::before{top:0}.menu-toggle .lines::after{bottom:0}
.menu-toggle[aria-expanded="true"] .lines::before{top:4px;transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] .lines::after{bottom:4px;transform:rotate(-45deg)}
@media (max-width:1040px){
  .brand img{height:76px}
  .menu-toggle{display:inline-flex}
  .nav{position:fixed;inset:var(--header-h) 0 auto 0;background:var(--white);border-bottom:1px solid var(--rule);flex-direction:column;align-items:stretch;gap:0;padding:var(--s3) var(--gutter) var(--s6);display:none;max-height:calc(100vh - var(--header-h));overflow:auto}
  .nav.open{display:flex}
  .nav ul{flex-direction:column;align-items:stretch;gap:0}
  .nav li{border-bottom:1px solid var(--rule)}
  .nav a{height:auto;padding:15px 0;font-size:1.0625rem;color:var(--ink);border-bottom:0}
  .nav ul a[aria-current="page"]{font-weight:700;box-shadow:inset 3px 0 0 var(--gold);padding-left:var(--s3)}
  .nav a.btn{margin-top:var(--s5);justify-content:center;height:48px;padding:0 16px}
}

/* Buttons and links */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:48px;padding:0 24px;background:var(--ink);color:var(--white);text-decoration:none;font:600 .9375rem/1 var(--sans);border:1px solid var(--ink);border-radius:2px;cursor:pointer}
.btn:hover{background:var(--charcoal)}
.btn--sm{height:42px;font-size:.875rem}
.btn[disabled]{opacity:.6;cursor:progress}
.link{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.9375rem;line-height:1.4;text-decoration:none;color:var(--ink);border-bottom:2px solid var(--gold);padding-bottom:2px}
.link:hover .arr{transform:translateX(3px)}
.link .arr{transition:transform .15s ease}
.grid > .link,.grid > .btn{justify-self:start;align-self:start}
.hero-meta > .link{align-self:baseline}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s5) var(--s6);margin-top:var(--s6)}
.text-link{color:var(--ink);text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:4px}

/* Hero */
.hero{padding:calc(var(--section)*.66) 0 var(--section)}
.hero-text{row-gap:var(--s6);align-items:end}
.hero-text .lead{margin:0}
.hero-actions{margin:0}
.hero-figure{margin-top:var(--s7)}
.hero-figure .media img{width:100%;aspect-ratio:16/8;object-fit:cover;object-position:center 60%}
.hero-meta{border-top:1px solid var(--rule);margin-top:var(--s3);padding-top:var(--s3);row-gap:var(--s3);align-items:baseline}
.hero-meta figcaption{margin:0}
@media (max-width:600px){.hero-figure .media img{aspect-ratio:4/3;object-position:72% 60%}}

/* Page intro */
.page-intro{padding:calc(var(--section)*.66) 0;border-bottom:1px solid var(--rule)}
.page-intro--plain{border:0;padding-bottom:var(--section)}
.page-intro .facts{margin-top:var(--s3)}
.breadcrumb{font-size:.8125rem;color:var(--concrete);margin-bottom:var(--s5)}
.breadcrumb a{color:var(--charcoal)}
.jump{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);margin-top:var(--s5);font-size:.9375rem}

/* Media */
.media{position:relative;background:var(--alt);overflow:hidden}
.media img{width:100%;height:100%;object-fit:cover}
.ratio-4x3{aspect-ratio:4/3}
.media--drawing{background:var(--white);border:1px solid var(--rule)}
.media--drawing img{object-fit:contain;padding:var(--s4)}
.cs-figure .media img{height:auto;object-fit:contain}
.figs{row-gap:var(--s7)}
.cs-figure.half{grid-column:span 6}
.cs-figure.half .media{aspect-ratio:16/9}
.cs-figure.half .media img{height:100%;object-fit:cover}
@media (max-width:900px){.cs-figure.half{grid-column:span 1}}
@media (max-width:600px){.cs-figure.half{grid-column:1/-1}}
.section--figs{padding-top:var(--s7)}

/* Services list: number col 1, title cols 2-6, description cols 7-10, link cols 11-12 */
.services{border-top:2px solid var(--ink)}
.service-row{padding:var(--s6) 0;border-bottom:1px solid var(--rule);align-items:baseline;row-gap:var(--s3)}
.service-row .n{grid-column:1/2;font:600 1.1875rem/1.35 var(--head);color:var(--ink);font-variant-numeric:tabular-nums}
.service-row h3{grid-column:2/6}
.service-row p{grid-column:7/11;margin:0;color:var(--charcoal)}
.service-row .link{grid-column:11/-1;justify-self:start;white-space:nowrap}
@media (max-width:900px){
  .service-row{grid-template-columns:48px minmax(0,1fr);column-gap:var(--s4)}
  .service-row .n{grid-column:1;grid-row:1}
  .service-row h3,.service-row p,.service-row .link{grid-column:2}
}

/* Steps (process + principles): top rule, number, title, text on shared rows via subgrid */
.process,.principles{row-gap:0}
.step{border-top:2px solid var(--ink);padding-top:var(--s5);display:grid;grid-template-rows:subgrid;row-gap:0;align-content:start}
.process .step{grid-column:span 3;grid-row:span 3}
.process--full .step{grid-row:span 4}
.principles .step{grid-column:span 4;grid-row:span 3}
.step .n{display:block;font:600 1.1875rem/1.35 var(--head);color:var(--ink);font-variant-numeric:tabular-nums;margin-bottom:var(--s4)}
.step h3{margin-bottom:var(--s3)}
.step p{color:var(--charcoal);margin:0 0 var(--s4);font-size:1rem}
.step .expect{font-size:.9375rem;border-top:1px solid var(--rule);padding-top:var(--s3)}
.step .expect strong{display:block;font:600 .75rem/1.6 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--concrete);margin-bottom:var(--s1)}
.process + .grid,.process + .actions{margin-top:var(--s7)}
@media (max-width:1100px){.process .step{grid-column:span 6}.process{row-gap:var(--s6)}}
@media (max-width:900px){
  .process,.principles{grid-template-columns:1fr;row-gap:0}
  .process .step,.principles .step,.process--full .step{grid-column:1/-1;grid-row:auto;display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:none;column-gap:var(--s4);padding:var(--s5) 0;border-top:1px solid var(--rule)}
  .process .step:first-child,.principles .step:first-child{border-top:2px solid var(--ink)}
  .step .n{grid-column:1;grid-row:1/span 3;margin:0}
  .step > :not(.n){grid-column:2}
}

/* Project cards: equal 4:3 images; meta, title, text and link on shared rows (subgrid) */
.projects{row-gap:0}
.project-card{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;align-content:start;margin-bottom:var(--s8)}
.project-card--third{grid-column:span 4}
.project-card--half{grid-column:span 6}
.project-card .cover{display:block;margin-bottom:var(--s4)}
.project-card .cover:hover img{transform:scale(1.015)}
.project-card .cover img{transition:transform .3s ease}
.project-card .meta{font:600 .75rem/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--concrete);margin:0 0 var(--s2)}
.project-card .meta .sep{color:var(--rule-strong);padding:0 2px}
.card-title{font-size:clamp(1.0625rem,1.4vw,1.25rem);margin-bottom:var(--s3)}
.card-title a{text-decoration:none}
.card-title a:hover{text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:4px}
.card-text{color:var(--charcoal);font-size:1rem;margin:0 0 var(--s4)}
.project-card .link{justify-self:start;align-self:start}
.projects + .actions{margin-top:0}
@media (max-width:1100px){.project-card--third .card-text{font-size:.9375rem}}
@media (max-width:900px){
  .project-card--half{grid-column:span 1}
  .project-card--third{grid-column:1/-1}
}
@media (max-width:600px){.project-card--half{grid-column:1/-1}.project-card{margin-bottom:var(--s7)}}

/* Facts: same columns as the grid (3 columns each) */
.facts{row-gap:0;border-bottom:1px solid var(--rule)}
.fact{grid-column:span 3;border-top:2px solid var(--ink);padding:var(--s4) 0}
.fact dt{font:600 .6875rem/1.6 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--concrete);margin-bottom:var(--s1)}
.fact dd{font-size:1rem;color:var(--ink)}
@media (max-width:900px){.facts{column-gap:var(--gap)}}

/* Service detail */
.service-detail{border-top:2px solid var(--ink);padding-top:var(--s6)}
.service-detail + .service-detail{margin-top:var(--section)}
.service-detail .lead{margin:0}
.service-detail > .grid:first-child{align-items:end}
.detail-grid{margin-top:var(--s7);row-gap:var(--s6)}
.detail{grid-column:span 3}
.detail h3{font:600 .75rem/1.6 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--concrete);padding-bottom:var(--s3);margin-bottom:var(--s2);border-bottom:1px solid var(--rule)}
.detail p,.detail li{font-size:.9375rem;color:var(--charcoal)}
.detail p{margin-bottom:var(--s4)}
.ticks li{padding:var(--s2) 0 var(--s2) var(--s5);position:relative;border-bottom:1px solid var(--rule)}
.ticks li::before{content:"";position:absolute;left:0;top:1.15em;width:10px;height:2px;background:var(--gold)}
@media (max-width:1100px){.detail{grid-column:span 6}}

/* Case study */
.cs-block + .cs-block{margin-top:var(--s7);padding-top:var(--s6);border-top:1px solid var(--rule)}
.cs-block h2{font-size:clamp(1.25rem,1.8vw,1.5rem);margin-bottom:var(--s4)}
.cs-block h2 + p{margin-top:0}
.cs-block h3{margin-bottom:var(--s3)}
.cs-block p{color:var(--charcoal)}
.cs-block .link{margin-top:var(--s2)}
.notice{border-left:3px solid var(--gold);padding:var(--s3) var(--s4);background:var(--white);font-size:.9375rem;color:var(--charcoal);margin:var(--s5) 0 0}
.grid > .notice{margin-top:var(--s7)}
.pager{border-top:1px solid var(--rule);padding-top:var(--s5);margin-top:var(--s7);row-gap:var(--s5)}
.pager a{text-decoration:none}
.pager small{display:block;font:600 .75rem/1.6 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--concrete);margin-bottom:var(--s1)}
.pager span{font:600 1.125rem/1.35 var(--head);color:var(--ink)}
.pager a:hover span{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}

/* CTA band */
.cta{background:var(--ink);color:var(--white)}
.cta h2{color:var(--white)}
.cta .label{color:var(--gold)}
.cta .label .num{color:var(--white)}
.cta .lead{color:#DADADA}
.cta .btn{background:var(--white);color:var(--ink);border-color:var(--white)}
.cta .btn:hover{background:#EDEDED}
.cta :focus-visible{outline-color:var(--white)}
.cta-contact{align-self:end}
.contact-lines div{padding:var(--s4) 0;border-top:1px solid #3A3A3A}
.contact-lines div:last-child{border-bottom:1px solid #3A3A3A}
.contact-lines dt{font:600 .75rem/1.6 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#B5B5B5;margin-bottom:var(--s1)}
.contact-lines dd a{font:600 clamp(1.125rem,1.6vw,1.375rem)/1.35 var(--head);color:var(--white);text-decoration:none;overflow-wrap:anywhere}
.contact-lines dd a:hover{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}

/* Areas: right column split into three equal columns (each = 2 grid columns) */
.areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--gap);align-self:start}
.areas li{font:500 1.0625rem/1.4 var(--head);color:var(--ink);padding:var(--s3) 0;border-top:1px solid var(--rule)}
@media (max-width:900px){.areas{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Lists */
.cols-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--gap);align-self:start}
.cols-list li{padding:var(--s3) 0;border-top:1px solid var(--rule);font-size:1rem}
@media (max-width:600px){.cols-list{grid-template-columns:1fr}}
.contact-card{align-self:start}
.contact-card div{padding:var(--s4) 0;border-bottom:1px solid var(--rule)}
.contact-card div:first-child{border-top:2px solid var(--ink)}
.contact-card dt{font:600 .6875rem/1.6 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--concrete)}
.contact-card dd{margin-top:var(--s1);font-size:1.0625rem;color:var(--ink)}
.contact-card dd a{font-weight:600;text-decoration:none;overflow-wrap:anywhere}
.contact-card dd a:hover,.contact-card dd a.text-link{text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:4px}
.l .contact-card{margin-top:var(--s5)}
.next-steps{counter-reset:ns;margin-top:var(--s5)}
.next-steps li{counter-increment:ns;display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:var(--s4);padding:var(--s4) 0;border-top:1px solid var(--rule);color:var(--charcoal);font-size:.9375rem}
.next-steps li:first-child{border-top:2px solid var(--ink)}
.next-steps li::before{content:counter(ns,decimal-leading-zero);font:600 1rem/1.6 var(--head);color:var(--ink)}

/* Forms */
.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s5) var(--gap);margin-top:var(--s5)}
.field{display:flex;flex-direction:column;gap:6px}
.field--full{grid-column:1/-1}
.field label{font-size:.875rem;font-weight:600;color:var(--ink)}
.field .opt{font-weight:400;color:var(--concrete)}
.field .hint{font-size:.8125rem;color:var(--concrete);margin:0}
.field input,.field select,.field textarea{font:400 1rem/1.4 var(--sans);color:var(--ink);background:var(--white);border:1px solid var(--rule-strong);border-radius:2px;padding:12px 14px;min-height:48px;width:100%}
.field textarea{min-height:150px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--ink);outline-offset:0;border-color:var(--ink)}
.field.has-error input,.field.has-error select,.field.has-error textarea{border-color:var(--error);box-shadow:inset 0 0 0 1px var(--error)}
.field .error{font-size:.8125rem;color:var(--error);font-weight:500;margin:0}
.field .error:empty{display:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-foot{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:var(--s4) var(--s5)}
.form-foot p{margin:0;font-size:.875rem;color:var(--concrete)}
.form-summary,.form-status{grid-column:1/-1;padding:var(--s4) var(--s5);border-left:3px solid;background:var(--alt);font-size:.9375rem}
.form-status{margin-top:var(--s5)}
.form-summary{border-color:var(--error)}
.form-summary h2{font:600 1rem/1.4 var(--sans);margin-bottom:6px;color:var(--error)}
.form-summary ul{padding-left:18px;list-style:disc}
.form-summary a{color:var(--error)}
.form-status.is-success{border-color:var(--success)}
.form-status.is-error{border-color:var(--error)}
.form-status h2{font-size:1.375rem;margin-bottom:var(--s2)}
.form-status p{margin:0;color:var(--charcoal)}
@media (max-width:640px){.form{grid-template-columns:1fr}}

/* Footer: brand cols 1-5, Explore cols 7-9, Contact cols 10-12 */
.site-footer{background:var(--alt);border-top:1px solid var(--rule);padding:var(--s8) 0 var(--s6);font-size:.9375rem}
.site-footer .grid{row-gap:var(--s6)}
.f-explore{grid-column:7/10}.f-contact{grid-column:10/-1}
.brand--footer img{height:112px;width:auto}
.site-footer h2{font:600 .6875rem/1.6 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--concrete);margin-bottom:var(--s3)}
.site-footer li{padding:var(--s1) 0}
.site-footer a{text-decoration:none;color:var(--charcoal);overflow-wrap:anywhere}
.site-footer ul a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}
.site-footer .brand-blurb{color:var(--charcoal);max-width:40ch;margin-top:var(--s5)}
.site-footer .legal{border-top:1px solid var(--rule);padding-top:var(--s5);color:var(--concrete);font-size:.8125rem}
.site-footer .legal p{margin:0 0 var(--s1)}
@media (max-width:900px){.f-explore,.f-contact{grid-column:span 1}.brand--footer img{height:96px}}
@media (max-width:600px){.f-explore,.f-contact{grid-column:span 1}}

@media (prefers-reduced-motion:reduce){*{transition:none!important}}
@media print{.site-header,.cta,.site-footer{display:none}}
