/* 6i Lens shared stylesheet. Cream ground, burnt-orange accent, Source Serif 4 + Lexend.
   Orange TEXT uses --orange-text (#A2430F, 5.48:1 on cream) and buttons use --orange-deep
   (#B04A15, white 5.47:1); #CC5A1E is decoration only (rules, dots, large display words). */
:root{
  --ink:#F4EFE6; --ink2:#EDE6D9; --card:#FFFFFF; --cardhi:#FBF8F2; --line:#DCD2C0;
  --orange:#CC5A1E; --orange-deep:#B04A15; --orange-text:#A2430F;
  --blue:#2E86D4; --green:#2F9A5C; --rose:#C05F7E; --gold:#AB821F; --walnut:#6B4636; --olive:#5F8036;
  --cream:#2A2A2A; --paper:#FFFFFF; --muted:#57514A; --muted2:#6E665C; --foot:#EAE1D0;
  --serif:'Source Serif 4',Georgia,serif; --sans:'Lexend',Arial,sans-serif;
  --maxw:1160px;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
body{font-family:var(--serif);color:var(--cream);background:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;}
:focus-visible{outline:3px solid var(--orange-deep);outline-offset:3px;border-radius:4px;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 40px;}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--cream);color:#fff;font-family:var(--sans);font-size:14px;font-weight:600;padding:10px 16px;border-radius:8px;text-decoration:none;}
.skip:focus{top:12px;}

/* ---------- NAV ---------- */
.site-nav{position:sticky;top:0;z-index:50;background:rgba(244,239,230,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.site-nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;}
.brand{display:inline-flex;align-items:center;gap:11px;font-family:var(--serif);font-weight:700;font-size:22px;letter-spacing:-.01em;color:var(--cream);text-decoration:none;flex-shrink:0;}
.brand svg{width:36px;height:36px;display:block;color:var(--cream);}
.brand em{color:var(--orange);font-style:italic;} /* the i of 6i: canon #CC5A1E, italic (D6 F1) */
.navlinks{display:flex;align-items:center;gap:24px;list-style:none;}
.navlinks a{font-family:var(--sans);font-size:14.5px;font-weight:500;color:var(--muted);text-decoration:none;position:relative;padding:6px 0;}
.navlinks a::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--orange);transition:width .25s;}
.navlinks a:hover,.navlinks a[aria-current="page"]{color:var(--cream);}
.navlinks a:hover::after,.navlinks a[aria-current="page"]::after{width:100%;}
.navlinks a.btn{color:#fff;padding:10px 18px;}
.navlinks a.btn::after{display:none;}
.menu-btn{display:none;font-family:var(--sans);font-size:14px;font-weight:600;color:var(--cream);background:var(--card);border:1.5px solid var(--line);border-radius:8px;padding:9px 14px;cursor:pointer;align-items:center;gap:8px;}
.menu-btn .bars{display:inline-block;width:16px;height:2px;background:currentColor;position:relative;}
.menu-btn .bars::before,.menu-btn .bars::after{content:"";position:absolute;left:0;width:16px;height:2px;background:currentColor;}
.menu-btn .bars::before{top:-5px;}.menu-btn .bars::after{top:5px;}
@media (max-width:980px){
  .menu-btn{display:inline-flex;margin-left:auto;}
  /* The <nav> element stays in the flex row (its list is absolutely positioned below the
     bar), so it is a zero-width item; cancel its gap so the button sits flush right. */
  .site-nav .wrap > nav{margin-left:-20px;}
  .navlinks{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--ink);border-bottom:1px solid var(--line);padding:8px 24px 18px;box-shadow:0 12px 24px rgba(42,42,42,.08);}
  .site-nav.open .navlinks{display:flex;}
  .navlinks li{border-bottom:1px solid var(--line);}
  .navlinks li:last-child{border-bottom:0;padding-top:14px;}
  .navlinks a{display:block;padding:14px 0;font-size:16px;}
  .navlinks a::after{display:none;}
  .navlinks a.btn{display:inline-flex;}
}
/* Without JavaScript the menu button cannot open anything, so the links stay visible. */
.no-js .menu-btn{display:none;}
@media (max-width:980px){.no-js .navlinks{display:flex;position:static;box-shadow:none;border:0;padding:0 0 12px;flex-wrap:wrap;flex-direction:row;gap:4px 18px;}.no-js .site-nav .wrap{flex-wrap:wrap;}.no-js .navlinks li{border:0;padding:0;}}

/* ---------- BUTTONS / TYPE ---------- */
.btn{font-family:var(--sans);font-weight:600;font-size:15px;padding:12px 22px;border-radius:6px;display:inline-flex;align-items:center;gap:8px;text-decoration:none;transition:transform .14s ease,box-shadow .2s,background .2s;cursor:pointer;}
.btn.orange{background:var(--orange-deep);color:#fff;box-shadow:none;}
.btn.orange:hover{background:var(--orange-deep);}
.btn.ghost{border:1.6px solid var(--muted);color:var(--cream);background:transparent;}
.btn.ghost:hover{border-color:var(--cream);}
@media (prefers-reduced-motion:reduce){.btn,.card{transition:none;}.btn:hover,.card:hover{transform:none!important;}}
/* Uppercase labels would print the brand as "6I". .nt keeps the brand in its own case. */
.nt{text-transform:none;letter-spacing:.06em;}
.eyebrow{font-family:var(--sans);text-transform:uppercase;letter-spacing:.16em;font-size:12.5px;font-weight:600;color:var(--orange-text);}
h1{font-size:clamp(38px,5.6vw,68px);line-height:1.05;font-weight:700;letter-spacing:-.022em;color:var(--cream);margin-top:14px;}
h1 .foc,h2 .foc{color:var(--orange);font-style:italic;}
h2{font-size:clamp(28px,3.6vw,40px);font-weight:700;line-height:1.14;letter-spacing:-.015em;color:var(--cream);}
h3{font-family:var(--sans);font-size:19px;font-weight:600;line-height:1.3;color:var(--cream);}
.lead{font-size:clamp(18px,2vw,21px);color:var(--muted);margin-top:22px;line-height:1.6;max-width:46em;}
.prose{max-width:46em;}
.prose p{font-size:18px;color:var(--muted);margin-top:16px;line-height:1.7;}
.prose p:first-child{margin-top:0;}
.prose a,.textlink{color:var(--orange-text);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(162,67,15,.45);}
.prose a:hover,.textlink:hover{text-decoration-color:var(--orange-text);}
.sec-intro{font-size:18.5px;color:var(--muted);margin-top:14px;line-height:1.66;max-width:46em;}

/* ---------- LAYOUT ---------- */
.page-head{padding:56px 0 48px;background:radial-gradient(120% 90% at 82% 4%,#EFE7D7 0%,#F1EADC 40%,var(--ink) 100%);border-bottom:1px solid var(--line);}
.home-hero{padding:88px 0 80px;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 82% 4%,#EFE7D7 0%,#F1EADC 40%,var(--ink) 100%);border-bottom:1px solid var(--line);}
.home-hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(#E4DED6 1px,transparent 1px);background-size:26px 26px;opacity:.5;-webkit-mask-image:radial-gradient(70% 60% at 75% 12%,#000,transparent 75%);mask-image:radial-gradient(70% 60% at 75% 12%,#000,transparent 75%);pointer-events:none;}
.home-hero .wrap{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center;}
.home-hero h1{font-size:clamp(44px,6.6vw,80px);}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;}
section.block{padding:72px 0;}
section.block.alt{background:var(--ink2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.sec-label{font-family:var(--sans);text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:600;color:var(--muted2);margin-bottom:10px;}

/* ---------- BREADCRUMB ---------- */
.crumbs{font-family:var(--sans);font-size:13.5px;color:var(--muted2);}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;}
.crumbs li+li::before{content:"/";margin-right:6px;color:var(--muted2);}
.crumbs a{color:var(--muted);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line);}
.crumbs a:hover{color:var(--cream);}
.crumbs [aria-current]{color:var(--cream);}

/* ---------- CARDS ---------- */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;}
.grid.two{grid-template-columns:repeat(2,1fr);}
.card{background:var(--card);border:1px solid var(--line);border-radius:6px;box-shadow:0 1px 2px rgba(42,42,42,.08);padding:26px 24px 26px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:transform .16s,border-color .2s,background .2s;}
.card::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .3s;}
a.card{text-decoration:none;color:inherit;}
a.card:hover{transform:translateY(-1px);box-shadow:0 1px 2px rgba(42,42,42,.10),0 4px 10px -2px rgba(42,42,42,.12);border-color:#CFC7BD;background:var(--cardhi);}
a.card:hover::before,a.card:focus-visible::before{transform:scaleX(1);}
.card .k{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted2);margin-bottom:8px;}
.card p{font-size:16px;color:var(--muted);margin-top:10px;line-height:1.55;flex:1;}
.card p.k{flex:none;margin-top:0;}
.card .go{font-family:var(--sans);font-size:14px;font-weight:600;color:var(--orange-text);margin-top:18px;}
.card .go span{display:inline-block;transition:transform .16s;}
a.card:hover .go span{transform:translateX(4px);}
.tag{display:inline-block;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.06em;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:var(--cardhi);color:var(--muted);margin-top:14px;align-self:flex-start;}
.tag.hold{border-color:#D9C6B6;background:#F7EEE6;color:#7A3A12;}

/* ---------- SIX INTELLIGENCES ---------- */
.six{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;list-style:none;}
.six li{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--orange);border-radius:6px;padding:22px 22px 24px;}
.six .n{font-family:var(--sans);font-weight:700;font-size:13px;color:var(--orange-text);}
.six h3{margin-top:4px;}
.six .ask{font-style:italic;color:var(--cream);font-size:17px;margin-top:10px;line-height:1.45;}
.six p{font-size:15.5px;color:var(--muted);margin-top:10px;line-height:1.55;}

/* ---------- NOTES / ENTITY TABLE / EMPTY STATES ---------- */
.note{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:6px;padding:20px 22px;margin-top:32px;max-width:52em;}
.note h3{font-size:16px;}
.note p,.note li{font-size:16px;color:var(--muted);margin-top:8px;line-height:1.6;}
.note ul{margin:8px 0 0 20px;}
.entity{width:100%;border-collapse:collapse;margin-top:24px;background:var(--card);border:1px solid var(--line);border-radius:6px;overflow:hidden;font-size:16px;}
.entity th,.entity td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top;}
.entity th{font-family:var(--sans);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted2);background:var(--cardhi);font-weight:600;}
.entity td:first-child{font-weight:600;color:var(--cream);}
.entity td{color:var(--muted);}
.entity tr:last-child td{border-bottom:0;}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.empty{font-family:var(--sans);font-size:14px;color:var(--muted);border:1.5px dashed var(--line);border-radius:10px;padding:14px 16px;margin-top:14px;background:transparent;}
.catlist{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:32px;list-style:none;}
.catlist li{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:22px 22px 20px;}
.catlist p{font-size:16px;color:var(--muted);margin-top:8px;line-height:1.55;}

/* ---------- FOUNDER ---------- */
.founder{display:grid;grid-template-columns:1.3fr .7fr;gap:52px;align-items:start;}
.founder figure{margin:0;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:var(--card);box-shadow:0 1px 2px rgba(42,42,42,.10),0 4px 10px -2px rgba(42,42,42,.12);}
.founder figcaption{font-family:var(--sans);font-size:13px;line-height:1.5;color:var(--muted);padding:12px 16px;background:var(--cardhi);border-top:1px solid var(--line);}
.founder figcaption b{display:block;color:var(--cream);font-size:14px;font-weight:600;}
/* ---------- HOME: pull quote ---------- */
.pull{margin:0 0 22px;padding:4px 0 4px 22px;border-left:3px solid var(--orange);}
.pull p{font-size:clamp(19px,2.2vw,23px);line-height:1.5;font-style:italic;color:var(--cream);}
.pull cite{display:block;margin-top:10px;font-family:var(--sans);font-style:normal;font-size:14px;color:var(--muted);}
.postnom{font-family:var(--sans);font-size:15px;font-weight:500;color:var(--muted);margin-top:14px;letter-spacing:.02em;}

/* ---------- FOOTER ---------- */
.site-foot{background:var(--foot);border-top:1px solid var(--line);padding:56px 0 34px;}
.site-foot .wrap{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px;align-items:start;}
.site-foot .brand{font-size:21px;}
.site-foot .brand svg{width:30px;height:30px;}
.site-foot .tag2{font-family:var(--sans);font-size:13.5px;color:var(--muted);margin-top:14px;max-width:24em;line-height:1.7;}
.site-foot h2{font-family:var(--sans);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;font-weight:600;line-height:1.4;}
.site-foot ul{list-style:none;}
.site-foot li{margin-bottom:10px;}
.site-foot a.fl{font-family:var(--sans);font-size:14.5px;color:var(--muted);text-decoration:none;}
.site-foot a.fl:hover{color:var(--orange-text);text-decoration:underline;}
.site-foot .legal{grid-column:1/-1;border-top:1px solid var(--line);margin-top:34px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-family:var(--sans);font-size:12.5px;color:var(--muted);}

/* ---------- HOME (recovered sections) ---------- */
.home-hero.solo .wrap{display:block;}
.home-hero.solo h1{max-width:12em;}
.home-hero.solo .lead{max-width:40em;}
.jump{display:flex;flex-wrap:wrap;gap:10px 28px;margin-top:22px;font-family:var(--sans);font-size:15px;}
ol.grid{list-style:none;}
.steps .card .k{font-size:13px;color:var(--orange-text);letter-spacing:.08em;}
.evid{list-style:none;margin-top:30px;display:grid;gap:14px;max-width:52em;}
.evid li{display:flex;gap:18px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:6px;padding:20px 22px;}
.evid .n{font-family:var(--sans);font-weight:700;font-size:13px;color:var(--orange-text);padding-top:3px;flex:none;}
.evid p{font-size:16px;color:var(--muted);margin-top:6px;line-height:1.6;}
.faq{margin-top:28px;max-width:52em;border-top:1px solid var(--line);}
.faq details{border-bottom:1px solid var(--line);}
.faq summary{cursor:pointer;list-style:none;font-family:var(--sans);font-size:17px;font-weight:600;color:var(--cream);padding:20px 40px 20px 0;position:relative;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";position:absolute;right:6px;top:16px;font-size:24px;font-weight:400;color:var(--orange-text);transition:transform .2s;}
.faq details[open] summary::after{transform:rotate(45deg);}
.faq summary:focus-visible{outline:3px solid var(--orange-deep);outline-offset:3px;}
.faq details p{font-size:17px;color:var(--muted);line-height:1.65;padding:0 0 22px;max-width:46em;}
.cta-band h2{max-width:18em;}

/* ---------- FOUNDER RECORD ---------- */
.record-head{display:grid;grid-template-columns:1fr 260px;gap:52px;align-items:start;}
.record-portrait{margin:0;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:var(--card);box-shadow:0 1px 2px rgba(42,42,42,.10),0 4px 10px -2px rgba(42,42,42,.12);}
@media (max-width:900px){.record-head{grid-template-columns:1fr;gap:24px;}.record-portrait{max-width:240px;}}
.founder-h{font-size:clamp(22px,2.6vw,28px);margin-top:34px;}
.stats{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:28px;}
.stat{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:20px 20px 18px;}
.stat b{display:block;font-family:var(--serif);font-size:clamp(26px,3vw,34px);font-weight:700;color:var(--cream);line-height:1.1;letter-spacing:-.01em;}
.stat span{display:block;font-family:var(--sans);font-size:13.5px;line-height:1.55;color:var(--muted);margin-top:10px;}
.subhead{font-family:var(--serif);font-size:clamp(21px,2.4vw,26px);font-weight:700;margin-top:52px;}
.dtgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px;}
.dtgrid .entity{margin-top:0;}
.entity caption{caption-side:top;text-align:left;font-family:var(--sans);font-size:12.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted2);padding:0 0 10px;}
.entity td.hi{color:var(--cream);font-weight:700;}
.tcap{font-family:var(--sans);font-size:13.5px;line-height:1.6;color:var(--muted);margin-top:16px;max-width:60em;}
@media (max-width:760px){.dtgrid{grid-template-columns:1fr;}}

/* ---------- RESEARCH FIGURE / PRODUCTS / CONTACT FORM ---------- */
.figure{margin:30px 0 0;max-width:640px;background:var(--card);border:1px solid var(--line);border-radius:6px;padding:16px;}
.figure img{border-radius:8px;}
.figure figcaption{font-family:var(--sans);font-size:13px;line-height:1.55;color:var(--muted);margin-top:12px;}
.card p.aud{flex:none;font-family:var(--sans);font-size:13px;margin-top:12px;}
.card p.aud b{color:var(--cream);font-weight:600;}
.cform{margin-top:28px;max-width:40em;display:grid;gap:16px;}
.cf-row{display:grid;gap:6px;}
.cf-row label{font-family:var(--sans);font-size:14px;font-weight:600;color:var(--cream);}
.cf-row .opt{font-weight:400;color:var(--muted);}
.cf-row input,.cf-row textarea{font:inherit;font-size:16px;color:var(--cream);background:var(--card);border:1.5px solid var(--line);border-radius:6px;padding:12px 14px;width:100%;}
.cf-row input[aria-invalid="true"],.cf-row textarea[aria-invalid="true"]{border-color:#9E2A1C;border-width:2px;}
.cf-row input:focus-visible,.cf-row textarea:focus-visible{outline:3px solid var(--orange-deep);outline-offset:1px;border-color:var(--orange-deep);}
.cf-err{font-family:var(--sans);font-size:14px;color:#9E2A1C;margin:0;}
.cf-err:empty{display:none;}
.cf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.cform .btn{justify-self:start;border:0;}
.cform .btn:disabled{opacity:.6;cursor:default;}
.cf-status{font-family:var(--sans);font-size:15px;min-height:1.4em;}
.cf-status.ok{color:#1F6B44;}
.cf-status.err{color:#9E2A1C;}

/* ---------- FIRST-VISIT GATE (Home only) ---------- */
.gate{display:none;}
html.gate-on body{overflow:hidden;}
html.gate-on .gate{display:flex;}
.gate{position:fixed;inset:0;z-index:300;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:24px 16px;
  background:radial-gradient(120% 90% at 50% 40%,#36402B 0%,#2F3725 55%,#262D1E 100%);color:#EFE8DC;opacity:1;transition:opacity .85s cubic-bezier(.4,0,.2,1);}
.gate.leaving{opacity:0;pointer-events:none;}
.gate:focus{outline:none;}
.gate-skip{position:absolute;top:18px;right:18px;font-family:var(--sans);font-size:14px;font-weight:500;color:#D7DCD0;background:transparent;
  border:1px solid #525F45;border-radius:9px;padding:10px 16px;cursor:pointer;}
.gate-skip:hover{color:#EFE8DC;border-color:#BDC5B5;}
.gate-stage{position:relative;display:flex;align-items:center;justify-content:center;}
.gate-halo{position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle,rgba(224,106,42,.22),transparent 65%);opacity:0;transition:opacity .8s;}
.gate.armed .gate-halo{opacity:1;animation:gateHalo 2.6s ease-in-out infinite;}
@keyframes gateHalo{0%,100%{transform:scale(1);}50%{transform:scale(1.14);}}
.gate-mark{position:relative;background:none;border:0;padding:0;cursor:pointer;border-radius:50%;color:#EFE8DC;transition:transform .25s;}
.gate-mark svg{display:block;width:min(52vmin,420px);height:auto;overflow:visible;}
.gate-mark:hover{transform:scale(1.035);}
.gate-mark:active{transform:scale(.985);}
.gate-mark:focus-visible,.gate-skip:focus-visible,.gate-card a:focus-visible{outline:3px dashed #E06A2A;outline-offset:6px;}
.gate.armed .gate-mark .sixi{filter:drop-shadow(0 0 10px rgba(224,106,42,.55));}
.gate-wm{font-family:var(--serif);font-size:clamp(26px,3.4vw,36px);font-weight:700;letter-spacing:-.01em;margin-top:6px;opacity:0;transition:opacity .9s .25s;}
.gate-wm em,.gate-note em,.gc-lab em{color:#E06A2A;font-style:italic;}
.gate-note{font-family:var(--sans);font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:#BDC5B5;margin-top:14px;opacity:0;transition:opacity .8s .45s;}
.gate-note .nt{text-transform:none;letter-spacing:.06em;}
.gate-card{margin-top:22px;max-width:30em;text-align:center;border:1px solid #525F45;border-radius:12px;padding:12px 18px;background:rgba(59,69,48,.55);opacity:0;transition:opacity .8s .45s;}
.gc-lab{font-family:var(--serif);font-weight:700;font-size:15px;}
.gc-line{font-family:var(--sans);font-size:13px;color:#D7DCD0;line-height:1.5;margin-top:4px;}
.gc-links{font-family:var(--sans);font-size:13px;margin-top:6px;}
.gc-links a{color:#EFE8DC;text-underline-offset:3px;}
.gate.ready .gate-wm,.gate.ready .gate-note,.gate.ready .gate-card{opacity:1;}
@media (max-height:640px){.gate-mark svg{width:min(40vmin,300px);}.gate-card{display:none;}}
@media (prefers-reduced-motion:reduce){.gate,.gate-wm,.gate-note,.gate-card,.gate-halo,.gate-mark{transition:none!important;animation:none!important;}}

/* ---------- RESPONSIVE ---------- */
@media (max-width:900px){
  .home-hero .wrap{grid-template-columns:1fr;gap:28px;}
  .grid,.six{grid-template-columns:1fr 1fr;}
  .founder{grid-template-columns:1fr;gap:28px;}
  .founder figure{order:-1;max-width:300px;}
  .site-foot .wrap{grid-template-columns:1fr 1fr;}
}
@media (max-width:640px){
  .wrap{padding:0 20px;}
  .grid,.grid.two,.six,.catlist{grid-template-columns:1fr;}
  .home-hero{padding:48px 0 56px;}
  .page-head{padding:36px 0 36px;}
  section.block{padding:52px 0;}
  .site-foot .wrap{grid-template-columns:1fr;}
  .cta-row .btn{width:100%;justify-content:center;}
  .entity th,.entity td{padding:12px;}
}
@media print{.site-nav,.site-foot,.skip{display:none;}body{background:#fff;}}
