:root {
  color-scheme:dark;
  --bg:#191a1c;
  --surface:#222326;
  --text:#f0efed;
  --muted:#a7a8ab;
  --line:#38393d;
  --quiet:#c2c2c4;
  --focus:#ded8bd;
  --thumb:#72747a;
  --thumb-hover:#909298;
  --thumb-active:#b2b3b7;
  --track:#202124;
  --body:"Helvetica Neue",Helvetica,Arial,sans-serif;
  --display:"Helvetica Neue",Helvetica,Arial,sans-serif;
  --utility:"SFMono-Regular",Consolas,"Liberation Mono",monospace
}

* {
  box-sizing:border-box;
  scrollbar-color:var(--thumb) var(--track);
  scrollbar-width:thin
}

*::-webkit-scrollbar {
  width:10px;
  height:10px
}

*::-webkit-scrollbar-track {
  background:var(--track)
}

*::-webkit-scrollbar-thumb {
  background:var(--thumb);
  border:2px solid var(--track);
  border-radius:8px
}

*::-webkit-scrollbar-thumb:hover {
  background:var(--thumb-hover)
}

*::-webkit-scrollbar-thumb:active {
  background:var(--thumb-active)
}

html {
  scroll-behavior:smooth;
  scroll-padding-top:30px;
  scrollbar-gutter:stable
}

body {
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--body);
  font-size:1rem;
  line-height:1.6;
  -webkit-font-smoothing:antialiased
}

::selection {
  background:#d0d0cb;
  color:#191a1c
}

a {
  color:inherit;
  text-decoration:none;
  cursor:pointer
}

button {
  font:inherit;
  cursor:pointer
}

a:focus-visible,button:focus-visible,summary:focus-visible {
  outline:2px solid var(--focus);
  outline-offset:6px
}

a:active,button:active {
  opacity:.7
}

img {
  display:block;
  max-width:100%;
  height:auto
}

h1,h2,h3,p,figure {
  margin:0
}

h1,h2,h3 {
  font-weight:450
}

h1,h2 {
  font-family:var(--display);
  letter-spacing:-.055em;
  line-height:1.06
}

h2 {
  font-size:clamp(2.5rem,4.1vw,3.65rem)
}

.wrap {
  width:min(1328px,calc(100% - 112px));
  margin-inline:auto
}

.eyebrow {
  font:400 .75rem/1.6 var(--utility);
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--muted)
}

.skip-link {
  position:absolute;
  left:20px;
  top:-100px;
  z-index:20;
  background:var(--text);
  color:var(--bg);
  padding:12px 20px
}

.skip-link:focus {
  top:15px
}

.site-header {
  min-height:108px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid var(--line);
  gap:32px
}

.brand {
  display:flex;
  gap:13px;
  align-items:center;
  font-size:1.12rem;
  font-weight:500;
  line-height:1.2;
  letter-spacing:-.025em
}

.brand img {
  width:38px;
  height:38px;
  border-radius:4px
}

.brand-sub {
  display:block;
  color:var(--muted);
  font-size:.68rem;
  font-weight:400;
  letter-spacing:0;
  margin-top:6px
}

.site-header nav {
  display:flex;
  gap:32px;
  margin-left:auto;
  margin-right:22px
}

.site-header nav a,.header-contact {
  font-size:.875rem
}

.site-header nav a {
  color:var(--muted);
  padding-block:12px;
  transition:color .2s
}

.site-header nav a:hover {
  color:var(--text)
}

.header-contact {
  display:flex;
  align-items:center;
  gap:24px;
  border:1px solid #67686b;
  border-radius:5px;
  padding:10px 17px;
  transition:background .2s,border-color .2s
}

.header-contact:hover {
  background:var(--surface);
  border-color:var(--text)
}

.hero {
  display:grid;
  grid-template-columns:1.12fr 1fr;
  gap:5.7%;
  padding-block:70px 55px;
  align-items:center
}

.hero-copy {
  padding-block:28px
}

.hero .eyebrow {
  font-size:.72rem;
  letter-spacing:.065em;
  margin-bottom:32px
}

.hero h1 {
  font-size:clamp(3.7rem,6.5vw,6rem);
  font-weight:450;
  line-height:1.025;
  letter-spacing:-.065em
}

.hero h1 span {
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
  font-style:italic;
  letter-spacing:-.07em;
  color:#c4c1b9
}

.hero-description {
  max-width:370px;
  margin-top:30px;
  font-size:1.15rem;
  line-height:1.5
}

.hero-detail {
  max-width:360px;
  margin-top:14px;
  color:var(--muted);
  font-size:1rem;
  line-height:1.6
}

.button {
  background:var(--text);
  color:#202124;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
  min-height:51px;
  padding:14px 20px;
  border-radius:4px;
  font-size:.875rem;
  font-weight:500;
  transition:background .2s,transform .2s
}

.button:hover {
  background:#d6d4cd;
  transform:translateY(-2px)
}

.hero .button {
  margin-top:34px
}

.quiet-link {
  display:flex;
  width:fit-content;
  align-items:center;
  gap:20px;
  color:var(--muted);
  font-size:.875rem;
  margin-top:24px;
  min-height:32px
}

.quiet-link:hover {
  color:var(--text)
}

.hero-photo {
  overflow:hidden;
  aspect-ratio:4/5;
  border-radius:5px;
  background:var(--surface)
}

.hero-photo img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 53%;
  filter:saturate(.55);
  transition:transform 1.2s cubic-bezier(.2,.6,.2,1)
}

.hero-photo:hover img {
  transform:scale(1.025)
}

figcaption {
  display:flex;
  justify-content:space-between;
  gap:16px;
  font:400 .66rem/1.5 var(--utility);
  color:var(--muted);
  padding-top:13px
}

.intro-band {
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding-block:28px;
  gap:30px
}

.intro-band>p:first-child {
  font-size:1rem;
  line-height:1.5
}

.intro-band>p:last-child {
  display:flex;
  gap:21px;
  color:var(--muted);
  font-size:.8rem
}

.intro-band span {
  color:#616367
}

.section {
  padding-block:104px
}

.section-heading {
  display:grid;
  grid-template-columns:1fr 2fr;
  gap:50px;
  margin-bottom:56px
}

.section-heading>.eyebrow {
  padding-top:9px
}

.services {
  margin-left:calc((100% + 50px)/3)
}

.services article {
  border-top:1px solid var(--line);
  padding:28px 0;
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:45px
}

.services article:last-child {
  border-bottom:1px solid var(--line)
}

h3 {
  font-size:1.35rem;
  letter-spacing:-.035em;
  line-height:1.3
}

.services p {
  color:var(--muted);
  font-size:.98rem;
  line-height:1.7
}

.section>.eyebrow {
  margin-bottom:25px
}

.section-description {
  max-width:590px;
  color:var(--muted);
  margin-top:25px
}

.contact {
  border-top:1px solid var(--line);
  padding-block:90px 100px
}

.contact h2 {
  font-size:clamp(3rem,5.8vw,5.2rem);
  margin-top:26px
}

.contact>p:not(.eyebrow) {
  color:var(--muted);
  margin-top:28px
}

.email-link {
  display:inline-block;
  font-size:clamp(1rem,2.3vw,1.75rem);
  letter-spacing:-.03em;
  margin-top:36px;
  border-bottom:1px solid #78797d;
  padding-bottom:10px;
  overflow-wrap:anywhere;
  transition:border-color .2s,color .2s
}

.email-link span {
  display:inline-block;
  margin-left:18px
}

.email-link:hover {
  color:#c4c1b9;
  border-color:var(--text)
}

.footer {
  display:flex;
  flex-wrap:wrap;
  gap:24px;
  justify-content:space-between;
  padding-block:30px;
  border-top:1px solid var(--line);
  font-size:.75rem;
  color:var(--muted)
}

.footer a {
  min-height:28px;
  display:flex;
  align-items:center
}

.footer a:hover {
  color:var(--text)
}

.footer-brand {
  color:var(--text);
  font-weight:500
}

.footer>span {
  padding-block:4px
}

@media(min-width:1600px) {
  .hero {
    gap:95px
  }

}

@media(max-width:1050px) {
  .wrap {
    width:calc(100% - 64px)
  }

  .hero {
    gap:35px
  }

  .hero h1 {
    font-size:clamp(3.3rem,6.5vw,4.8rem)
  }

  .hero-description {
    font-size:1.05rem
  }

  .hero .eyebrow {
    max-width:280px
  }

  .site-header nav {
    gap:22px;
    margin-right:0
  }

  .brand-sub {
    display:none
  }

  .intro-band>p:last-child {
    gap:10px;
    font-size:.75rem
  }

  .services article {
    gap:25px;
    grid-template-columns:1fr
  }

  .section-heading {
    grid-template-columns:1fr 1.7fr
  }

  .services {
    margin-left:calc((100% + 50px)/2.7)
  }

}

@media(max-width:760px) {
  .wrap {
    width:calc(100% - 40px)
  }

  .site-header {
    min-height:86px;
    flex-wrap:wrap;
    gap:15px;
    padding-top:18px;
    padding-bottom:12px
  }

  .brand {
    font-size:1rem
  }

  .brand img {
    width:32px;
    height:32px
  }

  .header-contact {
    padding:7px 12px;
    gap:18px;
    font-size:.8rem
  }

  .site-header nav {
    order:3;
    width:100%;
    justify-content:space-between;
    margin:0;
    gap:16px;
    border-top:1px solid var(--line);
    padding-top:4px
  }

  .site-header nav a {
    font-size:.8rem
  }

  .hero {
    grid-template-columns:1fr;
    gap:36px;
    padding-block:34px 40px
  }

  .hero-copy {
    padding:0
  }

  .hero .eyebrow {
    max-width:none;
    margin-bottom:24px;
    font-size:.68rem
  }

  .hero h1 {
    font-size:clamp(3.5rem,11vw,5.2rem)
  }

  .hero-description {
    max-width:345px;
    margin-top:24px;
    font-size:1.125rem
  }

  .hero-detail {
    max-width:370px
  }

  .hero .button {
    margin-top:26px
  }

  .quiet-link {
    display:inline-flex;
    margin-top:20px
  }

  .hero-photo {
    aspect-ratio:1.1;
    max-height:520px
  }

  .hero-photo img {
    object-position:50% 50%
  }

  .hero-figure {
    max-width:560px;
    width:100%;
    margin:auto
  }

  figcaption {
    font-size:.63rem
  }

  .intro-band {
    align-items:flex-start;
    flex-direction:column;
    gap:20px;
    padding-block:25px
  }

  .intro-band>p:last-child {
    flex-wrap:wrap;
    gap:10px 15px;
    font-size:.75rem
  }

  .section {
    padding-block:65px
  }

  .section-heading {
    display:block;
    margin-bottom:36px
  }

  .section-heading .eyebrow {
    padding:0;
    margin-bottom:22px
  }

  .services {
    margin:0
  }

  .services article {
    padding:24px 0;
    gap:12px
  }

  .services p {
    font-size:1rem
  }

  .contact {
    padding-block:60px 65px
  }

  .contact h2 {
    font-size:clamp(2.65rem,9.8vw,4rem)
  }

  .contact p br {
    display:none
  }

  .email-link {
    font-size:1.1rem
  }

  .footer {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px 10px;
    font-size:.69rem
  }

  .footer>span:nth-child(3) {
    grid-row:2
  }

  .footer>a:last-child {
    text-align:right;
    justify-content:flex-end
  }

  .footer>span:nth-child(2) {
    text-align:right
  }

}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }

  *,*::before,*::after {
    animation:none!important;
    transition:none!important;
    transform:none!important
  }

}

@media(forced-colors:active) {
  * {
    scrollbar-color:auto
  }

  .button {
    border:1px solid ButtonText
  }

  .hero h1 span {
    color:CanvasText
  }

}

/* Build archive */
.work-section {
  background:#202123;
  padding-block:88px 80px;
  border-block:1px solid var(--line)
}

.work-heading {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:40px;
  margin-bottom:48px
}

.work-heading .eyebrow {
  margin-bottom:25px
}

.work-heading>p {
  color:var(--muted);
  font-size:1rem;
  max-width:300px;
  padding-bottom:5px
}

.featured-build {
  display:grid;
  grid-template-columns:1.22fr 1fr;
  gap:6%;
  align-items:start
}

.build-photo {
  aspect-ratio:1.18;
  overflow:hidden;
  border-radius:4px;
  background:var(--bg)
}

.build-photo img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 40%;
  filter:saturate(.55);
  transition:transform 1s
}

.build-photo:hover img {
  transform:scale(1.025)
}

.build-copy {
  padding-block:4px
}

.build-copy h3 {
  font-size:clamp(1.7rem,2.5vw,2.4rem);
  letter-spacing:-.045em;
  line-height:1.15;
  margin-top:20px
}

.build-copy>p:not(.eyebrow) {
  color:var(--muted);
  font-size:1rem;
  margin-top:22px;
  line-height:1.7
}

.build-specs {
  margin:27px 0 0;
  font-size:.8125rem
}

.build-specs>div {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  border-top:1px solid #444549;
  gap:20px;
  padding-block:11px
}

.build-specs dt {
  color:var(--muted)
}

.build-specs dd {
  margin:0;
  text-align:right
}

.build-notes {
  border-top:1px solid #444549;
  border-bottom:1px solid #444549
}

.build-notes summary {
  cursor:pointer;
  list-style:none;
  display:flex;
  gap:25px;
  justify-content:space-between;
  align-items:center;
  min-height:54px;
  font-size:.875rem
}

.build-notes summary::-webkit-details-marker {
  display:none
}

.build-notes summary:hover {
  color:#c4c1b9
}

.build-notes summary:active {
  opacity:.7
}

.disclosure-icon {
  position:relative;
  display:block;
  width:14px;
  height:14px;
  flex-shrink:0
}

.disclosure-icon::before,.disclosure-icon::after {
  position:absolute;
  content:"";
  background:currentColor;
  left:0;
  top:6px;
  width:14px;
  height:1px
}

.disclosure-icon::after {
  transform:none;
  rotate:90deg;
  transition:rotate .2s
}

.build-notes[open] .disclosure-icon::after {
  rotate:0deg
}

.build-notes>div {
  padding-bottom:22px;
  color:var(--muted);
  font-size:.9375rem;
  line-height:1.7
}

.build-notes p+p {
  margin-top:15px
}

.work-detail {
  display:grid;
  grid-template-columns:1fr 1fr 1.02fr;
  gap:30px;
  margin-top:65px;
  padding-top:45px;
  border-top:1px solid #444549
}

.work-detail figure>img {
  width:100%;
  height:260px;
  object-fit:cover;
  filter:saturate(.5);
  border-radius:4px
}

.work-detail figure:first-child>img {
  object-position:50% 45%
}

.work-detail figure:nth-child(2)>img {
  object-position:50% 52%
}

.work-perspective {
  padding:5px 0 0 16px
}

.work-perspective>p:nth-child(2) {
  font-size:clamp(1.55rem,2.4vw,2rem);
  letter-spacing:-.035em;
  line-height:1.2;
  margin-top:19px
}

.work-perspective em {
  font:italic 1.05em Georgia,"Times New Roman",serif;
  color:#c4c1b9
}

.work-perspective>p:last-child {
  font-size:.875rem;
  color:var(--muted);
  line-height:1.6;
  margin-top:20px
}

.about-section {
  display:grid;
  grid-template-columns:1fr 2fr;
  gap:50px;
  padding-block:110px
}

.about-label {
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:24px
}

.about-label>.eyebrow {
  padding-top:8px
}

.founder {
  display:flex;
  gap:15px;
  align-items:center;
  padding-bottom:8px
}

.founder img {
  border-radius:4px
}

.founder p {
  font-size:1rem
}

.founder span {
  display:block;
  color:var(--muted);
  font-size:.75rem;
  line-height:1.7;
  margin-top:5px
}

.about-copy>p {
  color:var(--muted);
  font-size:1rem;
  line-height:1.8;
  max-width:660px;
  margin-top:22px
}

.about-copy .about-intro {
  color:var(--text);
  font-size:1.25rem;
  line-height:1.6;
  margin-top:30px
}

.model-experience {
  border-top:1px solid var(--line);
  margin-top:35px;
  padding-top:25px
}

.model-experience ul {
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap:15px 26px;
  padding:0;
  margin:16px 0;
  font-size:1.15rem;
  letter-spacing:-.02em;
  color:var(--quiet)
}

.model-experience>p:last-child {
  color:var(--muted);
  font-size:.875rem;
  max-width:590px;
  line-height:1.7
}

/* Keep small labels readable, including on narrow screens. */
.eyebrow,.hero .eyebrow,.brand-sub,figcaption,.footer {
  font-size:.75rem
}

@media(max-width:1050px) {
  .featured-build {
    gap:35px;
    grid-template-columns:1fr 1fr
  }

  .build-copy h3 br {
    display:none
  }

  .work-detail {
    gap:20px
  }

  .work-detail figure>img {
    height:240px
  }

  .work-perspective {
    padding-left:0
  }

  .work-perspective>p:nth-child(2) {
    font-size:1.6rem
  }

  .work-perspective>p:last-child {
    font-size:.8125rem
  }

  .about-section {
    grid-template-columns:1fr 1.7fr
  }

}

@media(max-width:760px) {
  .work-section {
    padding-block:60px
  }

  .work-heading {
    display:block;
    margin-bottom:32px
  }

  .work-heading>p {
    margin-top:22px
  }

  .work-heading>p br {
    display:none
  }

  .featured-build {
    grid-template-columns:1fr;
    gap:30px
  }

  .build-photo {
    aspect-ratio:1.15
  }

  .build-copy h3 {
    font-size:1.9rem;
    max-width:360px
  }

  .build-copy h3 br {
    display:block
  }

  .build-specs {
    font-size:.8125rem
  }

  .work-detail {
    grid-template-columns:1fr 1fr;
    gap:23px 16px;
    margin-top:42px;
    padding-top:32px
  }

  .work-detail figure>img {
    height:220px
  }

  .work-detail figcaption {
    font-size:.75rem;
    line-height:1.6
  }

  .work-perspective {
    grid-column:1/-1;
    margin-top:10px;
    padding-top:12px;
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:22px
  }

  .work-perspective>.eyebrow {
    grid-column:1/-1
  }

  .work-perspective>p:nth-child(2) {
    font-size:1.65rem
  }

  .work-perspective>p:last-child {
    font-size:.875rem
  }

  .about-section {
    display:flex;
    flex-direction:column;
    gap:35px;
    padding-block:65px
  }

  .about-label {
    gap:25px
  }

  .about-label>.eyebrow {
    padding:0
  }

  .founder {
    padding:0
  }

  .about-copy h2 {
    font-size:clamp(2.2rem,7.7vw,3rem)
  }

  .model-experience ul {
    gap:12px 20px;
    font-size:1.1rem
  }

  .hero .eyebrow {
    font-size:.75rem;
    letter-spacing:.03em
  }

  .footer {
    font-size:.75rem
  }

}

@media(max-width:380px) {
  .hero h1 {
    font-size:3.15rem
  }

  .header-contact {
    gap:10px
  }

  .work-detail figure>img {
    height:175px
  }

  .work-perspective {
    grid-template-columns:1fr
  }

  .work-perspective>p:nth-child(2) br {
    display:none
  }

  .hero-photo {
    aspect-ratio:1
  }

  .build-specs>div {
    gap:12px
  }

  .build-specs dd {
    max-width:175px
  }

  .footer {
    font-size:.75rem
  }

}

@media print {
  body {
    background:white;
    color:black
  }

  .site-header nav,.header-contact,.button,.quiet-link,.skip-link,.footer>a:last-child {
    display:none
  }

  .wrap {
    width:100%
  }

  .hero {
    padding-block:30px
  }

  .hero-photo img,.build-photo img,.work-detail img {
    filter:none
  }

  .hero h1 span,.eyebrow,.hero-detail,.section-description,.contact>p,.about-copy>p,.build-copy>p,.services p,.model-experience p,figcaption,.work-heading>p {
    color:#333
  }

  .work-section {
    background:#eee
  }

  .section,.about-section,.work-section {
    padding-block:35px
  }

  .hero h1 {
    font-size:48px
  }

  h2 {
    font-size:36px
  }

  .email-link {
    color:black
  }

  .footer {
    color:#333
  }

}

.email-link {
  display:inline-flex;
  align-items:center;
  max-width:100%;
  gap:18px
}

.email-link .email-address {
  min-width:0;
  margin:0
}

.email-link .email-arrow {
  flex:none;
  margin:0
}

/* Policy pages and readable contact disclosure. */
.hero-copy,.build-copy,.about-copy,.legal-main { min-width:0; }
.hero h1 { overflow-wrap:anywhere; }
.contact .contact-notice { max-width:640px; font-size:.875rem; line-height:1.75; margin-top:20px; }
.contact-notice a,.legal-main a:not(.button) { text-decoration:underline; text-underline-offset:.2em; }
.contact-notice a:hover,.legal-main a:not(.button):hover { color:var(--text); }
.footer-policies { padding-bottom:28px; }
.policy-links { display:flex; gap:12px 28px; flex-wrap:wrap; font-size:.875rem; }
.policy-links a { display:inline-flex; align-items:center; min-height:44px; color:var(--muted); text-decoration:underline; text-underline-offset:.2em; }
.policy-links a:hover { color:var(--text); }
.legal-main { max-width:850px; padding-block:70px 90px; }
.legal-main h1 { font-size:clamp(2.6rem,6vw,4.2rem); margin-top:20px; overflow-wrap:anywhere; }
.legal-main .policy-date { font-size:.875rem; margin-top:18px; color:var(--muted); }
.legal-main .legal-intro { font-size:1.2rem; line-height:1.7; margin-top:35px; color:var(--text); }
.legal-main section { margin-top:38px; }
.legal-main h2 { font-size:1.65rem; letter-spacing:-.025em; line-height:1.25; margin-bottom:16px; }
.legal-main p,.legal-main address { color:var(--muted); line-height:1.8; overflow-wrap:anywhere; }
.legal-main p+p { margin-top:16px; }
.legal-main address { font-style:normal; margin-top:16px; }
.legal-main strong { color:var(--text); font-weight:550; }
.legal-main .button { margin-top:28px; }
.legal-footer { border-top:1px solid var(--line); padding-block:30px; display:grid; gap:20px; }
.legal-footer>div { display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; }
.legal-footer>div>a { min-height:44px; display:flex; align-items:center; }
.legal-footer span,.legal-footer>p { color:var(--muted); font-size:.875rem; }
.legal-footer span { align-self:center; }
.legal-header { min-height:86px; }
@media(max-width:760px) {
  .legal-main { padding-block:44px 60px; }
  .legal-main .legal-intro { font-size:1.125rem; }
  .policy-links { gap:8px 20px; }
}
@media print {
  :root { --bg:#fff; --surface:#fff; --text:#111; --muted:#444; --quiet:#333; --line:#aaa; }
  .work-perspective em { color:#333; }
  .legal-main { max-width:none; padding-block:25px; }
  .policy-links a,.contact-notice a,.legal-main a { color:#222; }
  .legal-main section { break-inside:avoid; }
}
/* Preserve readable contrast while a link or control is pressed. */
a:active,button:active,.build-notes summary:active { opacity:1; }

/* Local AI: restrained metrics and practical deployment comparisons. */
.local-benefits { padding-bottom:0; }
.local-heading { display:grid; grid-template-columns:1.1fr 1fr; gap:64px; align-items:end; margin-bottom:42px; }
.local-heading .eyebrow { margin-bottom:24px; }
.local-heading>p { color:var(--muted); max-width:520px; line-height:1.75; }
.local-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.local-metrics article { padding:35px 32px 32px; }
.local-metrics article:first-child { padding-left:0; }
.local-metrics article:last-child { padding-right:0; }
.local-metrics article+article { border-left:1px solid var(--line); }
.metric-value { font-size:clamp(3.5rem,6vw,5.5rem); line-height:1.05; letter-spacing:-.06em; font-variant-numeric:tabular-nums; margin-bottom:27px; }
.metric-word { letter-spacing:-.055em; }
.local-metrics h3 { font-size:1.2rem; margin-bottom:14px; }
.local-metrics article>p:not(.metric-value) { color:var(--muted); line-height:1.7; }
.metric-context { display:block; color:var(--muted); font-size:.8125rem; line-height:1.65; margin-top:18px; }
.local-evidence { color:var(--muted); font-size:.8125rem; line-height:1.75; margin-top:20px; max-width:900px; }
.local-evidence a,.deployment-close p a { text-decoration:underline; text-underline-offset:.2em; }
.local-evidence a:hover,.deployment-close p a:hover { color:var(--text); }
.deployment-choice { border-top:1px solid var(--line); }
.deployment-rows article { display:grid; grid-template-columns:.75fr 2fr; gap:48px; border-top:1px solid var(--line); padding-block:28px; }
.deployment-rows article:last-child { border-bottom:1px solid var(--line); }
.deployment-rows h3 { font-size:1.2rem; }
.deployment-rows dl { margin:0; display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.deployment-rows dt { color:var(--text); font-weight:500; font-size:.875rem; margin-bottom:12px; }
.deployment-rows dd { margin:0; color:var(--muted); font-size:.9375rem; line-height:1.75; }
.deployment-close { display:flex; align-items:center; justify-content:space-between; gap:40px; margin-top:30px; }
.deployment-close p { max-width:740px; color:var(--muted); font-size:.875rem; line-height:1.75; }
.deployment-close .button { flex-shrink:0; }
@media(max-width:1050px) {
  .local-heading { gap:35px; }
  .local-metrics article { padding-inline:22px; }
  .deployment-rows article { grid-template-columns:1fr; gap:20px; }
  .deployment-close { align-items:flex-start; flex-direction:column; gap:22px; }
  .site-header nav { gap:16px; }
}
@media(max-width:760px) {
  .local-heading { grid-template-columns:1fr; gap:22px; margin-bottom:30px; }
  .local-metrics { grid-template-columns:1fr; }
  .local-metrics article,.local-metrics article:first-child,.local-metrics article:last-child { padding:28px 0; }
  .local-metrics article+article { border-left:0; border-top:1px solid var(--line); }
  .metric-value { font-size:3.5rem; margin-bottom:18px; }
  .deployment-rows dl { grid-template-columns:1fr; gap:22px; }
  .site-header nav { flex-wrap:wrap; gap:6px 20px; justify-content:flex-start; }
  .site-header nav a { min-height:36px; display:flex; align-items:center; }
}
@media print {
  .local-heading { grid-template-columns:1fr; gap:20px; }
  .local-metrics article,.deployment-rows article { break-inside:avoid; }
}
