@font-face{font-family:Bote Sans;src:url('assets/bote-sans.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Bote Sans;src:url('assets/bote-sans-bold.otf') format('opentype');font-weight:700;font-style:normal;font-display:swap}
:root{--ink:#1a1a18;--paper:#f5f6fa;--lilac:#eeeff8;--accent:#ff653d;--muted:#5b5b60;--hairline:#caccd3;--edge:clamp(1.25rem,4.5vw,5rem);--sans:'Bote Sans',Helvetica,Arial,sans-serif;--mono:'Courier New',monospace}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:6rem}
body{margin:0;background:var(--lilac);color:var(--ink);font-family:var(--sans);font-size:1.125rem;line-height:1.45;-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit;color:inherit;cursor:pointer}
a{color:inherit;text-decoration:none}
button:focus-visible,a:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid var(--accent);outline-offset:6px}
::selection{background:var(--accent);color:var(--ink)}
p,h1,h2,h3,h4{margin:0}
h1,h2,h3,h4{font-weight:400;overflow-wrap:anywhere}
img{display:block;max-width:100%}
[hidden]{display:none!important}
.section-pad{padding-inline:var(--edge)}
.eyebrow{font-family:var(--mono);font-size:.875rem;line-height:1.5;letter-spacing:.015em}
.orange{color:var(--accent)}
.skip-link{position:fixed;top:1rem;left:1rem;z-index:100;transform:translateY(-200%);padding:.8rem 1rem;background:var(--ink);color:white}
.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:100px;padding:1.25rem var(--edge);background:rgba(238,239,248,.96);border-bottom:1px solid rgba(26,26,24,.17);backdrop-filter:blur(16px)}
.wordmark{display:flex;align-items:center;gap:.8rem;flex-shrink:0;line-height:1}
.wordmark-bote{font-weight:700;font-size:2.4rem;letter-spacing:-.075em}
.wordmark-studios{font-size:1rem;padding-top:.45rem;letter-spacing:-.025em}
.header-note{font-size:.875rem;line-height:1.25;max-width:10rem;margin-right:auto;margin-left:3vw}
.navigation{display:flex;align-items:center;gap:2rem;font-size:.9375rem}
.navigation a{position:relative;padding-block:.55rem;white-space:nowrap}
.navigation a::after{content:'';position:absolute;bottom:.2rem;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
.navigation a:hover::after{transform:scaleX(1)}
.navigation .nav-contact{border:1px solid var(--ink);padding:.75rem 1.1rem;transition:background .18s,color .18s}
.navigation .nav-contact:hover{background:var(--ink);color:var(--paper)}
.navigation .nav-contact::after{display:none}
.menu-toggle{display:none}
.hero{position:relative;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:2vw;min-height:min(810px,calc(100svh - 100px));padding-top:4.5rem;padding-bottom:6rem;isolation:isolate;overflow:hidden}
.hero-copy{position:relative;z-index:1}
.hero .eyebrow{margin-bottom:2.3rem}
h1{font-size:clamp(4.25rem,8.7vw,9rem);line-height:.98;letter-spacing:-.067em;font-weight:700}
.hero-intro{max-width:30rem;margin-top:2.4rem;font-size:clamp(1.125rem,1.55vw,1.375rem);line-height:1.4;letter-spacing:-.012em}
.text-link{display:inline-block;margin-top:1.9rem;font-size:1rem;padding-bottom:.3rem;border-bottom:1px solid var(--ink);transition:color .18s,border-color .18s}
.text-link:hover{color:#ab2b09;border-color:#ab2b09}
.hero-visual{position:relative;margin:-2rem -2.5vw 0 -3vw}
.hero-sculpture{width:100%;height:auto;filter:drop-shadow(0 2rem 1rem rgba(50,47,77,.05));animation:sculpture-drift 10s ease-in-out infinite}
.hero-bottom{position:absolute;inset-inline:var(--edge);bottom:1.75rem;display:flex;justify-content:space-between;gap:1rem;font-family:var(--mono);font-size:.75rem;line-height:1.5}
.situations{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;background:var(--ink);color:var(--paper);padding-top:7.5rem;padding-bottom:7.5rem}
.section-heading h2{font-size:clamp(3.5rem,5.75vw,6.5rem);line-height:1.02;letter-spacing:-.06em;margin-top:2.4rem}
.section-heading>p:last-child{font-size:1.1875rem;color:#c8c9cf;max-width:19rem;margin-top:2.25rem}
.explorer-label{font-family:var(--mono);font-size:.875rem;margin-bottom:1.7rem;color:#c8c9cf}
.situation-tab{width:100%;display:grid;grid-template-columns:2.4rem 1fr .6rem;align-items:center;gap:.8rem;text-align:left;border:0;border-bottom:1px solid #50514d;background:none;padding:1.4rem 0;line-height:1.2;font-size:clamp(1.125rem,1.9vw,1.6rem);letter-spacing:-.025em;transition:color .2s}
.situation-tab:first-child{border-top:1px solid #50514d}
.tab-number{font-family:var(--mono);font-size:.8125rem;letter-spacing:0;color:#b0b1b7}
.tab-marker{width:.5rem;height:.5rem;background:transparent;transition:background .2s}
.situation-tab[aria-selected="true"]{color:var(--accent)}
.situation-tab[aria-selected="true"] .tab-number{color:var(--accent)}
.situation-tab[aria-selected="true"] .tab-marker{background:var(--accent)}
.situation-tab:hover{color:var(--accent)}
.situation-panels{margin-top:2.5rem;min-height:24rem}
.panel-kicker{font-size:.875rem;color:#b9bac1;max-width:32rem}
.situation-panel h3{font-size:clamp(2.25rem,3.6vw,3.75rem);line-height:1.08;letter-spacing:-.045em;margin-top:1.15rem}
.situation-panel>p:not(.panel-kicker){max-width:36rem;font-size:1.125rem;line-height:1.5;margin-top:1.3rem;color:#d4d5db}
.panel-result{margin-top:2rem;padding-top:1.4rem;border-top:1px solid #50514d;max-width:36rem}
.panel-result>span{font-family:var(--mono);font-size:.8125rem;color:var(--accent)}
.panel-result>p{font-size:1.0625rem;line-height:1.5;margin-top:.6rem;color:#d4d5db}
.situation-panel.panel-enter{animation:panel-appear .3s ease both}
.direction{padding-top:7.5rem;padding-bottom:7.5rem;background:var(--lilac)}
.direction-top{display:grid;grid-template-columns:1fr 2fr;gap:4vw;align-items:start}
.direction h2{font-size:clamp(2.9rem,4.9vw,5.5rem);line-height:1.03;letter-spacing:-.055em}
.direction-body{display:grid;grid-template-columns:1fr 2fr;gap:4vw;margin-top:4.5rem}
.direction-intro{font-size:1.1875rem;max-width:22rem;line-height:1.5;color:#4c4d54}
.outcome{display:grid;grid-template-columns:2.5rem 1fr;gap:1.5rem;border-top:1px solid var(--hairline);padding:1.75rem 0}
.outcome-number{font-family:var(--mono);font-size:.8125rem;padding-top:.4rem}
.outcome h3{font-size:1.625rem;line-height:1.2;letter-spacing:-.035em}
.outcome p{font-size:1.0625rem;color:#4c4d54;margin-top:.75rem;max-width:38rem}
.outcome:last-child{border-bottom:1px solid var(--hairline)}
.ways{padding-top:7.5rem;padding-bottom:5rem;background:var(--paper)}
.ways-top{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end;margin-bottom:4.5rem}
.ways-top h2{font-size:clamp(3rem,5.5vw,6rem);line-height:1.03;letter-spacing:-.06em;margin-top:2.2rem}
.ways-top>p{font-size:1.25rem;max-width:29rem;margin-bottom:.4rem;line-height:1.45;color:#4c4d54}
.workstream{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:2.75rem 0;border-top:1px solid var(--hairline)}
.workstream-name{display:grid;grid-template-columns:2rem 1fr;column-gap:1.6rem;align-content:start}
.workstream-index{font-family:var(--mono);font-size:.8125rem;padding-top:.7rem}
.workstream h3{font-size:clamp(2.4rem,3.75vw,4rem);letter-spacing:-.055em;line-height:1.15}
.workstream-duration{grid-column:2;font-family:var(--mono);font-size:.8125rem;color:var(--muted);margin-top:.9rem}
.workstream-detail h4{font-size:1.375rem;line-height:1.25;letter-spacing:-.025em;margin-top:.35rem}
.workstream-detail>p{font-size:1.0625rem;line-height:1.55;margin-top:.9rem;color:#4c4d54;max-width:35rem}
.workstream-detail .workstream-result{color:var(--ink);border-left:2px solid var(--accent);padding-left:1rem;margin-top:1.5rem}
.ways-note{border-top:1px solid var(--hairline);padding-top:2rem;max-width:100%;font-size:.9375rem;color:var(--muted);text-wrap:pretty}
.about{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:var(--paper);padding-top:6rem;padding-bottom:7.5rem;border-top:1px solid var(--hairline)}
.about h2{font-size:clamp(3rem,5.5vw,6rem);line-height:1.03;letter-spacing:-.06em;margin-top:2.25rem}
.about-copy{max-width:36rem;padding-top:.15rem}
.about-copy .about-lead{font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.25;letter-spacing:-.035em;color:var(--ink)}
.about-copy>p{font-size:1.125rem;line-height:1.55;color:#4c4d54;margin-top:1.5rem}
.about-copy>p:first-child{margin-top:0}
.about-copy .about-note{font-size:.9375rem;color:var(--muted);margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--hairline)}
.contact{background:var(--accent);padding-top:4.5rem;padding-bottom:5rem}
.contact-main{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:center;margin-top:2.5rem}
.contact h2{font-size:clamp(3.5rem,7vw,7.5rem);line-height:.99;letter-spacing:-.06em;font-weight:700}
.contact-copy{max-width:32rem}
.contact-copy>p:first-child{font-size:1.25rem;line-height:1.45;max-width:29rem}
.contact-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.button{display:inline-flex;justify-content:center;align-items:center;min-height:3.25rem;padding:.85rem 1.4rem;font-size:1rem;line-height:1.3;border:1px solid var(--ink);transition:background .18s,color .18s}
.button-dark{background:var(--ink);color:var(--paper)}
.button-dark:hover{background:#383832}
.button-outline:hover{background:var(--ink);color:var(--paper)}
.contact a:focus-visible,.contact button:focus-visible{outline-color:var(--ink)}
.phone-row{display:flex;align-items:center;flex-wrap:wrap;column-gap:1.5rem;row-gap:.4rem;margin-top:1.6rem;font-size:1rem}
.phone-row>a{font-family:var(--mono);font-size:.9375rem}
.copy-phone{padding:.4rem 0;min-height:2.75rem;background:none;border:0;text-decoration:underline;text-underline-offset:.25em;font-size:.875rem}
.copy-phone:hover{text-decoration:none}
.copy-status{min-height:1.5rem;font-size:.875rem;margin-top:.3rem}
.site-footer{background:var(--ink);color:var(--paper);padding-top:2.5rem;padding-bottom:2.5rem;overflow:hidden}
.footer-meta{display:flex;justify-content:space-between;gap:1rem;font-family:var(--mono);font-size:.75rem;line-height:1.5}
.footer-meta a{text-decoration:underline;text-underline-offset:.25em}
.footer-wordmark{position:relative;font-size:clamp(8rem,29.4vw,34rem);font-weight:700;letter-spacing:-.085em;line-height:.9;margin-top:3.25rem;white-space:nowrap}
.footer-studios{display:inline-block;font-size:clamp(1rem,2vw,2.25rem);font-weight:400;letter-spacing:-.04em;vertical-align:top;margin-top:1.15em;margin-left:.5rem}
@keyframes sculpture-drift{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(1deg)}}
@keyframes panel-appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1650px){.hero{grid-template-columns:1.2fr 1fr;min-height:840px}.hero-copy{max-width:53rem}.hero-visual{max-width:740px;justify-self:center}.section-pad{padding-inline:max(var(--edge),calc((100vw - 1570px)/2))}.hero-bottom{inset-inline:max(var(--edge),calc((100vw - 1570px)/2))}.site-header{padding-inline:max(var(--edge),calc((100vw - 1570px)/2))}.footer-wordmark{font-size:30rem}}
@media(max-width:1100px){.header-note{display:none}.site-header{min-height:88px}.navigation{gap:1.4rem}.hero{padding-top:4rem;min-height:670px}.hero-visual{margin-left:-4vw;margin-right:-3vw}.situations{gap:5vw;grid-template-columns:.8fr 1.2fr}.situation-panels{min-height:27rem}.direction-top,.direction-body{grid-template-columns:.8fr 1.2fr}.direction-intro{font-size:1.125rem}.workstream,.ways-top,.about{gap:5vw}.workstream-name{column-gap:1rem}}
@media(max-width:760px){
  html{scroll-padding-top:5rem}
  .site-header{min-height:78px;padding-block:1rem;gap:1rem;flex-wrap:wrap}
  .wordmark-bote{font-size:2.15rem}.wordmark-studios{font-size:.9rem}
  .menu-toggle{display:block;border:1px solid var(--ink);background:none;font-size:.875rem;min-height:2.75rem;padding:.5rem 1rem}
  .navigation{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:.5rem var(--edge) 1rem;background:var(--lilac);border-bottom:1px solid var(--hairline);font-size:1rem}
  .navigation.is-open{display:flex}.navigation>a{padding-block:1rem;min-height:3rem}.navigation .nav-contact{margin-top:.5rem;text-align:center}
  .hero{grid-template-columns:1fr;gap:0;padding-top:3.25rem;padding-bottom:5.5rem;min-height:auto}
  .hero .eyebrow{margin-bottom:1.75rem;font-size:.8125rem}
  h1{font-size:clamp(3.75rem,10.6vw,5.6rem);line-height:1;letter-spacing:-.06em}
  .hero-intro{font-size:1.125rem;max-width:26rem;margin-top:1.75rem}
  .text-link{margin-top:1.4rem}
  .hero-visual{width:min(95%,450px);height:320px;margin:1.5rem auto 0;display:flex;align-items:center;justify-content:center}
  .hero-sculpture{width:350px;max-width:100%;max-height:350px;object-fit:contain}
  .hero-bottom{bottom:1.5rem;font-size:.75rem;flex-wrap:wrap;row-gap:.2rem}
  .situations{grid-template-columns:1fr;gap:3.5rem;padding-top:4rem;padding-bottom:4rem}
  .section-heading h2{font-size:3.5rem;margin-top:1.75rem}
  .section-heading h2 br{display:none}
  .section-heading>p:last-child{max-width:26rem;font-size:1.125rem;margin-top:1.4rem}
  .explorer-label{margin-bottom:1.25rem}
  .situation-tab{font-size:1.1875rem;padding:1.3rem 0;gap:.4rem;grid-template-columns:2rem 1fr .5rem}
  .situation-panels{min-height:26rem;margin-top:2rem}
  .situation-panel h3{font-size:2.5rem;line-height:1.06}
  .panel-kicker{font-size:.875rem;max-width:21rem}
  .situation-panel>p:not(.panel-kicker){font-size:1.0625rem;line-height:1.5}
  .panel-result{margin-top:1.75rem}
  .direction{padding-top:4rem;padding-bottom:4rem}
  .direction-top,.direction-body{grid-template-columns:1fr;gap:1.7rem}
  .direction h2{font-size:clamp(2.4rem,7.5vw,3.5rem);line-height:1.07}
  .direction-body{margin-top:2rem;gap:2.2rem}
  .direction-intro{max-width:31rem;font-size:1.125rem}
  .outcome{gap:.8rem;grid-template-columns:2rem 1fr;padding-block:1.5rem}
  .outcome h3{font-size:1.4rem}.outcome p{font-size:1.0625rem}
  .ways{padding-top:4rem;padding-bottom:3.5rem}
  .ways-top{grid-template-columns:1fr;gap:1.8rem;margin-bottom:2.5rem}
  .ways-top h2{font-size:3.4rem;margin-top:1.75rem}
  .ways-top>p{font-size:1.125rem;max-width:31rem}
  .workstream{grid-template-columns:1fr;gap:1.7rem;padding-block:2rem}
  .workstream-name{column-gap:.7rem;grid-template-columns:2rem minmax(0,1fr)}
  .workstream h3{font-size:2.7rem}.workstream-duration{font-size:.8125rem}
  .workstream-detail h4{font-size:1.3rem}
  .ways-note{font-size:.9375rem;padding-top:1.5rem}
  .about{grid-template-columns:1fr;gap:2.2rem;padding-top:3.5rem;padding-bottom:4rem}
  .about h2{font-size:3.4rem;margin-top:1.75rem}
  .about-copy .about-lead{font-size:1.6rem;line-height:1.3}.about-copy>p{font-size:1.0625rem}
  .contact{padding-top:3.5rem;padding-bottom:3rem}
  .contact-main{grid-template-columns:1fr;gap:2rem;margin-top:1.75rem}
  .contact h2{font-size:clamp(3.5rem,10vw,5.25rem)}
  .contact-copy>p:first-child{font-size:1.125rem}
  .contact-actions{margin-top:1.75rem}.button{padding-inline:1.2rem}
  .site-footer{padding-top:2rem;padding-bottom:2rem}
  .footer-meta{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;font-size:.75rem}
  .footer-meta span:nth-child(2),.footer-meta span:last-child{text-align:right}
  .footer-wordmark{font-size:27vw;letter-spacing:-.085em;margin-top:3rem}
  .footer-studios{font-size:2.7vw;margin-left:.1rem;margin-top:1.35em}
}
@media(max-width:360px){h1{font-size:3.5rem}.hero .eyebrow{font-size:.75rem}.hero-visual{height:280px}.hero-sculpture{width:300px}.section-heading h2{font-size:3rem}.ways-top h2,.about h2{font-size:3.1rem}.situation-tab{font-size:1.0625rem}.situation-panel h3{font-size:2.2rem}.button{font-size:.9375rem;padding-inline:1rem}.contact h2{font-size:3.35rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
