:root {
  --forest:#173e35;
  --forest-deep:#0e302a;
  --forest-soft:#50766b;
  --paper:#f7f6f0;
  --cream:#edece4;
  --white:#fff;
  --ink:#183a34;
  --body:#4d645d;
  --accent:#b56e45;
  --gold:#ddb687;
  --line:rgba(25,62,53,.15);
  --shell:min(1200px,calc(100% - 72px));
  --radius:20px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:104px}
body{margin:0;font-family:"DM Sans",Arial,sans-serif;font-size:16px;line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
a{color:inherit}
button,input,textarea{font:inherit}
button{cursor:pointer}
.shell{width:var(--shell);margin-inline:auto}
.skip-link{position:fixed;top:-60px;left:20px;z-index:1000;padding:12px 18px;background:#fff;color:#000;border:2px solid var(--accent)}
.skip-link:focus{top:10px}
:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{letter-spacing:-.045em;line-height:1.12}
h1,h2{font-weight:700}
h2{font-size:clamp(2.55rem,4.4vw,4.7rem);margin:0 0 20px}
h2 em,h1 em{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:600;letter-spacing:-.065em}
h3{font-size:1.24rem}
p{color:var(--body)}
.section{padding:116px 0}
.kicker,.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.16em;line-height:1.5;text-transform:uppercase;color:var(--accent);margin:0 0 19px}
.kicker-light{color:var(--gold)}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:56px;padding:15px 24px;border-radius:7px;font-size:.93rem;font-weight:800;text-decoration:none;transition:transform .2s ease,background .2s ease,color .2s ease;white-space:nowrap}
.button:hover{transform:translateY(-2px)}
.button span{font-size:1.1rem}
.button-primary{background:var(--forest);color:#fff;box-shadow:0 9px 22px rgba(13,47,39,.15)}
.button-primary:hover{background:#255b4d}
.text-link{display:inline-flex;align-items:center;gap:13px;font-weight:800;font-size:.94rem;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}
.text-link span{transition:transform .2s ease}
.text-link:hover span{transform:translateX(4px)}
/* Navigation */
.site-header{background:rgba(247,246,240,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:99;backdrop-filter:blur(15px)}
.header-inner{display:flex;min-height:89px;justify-content:space-between;align-items:center;gap:25px}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--forest);text-decoration:none;flex-shrink:0}
.brand-mark{width:38px;height:44px;overflow:visible;flex:0 0 auto}
.brand-wordmark{display:flex;flex-direction:column;line-height:1.05}
.brand-wordmark strong{font-weight:800;font-size:1.06rem;letter-spacing:.115em}
.brand-wordmark small{font-weight:700;letter-spacing:.33em;font-size:.64rem;margin-top:6px}
#site-nav{display:flex;align-items:center;gap:30px}
#site-nav a{text-decoration:none;font-weight:700;font-size:.86rem;white-space:nowrap}
#site-nav a:not(.nav-cta):hover{color:var(--accent)}
#site-nav .nav-cta{display:inline-flex;gap:21px;align-items:center;background:var(--forest);padding:12px 17px;color:#fff;border-radius:6px}
#site-nav .nav-cta:hover{background:#2b5b4e}
.menu-toggle{display:none}
/* Hero */
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse 55% 90% at 97% 45%,#e2e9de 0%,transparent 78%),var(--paper)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:64px;min-height:775px;padding:88px 0 103px}
.hero-copy{position:relative;z-index:5}
.eyebrow{display:flex;align-items:center;gap:12px;color:#698474;margin-bottom:26px}
.eyebrow-line{width:24px;height:2px;background:var(--accent);flex:none}
.hero h1{font-size:clamp(3.9rem,5.7vw,6.05rem);line-height:1.06;letter-spacing:-.065em;margin-bottom:30px}
.hero h1 em{color:var(--accent);font-size:1.09em;line-height:.97}
.lede{font-size:1.16rem;line-height:1.7;max-width:550px;color:#52665f}
.hero-actions{display:flex;gap:30px;align-items:center;flex-wrap:wrap;margin-top:34px}
.trust{display:flex;align-items:center;flex-wrap:wrap;column-gap:20px;row-gap:6px;margin-top:60px;font-size:.79rem;font-weight:750;color:#688178}
.trust span::before{content:"";display:inline-block;vertical-align:middle;width:5px;height:5px;border-radius:50%;background:var(--accent);margin-right:9px}
.hero-bottom-rule{position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--line)}
/* Custom course illustration */
.visual{position:relative;min-height:640px;isolation:isolate}
.visual-ambient{pointer-events:none;position:absolute;border-radius:50%;z-index:-1}
.visual-ambient-one{width:540px;height:540px;background:#e2e8dd;left:3%;top:4%}
.visual-ambient-two{width:390px;height:390px;border:1px solid rgba(58,96,74,.2);top:16%;left:17%}
.visual-topline{position:absolute;right:6px;top:2px;font-size:.7rem;font-weight:800;letter-spacing:.13em;color:#5b7667}
.tiny-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:8px}
.course-ui{position:absolute;left:9%;top:99px;width:82%;background:white;border:1px solid rgba(21,60,51,.11);border-radius:17px;box-shadow:0 26px 70px rgba(15,51,39,.13);overflow:hidden;transform:rotate(-2.3deg)}
.course-ui-top{display:flex;justify-content:space-between;align-items:center;padding:19px 25px;border-bottom:1px solid #e7ebe4;background:#f9faf6}
.course-ui-brand{display:flex;align-items:center;gap:10px;font-size:.57rem;letter-spacing:.085em;line-height:1.55;font-weight:800;color:var(--forest)}
.course-ui-brand b{font-size:.75rem;letter-spacing:.04em}
.course-ui-logo{width:34px;height:34px;border-radius:6px;display:grid;place-items:center;color:white;background:var(--forest);font-size:.63rem}
.course-ui-kebab{color:#89a092;font-size:.9rem;letter-spacing:3px}
.course-ui-main{padding:34px 29px 22px}
.course-ui-label{color:var(--accent);font-size:.62rem;font-weight:850;letter-spacing:.19em}
.course-ui h2{font-size:1.75rem;letter-spacing:-.05em;margin:8px 0 10px}
.course-ui-main>p{color:#72857c;font-size:.8rem;line-height:1.6;max-width:320px;margin-bottom:22px}
.course-rows{display:grid;gap:11px}
.course-rows>div{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #ecf0e9;border-radius:8px;background:#fafbf8}
.module-icon{background:#e5eee6;color:var(--forest);border-radius:7px;width:39px;height:39px;display:grid;place-items:center;font-size:.73rem;font-weight:800;flex:none}
.course-rows>div>span:nth-child(2){display:flex;flex-direction:column;line-height:1.4;flex:1;min-width:0}
.course-rows strong{font-size:.76rem;line-height:1.5}
.course-rows small{color:#7b8d84;font-size:.7rem}
.tick{width:20px;height:20px;flex:none;display:grid;place-items:center;background:#d8e7da;color:var(--forest);border-radius:50%;font-size:.75rem;font-weight:800}
.course-ui-footer{display:flex;align-items:center;justify-content:space-between;padding:15px 25px;background:#f9faf6;border-top:1px solid #e7ebe4}
.course-ui-mini{font-size:.65rem;letter-spacing:.055em;color:#82968a}
.course-ui-dots{display:flex;gap:5px}
.course-ui-dots i{width:6px;height:6px;border-radius:50%;background:#c2d2c3}
.course-ui-dots i:first-child{background:var(--accent)}
.orbit{position:absolute;z-index:5;display:flex;align-items:center;gap:11px;padding:13px 16px;border-radius:10px;background:#fff;border:1px solid #e1e7dd;box-shadow:0 12px 28px rgba(22,59,48,.13);max-width:250px}
.orbit-icon{flex:none;width:35px;height:35px;border-radius:8px;background:#e8ede3;display:grid;place-items:center;color:var(--forest);font-weight:900;font-size:1.2rem}
.orbit b,.orbit small{display:block;line-height:1.35}
.orbit b{font-size:.78rem}
.orbit small{font-size:.65rem;color:#798b80;margin-top:3px}
.oa{top:48px;left:-26px;transform:rotate(4deg)}
.ob{top:329px;right:-20px;transform:rotate(3deg)}
.oc{bottom:6px;left:-7px;transform:rotate(-3deg)}
/* Core argument */
.statement{position:relative;overflow:hidden;text-align:center;padding:118px 0 127px;background:var(--forest-deep);color:#fff}
.statement .narrow{position:relative;z-index:2;max-width:970px}
.statement h2{max-width:880px;font-size:clamp(2.5rem,4.2vw,4.45rem);line-height:1.22;margin:0 auto 28px;color:white}
.statement h2 em{color:#ddbc93}
.statement p:not(.kicker){color:#c8d8d0;max-width:730px;margin:0 auto;font-size:1.065rem;line-height:1.9}
.statement-ring{position:absolute;width:560px;height:560px;border:1px solid rgba(221,188,147,.12);border-radius:50%;right:-340px;top:-265px;box-shadow:0 0 0 125px rgba(255,255,255,.018),0 0 0 250px rgba(255,255,255,.015)}
/* Heading pairs */
.heading{display:grid;grid-template-columns:1.05fr .66fr;gap:110px;align-items:end;margin-bottom:44px}
.heading>p{font-size:1.02rem;line-height:1.75;margin-bottom:7px}
.heading h2 em{color:var(--forest-soft)}
/* Uses */
.uses{background:#f7f6f0}
.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.three article{position:relative;display:flex;flex-direction:column;min-height:363px;padding:31px 29px 33px;background:#fff;border:1px solid #e2e8de;border-radius:13px;transition:transform .2s ease,box-shadow .2s ease}
.three article:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(30,60,48,.065)}
.number{color:#a87356;font-weight:850;letter-spacing:.12em;font-size:.68rem}
.uses-icon{width:43px;height:43px;margin-top:32px;margin-bottom:25px;background:#edf2e9;color:var(--forest);border-radius:11px;display:grid;place-items:center;font-size:1.4rem}
.three h3{font-size:1.55rem;line-height:1.25;margin-bottom:15px}
.three p{font-size:.9rem;line-height:1.75;margin-bottom:0}
/* Services */
.services{background:var(--cream)}
.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid #cdd4c8;border-left:1px solid #cdd4c8}
.services-grid article{position:relative;min-height:277px;padding:26px 27px 30px;border-right:1px solid #cdd4c8;border-bottom:1px solid #cdd4c8;background:rgba(255,255,255,.12);transition:background .2s ease}
.services-grid article:hover{background:rgba(255,255,255,.6)}
.service-number{display:inline-block;font-size:.7rem;letter-spacing:.1em;color:#7e9589;font-weight:800}
.service-icon{position:absolute;right:27px;top:20px;width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(23,62,53,.21);border-radius:50%;color:var(--accent);font-size:1.2rem}
.services h3{margin:68px 0 13px;font-size:1.25rem}
.services-grid p{margin-bottom:0;font-size:.89rem;line-height:1.75}
.production-callout{display:grid;grid-template-columns:auto 1fr auto;gap:23px;align-items:center;padding:31px 32px;margin-top:25px;border:1px solid #c9d3c5;background:#f9f9f4;border-radius:10px}
.production-icon{font-size:1.45rem;color:var(--forest);border-radius:50%;border:1px solid #c8d5c5;width:48px;height:48px;display:grid;place-items:center}
.production-callout h3{margin:0 0 6px;font-size:1.1rem}
.production-callout p{margin:0;font-size:.86rem;line-height:1.7}
.production-callout .text-link{white-space:nowrap;font-size:.8rem}
/* Process */
.process{background:#fff}
.process-grid{display:grid;grid-template-columns:.84fr 1.16fr;gap:100px}
.process-intro{position:sticky;top:140px;align-self:start}
.process-intro h2{max-width:440px}
.process-intro h2 em{color:var(--forest-soft)}
.process-intro>p:not(.kicker){max-width:425px;line-height:1.8;margin:20px 0 28px}
.steps{border-top:1px solid var(--line)}
.steps article{display:grid;grid-template-columns:60px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:28px 0}
.steps article>span{font-size:1.1rem;font-weight:800;color:var(--accent)}
.steps h3{margin:1px 0 9px;font-size:1.26rem}
.steps p{font-size:.91rem;line-height:1.78;margin-bottom:0}
/* Why */
.why{background:#477467;color:white;position:relative;overflow:hidden}
.why::after{content:"";position:absolute;pointer-events:none;width:650px;height:650px;border-radius:50%;border:1px solid rgba(255,255,255,.08);left:-430px;bottom:-350px;box-shadow:0 0 0 90px rgba(255,255,255,.02),0 0 0 200px rgba(255,255,255,.015)}
.why-grid{position:relative;z-index:2;display:grid;grid-template-columns:.9fr 1.1fr;gap:110px}
.why h2{font-size:clamp(2.6rem,4.4vw,4.5rem);max-width:495px}
.why h2 em{color:#eed0a8}
.why-lede{max-width:435px;margin-top:25px;color:#d8e8e1;line-height:1.9}
.why-points{border-top:1px solid rgba(255,255,255,.3)}
.why-points article{display:grid;grid-template-columns:34px 1fr;gap:20px;padding:26px 0;border-bottom:1px solid rgba(255,255,255,.3)}
.why-n{font-weight:800;font-size:.74rem;color:#eed0a8;margin-top:3px}
.why-points h3{color:white;font-size:1.23rem;letter-spacing:-.025em;margin-bottom:8px}
.why-points p{color:#e2eae5;font-size:.91rem;margin:0;line-height:1.8}
/* About */
.about{background:#f7f6f0}
.about-heading{margin-bottom:50px}
.founder-card{display:grid;grid-template-columns:.78fr 1.22fr;border:1px solid #dbe3d8;background:white;border-radius:15px;overflow:hidden;box-shadow:0 16px 43px rgba(17,59,44,.065)}
.founder-photo-wrap{position:relative;min-height:555px;background:#e9ebe6;overflow:hidden}
.founder-photo-wrap img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center top}
.portrait-caption{position:absolute;left:0;bottom:0;width:100%;padding:17px 24px;background:rgba(17,54,45,.94);color:#e7eee8;font-size:.7rem;font-weight:800;letter-spacing:.12em;text-align:center}
.founder-copy{padding:57px 58px 42px}
.founder-copy .kicker{margin-bottom:11px}
.founder-copy h3{font-size:clamp(2rem,3vw,3.2rem);margin:0 0 7px}
.founder-copy h3 span{font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:600;color:var(--forest-soft)}
.founder-title{font-weight:800;color:var(--accent);font-size:.92rem;margin-bottom:25px}
.founder-copy>p:not(.kicker):not(.founder-title){font-size:.94rem;line-height:1.82;margin-bottom:17px}
.founder-stats{border-top:1px solid var(--line);margin-top:32px;padding-top:28px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.founder-stats>div{display:flex;flex-direction:column;gap:7px}
.founder-stats b{color:var(--forest);font-size:1.22rem;letter-spacing:-.035em;line-height:1.15}
.founder-stats span{color:#6b8279;font-size:.72rem;line-height:1.55}
/* Contact */
.contact-wrap{padding:0 0 55px;background:var(--paper)}
.contact-box{display:grid;grid-template-columns:1.22fr .78fr;gap:90px;align-items:center;position:relative;overflow:hidden;padding:77px 72px 80px;background:var(--forest-deep);color:white;border-radius:15px}
.contact-box::after{content:"";position:absolute;pointer-events:none;width:340px;height:340px;border:1px solid rgba(255,255,255,.09);border-radius:50%;right:-200px;top:-130px;box-shadow:0 0 0 70px rgba(255,255,255,.02),0 0 0 140px rgba(255,255,255,.012)}
.contact-box>div{position:relative;z-index:2}
.contact-box h2{font-size:clamp(2.5rem,4vw,4.15rem);margin:0 0 20px}
.contact-box h2 em{color:#dfbd97}
.contact-box p:not(.kicker){color:#d4e1db;line-height:1.8;max-width:560px;margin-bottom:0}
.contact-actions{display:flex;align-items:flex-start;flex-direction:column;gap:8px}
.button-cream{background:#f2e8d9;color:var(--forest-deep);margin-bottom:22px}
.button-cream:hover{background:white}
.contact-email{text-decoration:none;font-size:.96rem;line-height:1.7;border-bottom:1px solid rgba(240,233,220,.5);color:#f4f2e9;overflow-wrap:anywhere}
.contact-email:hover{color:var(--gold)}
.contact-secondary{font-size:.77rem;color:#a9c0b5;margin-top:14px}
/* Footer */
.site-footer{padding:27px 0 42px;background:var(--paper)}
.footer-inner{display:flex;align-items:end;justify-content:space-between;gap:45px}
.brand-footer .brand-mark{height:41px;width:35px}
.footer-brand>p{margin:14px 0 0;color:#748980;font-size:.82rem}
.footer-meta{display:flex;flex-direction:column;align-items:flex-end;gap:16px}
.footer-links{display:flex;gap:24px;flex-wrap:wrap}
.footer-links a{text-decoration:none;color:var(--forest);font-size:.8rem;font-weight:700}
.footer-links a:hover{color:var(--accent)}
.footer-meta>span{color:#71887c;font-size:.76rem}
/* Responsive */
@media(max-width:1170px){
  #site-nav{gap:16px}
  .hero-grid{gap:25px}
  .hero h1{font-size:clamp(3.7rem,5.7vw,5.6rem)}
  .orbit.oa{left:0}.orbit.ob{right:-6px}
  .heading{gap:65px}
  .process-grid,.why-grid{gap:65px}
  .founder-copy{padding:43px 36px}
  .contact-box{gap:44px;padding:64px 55px}
}
@media(max-width:980px){
  :root{--shell:min(790px,calc(100% - 42px))}
  .site-header{position:sticky}
  .header-inner{min-height:77px}
  .menu-toggle{width:44px;height:42px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;background:transparent;border:1px solid var(--line);border-radius:6px}
  .menu-toggle span{height:2px;width:19px;background:var(--forest);border-radius:4px}
  #site-nav{display:none;position:absolute;top:76px;left:21px;right:21px;flex-direction:column;align-items:stretch;gap:4px;padding:17px;background:var(--paper);border:1px solid #dce2d8;border-radius:9px;box-shadow:0 24px 48px rgba(18,57,45,.17)}
  #site-nav.open{display:flex}
  #site-nav a{padding:10px 12px}
  #site-nav .nav-cta{justify-content:space-between}
  .hero-grid{grid-template-columns:1fr;gap:0;padding:69px 0 68px}
  .hero-copy{max-width:690px}
  .hero h1{font-size:clamp(4.3rem,9.5vw,6.6rem)}
  .lede{max-width:600px}
  .trust{margin-top:37px}
  .visual{min-height:600px;width:min(670px,100%);margin:52px auto 0}
  .course-ui{width:70%;left:15%}
  .visual-ambient-one{left:10%}
  .oa{left:6%}.ob{right:0}.oc{left:5%}
  .heading{grid-template-columns:1fr;gap:9px}
  .heading>p{max-width:680px;margin-bottom:0}
  .process-grid,.why-grid{grid-template-columns:1fr;gap:43px}
  .process-intro{position:static}
  .process-intro>p:not(.kicker){max-width:680px}
  .why h2{max-width:680px}
  .why-lede{max-width:650px}
  .founder-card{grid-template-columns:.8fr 1.2fr}
  .founder-photo-wrap{min-height:520px}
  .founder-copy{padding:37px 30px}
  .founder-stats{grid-template-columns:1fr;gap:10px}
  .founder-stats>div{flex-direction:row;align-items:baseline;gap:15px}
  .founder-stats b{min-width:113px}
  .contact-box{grid-template-columns:1fr;gap:37px}
  .contact-actions{gap:9px}
}
@media(max-width:700px){
  :root{--shell:calc(100% - 36px)}
  .section{padding:84px 0}
  .hero-grid{padding-top:56px}
  .hero h1{font-size:clamp(3.45rem,11vw,5rem)}
  .hero-actions{gap:22px}
  .visual{min-height:565px;margin-top:32px}
  .visual-ambient-one{width:440px;height:440px;left:0;top:40px}
  .visual-ambient-two{width:330px;height:330px}
  .course-ui{width:78%;left:11%;top:88px}
  .visual-topline{right:auto;left:10px}
  .course-ui-main{padding:25px 20px 18px}
  .course-ui-top{padding:14px 19px}
  .orbit{padding:10px 12px}
  .orbit.ob{top:310px;right:0}
  .orbit.oc{bottom:15px}
  .statement{padding:90px 0}
  .three,.services-grid{grid-template-columns:1fr}
  .three article{min-height:auto;padding:29px}
  .uses-icon{margin-top:23px;margin-bottom:17px}
  .services-grid article{min-height:auto;padding:24px 26px 28px}
  .services h3{margin-top:47px}
  .production-callout{grid-template-columns:auto 1fr;gap:15px;padding:25px 22px}
  .production-callout .text-link{grid-column:2;white-space:normal}
  .founder-card{grid-template-columns:1fr}
  .founder-photo-wrap{min-height:0;aspect-ratio:1.05}
  .founder-copy{padding:35px 28px}
  .founder-stats{grid-template-columns:repeat(3,1fr)}
  .founder-stats>div{display:flex;flex-direction:column;gap:8px}
  .founder-stats b{min-width:0}
  .contact-box{padding:52px 33px}
  .footer-inner{align-items:flex-start;flex-direction:column;gap:29px}
  .footer-meta{align-items:flex-start}
}
@media(max-width:480px){
  :root{--shell:calc(100% - 30px)}
  .brand{gap:8px}
  .brand-mark{width:31px;height:38px}
  .brand-wordmark strong{font-size:.9rem}
  .brand-wordmark small{font-size:.53rem}
  .hero h1{font-size:clamp(2.8rem,11.35vw,3.7rem);line-height:1.1}
  .eyebrow{font-size:.67rem;letter-spacing:.11em}
  .lede{font-size:1rem}
  .button{min-height:52px;padding:13px 18px}
  .trust{column-gap:10px;font-size:.72rem}
  .visual{min-height:500px}
  .visual-ambient-one{width:340px;height:340px;left:0}
  .visual-ambient-two{width:300px;height:300px;left:9%}
  .visual-topline{font-size:.57rem}
  .course-ui{top:74px;width:84%;left:8%;transform:rotate(-1.1deg)}
  .course-ui-main{padding:23px 15px 16px}
  .course-ui h2{font-size:1.45rem}
  .course-rows>div{gap:8px;padding:8px}
  .course-rows strong{font-size:.68rem}
  .course-rows small{font-size:.63rem}
  .module-icon{width:32px;height:32px;font-size:.65rem}
  .course-ui-footer{padding:10px 15px}
  .orbit-icon{width:27px;height:27px;font-size:1rem}
  .orbit{max-width:166px;gap:7px;padding:7px 9px}
  .orbit b{font-size:.68rem}.orbit small{font-size:.58rem}
  .oa{top:46px;left:0}.ob{top:296px;right:0}.oc{bottom:5px;left:0}
  h2{font-size:clamp(2.4rem,10vw,3.45rem)}
  .statement h2{font-size:clamp(2.2rem,9.4vw,3.3rem)}
  .heading h2{font-size:clamp(2.45rem,10.5vw,3.45rem)}
  .steps article{grid-template-columns:39px 1fr;gap:10px}
  .founder-copy{padding:31px 23px}
  .founder-stats{grid-template-columns:1fr;gap:13px}
  .founder-stats>div{flex-direction:row}
  .founder-stats b{min-width:110px}
  .contact-box{padding:40px 25px}
  .contact-box h2{font-size:clamp(2.3rem,10vw,3.2rem)}
  .footer-links{gap:12px 21px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* ============================================================
   LIMBER PINE V3 — 24 OCT 2026
   Design language: rooted editorial / practical education.
   The approved tree is the single emblem throughout.
   ============================================================ */
:root{
  --forest:#123e32;
  --forest-deep:#0d3028;
  --forest-soft:#496f5b;
  --paper:#f8f7f1;
  --cream:#eeeee6;
  --ink:#193e32;
  --body:#53675e;
  --accent:#ac7d45;
  --gold:#ddb781;
  --line:rgba(18,62,50,.16);
}
body{background:var(--paper)}
.site-header{background:rgba(250,249,243,.97)}
.header-inner{min-height:100px}
.brand{gap:13px}
.brand-mark{object-fit:contain;display:block;width:65px;height:57px;overflow:visible;flex:0 0 auto}
.brand-wordmark strong{font-size:1.13rem;letter-spacing:.105em}
.brand-wordmark small{margin-top:7px;font-size:.65rem;letter-spacing:.34em}
#site-nav{gap:24px}
#site-nav .nav-cta{border-radius:3px;padding:13px 20px}
#site-nav a{font-size:.81rem}
.hero{background:#f8f7f1}
.hero-grid{grid-template-columns:1.09fr .91fr;gap:58px;min-height:730px;padding:78px 0 100px}
.hero h1{font-size:clamp(3.85rem,5.65vw,6.05rem);line-height:1.045}
.hero h1 em{color:#9e7246}
.hero .eyebrow{color:#557d69}
.hero .lede{max-width:545px}
.hero-editorial{height:624px;min-height:624px;position:relative;isolation:isolate}
.hero-art-panel{position:absolute;inset:12px 6px 58px 34px;background:linear-gradient(148deg,#194e3d,#0e352e 71%,#0b2c26);overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center}
.hero-art-panel::before{content:"";position:absolute;inset:17px;border:1px solid rgba(237,218,174,.24)}
.hero-art-panel::after{content:"";position:absolute;width:460px;height:460px;border:1px solid rgba(236,223,186,.22);border-radius:50%;top:65px;left:50%;transform:translateX(-50%);box-shadow:0 0 0 60px rgba(250,250,240,.02),0 0 0 120px rgba(250,250,240,.02)}
.hero-tree-halo{position:absolute;width:340px;height:340px;border-radius:50%;top:118px;left:50%;transform:translateX(-50%);background:radial-gradient(circle,#52796738 0%,transparent 74%)}
.hero-art-eyebrow{position:absolute;left:43px;top:49px;color:#d2c29e;font-size:.64rem;letter-spacing:.24em;font-weight:800}
.hero-tree{width:94%;height:auto;max-height:385px;object-fit:contain;position:relative;z-index:2;filter:brightness(0) invert(1);opacity:.94;transform:translateY(-8px);padding:15px}
.hero-art-bottom{position:absolute;left:45px;right:43px;bottom:42px;display:flex;align-items:center;gap:16px;color:#dcc9a5;font-size:.65rem;font-weight:800;letter-spacing:.23em;z-index:4}
.hero-art-line{height:1px;flex:1;background:rgba(234,206,156,.46)}
.hero-float-card{position:absolute;bottom:0;left:-7px;right:38px;background:#fafaf5;border:1px solid #e4e5d9;padding:20px 27px 21px;box-shadow:0 16px 37px rgba(8,42,32,.16);z-index:5}
.hero-float-top{display:flex;align-items:center;gap:11px;color:#688075;font-size:.65rem;letter-spacing:.11em;font-weight:800}
.float-check{display:grid;place-items:center;color:#fff;background:#2e7655;width:20px;height:20px;border-radius:50%;font-size:.76rem}
.hero-float-heading{font-family:'Fraunces',Georgia,serif;font-size:1.55rem;letter-spacing:-.045em;color:#1e4938;margin:7px 0 10px}
.hero-float-heading em{font-style:italic;color:#a16a40}
.hero-float-tags{display:flex;gap:9px;flex-wrap:wrap}
.hero-float-tags span{border:1px solid #d9e1d7;background:#f2f5ef;color:#406a54;border-radius:3px;padding:5px 10px;font-size:.66rem;font-weight:800;letter-spacing:.03em}
.hero-photo-stamp{position:absolute;top:0;right:-22px;writing-mode:vertical-rl;color:#71877b;font-size:.65rem;letter-spacing:.14em;font-weight:800}
.hero-photo-stamp span{color:#ac7d45}
.purpose-bar{background:#e6e9de;border-block:1px solid #d8dfd1}
.purpose-inner{min-height:99px;display:flex;align-items:center;gap:38px}
.purpose-inner>span{font-weight:900;color:#99784d;font-size:.69rem;letter-spacing:.13em;white-space:nowrap}
.purpose-inner p{font-size:1.08rem;margin:0;flex:1;color:#466656}
.purpose-inner p strong{color:#193f31;font-weight:800}
.purpose-inner a{font-size:.75rem;font-weight:800;text-decoration:none;color:#214f3d;white-space:nowrap}
.purpose-inner a span{color:#a87d50;margin-left:7px}
.statement{background:#0d3028}
.statement-ring{border-color:rgba(221,188,147,.19)}
.three article{border-radius:3px}
.three article:first-child{border-top:4px solid #567e64}
.three article:nth-child(2){border-top:4px solid #a67e4d}
.three article:nth-child(3){border-top:4px solid #254f41}
.services{background:#edf0e8}
.production-callout{border-radius:2px}
.why{background:#3b6858}
.about{background:#f8f7f1;padding-bottom:100px}
.founder-card{border-radius:3px;grid-template-columns:.84fr 1.16fr}
.founder-photo-wrap{min-height:615px;background:#b5bdba}
.founder-photo-wrap img{object-position:51% center;filter:saturate(.9) contrast(1.03)}
.portrait-caption{background:rgba(15,53,43,.95);letter-spacing:.15em}
.founder-copy{padding:61px 55px 47px}
.founder-copy h3{font-size:clamp(2.3rem,3.4vw,3.8rem)}
.founder-stats b{font-family:'Fraunces',Georgia,serif;font-size:1.44rem}
.field-note{display:grid;grid-template-columns:190px 1fr 205px;margin-top:24px;min-height:294px;background:#e2e8de;border:1px solid #d7dfd4;overflow:hidden}
.field-note-photo{height:294px;overflow:hidden;background:#cad2d1}
.field-note-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 12%;filter:saturate(.86)}
.field-note-copy{align-self:center;padding:34px 36px 26px 44px}
.field-note-index{display:block;color:#9b7545;font-size:.64rem;font-weight:900;letter-spacing:.15em;margin-bottom:17px}
.field-note-quote{font-family:'Fraunces',Georgia,serif;color:#1b4939;font-size:clamp(1.45rem,2.2vw,2.2rem);line-height:1.28;margin-bottom:12px;letter-spacing:-.02em}
.field-note-quote em{color:#9d7549}
.field-note-copy>p:not(.field-note-quote){font-size:.88rem;line-height:1.7;margin-bottom:12px}
.field-note-end{font-size:.59rem;letter-spacing:.17em;font-weight:850;color:#6d8275}
.field-note-monogram{display:grid;place-items:center;position:relative;overflow:hidden;background:#d5e0d2}
.field-note-monogram:before{content:"";width:290px;height:290px;border:1px solid rgba(37,82,54,.18);border-radius:50%;position:absolute}
.field-note-monogram img{position:relative;width:90%;opacity:.57;object-fit:contain;mix-blend-mode:multiply}
.contact-box{border-radius:3px}
.brand-footer .brand-mark{width:59px;height:53px}
/* No empty/unsupported control affordances. Footer/logo and menu remain keyboard accessible. */
@media(max-width:1170px){
  #site-nav{gap:16px}
  .hero-grid{gap:24px}
  .hero-editorial{height:570px;min-height:570px}
  .hero-art-panel{inset:10px 4px 58px 23px}
  .hero-art-panel::after{width:380px;height:380px;top:57px}
  .hero-tree{max-height:335px}
  .hero-float-card{left:-6px;right:20px}
  .hero h1{font-size:clamp(3.55rem,5.5vw,5.5rem)}
}
@media(max-width:980px){
  .header-inner{min-height:86px}
  #site-nav{top:85px}
  .hero-grid{grid-template-columns:1fr;min-height:0;gap:38px}
  .hero-editorial{width:min(650px,100%);margin:12px auto 0;height:650px;min-height:650px}
  .hero-art-panel{inset:11px 16px 71px 25px}
  .hero-float-card{left:0;right:40px;bottom:10px}
  .hero-art-panel::after{width:450px;height:450px;top:75px}
  .hero-tree{max-height:440px}
  .hero-photo-stamp{right:0}
  .purpose-inner{flex-wrap:wrap;padding-top:21px;padding-bottom:21px;gap:7px 20px}
  .purpose-inner p{flex-basis:calc(100% - 160px)}
  .purpose-inner a{margin-left:auto}
  .founder-card{grid-template-columns:1fr 1fr}
  .founder-copy{padding:44px 31px}
  .field-note{grid-template-columns:150px 1fr}
  .field-note-monogram{display:none}
}
@media(max-width:700px){
  .header-inner{min-height:75px}
  .brand-mark{width:50px;height:45px}
  .brand-wordmark strong{font-size:.92rem;letter-spacing:.09em}
  .brand-wordmark small{font-size:.52rem;margin-top:5px}
  #site-nav{top:74px}
  .hero-grid{padding:55px 0 64px;gap:14px}
  .hero h1{font-size:clamp(3.25rem,10.7vw,4.8rem)}
  .hero-editorial{min-height:520px;height:520px;width:100%;margin-top:22px}
  .hero-art-panel{inset:7px 10px 68px 10px}
  .hero-art-panel:before{inset:10px}
  .hero-art-panel:after{width:305px;height:305px;top:88px}
  .hero-art-eyebrow{left:26px;top:33px;font-size:.55rem}
  .hero-tree{width:100%;max-height:315px;transform:translateY(-3px)}
  .hero-art-bottom{left:25px;right:27px;bottom:29px;font-size:.56rem}
  .hero-photo-stamp{display:none}
  .hero-float-card{left:0;right:0;bottom:0;padding:15px 17px}
  .hero-float-heading{font-size:1.27rem;margin:5px 0}
  .hero-float-top{font-size:.53rem}
  .hero-float-tags span{padding:4px 8px;font-size:.6rem}
  .purpose-inner{display:block;padding:23px 0}
  .purpose-inner>span{display:block;margin-bottom:8px}
  .purpose-inner p{font-size:1rem;margin-bottom:7px}
  .purpose-inner a{display:inline-block}
  .about{padding-bottom:77px}
  .founder-card{grid-template-columns:1fr}
  .founder-photo-wrap{height:410px;min-height:410px;aspect-ratio:auto}
  .founder-photo-wrap img{object-position:center 32%}
  .founder-copy{padding:32px 27px}
  .field-note{grid-template-columns:1fr}
  .field-note-photo{height:275px}
  .field-note-photo img{object-position:50% 18%}
  .field-note-copy{padding:29px 25px}
}
@media(max-width:410px){
  .hero h1{font-size:3.05rem}
  .hero-editorial{height:460px;min-height:460px}
  .hero-art-panel{bottom:53px}
  .hero-tree{max-height:270px}
  .hero-art-panel:after{width:260px;height:260px;top:72px}
  .hero-float-heading{font-size:1.16rem}
  .hero-float-tags{gap:5px}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
}


/* V4: The limber pine story replaces V3's oversized hero emblem.
   This panel is purely editorial; the tree remains in the actual brand mark. */
.hero-editorial{height:590px;min-height:590px;position:relative;isolation:isolate}
.hero-story-panel{position:absolute;inset:12px 8px 28px 27px;background:linear-gradient(145deg,#1b4c3d 0%,#123e32 53%,#0b2d26 100%);color:#f8f6ed;display:flex;flex-direction:column;justify-content:space-between;padding:39px 45px 36px;overflow:hidden;box-shadow:0 24px 50px rgba(11,44,33,.13)}
.hero-story-panel::before{content:"";position:absolute;inset:15px;border:1px solid rgba(226,206,163,.23);pointer-events:none}
.hero-story-panel::after{content:"";position:absolute;width:330px;height:330px;right:-215px;bottom:-188px;border:1px solid rgba(232,201,142,.15);border-radius:50%;box-shadow:0 0 0 67px rgba(232,201,142,.025),0 0 0 134px rgba(232,201,142,.022);pointer-events:none}
.hero-story-topline{display:flex;align-items:center;gap:14px;position:relative;z-index:2;color:#d5c7a9;letter-spacing:.17em;font-size:.6rem;font-weight:800;line-height:1.5}
.story-index,.story-detail{white-space:nowrap}.story-rule{flex:1;height:1px;background:rgba(228,202,156,.45);min-width:12px}
.hero-story-content{position:relative;z-index:2;padding:14px 3px 12px;max-width:440px}
.story-overline{font-size:.68rem;letter-spacing:.24em;font-weight:800;color:#e0bd82}
.hero-story-content h2{color:#fff;font-family:'Fraunces',Georgia,serif;font-size:clamp(2.55rem,3.2vw,3.55rem);line-height:1.12;letter-spacing:-.045em;margin:15px 0 22px;font-weight:600}
.hero-story-content h2 em{font-style:italic;font-weight:600;color:#efc993;letter-spacing:-.055em}
.story-gold-rule{display:block;width:49px;height:2px;background:#bd9258;margin-bottom:22px}
.hero-story-content p{color:#e6eee7;font-size:.99rem;line-height:1.77;margin:0 0 14px;max-width:405px}
.hero-story-content p.story-closing{font-family:'Fraunces',Georgia,serif;color:#f1d1a3;font-size:1.18rem;font-style:italic;line-height:1.45;margin-top:17px;margin-bottom:0}
.hero-story-footer{position:relative;z-index:2;display:flex;gap:15px;align-items:center;font-size:.6rem;font-weight:800;letter-spacing:.15em;color:#e2c99e}
.hero-story-footer span:not(.story-footer-line){white-space:nowrap}
.story-footer-line{flex:1;height:1px;background:rgba(226,201,158,.33)}
.hero-story-side-label{position:absolute;right:-15px;top:16px;writing-mode:vertical-rl;font-size:.62rem;letter-spacing:.2em;font-weight:800;color:#7e9587}
.why-lede{max-width:500px;line-height:1.85}
@media(max-width:1170px){
 .hero-editorial{height:560px;min-height:560px}
 .hero-story-panel{inset:10px 7px 21px 19px;padding:31px 33px 31px}
 .hero-story-content h2{font-size:clamp(2.35rem,3.2vw,3.2rem)}
 .hero-story-content p{font-size:.92rem;line-height:1.65}
 .hero-story-side-label{right:-13px}
}
@media(max-width:980px){
 .hero-editorial{width:min(660px,100%);height:540px;min-height:540px;margin:8px auto 0}
 .hero-story-panel{inset:10px 18px 15px 18px;padding:38px 47px}
 .hero-story-content h2{font-size:clamp(2.7rem,5vw,3.45rem)}
 .hero-story-content p{font-size:1rem;line-height:1.73}
 .hero-story-side-label{right:0}
}
@media(max-width:700px){
 .hero-editorial{height:auto;min-height:0;display:block;margin-top:20px}
 .hero-story-panel{position:relative;inset:auto;padding:38px 29px 32px;min-height:490px}
 .hero-story-panel::before{inset:11px}
 .hero-story-topline{font-size:.55rem;letter-spacing:.1em;gap:9px}
 .hero-story-content{padding:30px 0}
 .hero-story-content h2{font-size:clamp(2.6rem,8vw,3.35rem);margin:13px 0 18px}
 .story-gold-rule{margin-bottom:19px}
 .hero-story-content p{font-size:.93rem;line-height:1.7}
 .hero-story-footer{font-size:.52rem;gap:9px;letter-spacing:.09em}
 .hero-story-side-label{display:none}
}
@media(max-width:410px){
 .hero-editorial{height:auto;min-height:0}
 .hero-story-panel{min-height:0;padding:32px 24px 28px}
 .hero-story-content{padding:29px 0 32px}
 .hero-story-content h2{font-size:2.43rem}
 .hero-story-content p{font-size:.9rem}
 .story-detail{display:none}
}
