@font-face{font-family:Manrope;font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/fonts/manrope-latin.woff2') format('woff2')}
@font-face{font-family:Newsreader;font-style:normal;font-weight:400 500;font-display:swap;src:url('/assets/fonts/newsreader-latin.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-regular-latin.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/ibm-plex-mono-medium-latin.woff2') format('woff2')}

:root{
  --ink:#081316;
  --surface:#122126;
  --paper:#f2f0e8;
  --white:#f8fbfa;
  --cyan:#68d8d6;
  --pink:#f2b4ce;
  --line:#a8c7c8;
  --forest:#153633;
  --plum:#332738;
  --mist:#dce6e4;
  --graphite:#627276;
  --sans:Manrope,'Avenir Next',Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --serif:Newsreader,'Iowan Old Style',Baskerville,Georgia,serif;
  --mono:'IBM Plex Mono','SFMono-Regular',Consolas,monospace;
  --side:clamp(1.4rem,5vw,5rem);
  --max:1440px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--white);font-family:var(--sans);line-height:1.6;text-rendering:optimizeLegibility}
a{color:inherit;text-underline-offset:.2em}
::selection{background:var(--pink);color:var(--ink)}
.skip-link{position:fixed;left:-9999px;top:1rem;z-index:100}
.skip-link:focus{left:1rem;background:var(--cyan);color:var(--ink);padding:.7rem 1rem}

.site-header{position:sticky;top:0;z-index:50;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:.85rem var(--side);border-bottom:1px solid rgba(104,216,214,.72);background:rgba(8,19,22,.9);backdrop-filter:blur(14px)}
.wordmark{font:500 .78rem/1 var(--mono);letter-spacing:.08em;text-decoration:none;white-space:nowrap}
.wordmark span{color:var(--line);font-weight:400}
.site-header nav{display:flex;align-items:center;gap:clamp(.8rem,1.7vw,1.5rem)}
.site-header nav a{font-size:.87rem;text-decoration:none;white-space:nowrap}
.site-header nav a:not(.nav-cta){border-bottom:1px solid transparent}
.site-header nav a:not(.nav-cta):hover,.site-header nav a:not(.nav-cta):focus-visible{border-color:var(--pink)}
.nav-cta,.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:.72rem 1.15rem;border:1px solid var(--cyan);border-radius:0;background:var(--cyan);color:var(--ink);font-weight:600;text-decoration:none;transition:background-color .2s ease,color .2s ease}
.nav-cta{min-height:42px;padding:.58rem .9rem}
.nav-cta:hover,.nav-cta:focus-visible,.button:hover,.button:focus-visible{background:transparent;color:var(--cyan)}

.hero{position:relative;isolation:isolate;min-height:clamp(660px,82svh,900px);display:grid;align-items:end;padding:clamp(5rem,12vw,10rem) var(--side) clamp(3.5rem,6vw,5.5rem);overflow:hidden;background:var(--plum)}
.hero:before{content:"";position:absolute;z-index:-2;inset:0;background:url('/assets/img/hani-color.jpg') 70% 35%/cover no-repeat;filter:saturate(.8) contrast(1.02)}
.hero:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(8,19,22,.93) 0%,rgba(8,19,22,.78) 48%,rgba(8,19,22,.28) 78%,rgba(51,39,56,.28) 100%),linear-gradient(0deg,rgba(8,19,22,.44),transparent 58%)}
.hero-copy{width:min(900px,100%)}
.eyebrow,.num{font:500 .72rem/1.45 var(--mono);text-transform:uppercase;letter-spacing:.14em}
.eyebrow{margin:0 0 1.6rem;color:var(--cyan)}
h1,h2,h3{margin:.3em 0;font-weight:500;letter-spacing:-.035em}
h1{max-width:1050px;font-size:clamp(3.25rem,7.8vw,7.5rem);line-height:.92}
h2{max-width:980px;font-size:clamp(2.5rem,5.3vw,5rem);line-height:1}
h3{font-size:clamp(1.35rem,2.2vw,1.9rem);line-height:1.15}
.hero p:not(.eyebrow){max-width:720px;margin:1.7rem 0 0;color:var(--mist);font-size:clamp(1.08rem,1.8vw,1.35rem)}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:2rem}
.text-link{display:inline-flex;min-height:48px;align-items:center;padding:.72rem .2rem;border-bottom:1px solid var(--pink);text-decoration:none}

.signal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(104,216,214,.46);border-bottom:1px solid rgba(104,216,214,.46);background:#18282d}
.signal-grid div{min-height:132px;padding:1.35rem var(--side);border-right:1px solid rgba(168,199,200,.65);color:var(--mist);font-size:.83rem}
.signal-grid div:last-child{border-right:0}
.signal-grid strong{display:block;margin-bottom:.22rem;color:var(--white);font-size:clamp(1.15rem,1.7vw,1.45rem);font-weight:500;letter-spacing:-.02em}

.section{padding:clamp(4.5rem,9vw,9rem) var(--side)}
.section.light{background:var(--paper);color:var(--forest)}
.section-intro{max-width:760px;color:var(--mist);font-size:clamp(1.05rem,1.6vw,1.24rem)}
.capabilities{background:var(--ink)}
.capabilities h2{color:var(--pink);font-weight:400}
.path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:clamp(3rem,6vw,5.5rem);border-top:1px solid rgba(168,199,200,.7)}
.path{min-height:285px;padding:2rem 2rem 2rem 0;border-bottom:1px solid rgba(168,199,200,.7)}
.path:nth-child(odd){padding-right:clamp(2rem,5vw,5rem);border-right:1px solid rgba(168,199,200,.7)}
.path:nth-child(even){padding-left:clamp(2rem,5vw,5rem)}
.path .num{color:var(--line)}
.path h3{margin-top:2.7rem;color:var(--white)}
.path p{max-width:560px;color:var(--line)}
.path a{display:inline-block;margin-top:1rem;color:var(--white);text-decoration-color:var(--cyan)}

.testimonial-section{padding:clamp(4.5rem,9vw,9rem) var(--side);background:var(--paper);color:var(--forest)}
.testimonial-section .eyebrow{color:#1b7474}
.testimonial-section h2{max-width:920px}
.testimonial-intro{max-width:760px;color:var(--graphite);font-size:1.05rem}
.testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:clamp(2.5rem,5vw,4.5rem) 0 2rem;border-top:1px solid rgba(21,54,51,.34);border-left:1px solid rgba(21,54,51,.34)}
.testimonial-card{min-height:340px;display:flex;flex-direction:column;justify-content:space-between;margin:0;padding:clamp(1.6rem,3vw,2.7rem);border-right:1px solid rgba(21,54,51,.34);border-bottom:1px solid rgba(21,54,51,.34);background:var(--paper)}
.testimonial-card blockquote{margin:0;color:var(--forest);font:400 clamp(1.7rem,3vw,2.8rem)/1.14 var(--serif);letter-spacing:-.035em}
.testimonial-card figcaption{display:grid;gap:.18rem;margin-top:3rem;padding-top:1rem;border-top:1px solid rgba(21,54,51,.26)}
.testimonial-card figcaption strong{font-size:1rem}
.testimonial-card figcaption span{color:var(--graphite);font-size:.9rem}
.testimonial-card figcaption small{margin-top:.45rem;color:#1b7474;font:500 .68rem/1.45 var(--mono);text-transform:uppercase;letter-spacing:.1em}
.testimonial-section>.text-link{color:var(--forest)}

.quote{padding:clamp(4.5rem,9vw,9rem) var(--side);background:var(--plum);color:var(--white)}
.quote blockquote{max-width:1080px;margin:0;color:var(--pink);font:400 clamp(2.8rem,6.5vw,6rem)/.98 var(--serif);letter-spacing:-.045em}
.quote-copy{max-width:620px;margin-top:2rem;color:var(--mist);font-size:1.05rem}

footer{display:grid;grid-template-columns:2fr 1fr;gap:2rem;padding:3.5rem var(--side);border-top:1px solid rgba(168,199,200,.28);color:var(--line)}
footer strong{font-family:var(--mono);letter-spacing:.12em}
footer small{grid-column:1/-1;font-family:var(--mono);font-size:.7rem;letter-spacing:.04em}

@media(max-width:920px){
  .site-header{position:relative;flex-wrap:wrap;gap:.6rem;padding-block:.8rem}
  .site-header nav{width:100%;overflow-x:auto;padding:.35rem 0;scrollbar-width:thin}
  .nav-cta{min-height:40px}
  .signal-grid{grid-template-columns:1fr 1fr}
  .signal-grid div:nth-child(2){border-right:0}
  .signal-grid div:nth-child(-n+2){border-bottom:1px solid rgba(168,199,200,.65)}
  .hero{min-height:680px}
  .hero:before{background-position:62% 35%}
  .hero:after{background:linear-gradient(90deg,rgba(8,19,22,.93) 0%,rgba(8,19,22,.72) 66%,rgba(8,19,22,.38) 100%),linear-gradient(0deg,rgba(8,19,22,.62),transparent 70%)}
}

@media(max-width:700px){
  .wordmark span{display:inline}
  .hero{min-height:720px;padding-top:6rem}
  .hero:before{background-position:59% 30%}
  .hero:after{background:linear-gradient(0deg,rgba(8,19,22,.96) 0%,rgba(8,19,22,.82) 48%,rgba(8,19,22,.32) 100%)}
  h1{font-size:clamp(3rem,14vw,4.5rem)}
  .path-grid{grid-template-columns:1fr}
  .path,.path:nth-child(odd),.path:nth-child(even){min-height:0;padding:2rem 0;border-right:0}
  .testimonial-grid{grid-template-columns:1fr}
  .testimonial-card{min-height:0}
  footer{grid-template-columns:1fr}
  footer small{grid-column:auto}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
