
/* MIRCO Public Site Final shell — shared navigation, footer, pricing/legal surfaces */
:root{--shell-bg:rgba(3,9,16,.76);--shell-line:rgba(48,70,94,.68);--shell-card:rgba(7,16,28,.72);--shell-soft:#8297af;--shell-ink:#f3f8ff;--shell-cyan:#5ce4ff;--shell-blue:#4c8dff}
.publicNav{top:8px!important;width:min(1380px,calc(100% - 24px))!important;height:64px!important;padding:0 13px!important;gap:22px!important;border:1px solid var(--shell-line)!important;border-radius:20px!important;background:var(--shell-bg)!important;backdrop-filter:blur(24px)!important;-webkit-backdrop-filter:blur(24px)!important;box-shadow:0 18px 50px rgba(0,0,0,.17)!important}
.publicNav .navlinks{display:flex!important;align-items:center;gap:18px!important;white-space:nowrap!important;font-size:12px!important;font-weight:760!important}
.publicNav .navlinks a{position:relative;padding:8px 0;color:#7890a8;transition:color .2s ease}.publicNav .navlinks a:hover,.publicNav .navlinks a.active{color:var(--ink)}
.publicNav .navlinks a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,var(--blue),var(--cyan));box-shadow:0 0 12px rgba(92,228,255,.55)}
.publicNav .navcta{white-space:nowrap}.publicNav .themeSwitch{margin-left:auto}
.publicNav .mobileMenuPanel{min-width:280px}.publicNav .mobileGroup{padding:8px 11px 4px;color:#4f657b;font-size:9px;letter-spacing:.13em;font-weight:900;text-transform:uppercase}.publicNav .mobileExt:after{content:'↗';font-size:10px;color:#5d738a}
.publicFooter{position:relative;z-index:6;border-top:1px solid #1a2a3b;background:rgba(2,6,11,.84);padding:54px 0 30px}.publicFooter .footerGrid{display:grid;grid-template-columns:1.55fr repeat(4,1fr);gap:34px}.publicFooter .footerBrand p{max-width:390px;color:#6e849b;font-size:12px;line-height:1.75}.publicFooter h4{margin:0 0 12px;font-size:10px;letter-spacing:.14em;color:#5e748a;text-transform:uppercase}.publicFooter a{display:block;margin:9px 0;color:#91a6ba;font-size:12px}.publicFooter a:hover{color:var(--ink)}.publicFooter .footerBottom{display:flex;gap:16px;justify-content:space-between;align-items:center;border-top:1px solid #172737;margin-top:32px;padding-top:20px;color:#53687d;font-size:10px}.publicFooter .footerBottom div:last-child{text-align:right}.publicFooter .tinyPill{display:inline-flex!important;align-items:center;gap:6px;border:1px solid #254058;border-radius:999px;padding:7px 10px!important;color:#72a9c2!important;margin-top:12px!important;width:max-content}.publicFooter .tinyPill:before{content:"";width:6px;height:6px;border-radius:50%;background:#5ce4ff;box-shadow:0 0 10px rgba(92,228,255,.55)}
.siteNotice{position:relative;z-index:7;width:min(1180px,calc(100% - 34px));margin:0 auto 26px;padding:13px 16px;border:1px solid #28445d;border-radius:16px;background:linear-gradient(135deg,rgba(76,141,255,.08),rgba(92,228,255,.035));color:#7590a8;font-size:11px;line-height:1.55}.siteNotice strong{color:#ccefff}.siteNotice a{color:#8eeaff;text-decoration:underline;text-underline-offset:3px}
.publicPage{position:relative;z-index:5;padding:122px 0 70px}.publicWrap{width:min(1180px,calc(100% - 34px));margin:auto}.publicHero{padding:56px 0 46px}.publicKicker{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#62deff;font-weight:900}.publicHero h1{margin:12px 0 0;font-size:clamp(54px,7vw,92px);line-height:.91;letter-spacing:-.06em;max-width:900px}.publicHero .sub{max-width:760px;margin-top:20px;color:#8297af;font-size:18px;line-height:1.7}.publicActions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.publicBtn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:12px 17px;font-size:12px;font-weight:850;border:1px solid #2c4358;background:rgba(5,12,20,.62);color:#e9f4ff}.publicBtn.primary{background:#f3f8ff;color:#07111c;border-color:#f3f8ff}.publicBtn:hover{transform:translateY(-1px)}
.publicSection{padding:52px 0;border-top:1px solid #17283a}.publicSection h2{margin:0;font-size:clamp(36px,5vw,64px);letter-spacing:-.05em;line-height:.97}.publicSection .intro{max-width:760px;color:#7890a8;line-height:1.7}.publicGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px}.publicCard{border:1px solid #1f354a;background:linear-gradient(160deg,rgba(8,18,31,.82),rgba(4,10,18,.74));border-radius:22px;padding:22px;min-height:170px}.publicCard.featured{border-color:#3b6a88;box-shadow:0 0 44px rgba(76,141,255,.06)}.publicCard small{font-size:9px;letter-spacing:.12em;color:#62dcff;font-weight:900}.publicCard h3{font-size:21px;margin:9px 0 8px;letter-spacing:-.025em}.publicCard p{font-size:12px;line-height:1.65;color:#748aa1;margin:0}.publicCard ul{padding-left:18px;color:#7e94aa;font-size:12px;line-height:1.8}.publicCard .price{font-size:38px;font-weight:900;letter-spacing:-.045em;margin:14px 0 3px}.publicCard .price span{font-size:12px;color:#70879e;font-weight:700;letter-spacing:0}.publicCard .fine{font-size:10px;color:#566d82;margin-top:9px}.publicCard .publicBtn{margin-top:18px}
.priceTable{width:100%;border-collapse:collapse;margin-top:24px;border:1px solid #21364b;border-radius:18px;overflow:hidden;background:rgba(6,14,24,.62)}.priceTable th,.priceTable td{text-align:left;padding:14px 15px;border-bottom:1px solid #1c3043;font-size:12px;color:#8197ad}.priceTable th{font-size:9px;letter-spacing:.1em;color:#5edcff;text-transform:uppercase}.priceTable td:first-child{color:#dbe9f6;font-weight:750}.priceTable tr:last-child td{border-bottom:0}.priceNote{margin-top:18px;padding:16px 18px;border:1px solid #2a4358;border-radius:16px;color:#7289a0;font-size:11px;line-height:1.65;background:rgba(8,18,30,.58)}
.legal{max-width:860px}.legal h2{font-size:28px;margin:36px 0 10px}.legal h3{font-size:18px;margin:26px 0 8px}.legal p,.legal li{color:#7f94aa;font-size:13px;line-height:1.75}.legal a{color:#77e6ff}.legal ul{padding-left:21px}
.resourceStrip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:26px}.resourceStrip a{border:1px solid #20364b;border-radius:18px;padding:18px;background:rgba(7,16,28,.64)}.resourceStrip small{display:block;color:#5edcff;font-size:9px;font-weight:900;letter-spacing:.11em}.resourceStrip b{display:block;margin-top:7px;font-size:15px}.resourceStrip span{display:block;color:#6f859b;font-size:11px;line-height:1.5;margin-top:4px}
html[data-theme="light"] .publicNav{background:rgba(242,247,250,.9)!important;border-color:#c7d4dd!important}.publicNav .brandLogo{height:24px}
html[data-theme="light"] .publicFooter{background:#e9f0f4;border-color:#cbd7df}html[data-theme="light"] .publicFooter h4{color:#6a8194}html[data-theme="light"] .publicFooter a{color:#536d82}html[data-theme="light"] .publicFooter .footerBottom{border-color:#cbd7df;color:#718698}html[data-theme="light"] .publicFooter .footerBrand p{color:#5e768a}
html[data-theme="light"] .publicCard,html[data-theme="light"] .resourceStrip a{background:rgba(247,250,252,.72);border-color:#cbd8e1}html[data-theme="light"] .publicCard p,html[data-theme="light"] .publicCard ul,html[data-theme="light"] .publicHero .sub,html[data-theme="light"] .publicSection .intro,html[data-theme="light"] .legal p,html[data-theme="light"] .legal li{color:#5c7488}html[data-theme="light"] .priceTable{background:#f6f9fb;border-color:#cbd8e1}html[data-theme="light"] .priceTable th,html[data-theme="light"] .priceTable td{border-color:#d7e0e7;color:#5f7689}html[data-theme="light"] .priceTable td:first-child{color:#102331}
@media(max-width:1180px){.publicNav .navlinks{display:none!important}.publicNav .mobileMenu{display:block!important}.publicNav .themeSwitch{margin-left:auto}.publicFooter .footerGrid{grid-template-columns:1.5fr repeat(2,1fr)}}
@media(max-width:760px){.publicGrid{grid-template-columns:1fr}.resourceStrip{grid-template-columns:1fr 1fr}.publicFooter .footerGrid{grid-template-columns:1fr 1fr}.publicFooter .footerBrand{grid-column:1/-1}.publicFooter .footerBottom{align-items:flex-start;flex-direction:column}.publicFooter .footerBottom div:last-child{text-align:left}.publicHero h1{font-size:52px}.publicHero .sub{font-size:16px}.priceTable{display:block;overflow-x:auto;white-space:nowrap}}
@media(max-width:520px){.resourceStrip{grid-template-columns:1fr}.publicFooter .footerGrid{grid-template-columns:1fr}.publicNav .themeSwitch{display:none!important}.publicNav .navcta{display:none!important}}


/* ===== MIRCO PUBLIC SITE FINAL V2 — authoritative shell & responsive corrections ===== */
html{overflow-x:clip}
body{overflow-x:clip}
nav.publicNav{
  position:fixed!important;z-index:1000!important;top:10px!important;left:50%!important;right:auto!important;
  transform:translateX(-50%)!important;margin:0!important;
  width:min(1380px,calc(100% - 28px))!important;height:64px!important;min-height:64px!important;
  display:flex!important;align-items:center!important;flex-wrap:nowrap!important;
  padding:0 14px!important;gap:18px!important;
  border:1px solid rgba(48,70,94,.72)!important;border-radius:20px!important;
  background:rgba(3,9,16,.84)!important;backdrop-filter:blur(24px)!important;-webkit-backdrop-filter:blur(24px)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.20)!important;
}
nav.publicNav .brand{display:inline-flex!important;align-items:center!important;flex:0 0 auto!important;margin:0!important}
nav.publicNav .brandLogo{height:25px!important;width:auto!important;display:block}
nav.publicNav .brandLogoLight{display:none!important}
html[data-theme="light"] nav.publicNav .brandLogoDark{display:none!important}
html[data-theme="light"] nav.publicNav .brandLogoLight{display:block!important}
nav.publicNav .navlinks{display:flex!important;align-items:center!important;flex:0 1 auto!important;gap:18px!important;white-space:nowrap!important;margin:0!important;color:#7890a8!important;font-size:12px!important;font-weight:760!important}
nav.publicNav .navlinks a{position:relative;padding:8px 0!important;color:#7890a8!important;line-height:1!important}
nav.publicNav .navlinks a:hover,nav.publicNav .navlinks a.active{color:var(--ink)!important}
nav.publicNav .navlinks a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,var(--blue),var(--cyan));box-shadow:0 0 12px rgba(92,228,255,.55)}
nav.publicNav .themeSwitch{margin-left:auto!important;flex:0 0 auto!important}
nav.publicNav .navcta{flex:0 0 auto!important;white-space:nowrap!important}
.navMore{position:relative;flex:0 0 auto;margin:0}
.navMore>summary{list-style:none;cursor:pointer;color:#7890a8;font-size:12px;font-weight:760;padding:8px 2px;user-select:none}
.navMore>summary::-webkit-details-marker{display:none}.navMore>summary:after{content:"⌄";font-size:10px;margin-left:6px;color:#5e768d}
.navMore[open]>summary,.navMore>summary:hover{color:var(--ink)}
.navMorePanel{position:absolute;right:0;top:calc(100% + 14px);width:220px;padding:8px;border:1px solid #29415a;border-radius:17px;background:rgba(3,9,16,.98);box-shadow:0 26px 70px rgba(0,0,0,.42);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.navMorePanel a{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:10px 11px!important;margin:0!important;border-radius:10px;color:#8398ae!important;font-size:12px!important;font-weight:760!important}
.navMorePanel a:hover,.navMorePanel a.active{background:rgba(255,255,255,.055);color:var(--ink)!important}.navMorePanel a.external:after{content:"↗";font-size:10px;color:#5e768d}
nav.publicNav .mobileMenu{display:none!important;position:relative!important;margin-left:0!important;flex:0 0 auto!important}
.mobileMenuPanel{z-index:1002!important}
html[data-theme="light"] nav.publicNav{background:rgba(242,247,250,.92)!important;border-color:#c7d4dd!important;box-shadow:0 18px 50px rgba(54,77,95,.10)!important}
html[data-theme="light"] .navMorePanel{background:rgba(246,249,251,.99);border-color:#c7d4dd;box-shadow:0 24px 70px rgba(54,77,95,.16)}
html[data-theme="light"] .navMorePanel a{color:#5e7489!important}html[data-theme="light"] .navMorePanel a:hover,html[data-theme="light"] .navMorePanel a.active{background:rgba(16,35,49,.055);color:#102331!important}

/* New public/legal pages must not depend on an older page's nav CSS. */
.publicPage{position:relative;z-index:5;padding:96px 0 70px!important}
.publicHero{padding:54px 0 46px!important}
.publicHero h1{max-width:980px!important}

/* Launcher: its original 1180px wrapper made the three-column loom mathematically overflow. */
body.page-launcher .heroGrid{width:min(1460px,calc(100% - 48px))!important;max-width:none!important;grid-template-columns:minmax(350px,.72fr) minmax(760px,1.5fr)!important;gap:48px!important;margin-left:auto!important;margin-right:auto!important}
body.page-launcher .loom{min-width:0!important}
body.page-launcher .loomArea{left:210px!important;right:22px!important;grid-template-columns:100px minmax(250px,1fr) 190px!important;column-gap:22px!important;padding-right:0!important}
body.page-launcher .manifest{max-width:300px!important}
body.page-launcher .ecoOutcome{max-width:190px!important;padding-left:14px!important}
body.page-launcher .ecoOutcome .inherit{gap:6px!important}
body.page-launcher .ecoOutcome .inherit span{max-width:78px!important}

/* Home: visible canvas remains interactive; keep shell from obscuring hero controls. */
body.page-index .hero{padding-top:118px!important}
body.page-index #world{display:block!important;visibility:visible!important;opacity:1!important}

@media(max-width:1260px){
  nav.publicNav .navlinks{display:none!important}.navMore{display:none!important}nav.publicNav .mobileMenu{display:block!important}
  body.page-launcher .heroGrid{width:min(1180px,calc(100% - 34px))!important;grid-template-columns:1fr!important;gap:38px!important}
  body.page-launcher .loom{min-height:720px!important}
}
@media(max-width:760px){
  nav.publicNav{top:6px!important;width:calc(100% - 12px)!important;height:58px!important;min-height:58px!important;padding:0 9px!important;gap:8px!important;border-radius:17px!important}
  nav.publicNav .brandLogo{height:22px!important}
  nav.publicNav .themeSwitch{display:none!important}nav.publicNav .navcta{display:none!important}nav.publicNav .mobileMenu{display:block!important;margin-left:auto!important}
  .publicPage{padding-top:78px!important}.publicHero{padding-top:42px!important}
  body.page-launcher .heroGrid{width:min(100% - 24px,1180px)!important}
  body.page-launcher .loom{min-height:auto!important}
}
@media(max-width:520px){
  .publicHero h1{font-size:46px!important}
}
.navMore:has(.navMorePanel a.active)>summary{color:var(--ink)!important}
@media(max-width:650px){
  body.page-launcher .manifest{max-width:none!important;width:100%!important}
  body.page-launcher .ecoOutcome{max-width:none!important;width:100%!important;padding-left:0!important}
  body.page-launcher .loomArea{left:auto!important;right:auto!important;padding-right:0!important;width:100%!important}
}
