:root{
  --navy:#072643; --deep:#041628; --navy2:#0C3861;
  --gold:#C6993E; --gold-d:#A97F2C; --gold2:#E8CE8E;
  --cream:#F6F0E3; --paper:#FBF8F2; --white:#FFFFFF;
  --ink:#16222E; --text:#34424F; --muted:#5E6B78; --line:#E6DDCB; --line2:#D9CFBB;
  --green:#2E7D4F; --green-bg:#EAF4EE; --amber:#A8691A; --amber-bg:#FBF1E0; --red:#A33D3D; --red-bg:#F8E9E7;
  --serif:"Playfair Display", Georgia, "Times New Roman", serif;
  --sans:"Nunito Sans", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --r:14px;
  color-scheme: light;
}
*{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{ margin:0; background:var(--paper); color:var(--text); font-family:var(--sans); font-size:16px; line-height:1.55; -webkit-font-smoothing:antialiased; }
img{ max-width:100%; display:block; }
a{ color:var(--navy); text-underline-offset:3px; }
button{ font:inherit; cursor:pointer; }
[hidden]{ display:none !important; }
.wrap{ width:100%; max-width:1040px; margin:0 auto; padding-inline:20px; }
.wrap.narrow{ max-width:600px; }
.ic{ width:1em; height:1em; flex:none; stroke:currentColor; fill:none; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }

/* Header */
.top{ background:var(--navy); border-bottom:2px solid var(--gold); padding-top:env(safe-area-inset-top,0px); position:relative; z-index:5; }
.top-in{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding-block:10px; }
.brand img{ height:46px; width:auto; }
.top-tag{ font-size:11.5px; letter-spacing:.18em; text-transform:uppercase; font-weight:800; color:var(--gold2); text-align:right; }

/* Buttons */
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:10px; border:0; border-radius:12px; padding:15px 22px; font-weight:800; font-size:16px; letter-spacing:.01em; text-decoration:none; transition:transform .15s ease, box-shadow .15s ease, background .15s ease; -webkit-tap-highlight-color:transparent; }
.btn .ic{ width:20px; height:20px; }
.btn.big{ width:100%; padding:18px 22px; font-size:17px; }
.btn.gold{ background:linear-gradient(135deg,#DDB560,#C6993E 55%,#B8872F); color:var(--deep); box-shadow:0 10px 24px rgba(198,153,62,.35); }
.btn.gold:hover{ transform:translateY(-1px); box-shadow:0 14px 30px rgba(198,153,62,.45); }
.btn.navy{ background:var(--navy); color:#fff; box-shadow:0 10px 24px rgba(7,38,67,.22); }
.btn.navy:hover{ background:var(--navy2); }
.btn:disabled{ background:#E7E2D7; color:#9A9384; box-shadow:none; cursor:not-allowed; transform:none; }
.btn:focus-visible, .opt:focus-visible, .back:focus-visible, a:focus-visible{ outline:3px solid var(--gold2); outline-offset:3px; }
.link{ background:none; border:0; color:var(--navy); font-weight:700; text-decoration:underline; text-underline-offset:3px; padding:10px; }

/* Landing */
.hero{ background:radial-gradient(120% 90% at 85% 0%, #0E3F6C 0%, var(--navy) 45%, var(--deep) 100%); color:#fff; position:relative; overflow:hidden; padding-block:34px 88px; }
.arc{ position:absolute; width:620px; height:620px; right:-330px; top:-300px; border:1.5px solid rgba(232,206,142,.28); border-radius:50%; }
.arc::after{ content:""; position:absolute; inset:60px; border:1px solid rgba(232,206,142,.14); border-radius:50%; }
.hero-in{ position:relative; }
.eyebrow{ display:inline-block; font-size:12px; letter-spacing:.2em; text-transform:uppercase; font-weight:800; color:var(--gold2); }
.hero h1{ font-family:var(--serif); font-weight:700; font-size:clamp(31px, 8.2vw, 50px); line-height:1.1; margin:12px 0 14px; color:#fff; text-wrap:balance; letter-spacing:-.005em; }
.hero h1 em{ color:var(--gold2); font-style:italic; }
.hero .lead{ font-size:17px; color:#C9D6E2; margin:0 0 20px; max-width:34em; }
.checks{ list-style:none; padding:0; margin:0 0 26px; display:grid; gap:11px; }
.checks li{ display:flex; gap:12px; align-items:flex-start; font-size:15.5px; color:#E6EDF4; line-height:1.4; }
.checks .ic{ width:22px; height:22px; padding:4px; border-radius:50%; background:rgba(232,206,142,.16); color:var(--gold2); stroke-width:3; margin-top:1px; }
.micro{ text-align:center; font-size:13px; color:#9FB3C8; margin:12px 0 0; }

.stats{ display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:18px; overflow:hidden; margin-top:-56px; position:relative; box-shadow:0 18px 40px rgba(7,38,67,.12); }
.stats div{ background:#fff; padding:18px 12px; text-align:center; }
.stats b{ display:block; font-family:var(--serif); font-size:28px; color:var(--navy); line-height:1.1; font-variant-numeric:lining-nums tabular-nums; }
.stats span{ font-size:12.5px; color:var(--muted); }

.author{ display:flex; gap:16px; align-items:flex-start; margin:28px 0 8px; padding:20px; background:#fff; border:1px solid var(--line); border-radius:18px; }
.author img{ width:84px; height:84px; border-radius:50%; object-fit:cover; object-position:50% 20%; box-shadow:0 0 0 3px #fff, 0 0 0 5px var(--gold); flex:none; }
.author .k, .k{ display:block; font-size:11.5px; letter-spacing:.18em; text-transform:uppercase; font-weight:800; color:var(--gold-d); }
.author b{ display:block; font-family:var(--serif); font-size:21px; color:var(--navy); margin:2px 0 4px; }
.author p{ margin:0; font-size:14.5px; color:var(--text); }

.how{ margin:30px 0 10px; }
.how h2, .sec h2{ font-family:var(--serif); font-size:26px; color:var(--navy); margin:0 0 14px; line-height:1.2; text-wrap:balance; }
.how ol{ list-style:none; counter-reset:s; padding:0; margin:0 0 22px; display:grid; gap:12px; }
.how li{ counter-increment:s; position:relative; padding:16px 16px 16px 62px; background:#fff; border:1px solid var(--line); border-radius:14px; }
.how li::before{ content:counter(s); position:absolute; left:16px; top:16px; width:32px; height:32px; border-radius:50%; background:var(--navy); color:var(--gold2); display:grid; place-items:center; font-weight:800; font-family:var(--serif); }
.how li b{ display:block; color:var(--navy); font-size:16px; }
.how li span{ font-size:14.5px; color:var(--muted); }
.pf{ text-align:center; font-size:14.5px; color:var(--muted); margin:18px 0 34px; }

/* Quiz */
.quiz{ padding-block:18px 60px; min-height:calc(100vh - 70px); min-height:calc(100dvh - 70px); }
.qtop{ display:flex; align-items:center; justify-content:space-between; }
.back{ width:44px; height:44px; margin-left:-10px; border:0; background:none; color:var(--navy); display:grid; place-items:center; border-radius:10px; }
.back .ic{ width:22px; height:22px; }
.qcount, .qmeta{ font-variant-numeric:tabular-nums; }
.qcount{ font-size:13px; letter-spacing:.14em; color:var(--muted); font-weight:700; }
.qmeta{ display:flex; justify-content:space-between; font-size:11.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--muted); font-weight:700; margin-top:6px; }
.bar{ height:6px; background:#EAE3D4; border-radius:99px; overflow:hidden; margin-top:8px; }
.bar i{ display:block; height:100%; width:11%; background:linear-gradient(90deg,var(--gold),#DDB560); border-radius:99px; transition:width .35s ease; }
.qbody{ padding-top:36px; }
.qbody.in{ animation:qin .28s ease both; }
@keyframes qin{ from{ opacity:.35; transform:translateY(10px); } to{ opacity:1; transform:none; } }
.qbody h2{ font-family:var(--serif); font-size:clamp(26px, 6.6vw, 34px); line-height:1.18; color:var(--ink); margin:0 0 8px; text-wrap:balance; }
.qbody .sub{ font-size:16px; color:var(--muted); margin:0 0 22px; }
.opts{ display:grid; gap:10px; }
.opt{ width:100%; text-align:left; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:16px 18px; min-height:58px; border:1.5px solid var(--line); background:#fff; border-radius:var(--r); color:var(--ink); font-size:16px; font-weight:600; line-height:1.3; transition:border-color .15s, background .15s, box-shadow .15s; -webkit-tap-highlight-color:transparent; }
.opt:hover{ border-color:var(--line2); box-shadow:0 6px 16px rgba(7,38,67,.06); }
.opt .dot{ width:22px; height:22px; border-radius:50%; border:1.8px solid #B9B2A3; flex:none; display:grid; place-items:center; }
.opt .dot .ic{ width:14px; height:14px; color:#fff; stroke-width:3.4; opacity:0; }
.opt[aria-checked="true"]{ border-color:var(--navy); background:#F3F6FA; box-shadow:0 0 0 1px var(--navy) inset; }
.opt[aria-checked="true"] .dot{ background:var(--navy); border-color:var(--navy); }
.opt[aria-checked="true"] .dot .ic{ opacity:1; }
.field label{ display:block; font-weight:800; font-size:14px; color:var(--ink); margin-bottom:8px; }
.field input{ width:100%; height:58px; border:1.5px solid var(--line2); border-radius:var(--r); background:#fff; padding:0 16px; font:inherit; font-size:18px; color:var(--ink); transition:border-color .15s, box-shadow .15s; }
.field input::placeholder{ color:#A7A193; }
.field input:focus{ outline:0; border-color:var(--navy); box-shadow:0 0 0 4px rgba(198,153,62,.25); }
.field input[aria-invalid="true"]{ border-color:var(--red); }
.err{ color:var(--red); font-size:14px; font-weight:700; margin:8px 0 0; min-height:1em; }
.form .btn{ margin-top:16px; }
.consent{ font-size:12.5px; color:var(--muted); margin:12px 0 0; text-align:center; }
.safe{ display:flex; gap:10px; align-items:flex-start; margin-top:16px; padding:12px 14px; background:var(--green-bg); border:1px solid #CFE5D8; border-radius:12px; font-size:13px; color:#23533A; line-height:1.45; }
.safe .ic{ width:18px; height:18px; color:var(--green); margin-top:1px; }
.alt-link{ display:block; margin:10px auto 0; font-size:13.5px; }

/* Análise */
.analise{ padding-block:70px 90px; text-align:center; min-height:calc(100vh - 70px); }
.spinner{ width:56px; height:56px; margin:0 auto 22px; border-radius:50%; border:4px solid #EAE3D4; border-top-color:var(--gold); animation:spin .9s linear infinite; }
@keyframes spin{ to{ transform:rotate(360deg); } }
.analise h2{ font-family:var(--serif); color:var(--navy); font-size:28px; margin:0 0 22px; }
.alist{ list-style:none; padding:0; margin:0 auto; display:grid; gap:12px; text-align:left; max-width:440px; }
.alist li{ display:flex; gap:12px; align-items:center; padding:14px 16px; background:#fff; border:1px solid var(--line); border-radius:12px; color:var(--muted); opacity:.45; transition:opacity .3s, color .3s; font-size:15px; }
.alist li .ic{ width:24px; height:24px; padding:5px; border-radius:50%; background:#EAE3D4; color:#fff; stroke-width:3.4; transition:background .3s; }
.alist li.on{ opacity:1; color:var(--ink); }
.alist li.on .ic{ background:var(--green); }

/* Modal */
.modal{ position:fixed; inset:0; z-index:50; display:flex; align-items:flex-end; justify-content:center; }
.modal-bg{ position:absolute; inset:0; background:rgba(4,22,40,.55); backdrop-filter:blur(2px); animation:fade .2s ease; }
@keyframes fade{ from{ opacity:0; } }
.sheet{ position:relative; width:100%; max-width:520px; max-height:92vh; max-height:92dvh; display:flex; flex-direction:column; background:#fff; border-radius:22px 22px 0 0; box-shadow:0 -10px 40px rgba(4,22,40,.3); animation:up .28s cubic-bezier(.2,.8,.2,1); padding-bottom:env(safe-area-inset-bottom,0px); }
@keyframes up{ from{ transform:translateY(40px); opacity:.4; } }
.sheet-head{ display:flex; align-items:center; justify-content:space-between; padding:18px 20px 6px; }
.x{ width:40px; height:40px; border:0; background:none; color:var(--muted); display:grid; place-items:center; margin-right:-8px; }
.x .ic{ width:20px; height:20px; }
.sheet-body{ padding:6px 20px 12px; overflow:auto; }
.sheet-foot{ padding:12px 20px 20px; border-top:1px solid var(--line); display:grid; gap:4px; }
.m-cnpj{ font-size:24px; font-weight:800; color:var(--ink); font-variant-numeric:tabular-nums; letter-spacing:.01em; margin:2px 0 8px; }
.chip{ display:inline-flex; align-items:center; gap:7px; font-size:12px; letter-spacing:.14em; text-transform:uppercase; font-weight:800; padding:5px 11px; border-radius:99px; }
.chip::before{ content:""; width:7px; height:7px; border-radius:50%; background:currentColor; }
.chip.ok{ color:var(--green); background:var(--green-bg); }
.chip.bad{ color:var(--red); background:var(--red-bg); }
.mgrid{ display:grid; grid-template-columns:1fr 1fr; gap:14px 18px; margin:16px 0 14px; }
.mgrid div.full{ grid-column:1/-1; }
.mgrid small{ display:block; font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--muted); font-weight:800; }
.mgrid b{ display:block; font-size:15.5px; color:var(--ink); line-height:1.35; margin-top:2px; }
.note{ display:flex; gap:10px; padding:12px 14px; background:#F3F6FA; border:1px solid #DCE5EF; border-radius:12px; font-size:13.5px; color:#2F4A63; line-height:1.45; }
.note .ic{ width:18px; height:18px; color:var(--navy); margin-top:1px; }
.note.bad{ background:var(--red-bg); border-color:#EBCFCB; color:#6E2A2A; }
.note.bad .ic{ color:var(--red); }

/* Resultado */
.rhead{ background:radial-gradient(120% 90% at 85% 0%, #0E3F6C 0%, var(--navy) 45%, var(--deep) 100%); color:#fff; padding-block:30px 34px; position:relative; overflow:hidden; }
.rhead .badge{ display:inline-flex; align-items:center; gap:8px; font-size:11.5px; letter-spacing:.18em; text-transform:uppercase; font-weight:800; color:var(--gold2); border:1px solid rgba(232,206,142,.4); border-radius:99px; padding:6px 12px; }
.rhead .badge::before{ content:""; width:7px; height:7px; border-radius:50%; background:#7CC495; }
.rhead .emp{ margin:14px 0 0; font-size:14px; color:#AFC0D2; }
.rhead .emp b{ color:#fff; font-weight:700; }
.rhead h1{ font-family:var(--serif); font-weight:700; font-size:clamp(27px, 7vw, 42px); line-height:1.15; margin:10px 0 12px; text-wrap:balance; }
.rhead h1 .g{ color:var(--gold2); white-space:nowrap; }
.rhead h1 .r{ color:#F0A89C; }
.rhead p{ color:#C9D6E2; margin:0; font-size:16px; }
.rhead .ref{ font-size:13px; color:#8FA5BC; margin-top:12px; }
.bridge{ margin-top:16px; display:flex; gap:10px; align-items:flex-start; padding:12px 14px; border-radius:12px; background:rgba(163,61,61,.2); border:1px solid rgba(240,168,156,.35); color:#FBE3DF; font-size:14.5px; }
.bridge .ic{ width:20px; height:20px; color:#F0A89C; margin-top:1px; }

.sec{ padding-block:30px 6px; }
.sec > .k{ margin-bottom:6px; }
.card{ background:#fff; border:1px solid var(--line); border-radius:18px; padding:20px; box-shadow:0 10px 26px rgba(7,38,67,.06); }

.gauge-top{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
.gauge-top b{ font-family:var(--serif); font-size:40px; line-height:1; color:var(--navy); font-variant-numeric:lining-nums tabular-nums; }
.gauge-top b small{ font-family:var(--sans); font-size:15px; color:var(--muted); font-weight:700; }
.lvl{ font-size:12.5px; letter-spacing:.14em; text-transform:uppercase; font-weight:800; padding:6px 12px; border-radius:99px; }
.lvl.baixa{ color:var(--red); background:var(--red-bg); }
.lvl.media{ color:var(--amber); background:var(--amber-bg); }
.lvl.alta{ color:var(--green); background:var(--green-bg); }
.gauge{ position:relative; height:12px; border-radius:99px; margin:18px 0 8px; background:linear-gradient(90deg,#B8483A 0%,#D08A35 45%,#C9B03E 62%,#3E9460 100%); }
.gauge i{ position:absolute; top:50%; width:22px; height:22px; margin-left:-11px; transform:translateY(-50%); border-radius:50%; background:#fff; border:4px solid var(--navy); box-shadow:0 4px 10px rgba(7,38,67,.3); }
.gauge-scale{ display:flex; justify-content:space-between; font-size:12px; color:var(--muted); }
.gauge-note{ font-size:13.5px; color:var(--muted); margin:14px 0 0; }

.facts{ display:grid; gap:10px; }
.fact{ display:flex; gap:14px; align-items:flex-start; padding:15px 16px; border-radius:14px; border:1px solid var(--line); background:#fff; }
.fact .fi{ width:34px; height:34px; border-radius:50%; display:grid; place-items:center; flex:none; }
.fact .fi .ic{ width:18px; height:18px; stroke-width:2.6; }
.fact.critico .fi{ background:var(--red-bg); color:var(--red); }
.fact.atencao .fi{ background:var(--amber-bg); color:var(--amber); }
.fact.ok .fi{ background:var(--green-bg); color:var(--green); }
.fact b{ display:block; color:var(--ink); font-size:15.5px; line-height:1.3; }
.fact span{ display:block; font-size:14px; color:var(--muted); margin-top:3px; line-height:1.45; }
.fact .tag{ display:inline-block; font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; font-weight:800; margin-bottom:3px; }
.fact.critico .tag{ color:var(--red); } .fact.atencao .tag{ color:var(--amber); } .fact.ok .tag{ color:var(--green); }

.lines{ display:grid; gap:10px; }
.line{ padding:16px 18px; border-radius:14px; background:#fff; border:1px solid var(--line); border-left:4px solid var(--gold); }
.line .lt{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.line b{ font-family:var(--serif); font-size:19px; color:var(--navy); }
.line em{ font-style:normal; font-size:11px; letter-spacing:.14em; text-transform:uppercase; font-weight:800; color:var(--gold-d); background:var(--cream); padding:4px 9px; border-radius:99px; }
.line p{ margin:6px 0 0; font-size:14.5px; color:var(--text); }
.src{ font-size:12.5px; color:var(--muted); margin:10px 2px 0; }

.locked{ padding:6px 0; }
.lk{ display:flex; align-items:center; gap:12px; padding:13px 2px; border-bottom:1px solid var(--line); font-size:15px; color:var(--ink); }
.lk:last-child{ border-bottom:0; }
.lk .n{ font-size:12px; color:var(--gold-d); font-weight:800; width:22px; font-variant-numeric:tabular-nums; flex:none; }
.lk .t{ flex:1; line-height:1.35; }
.lk .blur{ filter:blur(5px); color:var(--navy); font-weight:800; user-select:none; font-variant-numeric:tabular-nums; flex:none; }
.lk .ic{ width:18px; height:18px; color:var(--muted); flex:none; }

.why{ display:grid; gap:10px; }
.why div{ display:flex; gap:12px; align-items:flex-start; font-size:15px; color:var(--text); }
.why .ic{ width:22px; height:22px; color:var(--gold-d); margin-top:1px; }

.deps{ display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:8px; -webkit-overflow-scrolling:touch; }
.deps img{ height:360px; width:auto; max-width:none; border-radius:14px; border:1px solid var(--line); scroll-snap-align:start; box-shadow:0 8px 20px rgba(7,38,67,.08); }

.offer{ background:linear-gradient(160deg,var(--navy2),var(--navy) 55%,var(--deep)); color:#fff; border-radius:22px; padding:26px 22px 22px; box-shadow:0 24px 60px rgba(7,38,67,.3); position:relative; overflow:hidden; }
.offer .k{ color:var(--gold2); }
.offer h3{ font-family:var(--serif); font-size:25px; line-height:1.2; margin:8px 0 6px; text-wrap:balance; }
.price{ font-family:var(--serif); color:var(--gold2); font-size:68px; line-height:1; margin:14px 0 4px; font-variant-numeric:lining-nums; }
.price small{ font-size:26px; vertical-align:top; position:relative; top:10px; margin-right:4px; }
.once{ font-size:12.5px; letter-spacing:.16em; text-transform:uppercase; color:#AFC0D2; font-weight:800; margin:0 0 16px; }
.offer ul{ list-style:none; padding:16px 0 0; margin:0 0 20px; border-top:1px solid rgba(232,206,142,.25); display:grid; gap:10px; }
.offer li{ display:flex; gap:10px; font-size:15px; color:#DCE5EE; line-height:1.4; }
.offer li .ic{ width:20px; height:20px; color:#7CC495; stroke-width:3; margin-top:1px; }
.offer .link{ color:var(--gold2); display:block; margin:10px auto 0; }
.offer .fine{ font-size:12.5px; color:#8FA5BC; margin:12px 0 0; text-align:center; }

.redo{ text-align:center; margin:26px 0 10px; }
.redo button{ color:var(--muted); font-weight:600; font-size:14px; }

/* Barra fixa */
.sticky{ position:fixed; left:0; right:0; bottom:0; z-index:30; background:rgba(4,22,40,.97); border-top:1px solid rgba(232,206,142,.35); padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px)); animation:up .25s ease; }
.sticky-in{ max-width:600px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.sticky small{ display:block; font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:#AFC0D2; font-weight:800; }
.sticky b{ color:var(--gold2); font-family:var(--serif); font-size:22px; }
.sticky .btn{ padding:13px 20px; }

/* Rodapé */
.foot{ background:var(--deep); color:#9FB3C8; padding-block:30px calc(34px + env(safe-area-inset-bottom,0px)); font-size:13.5px; text-align:center; }
.foot img{ height:44px; width:auto; margin:0 auto 12px; opacity:.9; }
.foot p{ margin:6px 0; }
.foot a{ color:var(--gold2); }
.foot .disc{ font-size:12px; color:#7F93A8; max-width:560px; margin:12px auto 0; }
body.has-sticky .foot{ padding-bottom:calc(110px + env(safe-area-inset-bottom,0px)); }

@media (min-width:720px){
  body{ font-size:17px; }
  .brand img{ height:52px; }
  .hero{ padding-block:60px 110px; }
  .hero .lead{ font-size:19px; }
  .checks li{ font-size:17px; }
  .btn.big{ width:auto; min-width:340px; }
  .hero .btn.big, .how .btn.big{ display:flex; margin-inline:auto; }
  .stats{ grid-template-columns:repeat(4,1fr); max-width:860px; margin-inline:auto; }
  .stats b{ font-size:34px; }
  .author, .how, .pf{ max-width:600px; margin-inline:auto; }
  .modal{ align-items:center; }
  .sheet{ border-radius:22px; }
  .offer{ padding:34px 34px 28px; }
  .offer .btn.big{ width:100%; }
}
@media (prefers-reduced-motion:reduce){
  *{ animation:none !important; transition:none !important; }
}

.nw{ white-space:nowrap; }

/* Oferta: mockup, preço e adicionais */
.mock{ margin:18px 0 8px; background:#FBF8F2; border-radius:14px; overflow:hidden; color:var(--ink); box-shadow:0 12px 30px rgba(0,0,0,.25); }
.mk-h{ display:flex; justify-content:space-between; gap:8px; background:var(--deep); color:#fff; font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; font-weight:800; padding:9px 12px; }
.mk-b{ padding:12px; display:grid; gap:10px; }
.mk-kpis{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.mk-kpis div{ background:#fff; border:1px solid #EEE4CF; border-top:3px solid; border-radius:8px; padding:8px; }
.mk-kpis .kr{ border-top-color:#B24B2C; } .mk-kpis .kg{ border-top-color:#2E7D4F; } .mk-kpis .kn{ border-top-color:#0C3861; }
.mk-kpis b{ display:block; font-size:15px; color:var(--navy); }
.mk-kpis small{ display:block; font-size:10px; color:var(--muted); line-height:1.25; margin-top:2px; }
.mk-rt{ display:grid; grid-template-columns:86px 1fr; gap:10px; align-items:center; background:#fff; border:1px solid #EEE4CF; border-radius:8px; padding:8px; }
.mk-big{ text-align:center; }
.mk-big small{ display:block; font-size:9.5px; letter-spacing:.14em; text-transform:uppercase; font-weight:800; color:var(--muted); }
.mk-big b{ display:block; font-family:var(--serif); font-size:38px; color:#C9A24F; line-height:1.1; }
.mk-rt ul{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,1fr); gap:4px 8px; }
.mk-rt li{ display:flex; align-items:center; gap:5px; font-size:10.5px; font-weight:700; color:var(--text); }
.mk-rt li i{ width:9px; height:9px; border-radius:2px; flex:none; }
.mk-rows{ background:#fff; border:1px solid #EEE4CF; border-radius:8px; }
.mk-rows div{ display:flex; justify-content:space-between; gap:10px; padding:7px 10px; font-size:12px; border-bottom:1px solid #F1EADB; }
.mk-rows div:last-child{ border-bottom:0; }
.mk-rows span{ color:var(--text); font-weight:700; }
.mk-rows em{ font-style:normal; font-weight:800; color:var(--green); }
.bl{ filter:blur(4.5px); user-select:none; }
.mock figcaption{ display:flex; align-items:center; justify-content:center; gap:6px; font-size:11.5px; letter-spacing:.08em; text-transform:uppercase; font-weight:800; color:#fff; background:var(--navy); padding:8px; }
.mock figcaption .ic{ width:13px; height:13px; color:var(--gold2); }
.de{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:14px; }
.de s{ color:#AFC0D2; font-size:17px; font-weight:700; }
.save{ font-size:12.5px; font-weight:800; color:#0F3D25; background:#8FD3A8; padding:4px 10px; border-radius:99px; }
.price .cents{ font-size:28px; color:#C9D6E2; margin-left:2px; }
.de + .price{ margin-top:6px; }
.bumps{ display:grid; gap:12px; margin:0 0 18px; }
.bump{ display:block; border:1.5px dashed #C9A24F; border-radius:14px; overflow:hidden; background:#FFFBF1; color:var(--ink); cursor:pointer; transition:box-shadow .15s, border-color .15s; }
.bump.on{ border-style:solid; border-color:#E8CE8E; box-shadow:0 0 0 3px rgba(232,206,142,.35); }
.bump-h{ display:block; text-align:center; background:#F7EBC9; color:#7A5A12; font-weight:800; font-size:13.5px; letter-spacing:.06em; text-transform:uppercase; padding:9px 10px; border-bottom:1px dashed #C9A24F; }
.bump-b{ display:block; padding:12px 16px 4px; }
.bump-b b{ display:block; font-size:16px; color:var(--navy); }
.bump-b span{ display:block; font-size:13.5px; color:var(--muted); margin-top:3px; line-height:1.4; }
.bump-b strong{ display:block; font-size:19px; color:var(--green); margin-top:8px; font-variant-numeric:tabular-nums; }
.bump-c{ display:flex; align-items:center; gap:10px; margin:10px 12px 12px; padding:10px 12px; background:#F7EBC9; border-radius:10px; font-weight:800; font-size:14.5px; color:var(--ink); }
.bump-c input{ width:22px; height:22px; accent-color:var(--navy); flex:none; margin:0; }
.total{ display:flex; align-items:baseline; justify-content:space-between; gap:10px; padding:14px 2px; margin-bottom:14px; border-top:1px solid rgba(232,206,142,.25); border-bottom:1px solid rgba(232,206,142,.25); }
.total span{ font-size:13px; letter-spacing:.14em; text-transform:uppercase; color:#AFC0D2; font-weight:800; }
.total b{ font-family:var(--serif); font-size:28px; color:#fff; font-variant-numeric:lining-nums tabular-nums; }
