:root{--ink:#12221d;--green:#174b39;--green2:#286451;--muted:#586b65;--paper:#fffefa;--line:#e5ebe6;--tint:#f4f8f3;--sage:#d9eee3;--lav:#edeaff;--apricot:#fff0db;--max:1320px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:#fffefa;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
.shell{width:min(calc(100% - 64px),var(--max));margin-inline:auto}
.skip-link{position:absolute;top:-120px;left:12px;z-index:500;background:#e8ffa6;padding:12px 16px;border-radius:8px;font-weight:700}.skip-link:focus{top:10px}
:focus-visible{outline:3px solid #78ae80;outline-offset:4px}

/* Navigation */
.site-header{position:relative;z-index:30;background:rgba(255,254,250,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(34,65,48,.06)}
.header-inner{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{display:inline-flex;align-items:center;gap:12px;font-size:24px;font-weight:750;letter-spacing:-1.1px;white-space:nowrap}
.brand-emblem{display:inline-flex;position:relative;width:38px;height:38px;flex:none}
.brand-emblem span{position:absolute;top:5px;width:27px;height:27px;border-radius:50%;background:linear-gradient(145deg,#1a5643,#91b69c)}
.brand-emblem span:first-child{left:0}
.brand-emblem span:last-child{left:12px;background:linear-gradient(125deg,rgba(109,172,145,.65),rgba(207,239,217,.66));mix-blend-mode:multiply}
.desktop-nav{display:flex;align-items:center;gap:28px;margin-left:auto}
.desktop-nav a{font-size:14px;font-weight:550;transition:color .18s;white-space:nowrap}
.desktop-nav a:hover{color:#218262}
.nav-cta,.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:100px;background:#174d3b;color:#fff;font-weight:680;white-space:nowrap;transition:transform .2s,background .2s,box-shadow .2s}
.nav-cta{padding:14px 24px;margin-left:22px;font-size:14px}.nav-cta:hover,.primary-button:hover{background:#216a50;transform:translateY(-2px);box-shadow:0 12px 25px #1d67492f}
.nav-contact{background:transparent;color:#174d3b;border:1px solid #174d3b}.nav-contact:hover{background:transparent;box-shadow:none}
.menu-toggle,.mobile-nav{display:none}

/* Hero */
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 72% 55%,#f0fbf5 0%,#f7fcf9 42%,#fffefa 80%)}
.hero-inner{display:grid;grid-template-columns:47% 53%;align-items:center;min-height:515px;position:relative}
.hero-copy{position:relative;z-index:2;padding:38px 0 36px 8px}
.hero-eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:2.4px;text-transform:uppercase;font-weight:780;color:#57796b;margin-bottom:22px}
.eyebrow-line{height:1px;width:18px;background:#8dbfa9}
.hero h1{font-size:clamp(46px,4.65vw,72px);font-weight:770;letter-spacing:-3.3px;line-height:1.055;margin:0 0 23px;max-width:670px;color:#0c1814}
.hero h1 span{color:#21684b}
.hero-copy>p{max-width:540px;color:#55675f;font-size:17px;line-height:1.7;margin:0 0 26px}
.primary-button{padding:16px 26px;font-size:14px}
.hero-art{position:relative;height:515px;min-width:0;align-self:stretch;margin-right:-52px;overflow:hidden}
.hero-art img{width:100%;height:100%;object-fit:cover;object-position:center 48%;-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.62) 12%,#000 26%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.62) 12%,#000 26%)}
.hero-art:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to top,rgba(255,254,250,.12),transparent 23%)}

/* Product cards */
.product-section{position:relative;z-index:3;margin-top:-10px}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.product-card{position:relative;min-height:258px;padding:22px;border:1px solid rgba(10,42,26,.08);border-radius:24px;overflow:hidden;isolation:isolate;box-shadow:0 13px 36px rgba(34,61,47,.07)}
.magix-card{background:linear-gradient(110deg,#fff0df 0%,#fff3e6 54%,#f7e5cf 100%)}
.ideabox-card{background:linear-gradient(110deg,#efecff 0%,#e9edff 60%,#dbebff 100%)}
.research-card{background:linear-gradient(110deg,#e3f4e9 0%,#e8f8f0 53%,#d8ece6 100%)}
.product-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;border:1px solid rgba(19,79,50,.35);color:#276548;font-size:25px;background:rgba(255,255,255,.35);position:relative;z-index:3}
.magix-card .product-icon{color:#c06a21;border-color:#e4a771}
.ideabox-card .product-icon{color:#685ad0;border-color:#9a91e9}
.product-copy{position:relative;z-index:3;max-width:61%;padding:14px 0 58px}
.product-card h2{font-size:clamp(29px,2.7vw,39px);letter-spacing:-1.7px;font-weight:780;margin:0 0 5px}
.product-lead{font-size:15px!important;font-weight:600;color:#286250!important;margin:0 0 11px!important;line-height:1.35!important}
.product-copy p:last-child{font-size:12.5px;line-height:1.58;color:#52665c;margin:0}
.future-label,.live-label{position:absolute;top:22px;right:18px;font-size:10px;letter-spacing:.85px;text-transform:uppercase;border-radius:50px;padding:6px 9px;background:rgba(255,255,255,.76);color:#657265;font-weight:750;z-index:3}
.live-label{background:#b9e8cd;color:#1c6043}
.product-image{position:absolute;right:0;bottom:0;width:48%;height:89%;object-fit:cover;object-position:52% 56%;z-index:1;border-radius:17px 0 22px 0;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 31%);mask-image:linear-gradient(to right,transparent 0%,#000 31%)}
.magix-image{width:49%;object-position:45% 40%}
.ideabox-image{width:51%;object-position:46% 45%}
.research-image{width:50%;object-position:38% 50%}
.product-button{position:absolute;left:22px;bottom:20px;z-index:5;display:inline-flex;align-items:center;gap:12px;padding:11px 17px;border-radius:99px;background:rgba(255,255,255,.65);font-size:12px;font-weight:730;border:1px solid rgba(55,71,55,.08);transition:transform .2s,box-shadow .2s}
.product-button:hover{transform:translateY(-2px);box-shadow:0 9px 20px #343e381e}
.magix-card .product-button{background:#ffe2bd}
.ideabox-card .product-button{background:#dcd7ff}
.research-card .product-button{background:#bfe9d1}

/* Pillars */
.principles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding-block:40px 48px;gap:12px}
.principle{display:flex;align-items:flex-start;gap:13px;padding:12px 11px;border-right:1px solid #e2e8e1}
.principle:last-child{border-right:none}
.principle-icon{display:grid;place-items:center;flex:0 0 50px;width:50px;height:50px;background:#edf4ef;color:#25624c;font-size:29px;border-radius:50%}
.principle h3{font-size:15px;letter-spacing:-.35px;line-height:1.27;margin:3px 0 6px}
.principle p{font-size:12.5px;line-height:1.52;color:#69796e;margin:0}

/* Shared text */
.kicker{font-size:11px;font-weight:780;letter-spacing:1.8px;text-transform:uppercase;color:#648b74;margin:0 0 11px}
.section-heading h2{font-size:clamp(34px,3.7vw,52px);letter-spacing:-2.1px;font-weight:790;line-height:1.08;margin:0 0 8px}
.section-heading p:not(.kicker){margin:0;color:#6e7b74;font-size:15px;line-height:1.65}
.section-heading.centered{text-align:center}

/* How it works */
.how-section{padding:72px 0 76px;background:linear-gradient(180deg,#fffefa,#f7faf8)}
.how-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px;margin-top:30px}
.how-card{text-align:center;position:relative}
.how-card:not(:last-child):after{content:"→";position:absolute;right:-17px;top:76px;color:#84949b;font-size:23px;font-weight:300}
.how-image{height:195px;display:grid;place-items:center;overflow:hidden;background:rgba(255,255,255,.68);border-radius:21px}
.how-image img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.how-index{font-size:11px;font-weight:800;letter-spacing:1.6px;color:#608a70;margin-top:15px}
.how-card h3{font-size:17px;letter-spacing:-.4px;margin:5px 0 8px}
.how-card p{font-size:13px;line-height:1.55;color:#607169;margin:0 auto;max-width:245px}
.scope-note{max-width:780px;text-align:center;margin:34px auto 0;font-size:12px;line-height:1.6;color:#819086}

/* Examples */
.examples-section{padding-block:76px 80px}
.heading-row{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:23px}
.section-link{font-size:13px;font-weight:700;color:#1f6247;padding-bottom:7px;white-space:nowrap}
.section-link:hover{text-decoration:underline;text-underline-offset:3px}
.examples-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.example-card{padding:16px 16px 18px;border:1px solid #e4ebe4;border-radius:19px;background:#fff;box-shadow:0 10px 25px #1c44300c;min-height:273px;display:flex;flex-direction:column;overflow:hidden}
.example-top{height:89px;position:relative;display:flex;align-items:flex-start;justify-content:space-between}
.example-top img{height:94px;width:139px;object-fit:contain;object-position:right center;position:absolute;right:-13px;top:0}
.category{position:relative;z-index:2;display:inline-block;font-size:9px;font-weight:780;letter-spacing:.3px;border-radius:100px;padding:7px 9px;white-space:nowrap}
.category.orange{background:#ffead1;color:#b86922}.category.lilac{background:#eae5ff;color:#6751bf}.category.green{background:#e0f3e6;color:#23694d}
.example-card h3{font-size:16px;letter-spacing:-.5px;line-height:1.27;margin:7px 0 8px}
.example-card>p{font-size:12px;line-height:1.6;color:#67766e;margin:0 0 12px}
.example-card>a{font-size:12px;font-weight:680;color:#1a6046;margin-top:auto}
.example-card>a:hover{text-decoration:underline}
.example-disclaimer{font-size:11px;line-height:1.6;color:#89958b;margin:14px 0 0}

/* Community + CTA */
.community-section{padding-bottom:26px}
.community-panel{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#f1f7f2;border:1px solid #e3eee7;padding:30px 34px;border-radius:22px}
.community-copy h2{font-size:31px;letter-spacing:-1.1px;line-height:1.1;margin:0 0 11px}
.community-copy p:not(.kicker){font-size:14px;color:#627468;line-height:1.65;margin:0;max-width:670px}
.community-actions{display:flex;flex-direction:column;gap:11px;min-width:225px}
.community-actions a{font-size:13px;font-weight:720;color:#205f46}
.community-actions a:hover{text-decoration:underline}
.closing-section{padding-block:28px 67px}
.closing-panel{min-height:234px;display:flex;align-items:center;border-radius:25px;position:relative;background:linear-gradient(90deg,#071f1b 0%,#10352b 49%,rgba(8,37,29,.72) 72%,rgba(3,18,17,.34) 100%),url('assets/footer-scene.webp') right center/auto 100% no-repeat,#0f3429;color:#fff;overflow:hidden}
.closing-copy{padding:29px 45px;position:relative;z-index:2}
.closing-copy .kicker{color:#b4d89a}
.closing-copy h2{font-size:clamp(30px,3vw,45px);line-height:1.08;letter-spacing:-1.5px;margin:0 0 8px}
.closing-copy p:not(.kicker){color:#c6ddd2;font-size:14px;line-height:1.6;margin:0 0 17px}
.closing-copy .primary-button{background:#e2f685;color:#193727;padding:12px 21px}
.closing-copy .primary-button:hover{background:#effda6}

.site-footer{border-top:1px solid #e6ebe7;background:#fffefa}
.footer-inner{min-height:99px;display:flex;align-items:center;gap:25px;padding-block:20px}
.footer-brand{font-size:18px;letter-spacing:-.7px}
.footer-brand .brand-emblem{width:29px;height:29px}
.footer-brand .brand-emblem span{top:3px;width:23px;height:23px}.footer-brand .brand-emblem span:last-child{left:9px}
.footer-inner>p{font-size:11px;line-height:1.5;color:#87958a;margin:0;max-width:330px}
.footer-inner nav{margin-left:auto;display:flex;gap:16px;flex-wrap:wrap}
.footer-inner nav a{font-size:11px;color:#586c60;font-weight:650}
.footer-inner nav a:hover{color:#184e39}

@media(max-width:1180px){
  .brand{font-size:20px}.desktop-nav{gap:17px}.nav-cta{margin-left:8px;padding:12px 15px}
  .hero h1{font-size:clamp(42px,5vw,60px)}.hero-art{margin-right:-30px}.product-card{padding:18px}.product-button{left:18px}.product-copy{max-width:65%}
  .product-copy p:last-child{font-size:12px}.principle{padding-inline:5px}
}
@media(max-width:950px){
  .shell{width:min(calc(100% - 38px),var(--max))}
  .desktop-nav{gap:13px}.desktop-nav a{font-size:12px}.brand{font-size:19px}
  .nav-cta{font-size:12px}
  .hero-inner{grid-template-columns:49% 51%;min-height:430px}
  .hero-art{height:430px}.hero-copy{padding:32px 0}.hero h1{font-size:clamp(39px,5.35vw,54px);letter-spacing:-2px}.hero-copy>p{font-size:14px}
  .product-grid{gap:10px}.product-card{min-height:273px}.product-copy{max-width:70%}.product-image{width:50%;opacity:.85}
  .principles{grid-template-columns:1fr 1fr;gap:8px 22px;padding-block:30px}.principle:nth-child(2){border-right:none}
  .examples-grid{grid-template-columns:repeat(2,1fr)}.example-card{min-height:245px}
}
@media(max-width:700px){
  html{scroll-padding-top:83px}
  .shell{width:min(calc(100% - 28px),var(--max))}
  .header-inner{min-height:72px}.brand{font-size:19px}.brand-emblem{width:33px;height:33px}.brand-emblem span{width:24px;height:24px}.brand-emblem span:last-child{left:10px}
  .desktop-nav{display:none}.nav-cta{margin-left:auto;padding:11px 15px;font-size:11px}.nav-contact{display:none}
  .menu-toggle{display:flex;flex:0 0 38px;width:38px;height:38px;border:1px solid #d9e2da;border-radius:11px;background:#f7faf7;align-items:center;justify-content:center;flex-direction:column;gap:4px}
  .menu-toggle span{width:17px;height:2px;background:#1b4b37;border-radius:2px}
  .mobile-nav{display:flex;flex-direction:column;padding:5px 24px 18px;border-top:1px solid #e6ece6;gap:0;background:#fffefa}
  .mobile-nav[hidden]{display:none}
  .mobile-nav a{padding:12px 0;border-bottom:1px solid #f0f2ed;font-size:14px;font-weight:650}
  .hero-inner{display:flex;flex-direction:column;min-height:0}
  .hero-copy{padding:37px 9px 9px}.hero-eyebrow{font-size:10px;margin-bottom:16px}
  .hero h1{font-size:clamp(37px,9vw,51px);line-height:1.07;letter-spacing:-1.7px;margin-bottom:15px}
  .hero-copy>p{font-size:14px;line-height:1.62;margin-bottom:20px}.primary-button{padding:13px 20px}
  .hero-art{width:100%;height:230px;margin:0;align-self:stretch}
  .hero-art img{object-position:center 42%;-webkit-mask-image:linear-gradient(to top,#000 73%,rgba(0,0,0,.92)),linear-gradient(to right,transparent 0%,#000 9%);mask-image:linear-gradient(to right,transparent 0%,#000 9%)}
  .product-section{margin-top:0}.product-grid{grid-template-columns:1fr;gap:14px}
  .product-card{min-height:235px;border-radius:20px;padding:20px}.product-copy{max-width:59%;padding:13px 0 52px}
  .product-card h2{font-size:36px}.product-copy p:last-child{font-size:12px}
  .product-image{width:47%;height:96%;opacity:1}
  .principles{grid-template-columns:1fr 1fr;gap:8px;padding:28px 0}.principle{gap:8px}.principle-icon{flex-basis:38px;width:38px;height:38px;font-size:22px}.principle h3{font-size:13px}.principle p{font-size:11px}
  .how-section{padding:51px 0}.section-heading h2{font-size:36px}.how-grid{grid-template-columns:1fr 1fr;gap:24px 14px}.how-image{height:145px}.how-card:nth-child(2):after{display:none}.how-card:not(:last-child):after{right:-12px;top:58px}.how-card h3{font-size:15px}.how-card p{font-size:12px}
  .examples-section{padding-block:54px}.heading-row{align-items:start}.section-link{font-size:11px;white-space:normal}.examples-grid{gap:11px}.example-card{padding:12px;min-height:255px}.example-card h3{font-size:14px}.example-card>p{font-size:11px}
  .community-panel{flex-direction:column;align-items:stretch;gap:22px;padding:25px}.community-copy h2{font-size:29px}.community-actions{flex-direction:row;flex-wrap:wrap;min-width:0;gap:16px}
  .closing-section{padding-block:24px 48px}.closing-panel{min-height:245px;background-size:auto 100%}.closing-copy{padding:29px 26px}.closing-copy h2{font-size:32px}
  .footer-inner{flex-direction:column;align-items:flex-start;gap:13px}.footer-inner nav{margin-left:0}
}
@media(max-width:480px){
  .nav-cta{display:none}.menu-toggle{margin-left:auto}.brand{font-size:18px}
  .hero-art{height:211px}.product-copy{max-width:62%}.product-image{width:48%}.product-card{min-height:242px}
  .principles{grid-template-columns:1fr 1fr}.principle{padding:6px 4px}.principle-icon{display:none}.principle h3{font-size:12px}
  .how-image{height:122px}.how-card:not(:last-child):after{display:none}
  .examples-grid{grid-template-columns:1fr}.example-card{min-height:212px}.example-top{height:74px}.example-top img{height:84px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
