/*
Theme Name: Ember Services
Theme URI: https://www.emberservices.net/
Author: Ember Services
Description: Ember Services — Payments, Loyalty, E-Commerce. Rebuild of emberservices.net with offering pages for Ember Plus, Media Growth, EmberPay Cash App checkout and peptide merchant processing. Activating the theme creates every page, the menu and sets the homepage automatically.
Version: 1.2.1
Requires at least: 6.0
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: ember
*/

:root{
  --ember:#f26b1d;
  --ember-dark:#d4540b;
  --ember-soft:#fff1e8;
  --ink:#16181d;
  --ink-2:#3c414b;
  --muted:#6b7280;
  --line:#e7e2dc;
  --paper:#ffffff;
  --sand:#faf7f3;
  --night:#0f1218;
  --night-2:#171b23;
  --radius:14px;
  --wrap:1180px;
  --shadow:0 18px 40px -22px rgba(22,24,29,.35);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink-2);font:16px/1.65 "Open Sans",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}
img,video{max-width:100%;height:auto;display:block}
a{color:var(--ember-dark);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{font-family:"Montserrat",system-ui,sans-serif;color:var(--ink);line-height:1.15;margin:0 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:800}
h2{font-size:clamp(1.7rem,3.4vw,2.5rem);font-weight:800}
h3{font-size:1.2rem;font-weight:700}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:76px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font:800 1.45rem/1 "Montserrat",sans-serif;letter-spacing:.06em}
.brand:hover{text-decoration:none}
.brand svg{width:30px;height:36px}
.brand .ember-flame{width:auto;height:40px;display:block}
.brand small{display:block;font:600 .58rem/1 "Montserrat",sans-serif;letter-spacing:.22em;color:var(--muted);margin-top:4px}
.custom-logo{max-height:46px;width:auto}
.nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:10px;padding:8px 11px;cursor:pointer}
.nav-toggle span{display:block;width:20px;height:2px;background:var(--ink);margin:4px 0}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:4px}
.main-nav li{position:relative}
.main-nav a{display:block;padding:10px 13px;color:var(--ink);font:600 .82rem/1 "Montserrat",sans-serif;text-transform:uppercase;letter-spacing:.06em;border-radius:8px}
.main-nav a:hover{color:var(--ember-dark);text-decoration:none;background:var(--ember-soft)}
.main-nav .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:260px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:8px;flex-direction:column;align-items:stretch}
.main-nav li:hover>.sub-menu,.main-nav li:focus-within>.sub-menu{display:flex}
.main-nav .sub-menu a{text-transform:none;letter-spacing:0;font-size:.92rem;padding:11px 12px}
.main-nav .menu-item-has-children>a::after{content:"";display:inline-block;margin-left:6px;border:4px solid transparent;border-top-color:currentColor;transform:translateY(2px)}
.main-nav .nav-cta>a{background:var(--ember);color:#fff;padding:12px 18px}
.main-nav .nav-cta>a:hover{background:var(--ember-dark);color:#fff}

/* ---------- buttons ---------- */
.btn{display:inline-block;background:var(--ember);color:#fff;font:700 .9rem/1 "Montserrat",sans-serif;text-transform:uppercase;letter-spacing:.08em;padding:16px 28px;border-radius:999px;border:0;cursor:pointer;transition:background .2s,transform .2s}
.btn:hover{background:var(--ember-dark);color:#fff;text-decoration:none;transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink)}
.btn-ghost:hover{background:var(--ink);color:#fff}
.page-hero .btn-ghost,.night .btn-ghost,.on-dark .btn-ghost{color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.7)}
.page-hero .btn-ghost:hover,.night .btn-ghost:hover,.on-dark .btn-ghost:hover{background:#fff;color:var(--ink)}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}

/* ---------- sections ---------- */
.section{padding:90px 0}
.section.tight{padding:60px 0}
.section.sand{background:var(--sand)}
.section.night,.on-dark{background:var(--night);color:#c9cdd6}
.on-dark h1,.on-dark h2,.on-dark h3,.on-dark h4,.night h1,.night h2,.night h3,.night h4{color:#fff}
.kicker{display:inline-block;font:700 .78rem/1 "Montserrat",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--ember);margin-bottom:14px}
.lede{font-size:1.15rem;color:var(--ink-2);max-width:720px}
.on-dark .lede,.night .lede,.night p{color:#c9cdd6}
.night a:not(.btn){color:#ffb27f}
.center{text-align:center}
.center .lede{margin-left:auto;margin-right:auto}
.grid{display:grid;gap:24px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.split.rev>:first-child{order:2}

/* hero */
.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff 0%,#fff 48%,var(--ember-soft) 100%);padding:100px 0 90px}
.hero::after{content:"";position:absolute;right:-180px;top:-120px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(242,107,29,.22),rgba(242,107,29,0) 70%)}
.hero .wrap{position:relative;z-index:1}
.hero h1 span{color:var(--ember)}
.hero-art{position:relative;border-radius:22px;overflow:hidden;box-shadow:var(--shadow);background:#fff}
.page-hero{background:var(--night);color:#c9cdd6;padding:90px 0 70px;position:relative;overflow:hidden}
.page-hero::after{content:"";position:absolute;right:-200px;bottom:-260px;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,rgba(242,107,29,.28),rgba(242,107,29,0) 70%)}
.page-hero .wrap{position:relative;z-index:1}
.page-hero h1{color:#fff;max-width:880px}
.page-hero h1 span{color:var(--ember)}
.page-hero .lede{color:#c9cdd6}
.crumbs{font-size:.82rem;color:#8b92a0;margin-bottom:18px}
.crumbs a{color:#c9cdd6}

/* Media Growth powered by Ember lockup */
.lockup{display:inline-flex;align-items:center;gap:12px;margin-bottom:18px}
.lockup img{height:44px;width:auto}
.lockup span{font:800 1.25rem/1.05 "Montserrat",sans-serif;color:#fff;letter-spacing:.01em}
.lockup small{display:block;font:700 .72rem/1.4 "Montserrat",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--ember)}

/* cards */
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.card h3{margin-top:4px}
.card p:last-child{margin-bottom:0}
.on-dark .card,.night .card{background:var(--night-2);border-color:#262c37;color:#c9cdd6}
.icon{width:52px;height:52px;border-radius:14px;background:var(--ember-soft);color:var(--ember);display:grid;place-items:center;margin-bottom:16px}
.icon svg{width:26px;height:26px}
.on-dark .icon,.night .icon{background:rgba(242,107,29,.14)}
.num{font:800 2.8rem/1 "Montserrat",sans-serif;color:var(--ember);margin-bottom:8px}
.stat{text-align:center;padding:30px 20px}
.stat .num{font-size:3.4rem}
.stat p{font:700 .85rem/1.3 "Montserrat",sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--ink)}
.night .stat p{color:#fff}
.offer-card{display:flex;flex-direction:column;color:inherit}
.offer-card:hover{text-decoration:none}
.offer-card .tag{font:700 .7rem/1 "Montserrat",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--ember)}
.offer-card .more{margin-top:auto;padding-top:14px;font:700 .85rem/1 "Montserrat",sans-serif;color:var(--ember-dark)}
.thumb{border-radius:10px;overflow:hidden;margin:-8px -8px 18px;aspect-ratio:16/9;background:var(--night)}
.thumb img{width:100%;height:100%;object-fit:cover}

/* tabs (home features) */
.tabs{margin-top:40px}
.tab-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:34px}
.tab-buttons button{font:700 .85rem/1 "Montserrat",sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:14px 22px;border-radius:999px;border:2px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}
.tab-buttons button[aria-selected="true"]{background:var(--ember);border-color:var(--ember);color:#fff}
.tab-panel[hidden]{display:none}

/* lists */
.checks{list-style:none;padding:0;margin:0 0 1em}
.checks li{position:relative;padding-left:30px;margin-bottom:10px}
.checks li::before{content:"";position:absolute;left:0;top:5px;width:18px;height:18px;border-radius:50%;background:var(--ember) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L19 7'/%3E%3C/svg%3E") center/11px no-repeat}
.steps{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;gap:14px}
.steps li{counter-increment:s;position:relative;padding:18px 20px 18px 70px;background:#fff;border:1px solid var(--line);border-radius:12px}
.steps li::before{content:counter(s);position:absolute;left:18px;top:16px;width:36px;height:36px;border-radius:50%;background:var(--ember);color:#fff;font:800 1rem/36px "Montserrat",sans-serif;text-align:center}
.steps li strong{display:block;color:var(--ink);font-family:"Montserrat",sans-serif}
.night .steps li{background:var(--night-2);border-color:#262c37}
.night .steps li strong{color:#fff}

/* tables */
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius)}
table.compare{width:100%;border-collapse:collapse;min-width:560px;background:#fff}
table.compare th,table.compare td{color:var(--ink-2);padding:14px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
table.compare thead th{background:var(--ink);color:#fff;font:700 .8rem/1.2 "Montserrat",sans-serif;letter-spacing:.08em;text-transform:uppercase}
table.compare tbody th{color:var(--ink);font-weight:700;white-space:nowrap}
table.compare tr:last-child td,table.compare tr:last-child th{border-bottom:0}
table.compare .yes,.yes{color:#127a45;font-weight:600}
table.compare .no,.no{color:#b42318}

/* video */
.video-frame{position:relative;border-radius:18px;overflow:hidden;background:#000;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);border:1px solid rgba(255,255,255,.08)}
.video-frame video{width:100%;height:auto}
.video-frame.square{max-width:620px;margin:0 auto}
.video-caption{font-size:.85rem;color:var(--muted);margin-top:12px;text-align:center}
.on-dark .video-caption,.night .video-caption{color:#8b92a0}

/* review */
.review{max-width:820px;margin:0 auto}
.review h2{margin-top:1.6em}
.review h3{margin-top:1.4em}
.review-meta{display:flex;flex-wrap:wrap;gap:10px 22px;font-size:.85rem;color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:22px 0 30px}
.scorebox{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;background:var(--sand);border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;margin:30px 0}
.scorebox .score{font:800 3.6rem/1 "Montserrat",sans-serif;color:var(--ember)}
.scorebox .score small{font-size:1.1rem;color:var(--muted)}
.bars{display:grid;gap:9px}
.bar{display:grid;grid-template-columns:150px 1fr 34px;gap:12px;align-items:center;font-size:.88rem}
.bar i{display:block;height:8px;border-radius:99px;background:var(--line);overflow:hidden}
.bar i b{display:block;height:100%;background:var(--ember);border-radius:99px}
.proscons{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:26px 0}
.proscons>div{border-radius:var(--radius);padding:22px 24px;border:1px solid var(--line)}
.proscons .pros{background:#f0faf4;border-color:#cfeedd}
.proscons .cons{background:#fff5f3;border-color:#f7d6cf}
.proscons h4{margin-bottom:10px}
.proscons ul{margin:0;padding-left:18px}
.proscons li{margin-bottom:6px}
.timestamp{display:inline-block;font:700 .75rem/1 "Montserrat",sans-serif;background:var(--ink);color:#fff;border-radius:6px;padding:5px 7px;margin-right:6px;vertical-align:2px}
.pull{font:600 1.35rem/1.45 "Montserrat",sans-serif;color:var(--ink);border-left:4px solid var(--ember);padding:4px 0 4px 22px;margin:30px 0}

/* pricing */
.price{text-align:center;padding:34px 24px}
.price .num{font-size:3.2rem}
.price .label{font:700 .8rem/1.3 "Montserrat",sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.price.featured{border:2px solid var(--ember)}

/* notice */
.notice{border-radius:var(--radius);padding:20px 24px;background:var(--ember-soft);border:1px solid #f8cfb4;color:var(--ink-2);font-size:.93rem}
.notice strong{color:var(--ink)}
.fineprint{font-size:.8rem;color:var(--muted)}
.on-dark .fineprint,.night .fineprint{color:#7d8492}

/* testimonial */
.quote{background:#fff;border-radius:20px;padding:36px;box-shadow:var(--shadow);position:relative}
.quote p{font:500 1.2rem/1.6 "Montserrat",sans-serif;color:var(--ink)}
.quote cite{font-style:normal;font-weight:700;color:var(--ember-dark)}
.quote cite span{display:block;font-weight:400;color:var(--muted);font-size:.9rem}

/* cta band */
.cta-band{background:linear-gradient(120deg,var(--ember) 0%,#ff8a3d 100%);color:#fff;border-radius:24px;padding:60px 50px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.cta-band h2{color:#fff;margin:0}
.cta-band p{margin:.4em 0 0;color:#fff8f2}
.cta-band .btn{background:#fff;color:var(--ember-dark)}
.cta-band .btn:hover{background:var(--ink);color:#fff}

/* forms */
.form-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:36px;box-shadow:var(--shadow)}
.ember-form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ember-form label{display:block;font:700 .8rem/1 "Montserrat",sans-serif;color:var(--ink);margin:0 0 8px;letter-spacing:.03em}
.ember-form label em{color:var(--ember);font-style:normal}
.ember-form input,.ember-form textarea,.ember-form select{width:100%;font:inherit;padding:13px 14px;border:1px solid #d8d2ca;border-radius:10px;background:#fff;color:var(--ink);margin-bottom:16px}
.ember-form input:focus,.ember-form textarea:focus,.ember-form select:focus{outline:2px solid var(--ember);border-color:transparent}
.ember-form textarea{min-height:130px;resize:vertical}
.ember-form .hp{position:absolute;left:-9999px}
.form-msg{padding:14px 16px;border-radius:10px;margin-bottom:18px;font-weight:600}
.form-msg.ok{background:#e9f8ef;color:#127a45}
.form-msg.err{background:#fdecea;color:#b42318}
.inline-form{display:flex;gap:10px;flex-wrap:wrap}
.inline-form input{flex:1;min-width:200px;margin:0}

/* footer */
.site-footer{background:var(--night);color:#a9afbb;padding:70px 0 30px;font-size:.93rem}
.site-footer h4{color:#fff;font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}
.site-footer a{color:#e6e8ec}
.site-footer .brand{color:#fff}
.site-footer .brand small{color:#8b92a0}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.3fr;gap:40px}
.footer-grid ul{list-style:none;margin:0;padding:0}
.footer-grid li{margin-bottom:9px}
.footer-bottom{border-top:1px solid #262c37;margin-top:50px;padding-top:24px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.82rem;color:#7d8492}
.site-footer .ember-form input{background:#171b23;border-color:#2b313c;color:#fff}

/* generic page content */
.entry{max-width:820px;margin:0 auto;padding:70px 20px}
.entry-full>.section:first-child{padding-top:90px}


/* ---------- EmberPay phone screens ---------- */
.phone-trio{margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:center;max-width:560px;margin-left:auto;margin-right:auto}
.phone-trio img{width:100%;border-radius:22px;box-shadow:0 24px 44px -22px rgba(0,0,0,.55)}
.phone-trio img:nth-child(2){transform:translateY(-22px)}
.phone-trio figcaption{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:10px;font-size:.85rem;color:var(--muted);margin-top:4px}
.phone-trio figcaption img{width:120px;height:auto;box-shadow:none;border-radius:6px;background:#fff;padding:4px 8px;transform:none!important}
.on-dark .phone-trio figcaption,.night .phone-trio figcaption,.page-hero .phone-trio figcaption{color:#8b92a0}

/* ---------- CSS product mocks (homepage) ---------- */
.mock-stage{position:relative;min-height:520px;display:grid;place-items:center}
.mock-stage.small{min-height:460px}
.phone{position:relative;width:270px;background:#fff;border:10px solid var(--ink);border-radius:40px;padding:34px 18px 22px;box-shadow:0 40px 70px -30px rgba(22,24,29,.55);font-size:.85rem}
.phone.tilt{transform:rotate(-4deg)}
.phone-notch{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:84px;height:18px;border-radius:12px;background:var(--ink)}
.phone-top{display:flex;align-items:center;gap:8px;font:700 .8rem/1 "Montserrat",sans-serif;color:var(--ink);margin-bottom:16px}
.phone-top .dot{width:22px;height:22px;border-radius:7px;background:linear-gradient(135deg,var(--ember),#ff9a4d)}
.phone-balance{background:linear-gradient(135deg,var(--ember),#ff8a3d);color:#fff;border-radius:16px;padding:16px;margin-bottom:14px}
.phone-balance small{display:block;opacity:.85;font-size:.72rem}
.phone-balance strong{display:block;font:800 1.9rem/1.2 "Montserrat",sans-serif}
.phone-balance em{font-style:normal;font-size:.7rem;opacity:.9}
.phone-row{display:flex;justify-content:space-between;padding:8px 2px;border-bottom:1px solid var(--line);color:var(--ink-2)}
.phone-row b{color:var(--ink)}
.phone-progress{height:7px;border-radius:9px;background:var(--line);margin:12px 0 14px;overflow:hidden}
.phone-progress i{display:block;height:100%;background:var(--ember)}
.phone-btn{background:var(--ink);color:#fff;text-align:center;border-radius:12px;padding:12px;font:700 .82rem/1 "Montserrat",sans-serif;margin-top:10px}
.phone-offer{background:var(--ember-soft);border-radius:12px;padding:10px 12px;font-size:.75rem;color:var(--ink-2);margin-top:10px}
.phone-offer b{display:block;color:var(--ink)}
.app-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.app-grid span{display:flex;flex-direction:column;align-items:center;gap:6px;background:var(--sand);border-radius:14px;padding:16px 8px;font:700 .72rem/1 "Montserrat",sans-serif;color:var(--ink)}
.app-grid svg{width:24px;height:24px;color:var(--ember)}
.float-card{position:absolute;display:flex;align-items:center;gap:12px;background:#fff;border-radius:14px;padding:12px 16px;box-shadow:var(--shadow);font-size:.8rem;max-width:250px}
.float-card .icon{width:40px;height:40px;margin:0;flex:none}
.float-card .icon svg{width:20px;height:20px}
.float-card b{display:block;color:var(--ink);font-family:"Montserrat",sans-serif}
.float-card small{color:var(--muted)}
.hero .mock-stage{display:flex;align-items:center;justify-content:center;gap:22px}
.hero .float-stack{display:flex;flex-direction:column;gap:18px}
.hero .float-card{position:static}
.hero .float-card.fc-2{margin-left:26px}
.mock-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow)}
.mp-head{display:flex;justify-content:space-between;align-items:center;font:700 .95rem/1 "Montserrat",sans-serif;color:var(--ink);margin-bottom:18px}
.pill{display:inline-block;background:var(--ember-soft);color:var(--ember-dark);font:700 .66rem/1 "Montserrat",sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:5px 8px;border-radius:99px;vertical-align:3px}
.mp-bar{display:grid;grid-template-columns:120px 1fr 48px;gap:12px;align-items:center;font-size:.85rem;margin-bottom:12px}
.mp-bar i{display:block;height:10px;border-radius:9px;background:var(--line);overflow:hidden}
.mp-bar i b{display:block;height:100%;background:var(--ember)}
.mp-bar em{font-style:normal;font-weight:700;color:var(--ink);text-align:right}
.mp-line{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:.9rem}
.mp-line.total{border-bottom:0;font-weight:700;color:var(--ink)}
.mp-alert{margin-top:12px;background:#e9f8ef;color:#127a45;border-radius:10px;padding:10px 12px;font-weight:600;font-size:.85rem}
.mock-panel.geo{position:relative;min-height:300px;overflow:hidden;background:repeating-linear-gradient(0deg,#f4f1ec 0 1px,transparent 1px 34px),repeating-linear-gradient(90deg,#f4f1ec 0 1px,transparent 1px 34px),#fff}
.geo-ring{position:absolute;left:50%;top:50%;border-radius:50%;border:2px dashed var(--ember);transform:translate(-50%,-50%);background:rgba(242,107,29,.06)}
.geo-ring.r1{width:140px;height:140px}
.geo-ring.r2{width:250px;height:250px;opacity:.6}
.geo-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-70%);color:var(--ember)}
.geo-pin svg{width:42px;height:42px}
.geo-toast{position:absolute;right:16px;bottom:16px;background:var(--ink);color:#fff;border-radius:12px;padding:10px 14px;font-size:.8rem;max-width:220px}
.geo-toast b{color:#ffb27f;display:block}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}
.kpis div{background:var(--sand);border-radius:12px;padding:12px}
.kpis small{display:block;font-size:.7rem;color:var(--muted)}
.kpis b{font:800 1.2rem/1.3 "Montserrat",sans-serif;color:var(--ink)}
.bars-chart{display:flex;align-items:flex-end;gap:10px;height:160px;border-bottom:1px solid var(--line)}
.bars-chart i{flex:1;border-radius:8px 8px 0 0;background:linear-gradient(180deg,#ff9a4d,var(--ember))}
@media (max-width:1000px){.hero .mock-stage{flex-direction:column}.hero .float-stack{flex-direction:row;flex-wrap:wrap;justify-content:center}.hero .float-card.fc-2{margin-left:0}}
@media (max-width:560px){.float-card{position:relative;inset:auto;margin-top:12px}.mock-stage{display:flex;flex-direction:column;min-height:0}.phone{width:250px}}

/* responsive */
@media (max-width:1000px){
  .g4{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  .nav-toggle{display:block}
  .main-nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:10px 16px 20px;max-height:calc(100vh - 76px);overflow:auto}
  .main-nav.open{display:block}
  .main-nav ul{flex-direction:column;align-items:stretch}
  .main-nav .sub-menu{display:flex;position:static;box-shadow:none;border:0;padding:0 0 0 14px;min-width:0}
  .main-nav .nav-cta>a{text-align:center;margin-top:8px}
  .split,.g2,.g3,.proscons{grid-template-columns:1fr}
  .split.rev>:first-child{order:0}
  .section{padding:64px 0}
  .hero{padding:64px 0}
  .cta-band{padding:40px 28px}
  .ember-form .row{grid-template-columns:1fr}
  .scorebox{grid-template-columns:1fr}
  .bar{grid-template-columns:120px 1fr 30px}
}
@media (max-width:560px){
  .g4,.footer-grid{grid-template-columns:1fr}
  .wrap{padding:0 16px}
  .form-card,.quote{padding:24px}
}
