:root{--base:#F6F6F6;--green:#D5E6D8;--cream:#EBE6DF;--dark:#2C353D;--dark2:#4A5259;--ink:#26313A;--muted:#657078;--line:rgba(44,53,61,.18);--max:1180px}
*{box-sizing:border-box}
[hidden]{display:none !important}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:#EDEAE5;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:400;letter-spacing:-.035em}
.frame{width:min(100%,1480px);margin:0 auto;background:var(--base);border-left:1px solid rgba(44,53,61,.10);border-right:1px solid rgba(44,53,61,.10);overflow-x:clip}
.shell{width:min(calc(100% - 48px),var(--max));margin:0 auto}
.eyebrow{font-size:11px;line-height:1.2;letter-spacing:.18em;text-transform:uppercase;font-weight:650;color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;text-decoration:none;font-size:13px;font-weight:650;border:1px solid var(--dark);color:var(--ink)}
.btn.primary{background:var(--dark);color:#FFFFFF}
.btn:focus-visible,.tab:focus-visible,.navlinks a:focus-visible{outline:2px solid var(--dark);outline-offset:2px}

.topbar{position:sticky;top:0;z-index:20;background:rgba(246,246,246,.97);border-bottom:1px solid var(--line)}
.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand img{display:block;width:57px;height:57px;object-fit:contain}
.navlinks{display:flex;align-items:center;gap:28px;font-size:13px}
.navlinks a{text-decoration:none}
.navlinks .util{display:flex;gap:20px;padding-left:28px;border-left:1px solid var(--line);font-size:12px;letter-spacing:.02em;color:var(--muted)}
.navlinks .util a:hover,.navlinks>a:hover{color:var(--ink)}
.skip{position:absolute;left:16px;top:-60px;z-index:30;padding:10px 14px;background:var(--dark);color:#FFFFFF;font-size:13px;text-decoration:none}
.skip:focus{top:12px}
.mnav{display:none}

.hero{padding:88px 0 72px}
.hero-primary{max-width:1040px;margin:0 auto;text-align:center}
.hero h1{font-size:clamp(40px,4.8vw,64px);line-height:1.04;max-width:1040px;margin:0 auto}
.hero .lead{margin:24px auto 0;font-size:19px;line-height:1.5;max-width:760px;color:var(--dark2)}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:32px}
.hero-primary .actions{justify-content:center}
.hero-detail{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:72px;align-items:start;margin-top:64px;padding-top:32px;border-top:1px solid var(--line)}
.hero-system,.hero-assurance{min-width:0}
.system-intro{margin-top:0;max-width:560px;font-size:16px;line-height:1.65;color:var(--dark2)}
.certificate-links{margin-top:14px;max-width:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.certificate-item{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 0}
.certificate-item+.certificate-item{border-top:1px solid var(--line)}
.certificate-name{font-size:13px;font-weight:650;color:var(--ink)}
.certificate-name small{display:block;margin-top:2px;font-size:11px;font-weight:400;letter-spacing:.04em;color:var(--muted)}
.certificate-actions{display:flex;gap:8px;flex:0 0 auto}
.certificate-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border:1px solid var(--line);text-decoration:none;font-size:12px;font-weight:650;color:var(--ink);background:transparent}
.certificate-btn:hover{border-color:var(--dark)}
.certificate-btn:focus-visible{outline:2px solid var(--dark);outline-offset:2px}
.certificate-preview-btn{font:inherit;cursor:pointer}
.certificate-modal{position:fixed;inset:0;z-index:1000}
.certificate-modal[hidden]{display:none}
.certificate-modal-backdrop{position:absolute;inset:0;background:rgba(20,27,32,.62);backdrop-filter:blur(2px)}
.certificate-modal-panel{position:absolute;inset:5vh 5vw;background:var(--base);border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 80px rgba(0,0,0,.28);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden}
.certificate-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:20px 24px;border-bottom:1px solid var(--line)}
.certificate-modal-header h2{margin-top:6px;font-size:24px;line-height:1.15}
.certificate-modal-close{appearance:none;border:1px solid var(--line);background:transparent;min-height:36px;padding:0 12px;font:inherit;font-size:12px;font-weight:650;cursor:pointer}
.certificate-modal-close:hover{border-color:var(--dark)}
.certificate-modal-viewer{min-height:0;background:#D8D8D8}
.certificate-modal-viewer iframe{display:block;width:100%;height:100%;min-height:60vh;border:0;background:#FFFFFF}
.certificate-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 24px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
body.modal-open{overflow:hidden}

.flow{border-top:1px solid var(--line);border-bottom:1px solid var(--line);scroll-margin-top:76px}
.flow ol{list-style:none;margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.flow li{display:flex;align-items:center;gap:14px;padding:22px 0;font-size:15px;color:var(--ink)}
.flow li span{font-size:11px;letter-spacing:.16em;color:var(--muted);font-variant-numeric:tabular-nums}
.flow li:not(:last-child)::after{content:"→";margin-left:auto;padding-right:24px;color:var(--muted)}

.with{padding:88px 0 96px;scroll-margin-top:76px}
.with h2{font-size:clamp(30px,3.2vw,42px);line-height:1.08;margin-bottom:36px}
.tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.tab{appearance:none;background:transparent;border:0;border-bottom:2px solid transparent;margin:0 0 -1px;padding:18px 16px 16px;min-height:56px;text-align:center;font:inherit;font-size:15px;font-weight:500;color:var(--dark2);cursor:pointer}
.tab+.tab{border-left:1px solid var(--line)}
.tab:hover{color:var(--ink)}
.tab.on{color:var(--ink);font-weight:650;border-bottom-color:var(--dark)}
.panel{padding-top:40px}
.panel h3{font-size:clamp(24px,2.4vw,30px);line-height:1.15;margin-bottom:28px;max-width:760px}
.panel .who{display:none}
.tbl{border-top:1px solid var(--line)}
.tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,1fr);gap:32px;padding:18px 0;border-bottom:1px solid var(--line);font-size:16px;color:var(--ink)}
.tr.th{padding:12px 0;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:650;color:var(--muted)}
.tr .ka{color:var(--dark2)}
.tr .res{font-weight:600}
.tr .lbl{display:none}
.panel-foot{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:28px}
.panel-note{font-size:13px;color:var(--muted);max-width:560px}
.stakeholder-panels{display:block}
.carousel-hint{display:none}

.origins{background:var(--cream);padding:112px 0;scroll-margin-top:76px}
.origins .inner{max-width:720px;margin:0 auto;text-align:center}
.origins-lockup{display:block;width:min(100%,560px);height:auto;margin:0 auto;transform:translateX(min(58px,5vw))}
.origins h2{margin-top:28px;font-size:clamp(30px,3.3vw,44px);line-height:1.1}
.stanza{margin-top:28px;font-size:18px;line-height:1.7;color:var(--ink)}
.origins .visible{margin-top:36px;font-size:clamp(24px,2.4vw,32px);letter-spacing:-.03em;line-height:1.1;color:var(--ink)}
.grew{margin-top:40px;padding-top:28px;border-top:1px solid rgba(44,53,61,.24);font-size:clamp(24px,2.4vw,32px);letter-spacing:-.03em;line-height:1.1}
.origins .actions{justify-content:center}

.contact{background:var(--dark);color:#FFFFFF;padding:88px 0 32px;scroll-margin-top:76px}
.contact h2{font-size:clamp(32px,3.6vw,46px);line-height:1.08}
.contact .sub{margin-top:14px;font-size:17px;color:#C8D0D4}
.contact .btn{border-color:#FFFFFF;background:#FFFFFF;color:var(--dark)}
.footer{margin-top:80px;padding-top:22px;border-top:1px solid rgba(255,255,255,.18);display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;font-size:12px;color:#B9C1C5}
.footer img{display:block;width:44px;height:44px;object-fit:contain;filter:brightness(0) invert(1);opacity:.92}
.footer a{color:#D7DDDF}

@media(max-width:820px){
.shell{width:min(calc(100% - 32px),var(--max))}
.frame{border:0}
.nav{height:64px}
.brand img{width:51px;height:51px}
.navlinks{display:none}
.mnav{display:block;position:relative}
.mnav summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:13px;font-weight:650}
.mnav summary::-webkit-details-marker{display:none}
.mnav-panel{position:absolute;right:0;top:100%;width:240px;background:var(--base);border:1px solid var(--line);padding:6px 0}
.mnav-panel a{display:block;padding:12px 18px;font-size:14px;text-decoration:none}
.mnav-util{margin-top:6px;padding-top:6px;border-top:1px solid var(--line)}
.mnav-util a{font-size:13px;color:var(--muted)}
.hero{padding:56px 0 48px}
.hero .lead{font-size:17px}
.hero-detail{grid-template-columns:1fr;gap:30px;margin-top:46px;padding-top:28px}
.system-intro{max-width:700px}
.hero-assurance{max-width:700px;width:100%;margin:0 auto}
.flow ol{grid-template-columns:1fr 1fr}
.flow li{padding:16px 0}
.flow li:nth-child(-n+2){border-bottom:1px solid var(--line)}
.flow li:not(:last-child)::after{padding-right:16px}
.with{padding:56px 0 64px}
.with h2{margin-bottom:10px}
.tabs{display:none!important}
.carousel-hint{display:block;margin-bottom:22px;font-size:12px;letter-spacing:.04em;color:var(--muted)}
.stakeholder-panels{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:0;padding:0 0 14px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.stakeholder-panels::-webkit-scrollbar{height:6px}
.stakeholder-panels::-webkit-scrollbar-thumb{background:rgba(44,53,61,.20)}
.panel{flex:0 0 88%;scroll-snap-align:start;padding:24px;background:#FFFFFF;border:1px solid var(--line)}
.panel+.panel{margin:0}
.panel .who{display:block;margin-bottom:10px}
.panel h3{font-size:24px;margin-bottom:20px}
.tr.th{display:none}
.tr{grid-template-columns:1fr;gap:6px;padding:16px 0}
.tr .lbl{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:650;color:var(--muted);margin-bottom:2px}
.panel-foot{align-items:stretch;gap:14px;margin-top:22px}
.panel-foot .btn{width:100%}
.panel-note{font-size:12px;line-height:1.5}
.certificate-modal-panel{inset:2vh 10px}
.certificate-modal-header{padding:16px}
.certificate-modal-header h2{font-size:20px}
.certificate-modal-viewer iframe{min-height:68vh}
.certificate-modal-footer{align-items:flex-start;flex-direction:column;padding:12px 16px}
.certificate-modal-footer .btn{width:100%}
.origins{padding:72px 0}
.origins-lockup{width:min(100%,460px)}
.contact{padding:64px 0 28px}
.footer{margin-top:56px;flex-direction:column;align-items:flex-start}
}
@media(max-width:480px){.hero h1 br{display:none}.btn{width:100%}.panel-foot{gap:14px}.certificate-item{align-items:flex-start;flex-direction:column;gap:10px}.certificate-actions{width:100%}.certificate-btn{flex:1}.panel{flex-basis:92%}}

html:not(.js) .panel .who{display:block;margin-bottom:12px}
html:not(.js) .panel+.panel{margin-top:48px;border-top:1px solid var(--line)}

/* Origins page */
.o-hero{background:var(--cream);padding:88px 0 96px}
.o-grid{display:block;max-width:820px;margin:0 auto}
.o-grid-banner{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:64px;max-width:1040px;align-items:center}
.o-banner-wrap{min-width:0}
.o-banner{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain}
.o-copy{min-width:0}
.o-hero h1{font-size:clamp(40px,4.6vw,62px);line-height:1.04}
.o-hero .lede{margin-top:28px;padding-top:24px;border-top:1px solid rgba(44,53,61,.24);font-size:20px;color:var(--ink)}
.o-hero .lede+p{margin-top:14px;font-size:16px;color:var(--dark2);max-width:520px}
.origins-page-lockup{display:block;width:min(100%,620px);height:auto;margin:0 0 52px}
.o-sec{padding:88px 0;border-bottom:1px solid var(--line)}
.o-sec h2{font-size:clamp(28px,3vw,40px);line-height:1.1;max-width:820px}
.o-sec .eyebrow{margin-bottom:22px}
.four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin-top:48px;border-top:1px solid var(--line)}
.four div{padding-top:24px}
.four h3{font-size:22px;line-height:1.15}
.four p{margin-top:10px;font-size:15px;color:var(--dark2)}
.roles{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:48px;border-top:1px solid var(--dark)}
.role{padding:28px 40px 0 0}
.role+.role{padding-left:40px;border-left:1px solid var(--line)}
.role h3{margin-top:14px;font-size:24px;line-height:1.15}
.role ul{list-style:none;margin:18px 0 0;padding:0}
.role li{padding:12px 0;border-bottom:1px solid var(--line);font-size:15px;color:var(--dark2)}
.principle{margin-top:48px;font-size:clamp(22px,2.2vw,28px);line-height:1.3;letter-spacing:-.02em;max-width:820px}
.o-note{padding:40px 0;font-size:14px;color:var(--dark2)}
@media(max-width:820px){
.o-hero{padding:48px 0 64px}
.o-grid-banner{grid-template-columns:1fr;gap:36px;max-width:680px}
.roles{grid-template-columns:1fr;gap:32px}
.origins-page-lockup{width:min(100%,520px);margin-bottom:36px}
.four{grid-template-columns:1fr 1fr;gap:0 20px}
.role,.role+.role{padding:24px 0 0;border-left:0}
.role+.role{margin-top:12px;border-top:1px solid var(--line)}
.o-sec{padding:56px 0}
}
@media(max-width:480px){.four{grid-template-columns:1fr}}

/* KA Origins sub-navigation (Provenance · Medical cannabis) */
.o-subnav{border-bottom:1px solid var(--line);background:var(--base)}
.o-subnav .shell{display:flex;align-items:center;gap:28px;height:52px;font-size:13px}
.o-subnav a{text-decoration:none;color:var(--dark2);padding:15px 0;border-bottom:1px solid transparent}
.o-subnav a:hover{color:var(--ink)}
.o-subnav a[aria-current]{color:var(--ink);border-bottom-color:var(--ink)}
.o-sub-brand{font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:650;color:var(--muted);padding-right:28px;border-right:1px solid var(--line)}
.o-mc{padding:72px 0;border-bottom:1px solid var(--line)}
.o-mc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:end}
.o-mc h2{font-size:clamp(26px,2.8vw,36px);line-height:1.12;margin-top:16px}
.o-mc-text{font-size:16px;color:var(--dark2);max-width:520px}
@media(max-width:820px){.o-sub-brand{display:none}.o-mc{padding:56px 0}.o-mc-grid{grid-template-columns:1fr;gap:20px}}

/* KA Origins · Medical cannabis information library */
.mc-hero{padding:88px 0 56px}
.mc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}
.mc-lockup{display:block;width:min(100%,320px);height:auto}
.mc-lang{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--muted)}
.mc-lang b{color:var(--ink);font-weight:650}
.mc-lang span[aria-disabled]{opacity:.55}
.mc-crumb{margin-top:28px;font-size:12px;color:var(--muted)}
.mc-crumb a{text-decoration:none}
.mc-hero h1{margin-top:12px;font-size:clamp(40px,4.6vw,60px);line-height:1.04}
.mc-hero .lead{margin-top:24px;font-size:19px;line-height:1.55;max-width:700px;color:var(--dark2)}
.mc-sub{margin-top:18px;font-size:15px;color:var(--ink)}
.mc-boundary{margin-top:40px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);max-width:700px}
.mc-read{padding:56px 0;border-top:1px solid var(--line)}
.mc-read-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:28px}
.mc-read-grid h3{font-size:19px;line-height:1.2}
.mc-read-grid p{margin-top:10px;font-size:15px;color:var(--dark2)}
.mc-n{display:block;margin-bottom:12px;font-size:11px;letter-spacing:.16em;color:var(--muted)}
.mc-terms{padding:40px 0 56px}
.mc-terms dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin:22px 0 0;padding-top:22px;border-top:1px solid var(--line)}
.mc-terms dt{font-size:15px;font-weight:600}
.mc-terms dd{margin:8px 0 0;font-size:14px;color:var(--dark2)}
.mc-lib{padding:72px 0 88px;border-top:1px solid var(--line);scroll-margin-top:76px}
.mc-lib-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:36px}
.mc-lib-head h2{margin-top:14px;font-size:clamp(28px,3vw,40px);line-height:1.1}
.mc-lib-head a,.mc-prov a{font-size:13px;font-weight:650;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:2px}
.mc-lib-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:56px;align-items:start;border-top:1px solid var(--dark)}
.mc-fams{list-style:none;margin:0;padding:0}
.mc-fam{display:flex;justify-content:space-between;align-items:baseline;gap:12px;min-height:44px;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--dark2);text-decoration:none}
.mc-fam:hover{color:var(--ink)}
.mc-fam i{font-style:normal;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.mc-fam[aria-current]{padding-left:14px;color:var(--ink);font-weight:650;box-shadow:inset 2px 0 0 var(--dark)}
.mc-fs{display:none}
.mc-area{padding-top:28px;scroll-margin-top:90px}
.mc-area+.mc-area{margin-top:40px;border-top:1px solid var(--line)}
.mc-area-title{font-size:20px;line-height:1.2}
.mc-area-title span{margin-left:8px;font-size:12px;letter-spacing:0;color:var(--muted)}
.mc-conds{display:none}
.mc-entry{padding:28px 0 8px;scroll-margin-top:90px}
.mc-entry+.mc-entry{border-top:1px solid var(--line)}
.mc-entry-area{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:650;color:var(--muted)}
.mc-entry-title{margin-top:12px;font-size:clamp(28px,3vw,38px);line-height:1.1}
.mc-entry-def{margin-top:16px;font-size:18px;line-height:1.55;color:var(--ink);max-width:680px}
.mc-entry-src{margin-top:10px;font-size:12px;color:var(--muted)}
.mc-ev{margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}
.mc-ev h4{margin:0;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:650;color:var(--muted)}
.mc-ev-row{display:grid;grid-template-columns:240px minmax(0,1fr);gap:36px;margin-top:18px;align-items:start}
.mc-scale{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}
.mc-scale span{height:6px;border:1px dashed rgba(44,53,61,.35)}
.mc-scale-lbl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:8px;font-size:10px;color:var(--muted)}
.mc-ev-state{font-size:17px;font-weight:600;color:var(--ink)}
.mc-ev-text{margin-top:6px;font-size:15px;color:var(--dark2);max-width:560px}
.mc-more{margin-top:22px}
.mc-more summary{display:inline-flex;align-items:center;min-height:44px;font-size:13px;font-weight:650;color:var(--ink);cursor:pointer;list-style:none}
.mc-more summary::-webkit-details-marker{display:none}
.mc-more summary span{border-bottom:1px solid var(--ink);padding-bottom:2px}
.mc-more summary:focus-visible{outline:2px solid var(--dark);outline-offset:2px}
.mc-more .mc-hide,.mc-more[open] .mc-show{display:none}
.mc-more[open] .mc-hide{display:inline}
.mc-fields{margin:8px 0 0;border-top:1px solid var(--line)}
.mc-fields div{display:grid;grid-template-columns:240px minmax(0,1fr);gap:36px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}
.mc-fields dt{color:var(--ink)}
.mc-fields dd{margin:0;color:var(--muted)}
.mc-entry-foot{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:28px;font-size:12px;color:var(--muted)}
.mc-entry-foot strong{color:var(--ink);font-weight:600}
/* JavaScript: one clinical area and one condition at a time */
.mc-js .mc-area+.mc-area{margin-top:0;border-top:0}
.mc-js .mc-area-title{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mc-js .mc-area{padding-top:28px}
.mc-js .mc-conds{display:flex;flex-wrap:wrap;gap:8px 28px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.mc-cond{display:inline-flex;align-items:center;min-height:44px;padding:6px 0;border-bottom:1px solid transparent;font-size:15px;color:var(--dark2);text-decoration:none}
.mc-cond:hover{color:var(--ink)}
.mc-cond[aria-current]{color:var(--ink);border-bottom-color:var(--ink)}
.mc-js .mc-entry{padding-top:36px}
.mc-js .mc-entry+.mc-entry{border-top:0}
.mc-fam:focus-visible,.mc-cond:focus-visible,.mc-lib-head a:focus-visible,.mc-prov a:focus-visible{outline:2px solid var(--dark);outline-offset:2px}
.mc-prov{background:var(--cream);padding:64px 0}
.mc-prov-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:end}
.mc-prov h2{margin-top:16px;font-size:clamp(26px,2.6vw,34px);line-height:1.12}
.mc-prov p{font-size:15px;color:var(--dark2);max-width:520px}
.mc-prov a{display:inline-block;margin-top:16px}
.mc-ix{padding:72px 0 88px;scroll-margin-top:76px}
.mc-ix h2{margin-top:14px;font-size:clamp(28px,3vw,40px);line-height:1.1}
.mc-ix-lead{margin-top:14px;font-size:16px;color:var(--dark2);max-width:680px}
.mc-ix-search{display:flex;align-items:center;gap:16px;margin-top:28px;padding:10px 0;border-top:1px solid var(--dark);border-bottom:1px solid var(--line)}
.mc-ix-search label{font-size:12px;color:var(--muted)}
.mc-ix-search input{flex:1;min-height:44px;border:0;background:transparent;font:inherit;font-size:16px;color:var(--ink)}
.mc-ix-search input:focus-visible{outline:2px solid var(--dark);outline-offset:2px}
.mc-ix-grid{columns:3;column-gap:48px;margin-top:40px}
.mc-ix-fam{break-inside:avoid;margin-bottom:40px}
.mc-ix-fam h3{font-size:16px;line-height:1.3;font-weight:600;letter-spacing:-.01em}
.mc-ix-n{margin-top:4px;font-size:11px;color:var(--muted)}
.mc-ix-fam ul{list-style:none;margin:12px 0 0;padding:0;border-top:1px solid var(--line)}
.mc-ix-fam li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}
.mc-ix-fam li a{text-decoration:none}
.mc-ix-fam li a:hover{text-decoration:underline}
.mc-ix-fam li i{font-style:normal;font-size:11px;color:var(--muted);white-space:nowrap}
.mc-ix-empty{margin-top:24px;font-size:14px;color:var(--muted)}
@media(max-width:820px){
.mc-hero{padding:48px 0 40px}
.mc-top{flex-direction:column}
.mc-lockup{width:min(100%,260px)}
.mc-read-grid,.mc-terms dl,.mc-prov-grid{grid-template-columns:1fr;gap:24px}
.mc-lib{padding:48px 0 56px}
.mc-lib-head{flex-direction:column;align-items:flex-start}
.mc-lib-grid{grid-template-columns:minmax(0,1fr);gap:0;border-top:0}
.mc-fams-nav,.mc-lib-main{min-width:0}
.mc-fams{display:flex;gap:8px;overflow-x:auto;margin:0 -16px;padding:4px 16px 12px;border-bottom:1px solid var(--line);scrollbar-width:none}
.mc-fams li{flex:0 0 auto}
.mc-fam{position:relative;padding:8px 14px;border:1px solid var(--line);white-space:nowrap}
.mc-fam .mc-fl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.mc-fam .mc-fs{display:inline}
.mc-fam[aria-current]{padding-left:14px;box-shadow:none;background:var(--dark);border-color:var(--dark);color:#FFFFFF}
.mc-fam[aria-current] i{color:#C8D0D4}
.mc-js .mc-conds{gap:0 18px;padding-top:6px}
.mc-cond{min-height:40px;font-size:14px}
.mc-ev-row,.mc-fields div{grid-template-columns:1fr;gap:10px}
.mc-prov{padding:48px 0}
.mc-ix{padding:48px 0 64px}
.mc-ix-grid{columns:1}
}
/* KA Origins · Our network (partner map). Rendered from public/assets/partners/partners.json by scripts/website/render-partner-network.js */
.network{padding:88px 0 96px;border-top:1px solid var(--line);scroll-margin-top:76px}
.o-sec+.network{border-top:0}
.network+.o-mc{border-top:1px solid var(--line)}
.network-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:32px;align-items:end;margin-bottom:40px}
.network h2{font-size:clamp(30px,3.2vw,42px);line-height:1.08}
.network-lead{max-width:520px;font-size:17px;line-height:1.55;color:var(--dark2)}
.network-map{position:relative}
.nm-svg{display:block;width:100%;height:auto;overflow:visible}
.nm-pin{cursor:pointer;outline:none}
.nm-hit{fill:transparent}
.nm-dot{fill:var(--dark);stroke:var(--base);stroke-width:1.6}
.nm-count{fill:#FFFFFF;font-size:7px;font-weight:700;text-anchor:middle;pointer-events:none;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.nm-pin:hover .nm-dot,.nm-pin.on .nm-dot{stroke:#BCD7C3;stroke-width:3.2}
.nm-pin:focus-visible .nm-dot{stroke:#BCD7C3;stroke-width:3.2}
.nm-pin:focus-visible .nm-hit{fill:none;stroke:var(--dark);stroke-width:1.2}
.nm-card{position:absolute;z-index:5;width:300px;max-height:340px;overflow:auto;background:#FFFFFF;border:1px solid var(--line);box-shadow:0 10px 28px rgba(44,53,61,.10);padding:6px 14px}
.nm-card[hidden]{display:none}
.nm-close{position:absolute;top:4px;right:4px;width:32px;height:32px;border:0;background:transparent;font:inherit;font-size:20px;line-height:1;color:var(--muted);cursor:pointer}
.nm-close:hover{color:var(--ink)}
.nm-close:focus-visible{outline:2px solid var(--dark);outline-offset:-2px}
.nm-card-list{list-style:none;margin:0;padding:0}
.nm-card-list li{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;padding:10px 26px 10px 0}
.nm-card-list li+li{border-top:1px solid var(--line)}
.np-logo{display:flex;align-items:center;justify-content:center;width:72px;height:44px}
.np-logo img{display:block;max-width:72px;max-height:44px;width:auto;height:auto}
.np-body{display:flex;flex-direction:column;min-width:0}
.np-name{font-size:14px;font-weight:650;line-height:1.3;color:var(--ink)}
.np-place{font-size:12px;line-height:1.4;color:var(--muted)}
.np-role{margin-top:3px;font-size:12px;line-height:1.4;color:var(--dark2)}
.network-list{margin-top:36px;border-top:1px solid var(--line)}
.network-list summary{display:flex;align-items:center;gap:8px;min-height:48px;cursor:pointer;font-size:13px;font-weight:650;letter-spacing:.02em;color:var(--ink);list-style:none}
.network-list summary::-webkit-details-marker{display:none}
.network-list summary::after{content:"+";margin-left:auto;font-weight:400;font-size:18px;color:var(--muted)}
.network-list[open] summary::after{content:"−"}
.network-list summary:focus-visible{outline:2px solid var(--dark);outline-offset:2px}
.nl-count{font-weight:400;color:var(--muted)}
.np-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px;border-top:1px solid var(--line)}
.np-list .np{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);scroll-margin-top:96px}
.np-list .np:target,.np-list .np.on{box-shadow:inset 3px 0 0 #BCD7C3;padding-left:12px}
.np-textonly .np-body{grid-column:2}
@media(max-width:820px){
.network{padding:64px 0 72px}
.network-head{grid-template-columns:1fr;gap:14px;margin-bottom:28px}
.network-lead{font-size:16px}
.network-map{margin:0 -8px}
.nm-dot{stroke-width:2.4}
.js .nm-card{position:relative;left:auto;top:auto;width:auto;max-height:none;margin-top:16px;box-shadow:none}
.nm-dot{r:8px}
.nm-many .nm-dot{r:9.5px}
.nm-count{font-size:11px;transform:translateY(1.6px)}
.np-list{grid-template-columns:1fr}
}
@media(min-width:821px) and (max-width:1100px){.np-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
