/* source: base.css */
:root {
  --ink: #10211f;
  --muted: #61716f;
  --brand-950: #052824;
  --brand-900: #07362f;
  --brand-800: #0b4a43;
  --brand-700: #0e6258;
  --brand-100: #dff3ef;
  --brand-50: #f1faf8;
  --gold: #f1b84b;
  --gold-soft: #fff4dc;
  --surface: #ffffff;
  --surface-soft: #f7f9f8;
  --line: #dce5e3;
  --danger: #a53232;
  --success: #087d5f;
  --shadow-sm: 0 10px 30px rgba(5, 40, 36, 0.08);
  --shadow-lg: 0 28px 80px rgba(5, 40, 36, 0.16);
  --radius-sm: 12px;
  --radius: 20px;
  --radius-lg: 32px;
  --container: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--surface);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { cursor: pointer; }
svg { width: 1.1em; height: 1.1em; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }
.container { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }
.narrow { max-width: 780px; }
.centered, .center { text-align: center; }
.center { display: flex; justify-content: center; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.honeypot { position: absolute !important; left: -10000px !important; opacity: 0 !important; pointer-events: none !important; }
.skip-link { position: fixed; left: 16px; top: -80px; z-index: 1000; padding: 12px 18px; background: #fff; border-radius: 10px; box-shadow: var(--shadow-sm); }
.skip-link:focus { top: 16px; }

h1, h2, h3 { line-height: 1.12; letter-spacing: -0.035em; margin: 0 0 0.65em; }
h1 { font-size: clamp(2.45rem, 6vw, 5.3rem); }
h2 { font-size: clamp(2rem, 4vw, 3.35rem); }
h3 { font-size: 1.25rem; }
p { margin: 0 0 1.1em; color: var(--muted); }
.lead { font-size: clamp(1.06rem, 2vw, 1.27rem); max-width: 700px; }
.large-text { font-size: clamp(1.16rem, 2vw, 1.45rem); line-height: 1.65; }
.eyebrow { display: inline-block; margin-bottom: 14px; color: var(--brand-700); font-weight: 800; font-size: 0.77rem; letter-spacing: 0.13em; text-transform: uppercase; }
.eyebrow-light { color: #9de1d5; }
.pill { display: inline-flex; align-items: center; gap: 8px; width: fit-content; padding: 7px 13px; border: 1px solid rgba(14, 98, 88, .18); border-radius: 999px; color: var(--brand-800); background: var(--brand-50); font-size: .82rem; font-weight: 800; }

.button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 52px; padding: 0 22px; border: 1px solid var(--brand-800); border-radius: 13px; color: #fff; background: var(--brand-800); font-weight: 800; transition: .2s ease; }
.button:hover { transform: translateY(-2px); background: var(--brand-700); box-shadow: 0 12px 26px rgba(11, 74, 67, .2); }
.button:focus-visible, input:focus-visible, summary:focus-visible, a:focus-visible, button:focus-visible { outline: 3px solid rgba(241, 184, 75, .55); outline-offset: 3px; }
.button svg { transition: transform .2s ease; }
.button:hover svg { transform: translateX(3px); }
.button-small { min-height: 42px; padding-inline: 16px; font-size: .91rem; }
.button-ghost { color: var(--brand-800); background: transparent; border-color: var(--line); }
.button-ghost:hover { background: var(--brand-50); box-shadow: none; }
.button-dark { background: var(--brand-950); border-color: var(--brand-950); }
.button-light { background: #fff; border-color: #fff; color: var(--brand-950); }
.text-link { display: inline-flex; align-items: center; gap: 7px; color: var(--brand-700); font-weight: 800; }
.text-link:hover svg { transform: translateX(3px); }
.button-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }

/* source: header-hero.css */
.site-header { position: sticky; top: 0; z-index: 100; background: rgba(255,255,255,.9); border-bottom: 1px solid rgba(220,229,227,.85); backdrop-filter: blur(16px); }
.header-inner { min-height: 76px; display: flex; align-items: center; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 11px; flex: 0 0 auto; }
.brand-mark { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; color: var(--brand-950); background: var(--gold); font-weight: 900; letter-spacing: -.05em; }
.brand > span:last-child { display: grid; line-height: 1.02; }
.brand strong { font-size: 1rem; letter-spacing: -.03em; }
.brand small { color: var(--brand-700); font-size: .72rem; font-weight: 900; letter-spacing: .16em; }
.primary-nav { display: flex; align-items: center; gap: 24px; margin-left: auto; }
.primary-nav a { position: relative; color: #40504d; font-size: .93rem; font-weight: 700; }
.primary-nav a:hover, .primary-nav a[aria-current="page"] { color: var(--brand-800); }
.primary-nav a[aria-current="page"]::after { content: ""; position: absolute; left: 0; right: 0; bottom: -10px; height: 2px; border-radius: 99px; background: var(--gold); }
.header-cta { margin-left: 4px; }
.menu-button { display: none; width: 44px; height: 44px; margin-left: auto; padding: 10px; border: 1px solid var(--line); border-radius: 11px; background: #fff; }
.menu-button > span:not(.sr-only) { display: block; height: 2px; margin: 5px 0; border-radius: 2px; background: var(--ink); }

.hero { position: relative; overflow: hidden; padding: 92px 0 72px; background: radial-gradient(circle at 85% 15%, #dff3ef 0, transparent 30%), linear-gradient(135deg, #fbfdfc 0%, #f2f8f6 100%); }
.hero::before { content: ""; position: absolute; width: 520px; height: 520px; left: -250px; bottom: -300px; border-radius: 50%; border: 1px solid rgba(14,98,88,.12); }
.hero-grid { display: grid; grid-template-columns: 1.12fr .88fr; gap: 70px; align-items: center; }
.hero-copy h1 { max-width: 760px; margin-top: 18px; }
.hero-copy h1 em { color: var(--brand-700); font-style: normal; }
.hero-copy > p { max-width: 680px; font-size: 1.17rem; }
.trust-row { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 30px; color: #52625f; font-size: .89rem; font-weight: 700; }
.trust-row span { display: inline-flex; align-items: center; gap: 6px; }
.hero-visual { position: relative; min-height: 490px; display: grid; place-items: center; }
.hero-visual::before { content: ""; width: 350px; height: 350px; border-radius: 50%; background: linear-gradient(145deg, var(--brand-800), var(--brand-950)); box-shadow: 0 40px 100px rgba(5,40,36,.28); }
.hero-orbit { position: absolute; border: 1px solid rgba(11,74,67,.22); border-radius: 50%; }
.orbit-one { width: 430px; height: 430px; }
.orbit-two { width: 510px; height: 510px; border-style: dashed; opacity: .6; }
.hero-card { position: absolute; display: grid; padding: 20px; border: 1px solid rgba(255,255,255,.8); border-radius: 18px; background: rgba(255,255,255,.9); box-shadow: var(--shadow-lg); backdrop-filter: blur(12px); }
.hero-card-main { width: 250px; left: 50%; top: 50%; transform: translate(-50%,-50%); }
.hero-card-main .card-icon { width: 52px; height: 52px; display: grid; place-items: center; margin-bottom: 22px; border-radius: 14px; color: var(--brand-950); background: var(--gold); }
.hero-card-main .card-icon svg { width: 27px; height: 27px; }
.hero-card-main strong { font-size: 1.35rem; }
.hero-card small { color: var(--muted); }
.hero-card-top { top: 66px; right: 5px; min-width: 130px; }
.hero-card-bottom { bottom: 68px; left: 2px; min-width: 145px; }
.hero-card-top span, .hero-card-bottom span { color: var(--brand-800); font-size: 1.65rem; font-weight: 900; }

/* source: content.css */
.section { padding: 92px 0; }
.section-tight { padding: 0 0 64px; }
.section-soft { background: var(--surface-soft); }
.section-dark { color: #fff; background: linear-gradient(135deg, var(--brand-950), var(--brand-800)); }
.section-warning { padding: 55px 0; background: var(--gold-soft); }
.section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 42px; }
.section-heading h2 { max-width: 720px; margin-bottom: 0; }
.section-heading.centered { display: block; max-width: 760px; margin-inline: auto; text-align: center; }
.section-heading.centered p { font-size: 1.08rem; }
.stats { display: grid; grid-template-columns: repeat(3,1fr); overflow: hidden; margin-top: -2px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow-sm); }
.stats > div { display: grid; gap: 3px; padding: 25px 30px; border-right: 1px solid var(--line); }
.stats > div:last-child { border: 0; }
.stats strong { color: var(--brand-800); }
.stats span { color: var(--muted); font-size: .91rem; }

.products-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 26px; }
.products-grid-featured { grid-template-columns: minmax(0, 760px); }
.product-card { overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; transition: .22s ease; }
.product-card:hover { transform: translateY(-5px); border-color: #b7cbc7; box-shadow: var(--shadow-lg); }
.product-cover { position: relative; display: block; overflow: hidden; aspect-ratio: 16 / 10; background: var(--brand-50); }
.product-cover img { width: 100%; height: 100%; object-fit: contain; object-position: center; padding: 24px; transition: transform .3s ease; }
.product-card:hover .product-cover img { transform: scale(1.025); }
.product-badge { position: absolute; top: 16px; left: 16px; padding: 6px 10px; border-radius: 99px; color: var(--brand-950); background: var(--gold); font-size: .75rem; font-weight: 900; }
.product-card-body { padding: 25px; }
.product-card h3 { font-size: 1.35rem; }
.product-card p { font-size: .94rem; }
.product-meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0; }
.product-meta span { padding: 5px 9px; border-radius: 8px; color: #4d5d5a; background: var(--surface-soft); font-size: .78rem; font-weight: 700; }
.product-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-top: 18px; border-top: 1px solid var(--line); }
.product-card-footer > strong { color: var(--brand-800); font-size: 1.35rem; }

.steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; margin: 50px 0 38px; }
.steps article { position: relative; padding: 34px 28px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; }
.steps article > span { width: 44px; height: 44px; display: grid; place-items: center; margin-bottom: 28px; border-radius: 13px; color: var(--brand-950); background: var(--gold); font-weight: 900; }
.steps h3 { font-size: 1.3rem; }
.category-grid { display: grid; grid-template-columns: 1.25fr repeat(3,1fr); gap: 22px; align-items: stretch; }
.category-grid > article { padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); }
.category-intro { padding-right: 35px; }
.category-icon { width: 52px; height: 52px; display: grid; place-items: center; margin-bottom: 22px; border-radius: 14px; color: var(--brand-800); background: var(--brand-100); }
.category-icon svg { width: 26px; height: 26px; }
.newsletter { padding: 78px 0; color: #fff; background: var(--brand-950); }
.newsletter-inner { display: grid; grid-template-columns: 1fr .9fr; gap: 60px; align-items: center; }
.newsletter h2 { max-width: 650px; }
.newsletter p { color: #c8dbd7; }
.lead-form { display: grid; grid-template-columns: 1fr 1fr auto; gap: 10px; align-items: start; }
.lead-form input { width: 100%; min-height: 52px; padding: 0 15px; border: 1px solid rgba(255,255,255,.2); border-radius: 12px; color: #fff; background: rgba(255,255,255,.08); }
.lead-form input::placeholder { color: #bfd1cd; }
.form-feedback { grid-column: 1 / -1; min-height: 20px; margin: 0; color: #dce9e6 !important; font-size: .86rem; }
.form-feedback.success { color: #9df0c5 !important; }
.form-feedback.error { color: #ffc3c3 !important; }
.lead-form-light { grid-template-columns: 1fr 1fr auto; margin-top: 24px; }
.lead-form-light label span { display: block; margin-bottom: 5px; font-size: .82rem; font-weight: 800; }
.lead-form-light input { color: var(--ink); background: #fff; border-color: var(--line); }

.page-hero { padding: 92px 0 76px; background: linear-gradient(140deg, var(--brand-50), #fff); text-align: center; }
.page-hero-small { padding-block: 64px; }
.page-hero h1 { font-size: clamp(2.4rem, 5vw, 4.5rem); }
.page-hero p { max-width: 700px; margin-inline: auto; font-size: 1.1rem; }
.store-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.search-box input { width: min(340px, 100%); min-height: 48px; padding: 0 16px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.empty-state { padding: 70px; border: 1px dashed var(--line); border-radius: var(--radius); text-align: center; }

.product-hero { overflow: hidden; padding: 78px 0 86px; background: linear-gradient(135deg, #f8fcfb, #edf6f4); }
.product-hero-grid { display: grid; grid-template-columns: .78fr 1.22fr; gap: 75px; align-items: center; }
.product-hero-cover { position: relative; display: grid; place-items: center; }
.product-hero-cover img { position: relative; z-index: 2; width: min(390px, 100%); max-height: 560px; object-fit: contain; border-radius: 8px; box-shadow: 0 35px 80px rgba(5,40,36,.25); }
.cover-glow { position: absolute; width: 460px; height: 460px; border-radius: 50%; background: rgba(241,184,75,.2); filter: blur(40px); }
.product-hero-copy h1 { margin-top: 18px; font-size: clamp(2.25rem, 4.8vw, 4.35rem); }
.check-list { display: grid; gap: 10px; padding: 0; margin: 25px 0; list-style: none; }
.check-list li { display: flex; align-items: flex-start; gap: 10px; font-weight: 700; }
.check-list svg { margin-top: 4px; color: var(--success); }
.price-box { display: flex; align-items: center; justify-content: space-between; gap: 25px; max-width: 660px; margin-top: 28px; padding: 20px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow-sm); }
.price-box > div { display: grid; }
.price-box span { color: var(--muted); font-size: .82rem; }
.price-box strong { color: var(--brand-800); font-size: 2rem; }
.secure-note { display: flex; align-items: center; gap: 7px; margin-top: 13px; font-size: .83rem; }
.two-column { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: start; }
.info-panel { padding: 34px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface-soft); }
.info-panel ul, .bonus-card ul { display: grid; gap: 13px; padding: 0; margin: 0; list-style: none; }
.info-panel li, .bonus-card li { display: flex; gap: 9px; }
.info-panel svg, .bonus-card svg { margin-top: 4px; color: var(--success); }
.modules-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.module-card { padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; }
.module-card > span { display: inline-block; margin-bottom: 36px; color: var(--brand-700); font-size: 1.3rem; font-weight: 900; }
.bonus-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; align-items: center; }
.bonus-card { padding: 38px; border-radius: var(--radius-lg); color: #fff; background: linear-gradient(145deg, var(--brand-950), var(--brand-700)); box-shadow: var(--shadow-lg); }
.bonus-card li { color: #e8f4f1; }
.bonus-label { display: inline-block; margin-bottom: 22px; padding: 6px 11px; border-radius: 99px; color: var(--brand-950); background: var(--gold); font-size: .76rem; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.purchase-strip { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.purchase-strip p { color: #c7d9d5; }
.purchase-strip-action { display: flex; align-items: center; gap: 25px; }
.purchase-strip-action > strong { font-size: 2rem; }
.faq-layout { display: grid; grid-template-columns: .55fr 1fr; gap: 70px; }
.accordion { display: grid; gap: 12px; }
details { border: 1px solid var(--line); border-radius: 14px; background: #fff; }
summary { position: relative; padding: 20px 52px 20px 20px; font-weight: 800; cursor: pointer; list-style: none; }
summary::-webkit-details-marker { display: none; }
summary::after { content: "+"; position: absolute; right: 20px; top: 16px; color: var(--brand-700); font-size: 1.45rem; }
details[open] summary::after { content: "−"; }
details p { padding: 0 20px 20px; margin: 0; }

.process-list { display: grid; gap: 0; }
.process-list article { display: grid; grid-template-columns: 110px 1fr; gap: 30px; padding: 40px 0; border-bottom: 1px solid var(--line); }
.process-list article > span { color: var(--brand-700); font-size: 2rem; font-weight: 900; }
.contact-card { display: flex; flex-wrap: wrap; gap: 12px; padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; }
.values-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.values-grid article { padding: 24px; border: 1px solid var(--line); border-radius: var(--radius); }
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.contact-tile { display: flex; gap: 20px; padding: 30px; border: 1px solid var(--line); border-radius: var(--radius); transition: .2s ease; }
.contact-tile:hover { transform: translateY(-3px); box-shadow: var(--shadow-sm); }
.contact-tile > span { width: 50px; height: 50px; display: grid; place-items: center; border-radius: 14px; color: var(--brand-800); background: var(--brand-100); }
.contact-tile > span svg { width: 25px; height: 25px; }
.contact-tile div { display: grid; }
.contact-tile small { color: var(--muted); }
.contact-tile strong { overflow-wrap: anywhere; }
.warning-card, .coming-card { margin-top: 38px; padding: 36px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface-soft); }
.coming-card { text-align: center; }
.coming-card .category-icon { margin-inline: auto; }
.legal-content h2 { margin-top: 2.2em; font-size: 1.55rem; }
.legal-content p { color: #40504d; }

/* source: products-v2.css */
.products-grid-featured {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 1180px;
}

.modules-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.product-hero-cover-mockup img {
  width: min(540px, 100%);
  max-height: 620px;
  border-radius: 18px;
  object-fit: contain;
  box-shadow: 0 32px 80px rgba(5, 40, 36, .2);
}

.product-hero-cover-mockup .cover-glow {
  width: 520px;
  height: 520px;
}

@media (max-width: 820px) {
  .products-grid-featured {
    grid-template-columns: 1fr;
  }

  .product-hero-cover-mockup img {
    width: min(500px, 100%);
    max-height: none;
  }
}

/* source: checkout.css */
.checkout-section { min-height: 80vh; padding: 58px 0 90px; background: var(--surface-soft); }
.checkout-grid { display: grid; grid-template-columns: 1fr 390px; gap: 38px; align-items: start; }
.checkout-main { padding: 40px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; }
.checkout-main h1 { font-size: clamp(2rem, 4vw, 3.2rem); }
.back-link { display: block; width: fit-content; margin-bottom: 25px; color: var(--brand-700); font-weight: 800; }
.checkout-progress { display: flex; gap: 8px; margin: 28px 0; }
.checkout-progress span { flex: 1; padding: 9px 12px; border-radius: 9px; color: #71807e; background: var(--surface-soft); text-align: center; font-size: .78rem; font-weight: 800; }
.checkout-progress .active { color: var(--brand-950); background: var(--brand-100); }
.checkout-form { display: grid; gap: 26px; }
.checkout-form fieldset { padding: 0; border: 0; }
.checkout-form legend { margin-bottom: 16px; font-weight: 900; }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.field { display: grid; gap: 7px; }
.field-full { grid-column: 1 / -1; }
.field > span { font-size: .88rem; font-weight: 800; }
.field input { min-height: 52px; padding: 0 14px; border: 1px solid #cbd8d5; border-radius: 11px; background: #fff; }
.field small { color: var(--muted); font-size: .78rem; }
.phone-input { display: flex; align-items: center; overflow: hidden; border: 1px solid #cbd8d5; border-radius: 11px; }
.phone-input:focus-within { outline: 3px solid rgba(241,184,75,.55); outline-offset: 3px; }
.phone-input > span { padding: 0 13px; color: var(--brand-800); font-weight: 900; }
.phone-input input { flex: 1; border: 0; border-left: 1px solid var(--line); border-radius: 0; outline: 0 !important; }
.payment-methods { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.payment-option { position: relative; display: flex; align-items: center; gap: 12px; padding: 15px; border: 2px solid var(--line); border-radius: 13px; cursor: pointer; }
.payment-option.selected { border-color: var(--brand-700); background: var(--brand-50); }
.payment-option input { position: absolute; opacity: 0; }
.payment-logo { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 11px; color: #fff; font-size: 1.25rem; font-weight: 900; }
.mpesa-logo { background: #e31837; }
.emola-logo { background: #f28c28; }
.payment-option > span:last-child { display: grid; }
.payment-option small { color: var(--muted); font-size: .75rem; }
.consent { display: flex; align-items: flex-start; gap: 10px; color: #40504d; font-size: .85rem; }
.consent input { margin-top: 5px; accent-color: var(--brand-700); }
.consent a { color: var(--brand-700); text-decoration: underline; }
.consent.optional { color: var(--muted); }
.checkout-submit { width: 100%; }
.pin-warning { display: flex; gap: 8px; margin: -8px 0 0; font-size: .79rem; }
.checkout-feedback { display: none; padding: 15px; border-radius: 12px; }
.checkout-feedback.notice, .checkout-feedback.success, .checkout-feedback.error { display: block; }
.checkout-feedback.notice { color: #6c4b03; background: var(--gold-soft); }
.checkout-feedback.success { color: #075c47; background: #e5f7f0; }
.checkout-feedback.error { color: var(--danger); background: #fff0f0; }
.checkout-feedback p, .checkout-feedback small { margin: 4px 0 0; color: inherit; }
.order-summary { position: sticky; top: 100px; padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow-sm); }
.order-summary h2 { font-size: 1.35rem; }
.summary-product { display: flex; gap: 15px; padding: 20px 0; border-block: 1px solid var(--line); }
.summary-product img { width: 74px; height: 104px; object-fit: cover; border-radius: 5px; box-shadow: 0 8px 20px rgba(5,40,36,.15); }
.summary-product div { display: grid; align-content: center; gap: 5px; }
.summary-product span { color: var(--muted); font-size: .8rem; }
.summary-line { display: flex; justify-content: space-between; gap: 15px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.summary-line.total { font-size: 1.15rem; }
.summary-benefits { display: grid; gap: 11px; padding-top: 20px; color: #566663; font-size: .84rem; }
.summary-benefits span { display: flex; align-items: center; gap: 8px; }

/* source: footer.css */
.site-footer { padding-top: 68px; color: #d7e5e2; background: #041e1b; }
.footer-grid { display: grid; grid-template-columns: 1.25fr .75fr .75fr 1.2fr; gap: 45px; padding-bottom: 48px; }
.brand-footer { color: #fff; margin-bottom: 18px; }
.site-footer p { color: #9cb1ad; font-size: .9rem; }
.site-footer h2 { color: #fff; font-size: .9rem; letter-spacing: .06em; text-transform: uppercase; }
.site-footer div > a:not(.brand) { display: flex; align-items: center; gap: 7px; margin: 9px 0; color: #b9cbc7; font-size: .9rem; }
.site-footer div > a:hover { color: #fff; }
.footer-note { margin-top: 15px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding: 20px 0; border-top: 1px solid rgba(255,255,255,.1); color: #8fa5a0; font-size: .78rem; }
.whatsapp-float { position: fixed; right: 20px; bottom: 20px; z-index: 80; width: 55px; height: 55px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: #25d366; box-shadow: 0 14px 35px rgba(0,0,0,.22); }
.whatsapp-float:hover { transform: translateY(-3px); }
.whatsapp-float svg { width: 25px; height: 25px; }

/* source: responsive.css */
@media (max-width: 1050px) {
  .primary-nav { gap: 16px; }
  .primary-nav a { font-size: .86rem; }
  .hero-grid { gap: 35px; }
  .category-grid { grid-template-columns: 1fr 1fr; }
  .category-intro { grid-column: 1 / -1; }
  .products-grid { grid-template-columns: 1fr 1fr; }
  .checkout-grid { grid-template-columns: 1fr 340px; }
}

@media (max-width: 860px) {
  .header-cta { display: none; }
  .menu-button { display: block; }
  .primary-nav { position: absolute; left: 20px; right: 20px; top: 68px; display: none; padding: 15px; border: 1px solid var(--line); border-radius: 15px; background: #fff; box-shadow: var(--shadow-lg); }
  .primary-nav.is-open { display: grid; }
  .primary-nav a { padding: 10px; }
  .primary-nav a[aria-current="page"]::after { display: none; }
  .hero { padding-top: 66px; }
  .hero-grid, .product-hero-grid, .two-column, .bonus-grid, .faq-layout, .newsletter-inner, .checkout-grid { grid-template-columns: 1fr; }
  .hero-visual { min-height: 420px; }
  .product-hero-cover img { width: 310px; }
  .product-hero-copy { text-align: left; }
  .modules-grid, .steps { grid-template-columns: 1fr; }
  .purchase-strip { align-items: flex-start; flex-direction: column; }
  .order-summary { position: static; order: -1; }
  .checkout-main { padding: 28px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 620px) {
  .container { width: min(calc(100% - 28px), var(--container)); }
  .header-inner { min-height: 68px; }
  .brand-mark { width: 38px; height: 38px; }
  .section { padding: 68px 0; }
  .page-hero { padding: 65px 0 55px; }
  .hero { padding: 52px 0 40px; }
  h1 { font-size: 2.55rem; }
  h2 { font-size: 2rem; }
  .hero-copy > p { font-size: 1rem; }
  .button-row .button { width: 100%; }
  .trust-row { display: grid; gap: 10px; }
  .hero-visual { min-height: 350px; transform: scale(.88); margin: -15px 0; }
  .hero-visual::before { width: 285px; height: 285px; }
  .orbit-one { width: 350px; height: 350px; }
  .orbit-two { width: 415px; height: 415px; }
  .hero-card-top { right: -20px; top: 40px; }
  .hero-card-bottom { left: -20px; bottom: 38px; }
  .stats { grid-template-columns: 1fr; }
  .stats > div { border-right: 0; border-bottom: 1px solid var(--line); }
  .products-grid, .category-grid, .contact-grid, .values-grid { grid-template-columns: 1fr; }
  .section-heading, .product-card-footer, .price-box, .purchase-strip-action { align-items: flex-start; flex-direction: column; }
  .products-grid-featured { grid-template-columns: 1fr; }
  .product-cover { aspect-ratio: 4 / 3; }
  .product-hero { padding-top: 55px; }
  .product-hero-grid { gap: 45px; }
  .product-hero-cover img { width: 270px; }
  .cover-glow { width: 320px; height: 320px; }
  .price-box .button { width: 100%; }
  .lead-form, .lead-form-light { grid-template-columns: 1fr; }
  .store-toolbar { align-items: stretch; flex-direction: column; }
  .search-box input { width: 100%; }
  .process-list article { grid-template-columns: 65px 1fr; gap: 15px; }
  .contact-tile { padding: 22px; }
  .checkout-section { padding-top: 28px; }
  .checkout-main { padding: 22px 18px; }
  .field-grid, .payment-methods { grid-template-columns: 1fr; }
  .checkout-progress span { font-size: .68rem; padding: 8px 4px; }
  .order-summary { padding: 22px; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-bottom { flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* source: refinement.css */
.site-refined .section-heading.centered p { max-width: 720px; margin-inline: auto; }

.transparency-section { background: #fff; }
.transparency-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.transparency-grid article { padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.transparency-grid article:hover { transform: translateY(-3px); border-color: #b8cfca; box-shadow: var(--shadow-sm); }
.transparency-grid article > span { width: 48px; height: 48px; display: grid; place-items: center; margin-bottom: 20px; border-radius: 14px; color: var(--brand-800); background: var(--brand-100); }
.transparency-grid article > span svg { width: 24px; height: 24px; }
.transparency-grid h3 { margin-bottom: 9px; font-size: 1.08rem; }
.transparency-grid p { margin: 0; font-size: .91rem; }
.product-facts article { background: #fff; }
.section-warning a.text-link { margin-inline: 4px; text-decoration: underline; text-underline-offset: 3px; }

.checkout-intro { max-width: 680px; margin-top: -4px; color: #536460; }
.checkout-progress { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin: 30px 0 34px; }
.checkout-progress::before { content: ""; position: absolute; left: 15%; right: 15%; top: 21px; height: 2px; background: var(--line); z-index: 0; }
.checkout-progress span { position: relative; z-index: 1; display: grid; grid-template-columns: 42px 1fr; align-items: center; gap: 10px; min-height: 50px; padding: 4px 10px 4px 4px; border: 1px solid var(--line); border-radius: 14px; color: #71807e; background: #fff; text-align: left; font-size: .8rem; font-weight: 800; transition: .2s ease; }
.checkout-progress span b { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 11px; color: #667572; background: var(--surface-soft); font-size: .88rem; }
.checkout-progress span small { color: inherit; font-size: .78rem; font-weight: 850; }
.checkout-progress span.active { color: var(--brand-900); border-color: #9fc8c0; background: var(--brand-50); box-shadow: 0 8px 24px rgba(5, 40, 36, .06); }
.checkout-progress span.active b { color: #fff; background: var(--brand-700); }
.checkout-progress span.complete { color: #075c47; border-color: #b6dfd1; background: #effaf6; }
.checkout-progress span.complete b { color: transparent; background: #0b8063; }
.checkout-progress span.complete b::after { content: "✓"; color: #fff; font-size: 1rem; }
.checkout-progress span.failed { color: #8e2f2f; border-color: #e7bcbc; background: #fff5f5; }
.checkout-progress span.failed b { color: #fff; background: var(--danger); }

.checkout-disclosure { display: flex; gap: 14px; padding: 18px; border: 1px solid #cfe2de; border-radius: 14px; background: #f5fbfa; }
.checkout-disclosure > span { width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 42px; border-radius: 12px; color: var(--brand-800); background: var(--brand-100); }
.checkout-disclosure > span svg { width: 22px; height: 22px; }
.checkout-disclosure strong { display: block; margin-bottom: 4px; }
.checkout-disclosure p { margin: 0; font-size: .85rem; }
.has-active-order .checkout-form fieldset, .has-active-order .checkout-disclosure, .has-active-order .consent { transition: opacity .2s ease; }
.has-active-order .checkout-submit { cursor: progress; }
.has-completed-order .checkout-submit { color: #dce9e6; background: #49625d; border-color: #49625d; cursor: default; }

.checkout-feedback { border: 1px solid transparent; }
.checkout-feedback.notice { border-color: #efd79c; }
.checkout-feedback.success { border-color: #b4e0cf; }
.checkout-feedback.error { border-color: #ecc5c5; }
.feedback-heading { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.status-dot { width: 10px; height: 10px; flex: 0 0 10px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 5px color-mix(in srgb, currentColor 12%, transparent); }
.payment-live-status { display: grid; gap: 8px; margin: 15px 0 12px; }
.payment-live-status p { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0; padding: 9px 11px; border-radius: 9px; color: inherit; background: rgba(255,255,255,.56); font-size: .83rem; }
.payment-live-status span { text-align: right; font-weight: 700; }
.checkout-final-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.checkout-final-actions a, .checkout-final-actions button { padding: 7px 10px; border: 1px solid currentColor; border-radius: 9px; color: inherit; background: transparent; font: inherit; font-size: .78rem; font-weight: 800; }
.checkout-final-actions a:hover, .checkout-final-actions button:hover { background: rgba(255,255,255,.55); }

.summary-no-extra { margin: 14px 0 0; padding: 11px 12px; border-radius: 10px; color: #445552; background: var(--surface-soft); font-size: .78rem; }
.summary-help { display: grid; gap: 3px; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--line); font-size: .82rem; }
.summary-help a { color: var(--brand-700); font-weight: 800; }
.order-summary { transition: box-shadow .2s ease, transform .2s ease; }
.order-summary:hover { box-shadow: 0 18px 44px rgba(5, 40, 36, .1); }

.legal-content { max-width: 860px; }
.legal-content > p:first-of-type { font-size: 1.02rem; }
.legal-content h2 { padding-top: .35em; border-top: 1px solid transparent; }
.legal-content h3 { margin-top: 1.7em; font-size: 1.08rem; }
.legal-content ul { display: grid; gap: 8px; padding-left: 1.25rem; color: #40504d; }
.legal-content li { padding-left: .2rem; }
.legal-highlight { margin: 22px 0 30px; padding: 20px; border: 1px solid #cfe2de; border-radius: 14px; background: #f5fbfa; }
.legal-highlight strong { display: block; margin-bottom: 5px; }
.legal-links { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-top: 30px; }
.legal-links a { padding: 14px 16px; border: 1px solid var(--line); border-radius: 12px; color: var(--brand-700); background: #fff; font-weight: 800; }
.legal-links a:hover { border-color: #adcac4; background: var(--brand-50); }

@media (max-width: 980px) {
  .transparency-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 620px) {
  .transparency-grid { grid-template-columns: 1fr; }
  .checkout-progress { gap: 6px; }
  .checkout-progress::before { display: none; }
  .checkout-progress span { grid-template-columns: 32px 1fr; gap: 6px; min-height: 42px; padding: 4px; }
  .checkout-progress span b { width: 32px; height: 32px; border-radius: 9px; font-size: .76rem; }
  .checkout-progress span small { font-size: .67rem; }
  .payment-live-status p { align-items: flex-start; flex-direction: column; gap: 2px; }
  .payment-live-status span { text-align: left; }
  .legal-links { grid-template-columns: 1fr; }
}

/* source: course.css */
/* Premium student area — Pronto Digital MZ */
:root {
  --member-ink: #102a26;
  --member-muted: #62756f;
  --member-deep: #061b18;
  --member-deep-2: #0a2925;
  --member-brand: #0b6f61;
  --member-brand-2: #0e8b78;
  --member-mint: #dff6f0;
  --member-mint-2: #f0faf7;
  --member-gold: #e6b55d;
  --member-bg: #f4f7f6;
  --member-panel: #ffffff;
  --member-line: #e3ebe8;
  --member-shadow: 0 20px 60px rgba(11, 53, 47, .10);
  --member-shadow-soft: 0 10px 30px rgba(11, 53, 47, .07);
}

.member-body { margin: 0; background: var(--member-bg); color: var(--member-ink); }
.member-body .whatsapp-float, .member-body .site-header, .member-body .site-footer { display: none !important; }
.member-body a { color: inherit; }
.member-body svg, .member-login-body svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.member-kicker { display: inline-block; color: var(--member-brand); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }

/* Dedicated shell */
.member-shell { min-height: 100vh; }
.member-sidebar { position: fixed; inset: 0 auto 0 0; z-index: 80; width: 270px; display: flex; flex-direction: column; color: #eaf8f4; background: linear-gradient(180deg, #061b18 0%, #08231f 56%, #061a17 100%); border-right: 1px solid rgba(255,255,255,.06); }
.member-sidebar-head { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 20px; border-bottom: 1px solid rgba(255,255,255,.08); }
.member-brand { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; }
.member-brand-mark { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; color: var(--member-deep); background: linear-gradient(145deg, #f3d28f, var(--member-gold)); font-weight: 950; letter-spacing: -.04em; box-shadow: inset 0 1px 0 rgba(255,255,255,.55); }
.member-brand > span:last-child { display: grid; line-height: 1.1; }
.member-brand strong { color: #fff; font-size: .95rem; }
.member-brand small { margin-top: 4px; color: #91ada6; font-size: .66rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.member-sidebar-close { display: none; width: 38px; height: 38px; place-items: center; border: 0; border-radius: 10px; color: #c8ddd7; background: rgba(255,255,255,.06); }
.member-nav { flex: 1; display: grid; align-content: start; gap: 7px; padding: 24px 14px; }
.member-nav-link, .member-back-site, .member-logout { min-height: 48px; display: flex; align-items: center; gap: 13px; padding: 0 14px; border: 1px solid transparent; border-radius: 12px; color: #aac4bd; font-size: .86rem; font-weight: 800; text-decoration: none; transition: .18s ease; }
.member-nav-link svg, .member-back-site svg, .member-logout svg { width: 19px; height: 19px; }
.member-nav-link:hover, .member-back-site:hover, .member-logout:hover { color: #fff; background: rgba(255,255,255,.06); }
.member-nav-link.is-active { color: #fff; border-color: rgba(166, 232, 218, .16); background: linear-gradient(90deg, rgba(17,139,120,.28), rgba(17,139,120,.08)); box-shadow: inset 3px 0 0 #5bc8b4; }
.member-sidebar-footer { display: grid; gap: 7px; padding: 16px 14px 20px; border-top: 1px solid rgba(255,255,255,.08); }
.member-logout { width: 100%; border: 0; background: transparent; cursor: pointer; font-family: inherit; text-align: left; }
.member-main { min-height: 100vh; margin-left: 270px; }
.member-topbar { position: sticky; top: 0; z-index: 60; min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 14px clamp(22px, 4vw, 54px); background: rgba(255,255,255,.92); border-bottom: 1px solid var(--member-line); backdrop-filter: blur(16px); }
.member-topbar-left { display: flex; align-items: center; gap: 14px; min-width: 0; }
.member-menu-button { display: none; width: 42px; height: 42px; place-items: center; border: 1px solid var(--member-line); border-radius: 12px; color: var(--member-ink); background: #fff; }
.member-context { min-width: 0; display: grid; gap: 3px; }
.member-context span { color: var(--member-muted); font-size: .69rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.member-context strong { overflow: hidden; max-width: 580px; text-overflow: ellipsis; white-space: nowrap; font-size: .92rem; }
.member-account-chip { display: flex; align-items: center; gap: 10px; max-width: 330px; padding: 7px 11px 7px 7px; border: 1px solid var(--member-line); border-radius: 999px; background: #fff; }
.member-avatar { width: 36px; height: 36px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; color: var(--member-brand); background: var(--member-mint); }
.member-avatar svg { width: 17px; height: 17px; }
.member-account-chip > div { min-width: 0; display: grid; }
.member-account-chip small { color: var(--member-muted); font-size: .62rem; font-weight: 700; }
.member-account-chip strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .74rem; }
.member-content { padding: clamp(28px, 4vw, 54px); }
.member-overlay { display: none; }

/* Login */
.member-login-body { min-height: 100vh; margin: 0; background: #eef4f2; }
.member-login-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(420px, .95fr) minmax(500px, 1.05fr); }
.member-login-visual { position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; min-height: 100vh; padding: clamp(32px, 5vw, 72px); color: #fff; background: radial-gradient(circle at 84% 20%, rgba(36,169,145,.32), transparent 30%), radial-gradient(circle at 12% 82%, rgba(230,181,93,.13), transparent 32%), linear-gradient(145deg, #051a17, #0a302a 68%, #0b4037); }
.member-login-visual::after { content: ""; position: absolute; width: 430px; height: 430px; right: -170px; bottom: -130px; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; box-shadow: 0 0 0 58px rgba(255,255,255,.025), 0 0 0 116px rgba(255,255,255,.018); }
.member-brand-light { position: relative; z-index: 1; }
.member-login-copy { position: relative; z-index: 1; max-width: 610px; padding: 60px 0; }
.member-login-copy .member-kicker { color: #83d9c9; }
.member-login-copy h1 { max-width: 700px; margin: 12px 0 20px; color: #fff; font-size: clamp(2.7rem, 5vw, 5.2rem); line-height: .98; letter-spacing: -.045em; }
.member-login-copy > p { max-width: 580px; color: #c1d7d1; font-size: 1.06rem; line-height: 1.75; }
.member-login-trust { max-width: 560px; display: flex; gap: 14px; align-items: flex-start; margin-top: 34px; padding: 18px; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: rgba(255,255,255,.055); }
.member-login-trust > svg { flex: 0 0 auto; color: #8edecd; }
.member-login-trust div { display: grid; gap: 4px; }
.member-login-trust strong { font-size: .9rem; }
.member-login-trust span { color: #acc7c0; font-size: .79rem; line-height: 1.5; }
.member-login-visual-foot { position: relative; z-index: 1; color: #78968e; font-size: .72rem; }
.member-login-form-panel { display: grid; place-items: center; padding: 40px 24px; }
.member-login-card { width: min(100%, 470px); padding: clamp(30px, 4vw, 48px); border: 1px solid #dfe9e6; border-radius: 24px; background: #fff; box-shadow: var(--member-shadow); }
.member-login-card h2 { margin: 9px 0 10px; color: var(--member-ink); font-size: clamp(2rem, 4vw, 2.8rem); letter-spacing: -.035em; }
.member-login-intro { margin-bottom: 28px; color: var(--member-muted); font-size: .92rem; }
.member-login-card form { display: grid; gap: 18px; }
.member-login-card .field { display: grid; gap: 8px; }
.member-login-card .field span { color: #355049; font-size: .78rem; font-weight: 850; }
.member-login-card .field input { width: 100%; min-height: 52px; border: 1px solid #d9e5e1; border-radius: 12px; background: #fbfdfc; }
.member-login-card .field input:focus { border-color: #58af9f; box-shadow: 0 0 0 4px rgba(43,150,131,.11); }
.member-login-identified { display: flex; gap: 12px; align-items: center; padding: 14px 15px; border: 1px solid #cae8e1; border-radius: 13px; color: #17483f; background: #eef9f6; }
.member-login-identified svg { flex: 0 0 auto; color: var(--member-brand); }
.member-login-identified div { display: grid; gap: 2px; }
.member-login-identified small { color: var(--member-brand); font-size: .66rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.member-login-identified strong { font-size: .82rem; }
.member-login-submit { min-height: 52px; justify-content: center; border-radius: 12px; background: var(--member-deep-2); }
.member-login-submit svg { margin-left: 7px; }
.member-login-help { display: flex; justify-content: space-between; gap: 16px; margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--member-line); color: var(--member-muted); font-size: .78rem; }
.member-login-help a { color: var(--member-brand); font-weight: 850; }
.member-login-back { margin-top: 20px; color: #60736e; font-size: .78rem; font-weight: 800; }

/* Dashboard */
.member-dashboard-hero { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; padding: clamp(28px, 4vw, 46px); border-radius: 26px; color: #fff; background: radial-gradient(circle at 90% 18%, rgba(77,199,177,.23), transparent 25%), linear-gradient(125deg, #08231f, #0b3b34); box-shadow: var(--member-shadow); }
.member-dashboard-hero h1 { max-width: 750px; margin: 10px 0 12px; color: #fff; font-size: clamp(2.3rem, 5vw, 4.5rem); letter-spacing: -.045em; }
.member-dashboard-hero p { max-width: 680px; margin: 0; color: #bed3cd; }
.member-dashboard-hero .member-kicker { color: #78d4c3; }
.member-dashboard-badge { min-width: 190px; display: flex; align-items: center; gap: 12px; padding: 15px 17px; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: rgba(255,255,255,.06); }
.member-dashboard-badge svg { color: #74d0bf; }
.member-dashboard-badge div { display: grid; gap: 2px; }
.member-dashboard-badge small { color: #92ada6; font-size: .66rem; }
.member-dashboard-badge strong { font-size: .86rem; }
.member-dashboard-section { margin-top: 40px; }
.member-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 20px; }
.member-section-heading h2 { margin: 6px 0 0; color: var(--member-ink); font-size: clamp(1.7rem, 3vw, 2.45rem); letter-spacing: -.035em; }
.member-section-heading p { max-width: 600px; margin: 8px 0 0; color: var(--member-muted); }
.member-account-email { max-width: 380px; overflow: hidden; padding: 8px 12px; border-radius: 999px; color: #49635c; background: #e8f1ee; font-size: .7rem; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.member-course-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); gap: 24px; }
.member-loading { min-height: 260px; display: grid; place-items: center; align-content: center; gap: 14px; border: 1px dashed #c7d8d3; border-radius: 22px; background: #fff; }
.member-loading span { width: 30px; height: 30px; border: 3px solid #d5e5e1; border-top-color: var(--member-brand); border-radius: 50%; animation: member-spin .85s linear infinite; }
.member-loading p { margin: 0; color: var(--member-muted); font-size: .82rem; }
@keyframes member-spin { to { transform: rotate(360deg); } }
.student-course-card { overflow: hidden; display: grid; grid-template-rows: 190px 1fr; padding: 0; border: 1px solid var(--member-line); border-radius: 24px; background: #fff; box-shadow: var(--member-shadow-soft); transition: transform .18s ease, box-shadow .18s ease; }
.student-course-card:hover { transform: translateY(-3px); box-shadow: var(--member-shadow); }
.student-course-cover { position: relative; overflow: hidden; padding: 26px; color: #fff; background: radial-gradient(circle at 78% 25%, rgba(240,197,105,.2), transparent 25%), linear-gradient(135deg, #08231f, #0c4a40); }
.student-course-cover::after { content: ""; position: absolute; width: 180px; height: 180px; right: -54px; bottom: -86px; border: 1px solid rgba(255,255,255,.11); border-radius: 50%; box-shadow: 0 0 0 34px rgba(255,255,255,.025), 0 0 0 68px rgba(255,255,255,.018); }
.student-course-cover-tag { position: relative; z-index: 1; display: inline-flex; padding: 6px 9px; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: #aed5cc; background: rgba(255,255,255,.06); font-size: .65rem; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.student-course-cover strong { position: absolute; z-index: 1; left: 26px; bottom: 24px; max-width: 76%; color: #fff; font-size: 1.65rem; line-height: 1.05; letter-spacing: -.035em; }
.student-course-body { display: grid; align-content: start; gap: 14px; padding: 24px; }
.student-course-body h2 { margin: 0; color: var(--member-ink); font-size: 1.55rem; }
.student-course-body p { margin: 0; color: var(--member-muted); font-size: .86rem; line-height: 1.6; }
.student-course-meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 2px; }
.student-course-meta span { padding: 7px 10px; border-radius: 999px; color: #34665d; background: #edf7f4; font-size: .7rem; font-weight: 850; }
.student-course-action { display: inline-flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 46px; margin-top: 4px; padding: 0 15px; border-radius: 12px; color: #fff !important; background: var(--member-deep-2); font-size: .8rem; font-weight: 850; }
.student-course-action svg { width: 17px; height: 17px; }
.member-account-panel { display: grid; grid-template-columns: 64px minmax(0, 1fr) minmax(280px, 360px); gap: 22px; align-items: center; margin-top: 34px; padding: 28px; border: 1px solid var(--member-line); border-radius: 22px; background: #fff; box-shadow: var(--member-shadow-soft); }
.member-account-panel-icon { width: 64px; height: 64px; display: grid; place-items: center; border-radius: 18px; color: var(--member-brand); background: var(--member-mint); }
.member-account-panel h2 { margin: 5px 0 7px; font-size: 1.5rem; }
.member-account-panel p { margin: 0 0 14px; color: var(--member-muted); font-size: .84rem; }
.member-account-value { display: grid; gap: 2px; }
.member-account-value small { color: var(--member-muted); font-size: .68rem; }
.member-account-value strong { font-size: .82rem; word-break: break-word; }
.member-security-preview { display: flex; gap: 12px; padding: 16px; border: 1px solid #dce9e5; border-radius: 15px; background: #f7fbfa; }
.member-security-preview svg { flex: 0 0 auto; color: var(--member-brand); }
.member-security-preview div { display: grid; gap: 2px; }
.member-security-preview small { color: var(--member-brand); font-size: .63rem; font-weight: 900; text-transform: uppercase; }
.member-security-preview strong { font-size: .8rem; }
.member-security-preview span { color: var(--member-muted); font-size: .7rem; line-height: 1.45; }

/* Course overview */
.member-course-hero { position: relative; overflow: hidden; display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(300px, .62fr); gap: clamp(34px, 6vw, 84px); align-items: center; padding: clamp(34px, 5vw, 64px); border-radius: 28px; color: #fff; background: radial-gradient(circle at 88% 16%, rgba(53,190,164,.24), transparent 25%), linear-gradient(125deg, #061c19, #0a3b33 72%, #0c4a3f); box-shadow: var(--member-shadow); }
.member-course-hero::after { content: ""; position: absolute; width: 560px; height: 560px; left: -380px; bottom: -420px; border: 1px solid rgba(255,255,255,.06); border-radius: 50%; box-shadow: 0 0 0 72px rgba(255,255,255,.018), 0 0 0 144px rgba(255,255,255,.012); }
.member-course-hero-copy { position: relative; z-index: 1; }
.member-course-hero .member-kicker { color: #7ed6c6; }
.member-course-hero h1 { max-width: 830px; margin: 10px 0 16px; color: #fff; font-size: clamp(2.7rem, 5vw, 5.4rem); line-height: .98; letter-spacing: -.055em; }
.member-course-hero p { max-width: 780px; margin: 0; color: #bfd5cf; font-size: .98rem; line-height: 1.75; }
.member-course-facts { display: flex; flex-wrap: wrap; gap: 10px; margin: 28px 0; }
.member-course-facts span { min-width: 92px; display: grid; gap: 1px; padding: 10px 13px; border: 1px solid rgba(255,255,255,.1); border-radius: 12px; background: rgba(255,255,255,.05); }
.member-course-facts strong { font-size: 1rem; }
.member-course-facts small { color: #9db9b2; font-size: .64rem; }
.member-primary-cta { display: inline-flex; align-items: center; gap: 9px; min-height: 50px; border-color: #fff; color: var(--member-deep) !important; background: #fff; }
.member-primary-cta svg { width: 18px; height: 18px; }
.member-course-cover { position: relative; z-index: 1; }
.member-course-cover-art { aspect-ratio: 4 / 5; max-width: 340px; display: flex; flex-direction: column; justify-content: flex-end; margin-left: auto; padding: 28px; border: 1px solid rgba(255,255,255,.15); border-radius: 25px; background: radial-gradient(circle at 30% 18%, rgba(255,255,255,.14), transparent 26%), linear-gradient(155deg, #127b6b, #082720 72%); box-shadow: 0 30px 80px rgba(0,0,0,.28); transform: rotate(2deg); }
.member-cover-badge { width: fit-content; margin-bottom: auto; padding: 6px 9px; border-radius: 999px; color: #153c35; background: #f3d48e; font-size: .66rem; font-weight: 900; text-transform: uppercase; }
.member-course-cover-art > strong { color: #fff; font-size: clamp(3.8rem, 7vw, 6.6rem); line-height: .8; letter-spacing: -.08em; }
.member-course-cover-art > small { max-width: 210px; margin-top: 15px; color: #b8d3cc; font-size: .75rem; line-height: 1.45; }
.member-cover-meta { display: flex; justify-content: flex-end; margin-top: 17px; }
.member-cover-meta span { display: inline-flex; align-items: center; gap: 7px; color: #a9c4bd; font-size: .68rem; font-weight: 800; }
.member-cover-meta svg { width: 15px; height: 15px; color: #7ed6c6; }
.member-course-body { display: grid; grid-template-columns: minmax(0, 1fr) 390px; gap: 30px; align-items: start; margin-top: 40px; }
.course-modules { display: grid; gap: 20px; }
.course-modules > .member-section-heading { margin-bottom: 0; }
.course-module { overflow: hidden; border: 1px solid var(--member-line); border-radius: 21px; background: #fff; box-shadow: var(--member-shadow-soft); }
.course-module-heading { display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 22px 24px; background: linear-gradient(180deg, #fff, #f8fbfa); }
.course-module-index { width: 50px; height: 50px; display: grid; place-items: center; border-radius: 15px; color: #fff; background: var(--member-deep-2); font-size: .78rem; font-weight: 950; }
.course-module-heading small { color: var(--member-brand); font-size: .65rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.course-module-heading h2 { margin: 2px 0 4px; color: var(--member-ink); font-size: 1.35rem; }
.course-module-heading p { max-width: 720px; margin: 0; color: var(--member-muted); font-size: .78rem; line-height: 1.5; }
.course-module-count { padding: 7px 9px; border-radius: 999px; color: #49655e; background: #eaf3f0; font-size: .66rem; font-weight: 850; white-space: nowrap; }
.course-lesson-list { display: grid; }
.course-lesson-row { display: grid; grid-template-columns: 48px 34px minmax(0, 1fr) 22px; gap: 12px; align-items: center; min-height: 70px; padding: 10px 20px; border-top: 1px solid var(--member-line); text-decoration: none; transition: .16s ease; }
.course-lesson-row:hover { background: #f3faf7; }
.course-lesson-number { color: #84958f; font-size: .68rem; font-weight: 900; }
.course-lesson-play { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; color: var(--member-brand); background: var(--member-mint); }
.course-lesson-play svg { width: 17px; height: 17px; }
.course-lesson-row > div { display: grid; gap: 2px; min-width: 0; }
.course-lesson-row strong { color: var(--member-ink); font-size: .84rem; }
.course-lesson-row small { color: var(--member-muted); font-size: .67rem; }
.course-lesson-row > svg { width: 16px; height: 16px; color: #8aa19a; }
.member-course-aside { position: sticky; top: 104px; display: grid; gap: 18px; }
.course-sidebar-card { padding: 22px; border: 1px solid var(--member-line); border-radius: 21px; background: #fff; box-shadow: var(--member-shadow-soft); }
.course-sidebar-heading h2 { margin: 5px 0 8px; color: var(--member-ink); font-size: 1.4rem; }
.course-sidebar-heading p { margin: 0 0 18px; color: var(--member-muted); font-size: .78rem; line-height: 1.55; }
.course-materials { display: grid; gap: 9px; }
.course-material-card { display: grid; grid-template-columns: 38px minmax(0, 1fr) 28px; gap: 11px; align-items: center; padding: 12px; border: 1px solid #e3ebe8; border-radius: 13px; text-decoration: none; transition: .16s ease; }
.course-material-card:hover { border-color: #a6d2c8; background: #f3faf7; }
.course-material-icon { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; color: #2d7669; background: #e7f5f1; }
.course-material-icon svg { width: 17px; height: 17px; }
.course-material-card > div { min-width: 0; display: grid; gap: 2px; }
.course-material-card small { color: #71857f; font-size: .59rem; font-weight: 900; text-transform: uppercase; }
.course-material-card strong { color: #29463f; font-size: .74rem; line-height: 1.35; }
.course-material-download { width: 28px; height: 28px; display: grid; place-items: center; color: #628078; }
.course-material-download svg { width: 15px; height: 15px; }
.course-support { display: flex; gap: 13px; align-items: flex-start; background: #0a2c27; color: #fff; }
.course-support > svg { flex: 0 0 auto; color: #82d8c8; }
.course-support div { display: grid; gap: 5px; }
.course-support strong { font-size: .9rem; }
.course-support p { margin: 0; color: #adc7c1; font-size: .74rem; line-height: 1.45; }
.course-support a { display: inline-flex; align-items: center; gap: 6px; margin-top: 5px; color: #86d9c9; font-size: .72rem; font-weight: 850; }
.course-support a svg { width: 15px; height: 15px; }

/* Lesson workspace */
.lesson-workspace { display: grid; grid-template-columns: minmax(0, 1fr) 350px; gap: 26px; align-items: start; }
.lesson-main { min-width: 0; }
.lesson-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; color: #71847e; font-size: .68rem; font-weight: 750; }
.lesson-breadcrumb a { color: var(--member-brand); }
.lesson-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.lesson-heading h1 { margin: 5px 0 0; color: var(--member-ink); font-size: clamp(2rem, 4vw, 3.5rem); letter-spacing: -.045em; }
.lesson-position { flex: 0 0 auto; padding: 7px 10px; border-radius: 999px; color: #536c65; background: #e7efed; font-size: .68rem; font-weight: 850; }
.lesson-video-frame { padding: 10px; border: 1px solid #dce7e4; border-radius: 22px; background: #eaf0ee; box-shadow: 0 24px 65px rgba(8, 41, 36, .13); }
.lesson-video-shell { position: relative; overflow: hidden; width: 100%; border-radius: 15px; background: #050706; }
.lesson-video-shell video { display: block; width: 100%; aspect-ratio: 16 / 9; max-height: calc(100vh - 230px); object-fit: contain; background: #000; }
.lesson-under-player { max-width: 980px; }
.lesson-note { display: flex; gap: 14px; margin-top: 18px; padding: 18px 20px; border: 1px solid var(--member-line); border-radius: 15px; background: #fff; }
.lesson-note > svg { flex: 0 0 auto; color: var(--member-brand); }
.lesson-note div { display: grid; gap: 4px; }
.lesson-note strong { font-size: .82rem; }
.lesson-note p { margin: 0; color: var(--member-muted); font-size: .76rem; line-height: 1.55; }
.lesson-navigation { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 18px; }
.lesson-navigation > span:empty { display: block; }
.lesson-nav-card { display: grid; gap: 4px; min-height: 74px; padding: 15px 17px; border: 1px solid var(--member-line); border-radius: 14px; background: #fff; text-decoration: none; transition: .16s ease; }
.lesson-nav-card:hover { border-color: #a8d2c9; background: #f7fbfa; }
.lesson-nav-card small { color: #6f837d; font-size: .65rem; font-weight: 800; }
.lesson-nav-card strong { color: #294940; font-size: .78rem; }
.lesson-nav-next { text-align: right; }
.lesson-curriculum { position: sticky; top: 104px; overflow: hidden; border: 1px solid var(--member-line); border-radius: 20px; background: #fff; box-shadow: var(--member-shadow-soft); }
.lesson-curriculum-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; padding: 20px; border-bottom: 1px solid var(--member-line); background: #fbfdfc; }
.lesson-curriculum-head h2 { margin: 4px 0 0; color: var(--member-ink); font-size: 1.2rem; }
.lesson-curriculum-head > span { padding: 6px 8px; border-radius: 999px; color: #527069; background: #eaf2ef; font-size: .63rem; font-weight: 850; }
.lesson-curriculum-scroll { max-height: calc(100vh - 255px); overflow: auto; overscroll-behavior: contain; }
.lesson-curriculum-module { border-bottom: 1px solid var(--member-line); }
.lesson-curriculum-module summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 17px; background: #fff; }
.lesson-curriculum-module summary::-webkit-details-marker { display: none; }
.lesson-curriculum-module summary > span:first-child { min-width: 0; display: grid; gap: 2px; }
.lesson-curriculum-module summary small { color: var(--member-brand); font-size: .58rem; font-weight: 900; text-transform: uppercase; }
.lesson-curriculum-module summary strong { color: #29473f; font-size: .73rem; line-height: 1.25; }
.curriculum-count { min-width: 27px; height: 27px; display: grid; place-items: center; border-radius: 50%; color: #617871; background: #edf3f1; font-size: .62rem; font-weight: 900; }
.lesson-curriculum-module > div { display: grid; padding: 0 8px 10px; }
.lesson-curriculum-link { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 8px; align-items: center; min-height: 44px; padding: 7px 8px; border-radius: 10px; color: #60736d; text-decoration: none; }
.lesson-curriculum-link:hover { background: #f2f8f6; }
.lesson-curriculum-link.is-current { color: #174e44; background: #e6f5f1; }
.lesson-curriculum-link > span { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; color: #5e756e; background: #eef3f1; font-size: .61rem; font-weight: 900; }
.lesson-curriculum-link.is-current > span { color: #fff; background: var(--member-brand); }
.lesson-curriculum-link svg { width: 14px; height: 14px; }
.lesson-curriculum-link strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .69rem; }
.lesson-materials-link { display: flex; align-items: center; gap: 8px; padding: 15px 17px; color: #1c5e52 !important; background: #f0f8f6; font-size: .7rem; font-weight: 850; }
.lesson-materials-link svg:last-child { margin-left: auto; }

/* Empty/error states */
.course-library .empty-state { padding: 34px; border: 1px solid var(--member-line); border-radius: 20px; background: #fff; }
.course-library .empty-state h2 { margin-top: 0; }
.course-library .empty-state p { color: var(--member-muted); }

@media (max-width: 1220px) {
  .member-course-body { grid-template-columns: minmax(0, 1fr) 330px; }
  .lesson-workspace { grid-template-columns: minmax(0, 1fr) 310px; }
}

@media (max-width: 1040px) {
  .member-sidebar { transform: translateX(-101%); transition: transform .22s ease; box-shadow: 30px 0 80px rgba(0,0,0,.24); }
  .member-sidebar.is-open { transform: translateX(0); }
  .member-sidebar-close, .member-menu-button { display: grid; }
  .member-main { margin-left: 0; }
  .member-overlay { position: fixed; inset: 0; z-index: 70; background: rgba(3, 17, 15, .46); backdrop-filter: blur(2px); }
  .member-overlay.is-open { display: block; }
  .member-course-body, .lesson-workspace { grid-template-columns: 1fr; }
  .member-course-aside, .lesson-curriculum { position: static; }
  .lesson-curriculum-scroll { max-height: none; }
  .lesson-video-shell video { max-height: none; }
}

@media (max-width: 820px) {
  .member-login-shell { grid-template-columns: 1fr; }
  .member-login-visual { min-height: 360px; padding: 32px 26px; }
  .member-login-copy { padding: 44px 0 24px; }
  .member-login-copy h1 { font-size: clamp(2.35rem, 10vw, 4rem); }
  .member-login-visual-foot { display: none; }
  .member-login-form-panel { padding: 32px 20px 46px; }
  .member-course-hero { grid-template-columns: 1fr; }
  .member-course-cover { display: none; }
  .member-account-panel { grid-template-columns: 56px 1fr; }
  .member-security-preview { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
  .member-topbar { min-height: 70px; padding: 10px 14px; }
  .member-content { padding: 20px 14px 36px; }
  .member-context span { display: none; }
  .member-context strong { max-width: 190px; font-size: .78rem; }
  .member-account-chip { max-width: 52px; padding: 6px; }
  .member-account-chip > div { display: none; }
  .member-avatar { width: 38px; height: 38px; }
  .member-dashboard-hero { align-items: flex-start; flex-direction: column; padding: 28px 22px; border-radius: 20px; }
  .member-dashboard-hero h1 { font-size: 2.35rem; }
  .member-dashboard-badge { min-width: 0; width: 100%; }
  .member-section-heading { align-items: flex-start; flex-direction: column; }
  .member-account-email { max-width: 100%; }
  .student-course-card { grid-template-rows: 160px 1fr; border-radius: 19px; }
  .student-course-cover { padding: 21px; }
  .student-course-cover strong { left: 21px; bottom: 21px; font-size: 1.4rem; }
  .student-course-body { padding: 20px; }
  .member-account-panel { grid-template-columns: 1fr; padding: 22px; }
  .member-account-panel-icon { width: 52px; height: 52px; }
  .member-course-hero { padding: 28px 22px; border-radius: 20px; }
  .member-course-hero h1 { font-size: 2.6rem; }
  .member-course-facts span { flex: 1 1 80px; }
  .course-module { border-radius: 17px; }
  .course-module-heading { grid-template-columns: 44px minmax(0, 1fr); padding: 17px; }
  .course-module-index { width: 42px; height: 42px; border-radius: 12px; }
  .course-module-count { grid-column: 2; justify-self: start; }
  .course-lesson-row { grid-template-columns: 40px 30px minmax(0, 1fr) 16px; gap: 8px; min-height: 64px; padding: 9px 12px; }
  .course-lesson-play { width: 29px; height: 29px; }
  .course-lesson-row strong { font-size: .77rem; }
  .course-lesson-row small { display: none; }
  .course-sidebar-card { padding: 18px; border-radius: 17px; }
  .lesson-heading { align-items: flex-start; flex-direction: column; gap: 10px; }
  .lesson-heading h1 { font-size: 2.15rem; }
  .lesson-video-frame { padding: 5px; border-radius: 15px; }
  .lesson-video-shell { border-radius: 11px; }
  .lesson-note { padding: 15px; }
  .lesson-navigation { grid-template-columns: 1fr; }
  .lesson-navigation > span:empty { display: none; }
  .lesson-nav-next { text-align: left; }
  .lesson-curriculum { border-radius: 16px; }
  .member-login-card { padding: 28px 22px; border-radius: 20px; }
  .member-login-help { align-items: flex-start; flex-direction: column; }
}


/* Final student UX polish */
.course-module-collapsible > summary { list-style: none; cursor: pointer; user-select: none; }
.course-module-collapsible > summary::-webkit-details-marker { display: none; }
.course-module-summary-end { display: flex; align-items: center; gap: 10px; }
.course-module-toggle { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; color: var(--member-brand); background: #e8f5f1; transition: transform .18s ease, background .18s ease; }
.course-module-toggle svg { width: 16px; height: 16px; transition: transform .18s ease; }
.course-module-collapsible[open] .course-module-toggle svg { transform: rotate(90deg); }
.course-module-collapsible:not([open]) .course-module-heading:hover { background: #f4faf8; }
.course-module-collapsible[open] .course-module-heading { border-bottom: 1px solid var(--member-line); }
.course-modules { gap: 14px; }
.lesson-navigation { gap: 12px; }
.lesson-nav-card { min-height: 82px; display: grid; align-items: center; gap: 12px; padding: 14px 16px; border-radius: 16px; }
.lesson-nav-prev { grid-template-columns: 38px minmax(0, 1fr); text-align: left; }
.lesson-nav-next { grid-template-columns: minmax(0, 1fr) 38px; text-align: left; border-color: #0a3931; color: #fff; background: linear-gradient(135deg, #082b26, #0d574b); box-shadow: 0 12px 26px rgba(8, 55, 47, .14); }
.lesson-nav-next:hover { border-color: #0a3931; background: linear-gradient(135deg, #0a332c, #0f6556); }
.lesson-nav-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: var(--member-brand); background: #eaf6f2; font-size: 1.15rem; font-weight: 900; }
.lesson-nav-next .lesson-nav-icon { color: #083329; background: #bfeadf; }
.lesson-nav-copy { min-width: 0; display: grid; gap: 4px; }
.lesson-nav-card small { font-size: .66rem; letter-spacing: .02em; }
.lesson-nav-card strong { overflow: hidden; color: #294940; font-size: .8rem; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.lesson-nav-next small { color: #9bcac0; }
.lesson-nav-next strong { color: #fff; }
.lesson-nav-next.is-complete .lesson-nav-icon { color: #0b5145; }
@media (max-width: 640px) {
  .course-module-heading { grid-template-columns: 44px minmax(0, 1fr); }
  .course-module-summary-end { grid-column: 2; justify-self: start; }
  .course-module-count { grid-column: auto; justify-self: auto; }
  .lesson-navigation { grid-template-columns: 1fr; }
  .lesson-nav-card { min-height: 74px; }
  .lesson-nav-card strong { white-space: normal; }
}

/* source: premium.css */
/* Final public storefront polish — scoped to .site-premium */
.site-premium{--p-ink:#14332e;--p-ink-2:#31544d;--p-muted:#6a7f79;--p-green:#0d6f60;--p-green-2:#13957d;--p-dark:#071f1c;--p-line:#dfe9e6;--p-soft:#f4f8f7;--p-warm:#fbf8f1;--p-gold:#c49642;--p-white:#fff;background:#fff;color:var(--p-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.site-premium *{box-sizing:border-box}.site-premium img{max-width:100%;display:block}.site-premium .container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.site-premium h1,.site-premium h2,.site-premium h3,.site-premium p{margin-top:0}.site-premium h1,.site-premium h2,.site-premium h3{letter-spacing:-.035em}.site-premium p{color:var(--p-muted);line-height:1.72}.site-premium a{text-decoration:none}.site-premium svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.premium-header{position:sticky;top:0;z-index:80;border-bottom:1px solid rgba(219,231,227,.86);background:rgba(255,255,255,.93);backdrop-filter:blur(18px)}.premium-header-inner{min-height:76px;display:flex;align-items:center;gap:28px}.premium-brand{display:inline-flex;align-items:center;gap:10px;color:var(--p-dark);min-width:max-content}.premium-brand-mark{display:grid;place-items:center;width:39px;height:39px;border-radius:12px;background:var(--p-dark);color:#fff;font-weight:900;letter-spacing:-.04em;box-shadow:0 7px 18px rgba(7,31,28,.14)}.premium-brand-copy{display:grid;line-height:1.02}.premium-brand-copy strong{font-size:.94rem;font-weight:900}.premium-brand-copy small{margin-top:4px;color:var(--p-green);font-size:.64rem;font-weight:900;letter-spacing:.22em}.premium-nav{margin-left:auto;display:flex;align-items:center;gap:4px}.premium-nav a{padding:10px 13px;border-radius:10px;color:#4b625c;font-size:.82rem;font-weight:750}.premium-nav a:hover,.premium-nav a[aria-current=page]{background:#f1f7f5;color:var(--p-dark)}.premium-nav .premium-nav-account{margin-left:8px;padding:11px 16px;border:1px solid #cfdeda;background:#fff;color:var(--p-dark);font-weight:850}.premium-nav .premium-nav-account:hover{background:var(--p-dark);color:#fff;border-color:var(--p-dark)}.premium-menu-button{display:none}
.premium-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--p-green);font-size:.7rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.premium-kicker:before{content:"";width:23px;height:2px;border-radius:2px;background:var(--p-gold)}.premium-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 20px;border:1px solid var(--p-green);border-radius:13px;background:var(--p-green);color:#fff;font-size:.84rem;font-weight:900;box-shadow:0 12px 28px rgba(13,111,96,.18);transition:.18s ease}.premium-button svg{width:17px}.premium-button:hover{transform:translateY(-1px);background:#095c50;border-color:#095c50}.premium-button.light{border-color:#fff;background:#fff;color:var(--p-dark);box-shadow:none}.premium-inline-link{display:inline-flex;align-items:center;gap:7px;color:var(--p-green);font-size:.81rem;font-weight:850}.premium-inline-link svg{width:16px}.premium-inline-link.light{color:#d3eee8}
.premium-hero{overflow:hidden;padding:88px 0 78px;background:radial-gradient(circle at 85% 15%,rgba(44,157,136,.14),transparent 32%),linear-gradient(180deg,#fff,#f8fbfa)}.premium-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);align-items:center;gap:72px}.premium-hero-copy h1{max-width:730px;margin-bottom:22px;color:var(--p-dark);font-size:clamp(2.65rem,5vw,4.75rem);line-height:1.02;font-weight:900}.premium-hero-copy h1 em{font-style:normal;color:var(--p-green)}.premium-hero-copy>p{max-width:680px;margin-bottom:27px;font-size:1.06rem}.premium-hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.premium-trust-strip{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:32px;padding-top:25px;border-top:1px solid var(--p-line)}.premium-trust-strip span{display:flex;align-items:center;gap:7px;color:#526963;font-size:.72rem;font-weight:780}.premium-trust-strip svg{width:16px;color:var(--p-green)}
.premium-hero-showcase{position:relative;min-height:510px}.premium-hero-product{position:absolute;display:flex;align-items:flex-end;gap:12px;width:260px;padding:14px;border:1px solid rgba(220,232,228,.9);border-radius:22px;background:rgba(255,255,255,.94);box-shadow:0 26px 60px rgba(20,51,46,.13);color:var(--p-dark);transition:.2s ease}.premium-hero-product:hover{transform:translateY(-5px)}.premium-hero-product img{width:100px;height:138px;object-fit:contain;border-radius:12px;background:#f5f7f6}.premium-hero-product span{display:grid;gap:5px;min-width:0;padding-bottom:5px}.premium-hero-product small{color:var(--p-green);font-size:.61rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.premium-hero-product strong{font-size:.82rem;line-height:1.25}.premium-hero-product b{font-size:1rem}.premium-hero-product-1{top:5px;right:22px;z-index:3}.premium-hero-product-2{top:175px;left:10px;z-index:2}.premium-hero-product-3{right:8px;bottom:4px;z-index:1}.premium-hero-seal{position:absolute;left:180px;top:75px;z-index:6;display:flex;align-items:center;gap:9px;padding:14px 16px;border-radius:18px;background:var(--p-dark);color:#fff;box-shadow:0 16px 38px rgba(7,31,28,.2)}.premium-hero-seal strong{font-size:1.5rem}.premium-hero-seal span{font-size:.65rem;line-height:1.35;color:#b9d9d2}
.premium-section{padding:88px 0}.premium-section-intro{background:#fff}.premium-section-heading{display:grid;grid-template-columns:1fr minmax(260px,430px);align-items:end;gap:50px;margin-bottom:38px}.premium-section-heading.compact{margin-bottom:30px}.premium-section-heading h2{max-width:710px;margin:0;color:var(--p-dark);font-size:clamp(2rem,4vw,3.35rem);line-height:1.08}.premium-section-heading>p{margin:0}.premium-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.premium-product-card{overflow:hidden;border:1px solid var(--p-line);border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(20,51,46,.06);transition:.2s ease}.premium-product-card:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(20,51,46,.11)}.premium-product-media{position:relative;display:grid;place-items:center;height:320px;padding:25px;background:linear-gradient(145deg,#f4f8f7,#ecf4f1)}.premium-product-media img{max-width:82%;max-height:100%;object-fit:contain;filter:drop-shadow(0 16px 18px rgba(16,43,38,.14))}.premium-product-type{position:absolute;top:16px;left:16px;padding:7px 9px;border-radius:999px;background:rgba(7,31,28,.9);color:#fff;font-size:.61rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.premium-product-body{padding:23px}.premium-product-topline{display:flex;justify-content:space-between;gap:10px;margin-bottom:13px;color:#6c807a;font-size:.65rem;font-weight:760}.premium-product-topline span:first-child{color:var(--p-green)}.premium-product-body h3{margin-bottom:10px;font-size:1.18rem;line-height:1.22}.premium-product-body h3 a{color:var(--p-dark)}.premium-product-body p{min-height:90px;margin-bottom:20px;font-size:.8rem;line-height:1.65}.premium-product-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:18px;border-top:1px solid #edf2f0}.premium-product-footer strong{font-size:1.16rem;color:var(--p-dark)}.premium-product-footer a{display:inline-flex;align-items:center;gap:6px;color:var(--p-green);font-size:.74rem;font-weight:900}.premium-product-footer svg{width:15px}
.premium-process{background:var(--p-warm)}.premium-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.premium-process-grid article{display:flex;gap:18px;padding:26px;border:1px solid #ebe6db;border-radius:19px;background:rgba(255,255,255,.76)}.premium-process-grid article>span{display:grid;place-items:center;flex:0 0 43px;height:43px;border-radius:12px;background:var(--p-dark);color:#fff;font-size:.69rem;font-weight:900}.premium-process-grid h3{margin-bottom:7px;font-size:1rem}.premium-process-grid p{margin:0;font-size:.77rem}.premium-values{padding:94px 0;background:var(--p-dark);color:#fff}.premium-values-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.premium-values-copy h2{margin-bottom:18px;font-size:clamp(2.1rem,4vw,3.3rem);line-height:1.08;color:#fff}.premium-values-copy p{color:#a9c4bd}.premium-value-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}.premium-value-list article{display:flex;gap:13px;padding:20px;border:1px solid rgba(211,238,232,.12);border-radius:16px;background:rgba(255,255,255,.04)}.premium-value-list svg{flex:0 0 21px;width:21px;color:#7fd2c0}.premium-value-list article div{display:grid;gap:4px}.premium-value-list strong{font-size:.83rem}.premium-value-list span{color:#9eb9b2;font-size:.69rem;line-height:1.5}
.premium-page-head{padding:76px 0 56px;background:linear-gradient(180deg,#f6faf9,#fff)}.premium-page-head-grid{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:end}.premium-page-head h1{max-width:800px;margin-bottom:16px;font-size:clamp(2.35rem,5vw,4.1rem);line-height:1.04;color:var(--p-dark)}.premium-page-head p{max-width:680px;margin:0}.premium-store-summary{display:grid;min-width:190px;padding:22px;border:1px solid var(--p-line);border-radius:18px;background:#fff;box-shadow:0 12px 34px rgba(20,51,46,.06)}.premium-store-summary strong{font-size:2rem}.premium-store-summary span{font-size:.78rem;font-weight:850}.premium-store-summary small{margin-top:5px;color:var(--p-muted);font-size:.67rem}.premium-store-section{padding-top:50px}.premium-store-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.premium-store-toolbar>div{display:grid;gap:3px}.premium-store-toolbar strong{font-size:1rem}.premium-store-toolbar span{color:var(--p-muted);font-size:.72rem}.premium-search input{width:280px;min-height:44px;padding:0 14px;border:1px solid #dbe6e3;border-radius:12px;background:#fff;font:inherit;color:var(--p-dark);outline:0}.premium-search input:focus{border-color:#79b9ac;box-shadow:0 0 0 4px rgba(13,111,96,.08)}.premium-empty{padding:70px 0;text-align:center}
.premium-product-hero{padding:72px 0 66px;background:linear-gradient(180deg,#f8fbfa,#fff)}.premium-product-hero-grid{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);gap:70px;align-items:center}.premium-product-image{position:relative;display:grid;place-items:center;min-height:520px;padding:38px;border:1px solid var(--p-line);border-radius:28px;background:linear-gradient(145deg,#edf5f2,#f8faf9);box-shadow:0 25px 60px rgba(20,51,46,.09)}.premium-product-image img{max-height:440px;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(16,43,38,.15))}.premium-product-image>span{position:absolute;left:20px;top:20px;padding:8px 11px;border-radius:999px;background:var(--p-dark);color:#fff;font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.premium-breadcrumb{display:flex;gap:8px;margin-bottom:20px;color:#7b8e89;font-size:.7rem}.premium-breadcrumb a{color:var(--p-green);font-weight:800}.premium-product-copy h1{margin-bottom:18px;font-size:clamp(2.4rem,4.5vw,4.25rem);line-height:1.04;color:var(--p-dark)}.premium-product-lead{font-size:.98rem}.premium-highlight-list{display:grid;gap:10px;margin:24px 0;padding:0;list-style:none}.premium-highlight-list li{display:flex;align-items:flex-start;gap:9px;color:#425e57;font-size:.79rem}.premium-highlight-list svg{flex:0 0 18px;width:18px;color:var(--p-green)}.premium-buy-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:26px;padding:20px;border:1px solid #d8e6e2;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(20,51,46,.07)}.premium-buy-panel>div{display:grid;gap:2px}.premium-buy-panel small{color:var(--p-muted);font-size:.65rem;font-weight:800}.premium-buy-panel strong{font-size:1.8rem;color:var(--p-dark)}.premium-buy-panel span{color:var(--p-muted);font-size:.65rem}.premium-pin-note{display:flex;align-items:center;gap:7px;margin:14px 0 0;font-size:.68rem}.premium-pin-note svg{width:16px;color:var(--p-green)}.premium-fact-band{border-block:1px solid var(--p-line);background:#fbfdfc}.premium-fact-grid{display:grid;grid-template-columns:repeat(4,1fr)}.premium-fact-grid article{display:flex;gap:12px;padding:25px 22px;border-right:1px solid var(--p-line)}.premium-fact-grid article:last-child{border-right:0}.premium-fact-grid svg{flex:0 0 19px;width:19px;color:var(--p-green)}.premium-fact-grid div{display:grid;gap:4px}.premium-fact-grid strong{font-size:.75rem}.premium-fact-grid span{color:var(--p-muted);font-size:.65rem;line-height:1.5}.premium-two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}.premium-copy-block h2{font-size:clamp(2rem,3.8vw,3.15rem);line-height:1.08;color:var(--p-dark)}.premium-copy-block p{font-size:.9rem}.premium-audience-card,.premium-bonus-card{padding:28px;border:1px solid var(--p-line);border-radius:20px;background:var(--p-soft)}.premium-audience-card h3{margin-bottom:18px;font-size:1rem}.premium-audience-card ul,.premium-bonus-card ul{display:grid;gap:12px;margin:0;padding:0;list-style:none}.premium-audience-card li,.premium-bonus-card li{display:flex;gap:9px;color:#49625c;font-size:.78rem;line-height:1.5}.premium-audience-card svg,.premium-bonus-card svg{flex:0 0 17px;width:17px;color:var(--p-green)}.premium-content-section{background:var(--p-soft)}.premium-modules{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.premium-module{display:flex;gap:17px;padding:24px;border:1px solid #dce8e5;border-radius:17px;background:#fff}.premium-module>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:10px;background:#e9f5f2;color:var(--p-green);font-size:.66rem;font-weight:900}.premium-module h3{margin-bottom:7px;font-size:.95rem}.premium-module p{margin:0;font-size:.73rem}.premium-bonus-layout{align-items:center}.premium-purchase-band{padding:47px 0;background:var(--p-dark);color:#fff}.premium-purchase-band-inner{display:flex;align-items:center;justify-content:space-between;gap:36px}.premium-purchase-band span,.premium-purchase-band p{color:#a8c3bc}.premium-purchase-band h2{margin:5px 0;font-size:1.8rem;color:#fff}.premium-purchase-band p{margin:0;font-size:.74rem}.premium-purchase-band-inner>div:last-child{display:flex;align-items:center;gap:22px}.premium-purchase-band strong{font-size:1.7rem}.premium-faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px}.premium-faq h2{font-size:2.4rem;line-height:1.08}.premium-accordion{border-top:1px solid var(--p-line)}.premium-accordion details{border-bottom:1px solid var(--p-line)}.premium-accordion summary{padding:19px 2px;cursor:pointer;color:var(--p-dark);font-size:.82rem;font-weight:850}.premium-accordion p{padding:0 2px 18px;margin:0;font-size:.76rem}.premium-notice{padding:38px 0;background:#fff9ec;border-top:1px solid #f0e3c6}.premium-notice strong{display:block;margin-bottom:11px;font-size:.82rem;color:#6b501c}.premium-notice p{margin:5px 0;color:#79673f;font-size:.7rem}
.premium-checkout{min-height:calc(100vh - 76px);padding:55px 0 80px;background:#f4f8f7}.premium-checkout-shell{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:34px;align-items:start}.premium-checkout-main{padding:30px;border:1px solid var(--p-line);border-radius:22px;background:#fff;box-shadow:0 16px 45px rgba(20,51,46,.07)}.premium-back{display:inline-block;margin-bottom:26px;color:var(--p-muted);font-size:.71rem;font-weight:800}.premium-checkout-title h1{margin-bottom:8px;font-size:2.2rem;color:var(--p-dark)}.premium-checkout-title p{margin-bottom:22px;font-size:.79rem}.premium-checkout-progress{margin:23px 0 30px}.premium-checkout-progress span{display:flex!important;align-items:center;gap:8px}.premium-checkout-progress b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e6eeeb;color:#58706a;font-size:.65rem}.premium-checkout-progress small{font-size:.68rem}.premium-checkout-progress .active b,.premium-checkout-progress .complete b{background:var(--p-green);color:#fff}.premium-checkout-form fieldset{margin:0 0 25px;padding:0;border:0}.premium-checkout-form legend{margin-bottom:14px;color:var(--p-dark);font-size:.82rem;font-weight:900}.premium-checkout-form .field>span{font-size:.72rem}.premium-checkout-form input{border-radius:11px}.premium-payment-disclosure{display:flex;gap:11px;margin:18px 0;padding:15px;border:1px solid #d6e9e4;border-radius:13px;background:#f2faf8}.premium-payment-disclosure svg{flex:0 0 18px;width:18px;color:var(--p-green)}.premium-payment-disclosure strong{display:block;margin-bottom:3px;font-size:.72rem}.premium-payment-disclosure p{margin:0;font-size:.66rem}.premium-pay-button{width:100%;margin-top:15px;border:0}.premium-order-summary{position:sticky;top:101px}.premium-summary-card{padding:25px;border:1px solid var(--p-line);border-radius:22px;background:#fff;box-shadow:0 16px 45px rgba(20,51,46,.07)}.premium-summary-label{display:block;margin-bottom:17px;color:var(--p-green);font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.premium-summary-product{display:flex;gap:14px;align-items:center;padding-bottom:19px;border-bottom:1px solid var(--p-line)}.premium-summary-product img{width:68px;height:88px;object-fit:contain;border-radius:9px;background:#f4f7f6}.premium-summary-product div{display:grid;gap:5px}.premium-summary-product strong{font-size:.82rem}.premium-summary-product span{color:var(--p-muted);font-size:.63rem;line-height:1.4}.premium-summary-row{display:flex;justify-content:space-between;gap:20px;padding:15px 0;color:#58706a;font-size:.73rem}.premium-summary-row.total{border-top:1px solid var(--p-line);color:var(--p-dark);font-size:.87rem}.premium-summary-row.total strong:last-child{font-size:1.15rem}.premium-summary-once{padding:11px 12px;border-radius:10px;background:#f4f8f7;font-size:.64rem}.premium-summary-benefits{display:grid;gap:9px;margin-top:17px}.premium-summary-benefits span{display:flex;align-items:center;gap:8px;color:#5c716c;font-size:.67rem}.premium-summary-benefits svg{width:15px;color:var(--p-green)}.premium-summary-help{display:grid;gap:5px;margin-top:13px;padding:16px 18px;border:1px solid var(--p-line);border-radius:15px;background:rgba(255,255,255,.72)}.premium-summary-help strong{font-size:.7rem}.premium-summary-help a{color:var(--p-green);font-size:.69rem;font-weight:850}.premium-checkout .checkout-feedback{margin-top:16px;border-radius:12px}
.premium-footer{padding:58px 0 0;background:#061b18;color:#fff}.premium-footer-main{display:grid;grid-template-columns:1.6fr .7fr .9fr 1.2fr;gap:46px;padding-bottom:43px}.premium-footer .premium-brand{color:#fff}.premium-footer .premium-brand-mark{background:#fff;color:var(--p-dark)}.premium-footer-brand p{max-width:320px;margin-top:17px;color:#94afa8;font-size:.73rem}.premium-footer h2{margin-bottom:14px;color:#d7e8e4;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.premium-footer-main>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start}.premium-footer a{margin:4px 0;color:#9eb7b1;font-size:.7rem}.premium-footer a:hover{color:#fff}.premium-footer-note{margin-top:8px;color:#bdcc9a!important;font-size:.64rem!important}.premium-footer-legal{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid rgba(255,255,255,.09);color:#79928c;font-size:.62rem}.premium-footer-legal>div{display:flex;gap:16px;flex-wrap:wrap}.premium-footer-legal a{margin:0}.premium-whatsapp{background:var(--p-green)!important;box-shadow:0 12px 28px rgba(13,111,96,.26)!important}
.site-premium .page-hero{padding:70px 0 50px;background:linear-gradient(180deg,#f5faf8,#fff)}.site-premium .page-hero h1{font-size:clamp(2.3rem,4vw,3.6rem);color:var(--p-dark)}.site-premium .page-hero p{font-size:.9rem}.site-premium .legal-content,.site-premium .content-card,.site-premium .faq-card{border-radius:18px}.site-premium .section{padding-block:72px}.site-premium .button{border-radius:12px}.site-premium .footer-grid,.site-premium .site-footer{display:none!important}
@media(max-width:1050px){.premium-hero-grid{grid-template-columns:1fr;gap:35px}.premium-hero-showcase{min-height:390px;max-width:640px;width:100%;margin:auto}.premium-hero-product-1{right:0}.premium-hero-product-2{left:0;top:115px}.premium-hero-product-3{right:20px}.premium-hero-seal{left:47%;top:52px}.premium-product-grid{grid-template-columns:repeat(2,1fr)}.premium-product-grid .premium-product-card:last-child:nth-child(odd){grid-column:1/-1;max-width:570px}.premium-product-hero-grid{grid-template-columns:.8fr 1.2fr;gap:40px}.premium-fact-grid{grid-template-columns:repeat(2,1fr)}.premium-fact-grid article:nth-child(2){border-right:0}.premium-fact-grid article:nth-child(-n+2){border-bottom:1px solid var(--p-line)}.premium-values-grid,.premium-two-col,.premium-faq{gap:42px}.premium-footer-main{grid-template-columns:1.4fr repeat(3,1fr);gap:28px}}
@media(max-width:820px){.premium-header-inner{min-height:68px}.premium-menu-button{display:grid;margin-left:auto}.premium-nav{position:absolute;top:68px;left:0;right:0;display:none;padding:12px 20px 18px;border-bottom:1px solid var(--p-line);background:#fff;box-shadow:0 14px 28px rgba(20,51,46,.08)}.premium-nav.is-open{display:grid}.premium-nav a{padding:12px}.premium-nav .premium-nav-account{margin:7px 0 0}.premium-hero{padding-top:60px}.premium-hero-copy h1{font-size:clamp(2.5rem,8vw,4rem)}.premium-section-heading,.premium-page-head-grid,.premium-values-grid,.premium-two-col,.premium-faq,.premium-checkout-shell{grid-template-columns:1fr}.premium-section-heading{gap:15px}.premium-process-grid{grid-template-columns:1fr}.premium-product-hero-grid{grid-template-columns:1fr}.premium-product-image{min-height:390px}.premium-product-image img{max-height:330px}.premium-order-summary{position:static}.premium-footer-main{grid-template-columns:1.4fr 1fr 1fr}.premium-footer-main>div:last-child{grid-column:1/-1}.premium-purchase-band-inner{align-items:flex-start;flex-direction:column}.premium-purchase-band-inner>div:last-child{width:100%;justify-content:space-between}}
@media(max-width:620px){.site-premium .container{width:min(100% - 28px,1180px)}.premium-header-inner{gap:12px}.premium-brand-copy strong{font-size:.86rem}.premium-hero{padding:44px 0 52px}.premium-hero-copy h1{font-size:2.55rem}.premium-hero-copy>p{font-size:.92rem}.premium-hero-actions{align-items:flex-start;flex-direction:column}.premium-trust-strip{display:grid;grid-template-columns:1fr 1fr}.premium-hero-showcase{min-height:510px}.premium-hero-product{width:235px}.premium-hero-product-1{right:0}.premium-hero-product-2{left:0;top:175px}.premium-hero-product-3{right:0;bottom:0}.premium-hero-seal{left:0;top:100px}.premium-section{padding:62px 0}.premium-section-heading h2{font-size:2.05rem}.premium-product-grid{grid-template-columns:1fr}.premium-product-grid .premium-product-card:last-child:nth-child(odd){grid-column:auto;max-width:none}.premium-product-media{height:285px}.premium-product-body p{min-height:0}.premium-value-list{grid-template-columns:1fr}.premium-page-head{padding:50px 0 35px}.premium-page-head h1{font-size:2.5rem}.premium-page-head-grid{gap:24px}.premium-store-summary{min-width:0}.premium-store-toolbar{align-items:stretch;flex-direction:column}.premium-search input{width:100%}.premium-product-hero{padding:44px 0}.premium-product-copy h1{font-size:2.45rem}.premium-product-image{min-height:340px;padding:25px}.premium-buy-panel{align-items:stretch;flex-direction:column}.premium-buy-panel .premium-button{width:100%}.premium-fact-grid{grid-template-columns:1fr}.premium-fact-grid article,.premium-fact-grid article:nth-child(2){border-right:0;border-bottom:1px solid var(--p-line)}.premium-fact-grid article:last-child{border-bottom:0}.premium-modules{grid-template-columns:1fr}.premium-purchase-band-inner>div:last-child{align-items:stretch;flex-direction:column;width:100%}.premium-purchase-band .premium-button{width:100%}.premium-faq h2{font-size:2rem}.premium-checkout{padding:28px 0 55px}.premium-checkout-main{padding:20px;border-radius:17px}.premium-checkout-title h1{font-size:1.9rem}.premium-footer-main{grid-template-columns:1fr 1fr}.premium-footer-main>div:first-child,.premium-footer-main>div:last-child{grid-column:1/-1}.premium-footer-legal{align-items:flex-start;flex-direction:column}.premium-trust-strip span{font-size:.66rem}}

/* source: storefront-natural.css */
/* Natural storefront refinement: product-first, compact and mobile-first */
.site-premium{--shop-ink:#0d2b27;--shop-text:#3d5751;--shop-muted:#738680;--shop-green:#0c7a67;--shop-green-dark:#075d50;--shop-line:#e2e9e6;--shop-soft:#f6f9f8;--shop-warm:#fbf8f2;--shop-card:#fff;--shop-shadow:0 12px 32px rgba(18,49,43,.07)}
.site-premium .container{width:min(1160px,calc(100% - 36px))}
.site-premium h1,.site-premium h2,.site-premium h3{letter-spacing:-.03em}
.site-premium p{line-height:1.58}

/* Header: lighter and quieter */
.premium-header{background:rgba(255,255,255,.97);border-bottom:1px solid #e8eeec;backdrop-filter:blur(12px)}
.premium-header-inner{min-height:66px;gap:22px}
.premium-brand{gap:9px}
.premium-brand-mark{width:36px;height:36px;border-radius:11px;box-shadow:none;font-size:.94rem}
.premium-brand-copy strong{font-size:.9rem}
.premium-brand-copy small{margin-top:3px;font-size:.58rem;letter-spacing:.18em}
.premium-nav a{font-size:.76rem;padding:9px 11px}
.premium-nav .premium-nav-account{padding:9px 13px;border-color:#dce6e2}
.premium-menu-button{width:46px;height:46px;border-radius:13px;border:1px solid #dbe5e2;background:#fff;box-shadow:none}

.shop-kicker{display:block;margin-bottom:10px;color:var(--shop-green);font-size:.68rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.shop-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:12px;background:var(--shop-green);color:#fff;font-size:.82rem;font-weight:850;box-shadow:0 10px 24px rgba(12,122,103,.17);transition:transform .16s ease,background .16s ease}
.shop-button:hover{background:var(--shop-green-dark);transform:translateY(-1px)}
.shop-button svg,.shop-text-link svg{width:16px}
.shop-text-link{display:inline-flex;align-items:center;gap:6px;color:var(--shop-green);font-size:.78rem;font-weight:800}

/* Homepage */
.shop-home-hero{padding:64px 0 58px;background:linear-gradient(180deg,#fff 0%,#f8fbfa 100%)}
.shop-home-hero-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(360px,.97fr);gap:64px;align-items:center}
.shop-home-copy h1{max-width:690px;margin:0 0 18px;color:var(--shop-ink);font-size:clamp(2.55rem,5vw,4.45rem);line-height:1.01;font-weight:900}
.shop-home-copy>p{max-width:610px;margin:0 0 24px;color:#60766f;font-size:1rem}
.shop-home-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.shop-payment-line{display:flex;align-items:center;gap:10px;margin-top:25px;color:#71847e;font-size:.7rem;font-weight:750}
.shop-payment-line i{display:block;width:3px;height:3px;border-radius:50%;background:#a7b7b2}
.shop-feature-card{display:grid;grid-template-columns:minmax(0,1fr) 160px;overflow:hidden;border:1px solid #e1eae7;border-radius:24px;background:#fff;box-shadow:0 22px 54px rgba(18,49,43,.1);color:var(--shop-ink)}
.shop-feature-image{display:grid;place-items:center;min-height:400px;padding:26px;background:linear-gradient(145deg,#edf4f1,#f8faf9)}
.shop-feature-image img{max-height:340px;width:100%;object-fit:contain;filter:drop-shadow(0 14px 18px rgba(12,39,34,.12))}
.shop-feature-copy{display:flex;flex-direction:column;justify-content:flex-end;padding:24px 20px;background:#fff}
.shop-feature-copy>span{margin-bottom:auto;color:var(--shop-green);font-size:.65rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.shop-feature-copy strong{font-size:1.08rem;line-height:1.2}
.shop-feature-copy small{margin-top:7px;color:var(--shop-muted);font-size:.66rem;line-height:1.45}
.shop-feature-copy b{margin-top:16px;font-size:1.35rem}
.shop-home-products{padding:72px 0}
.shop-heading-row{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:27px}
.shop-heading-row h2{max-width:660px;margin:0;color:var(--shop-ink);font-size:clamp(1.9rem,3.5vw,2.8rem);line-height:1.08}
.shop-how{padding:34px 0 44px;border-top:1px solid var(--shop-line);background:#fbfcfc}
.shop-how-inner{display:grid;grid-template-columns:270px 1fr;gap:42px;align-items:center}
.shop-how h2{margin:0;color:var(--shop-ink);font-size:1.55rem}
.shop-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.shop-steps>div{display:flex;gap:11px;padding:8px 20px;border-left:1px solid var(--shop-line)}
.shop-steps b{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:#eaf4f1;color:var(--shop-green);font-size:.68rem}
.shop-steps span{display:grid;gap:2px}
.shop-steps strong{font-size:.78rem}
.shop-steps small{color:var(--shop-muted);font-size:.66rem;line-height:1.4}

/* Product cards */
.shop-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.shop-product-card{overflow:hidden;border:1px solid #e2e9e6;border-radius:19px;background:var(--shop-card);box-shadow:0 8px 24px rgba(18,49,43,.055);transition:transform .16s ease,box-shadow .16s ease}
.shop-product-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(18,49,43,.095)}
.shop-product-link{display:block;height:100%;color:var(--shop-ink)}
.shop-product-media{position:relative;display:grid;place-items:center;height:230px;padding:18px;background:#f4f8f6}
.shop-product-media img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 11px 15px rgba(18,49,43,.1))}
.shop-product-media>span{position:absolute;top:12px;left:12px;padding:6px 8px;border-radius:999px;background:rgba(13,43,39,.9);color:#fff;font-size:.57rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}
.shop-product-info{padding:18px}
.shop-product-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}
.shop-product-meta span{color:var(--shop-green);font-size:.62rem;font-weight:800}
.shop-product-meta small{color:#899791;font-size:.59rem}
.shop-product-info h3{margin:0;color:var(--shop-ink);font-size:1.02rem;line-height:1.24}
.shop-product-info p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.55em;margin:9px 0 15px;color:#6e817b;font-size:.72rem;line-height:1.48}
.shop-product-price{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid #edf1ef}
.shop-product-price strong{font-size:1.08rem}
.shop-product-price span{display:inline-flex;align-items:center;gap:5px;color:var(--shop-green);font-size:.68rem;font-weight:850}
.shop-product-price svg{width:14px}

/* Store */
.shop-store-head{padding:46px 0 24px;background:#fff}
.shop-store-title{display:flex;align-items:end;justify-content:space-between;gap:30px}
.shop-store-title h1{margin:0 0 7px;color:var(--shop-ink);font-size:clamp(2.2rem,4.5vw,3.6rem);line-height:1}
.shop-store-title p{max-width:590px;margin:0;color:#6e817b;font-size:.86rem}
.shop-search input{width:250px;min-height:43px;padding:0 13px;border:1px solid #dfe7e4;border-radius:11px;background:#fff;color:var(--shop-ink);font:inherit;font-size:.78rem;outline:0}
.shop-search input:focus{border-color:#7fb9ae;box-shadow:0 0 0 3px rgba(12,122,103,.08)}
.shop-filter-row{display:flex;gap:7px;margin-top:24px;overflow:auto;padding-bottom:2px;scrollbar-width:none}
.shop-filter-row::-webkit-scrollbar{display:none}
.shop-filter-row button{flex:0 0 auto;padding:8px 13px;border:1px solid #e0e8e5;border-radius:999px;background:#fff;color:#60756e;font:inherit;font-size:.7rem;font-weight:780;cursor:pointer}
.shop-filter-row button.is-active{border-color:var(--shop-ink);background:var(--shop-ink);color:#fff}
.shop-store-list{padding:20px 0 74px}
.shop-empty{padding:55px 0;text-align:center}
.shop-empty h2{margin-bottom:8px;font-size:1.25rem}
.shop-empty p{font-size:.78rem}

/* Product page */
.shop-product-hero{padding:52px 0 50px;background:linear-gradient(180deg,#f8fbfa,#fff)}
.shop-product-hero-grid{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);gap:58px;align-items:center}
.shop-product-image{position:relative;display:grid;place-items:center;min-height:440px;padding:30px;border:1px solid #e0e9e6;border-radius:23px;background:#f2f7f5}
.shop-product-image img{max-height:380px;width:100%;object-fit:contain;filter:drop-shadow(0 16px 19px rgba(18,49,43,.13))}
.shop-product-image>span{position:absolute;top:16px;left:16px;padding:7px 9px;border-radius:999px;background:var(--shop-ink);color:#fff;font-size:.6rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.shop-breadcrumb{display:flex;align-items:center;gap:7px;margin-bottom:15px;color:#8a9893;font-size:.66rem}
.shop-breadcrumb a{color:var(--shop-green);font-weight:800}
.shop-product-copy h1{margin:0 0 15px;color:var(--shop-ink);font-size:clamp(2.35rem,4.4vw,3.8rem);line-height:1.02}
.shop-product-lead{max-width:680px;margin-bottom:19px;color:#60756e;font-size:.92rem}
.shop-highlight-list{display:grid;gap:8px;margin:0 0 23px;padding:0;list-style:none}
.shop-highlight-list li{display:flex;gap:8px;align-items:flex-start;color:#425c55;font-size:.75rem}
.shop-highlight-list svg{flex:0 0 17px;width:17px;color:var(--shop-green)}
.shop-buy-row{display:flex;align-items:center;gap:22px;margin-top:24px}
.shop-buy-row>div{display:grid;min-width:110px}
.shop-buy-row small{color:#84938e;font-size:.61rem;font-weight:750}
.shop-buy-row strong{font-size:1.65rem;color:var(--shop-ink)}
.shop-pay-methods{margin:10px 0 0;color:#879690!important;font-size:.64rem!important}
.shop-meta-band{border-block:1px solid var(--shop-line);background:#fff}
.shop-meta-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.shop-meta-grid>div{display:grid;gap:3px;padding:19px 22px;border-right:1px solid var(--shop-line)}
.shop-meta-grid>div:last-child{border-right:0}
.shop-meta-grid small{color:#879690;font-size:.6rem}
.shop-meta-grid strong{color:#39554e;font-size:.73rem}
.shop-product-details{padding:72px 0}
.shop-details-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.shop-details-intro h2{margin:0 0 28px;color:var(--shop-ink);font-size:clamp(1.75rem,3vw,2.45rem);line-height:1.13}
.shop-details-intro h3{margin:0 0 10px;font-size:.84rem}
.shop-details-intro ul{display:grid;gap:8px;margin:0;padding-left:18px;color:#61766f;font-size:.73rem;line-height:1.48}
.shop-section-title{margin-bottom:17px}
.shop-section-title h2{margin:0;color:var(--shop-ink);font-size:1.65rem}
.shop-module{display:grid;grid-template-columns:36px 1fr;gap:14px;padding:17px 0;border-bottom:1px solid var(--shop-line)}
.shop-module:first-of-type{border-top:1px solid var(--shop-line)}
.shop-module>span{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#edf5f2;color:var(--shop-green);font-size:.61rem;font-weight:850}
.shop-module h3{margin:1px 0 5px;font-size:.88rem}
.shop-module p{margin:0;color:#72857f;font-size:.7rem;line-height:1.5}
.shop-included{padding:58px 0;background:#f7faf9}
.shop-included-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.shop-included h2{margin:0;color:var(--shop-ink);font-size:1.8rem;line-height:1.12}
.shop-included ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:0;padding:0;list-style:none}
.shop-included li{display:flex;gap:8px;color:#4e6861;font-size:.72rem;line-height:1.45}
.shop-included li svg{flex:0 0 16px;width:16px;color:var(--shop-green)}
.shop-faq-section{padding:70px 0}
.shop-faq-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:70px}
.shop-faq-grid h2{margin:0;font-size:2rem;color:var(--shop-ink)}
.shop-accordion{border-top:1px solid var(--shop-line)}
.shop-accordion details{border-bottom:1px solid var(--shop-line)}
.shop-accordion summary{padding:17px 0;color:var(--shop-ink);font-size:.76rem;font-weight:830;cursor:pointer}
.shop-accordion p{margin:0;padding:0 0 16px;color:#6b8079;font-size:.71rem}
.shop-notes{padding:0 0 58px}
.shop-notes details{border:1px solid #ece5d5;border-radius:13px;background:#fffaf1}
.shop-notes summary{padding:14px 16px;color:#6c592f;font-size:.69rem;font-weight:820;cursor:pointer}
.shop-notes details>div{padding:0 16px 14px}
.shop-notes p{margin:5px 0;color:#796c4d;font-size:.66rem}

/* Checkout: quieter and transaction-focused */
.shop-checkout{min-height:calc(100vh - 66px);padding:38px 0 66px;background:#f6f9f8}
.shop-checkout-head{max-width:720px;margin-bottom:22px}
.shop-back{display:inline-block;margin-bottom:18px;color:#778a84;font-size:.68rem;font-weight:780}
.shop-checkout-head .shop-kicker{margin-bottom:7px}
.shop-checkout-head h1{margin:0;color:var(--shop-ink);font-size:2.2rem;line-height:1.05}
.shop-checkout-shell{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(290px,.88fr);gap:26px;align-items:start}
.shop-checkout-main{padding:26px;border:1px solid var(--shop-line);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(18,49,43,.05)}
.shop-checkout-form fieldset{margin:0 0 23px;padding:0;border:0}
.shop-checkout-form legend{margin-bottom:13px;color:var(--shop-ink);font-size:.82rem;font-weight:870}
.shop-checkout-form .field>span{font-size:.7rem}
.shop-checkout-form input{min-height:46px;border-radius:10px}
.shop-checkout-form .field small{font-size:.61rem}
.shop-phone-note{margin:11px 0 0;color:#6c8079!important;font-size:.64rem!important;line-height:1.5!important}
.shop-checkout-form .consent{font-size:.65rem;line-height:1.45}
.shop-checkout-form .consent.optional{margin-top:10px}
.shop-pay-button{width:100%;margin-top:18px;border:0}
.shop-order-summary{padding:22px;border:1px solid var(--shop-line);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(18,49,43,.05)}
.shop-summary-product{display:flex;gap:13px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--shop-line)}
.shop-summary-product img{width:64px;height:82px;object-fit:contain;border-radius:9px;background:#f4f7f6}
.shop-summary-product div{display:grid;gap:3px}
.shop-summary-product span{color:var(--shop-green);font-size:.59rem;font-weight:820;text-transform:uppercase}
.shop-summary-product strong{font-size:.82rem;line-height:1.25}
.shop-summary-product small{color:#899791;font-size:.6rem}
.shop-summary-total{display:flex;align-items:center;justify-content:space-between;padding:18px 0 8px}
.shop-summary-total span{color:#71847e;font-size:.7rem}
.shop-summary-total strong{font-size:1.35rem}
.shop-order-summary>p{margin:4px 0 13px;color:#758882;font-size:.65rem;line-height:1.45}
.shop-order-summary>a{color:var(--shop-green);font-size:.67rem;font-weight:820}
.shop-checkout .checkout-feedback{margin-top:15px;border-radius:11px}
.shop-checkout-page .premium-whatsapp{display:none!important}

/* Footer */
.premium-footer{padding:42px 0 0;background:#081e1a}
.premium-footer-main{grid-template-columns:1.35fr .7fr .85fr 1fr;gap:32px;padding-bottom:32px}
.premium-footer-brand p{max-width:300px;margin-top:13px;font-size:.68rem;line-height:1.55}
.premium-footer h2{margin-bottom:11px;font-size:.63rem}
.premium-footer a{font-size:.66rem}
.premium-footer-note{display:none}
.premium-footer-legal{padding:15px 0;font-size:.58rem}
.premium-whatsapp{width:56px!important;height:56px!important;right:18px!important;bottom:18px!important;box-shadow:0 10px 22px rgba(12,122,103,.22)!important}
.premium-whatsapp svg{width:23px!important}

@media(max-width:980px){
  .shop-home-hero-grid{grid-template-columns:1fr;gap:34px}.shop-feature-card{max-width:650px}.shop-home-copy h1{max-width:800px}.shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-details-grid,.shop-included-grid,.shop-faq-grid{gap:42px}.premium-footer-main{grid-template-columns:1.2fr 1fr 1fr}.premium-footer-main>div:last-child{grid-column:1/-1}
}

@media(max-width:820px){
  .premium-header-inner{min-height:62px}.premium-nav{top:62px}.shop-home-hero{padding:44px 0}.shop-home-copy h1{font-size:clamp(2.25rem,8vw,3.25rem)}.shop-feature-card{grid-template-columns:1fr 150px}.shop-feature-image{min-height:330px}.shop-feature-image img{max-height:285px}.shop-how-inner{grid-template-columns:1fr;gap:19px}.shop-product-hero-grid,.shop-details-grid,.shop-included-grid,.shop-faq-grid,.shop-checkout-shell{grid-template-columns:1fr}.shop-product-image{min-height:360px}.shop-product-image img{max-height:310px}.shop-meta-grid{grid-template-columns:1fr 1fr 1fr}.shop-included ul{grid-template-columns:1fr 1fr}.shop-order-summary{position:static}.shop-checkout-shell .shop-order-summary{order:-1}
}

@media(max-width:620px){
  .site-premium .container{width:min(100% - 26px,1160px)}
  .premium-header-inner{min-height:60px}.premium-nav{top:60px;padding-inline:13px}.premium-brand-mark{width:34px;height:34px}.premium-menu-button{width:43px;height:43px}
  .shop-home-hero{padding:30px 0 34px}.shop-home-copy .shop-kicker{margin-bottom:8px}.shop-home-copy h1{font-size:2.05rem;line-height:1.06;margin-bottom:13px}.shop-home-copy>p{font-size:.84rem;margin-bottom:19px}.shop-home-actions{gap:13px}.shop-button{min-height:45px;padding-inline:17px}.shop-payment-line{margin-top:19px;font-size:.63rem}
  .shop-feature-card{grid-template-columns:1fr 118px;border-radius:18px}.shop-feature-image{min-height:260px;padding:16px}.shop-feature-image img{max-height:225px}.shop-feature-copy{padding:16px 13px}.shop-feature-copy strong{font-size:.9rem}.shop-feature-copy small{font-size:.58rem}.shop-feature-copy b{font-size:1.15rem;margin-top:11px}
  .shop-home-products{padding:46px 0}.shop-heading-row{align-items:flex-start;gap:15px;margin-bottom:19px}.shop-heading-row h2{font-size:1.65rem}.shop-heading-row>.shop-text-link{margin-top:26px;white-space:nowrap;font-size:.66rem}
  .shop-product-grid{grid-template-columns:1fr;gap:14px}.shop-product-card{border-radius:16px}.shop-product-link{display:grid;grid-template-columns:116px 1fr;min-height:158px}.shop-product-media{height:100%;min-height:158px;padding:10px}.shop-product-media>span{top:8px;left:8px;padding:5px 6px;font-size:.5rem}.shop-product-info{display:flex;flex-direction:column;padding:13px 13px 11px}.shop-product-meta{display:block;margin-bottom:6px}.shop-product-meta small{display:none}.shop-product-info h3{font-size:.91rem;line-height:1.2}.shop-product-info p{display:none}.shop-product-price{margin-top:auto;padding-top:10px}.shop-product-price strong{font-size:1rem}.shop-product-price span{font-size:.61rem}
  .shop-how{padding:28px 0 32px}.shop-how h2{font-size:1.35rem}.shop-steps{grid-template-columns:1fr}.shop-steps>div{padding:10px 0;border-left:0;border-top:1px solid var(--shop-line)}.shop-steps>div:first-child{border-top:0}.shop-steps small{font-size:.62rem}
  .shop-store-head{padding:30px 0 15px}.shop-store-title{align-items:stretch;flex-direction:column;gap:16px}.shop-store-title h1{font-size:2.05rem}.shop-store-title p{font-size:.76rem}.shop-search input{width:100%}.shop-filter-row{margin-top:17px}.shop-store-list{padding:14px 0 48px}
  .shop-product-hero{padding:30px 0}.shop-product-hero-grid{gap:27px}.shop-product-image{min-height:280px;padding:18px;border-radius:18px}.shop-product-image img{max-height:245px}.shop-product-image>span{top:11px;left:11px;font-size:.52rem}.shop-breadcrumb{margin-bottom:11px}.shop-product-copy h1{font-size:2.02rem;line-height:1.05;margin-bottom:12px}.shop-product-lead{font-size:.8rem;margin-bottom:15px}.shop-highlight-list{gap:7px;margin-bottom:18px}.shop-highlight-list li{font-size:.69rem}.shop-buy-row{justify-content:space-between;gap:13px;margin-top:18px}.shop-buy-row>div{min-width:90px}.shop-buy-row strong{font-size:1.4rem}.shop-buy-row .shop-button{flex:1}.shop-pay-methods{font-size:.6rem!important}
  .shop-meta-grid{grid-template-columns:1fr}.shop-meta-grid>div{padding:12px 2px;border-right:0;border-bottom:1px solid var(--shop-line)}.shop-meta-grid>div:last-child{border-bottom:0}.shop-meta-grid small{font-size:.56rem}.shop-meta-grid strong{font-size:.67rem}
  .shop-product-details{padding:46px 0}.shop-details-grid{gap:34px}.shop-details-intro h2{font-size:1.6rem;margin-bottom:22px}.shop-details-intro ul{font-size:.69rem}.shop-section-title h2{font-size:1.45rem}.shop-module{padding:14px 0}.shop-module h3{font-size:.82rem}.shop-module p{font-size:.66rem}
  .shop-included{padding:40px 0}.shop-included-grid{gap:22px}.shop-included h2{font-size:1.5rem}.shop-included ul{grid-template-columns:1fr;gap:8px}.shop-included li{font-size:.68rem}
  .shop-faq-section{padding:44px 0}.shop-faq-grid{gap:20px}.shop-faq-grid h2{font-size:1.55rem}.shop-accordion summary{font-size:.72rem}.shop-accordion p{font-size:.67rem}.shop-notes{padding-bottom:40px}
  .shop-checkout{padding:24px 0 48px}.shop-checkout-head{margin-bottom:17px}.shop-back{margin-bottom:12px}.shop-checkout-head h1{font-size:1.85rem}.shop-checkout-shell{gap:13px}.shop-checkout-main,.shop-order-summary{padding:17px;border-radius:15px}.shop-summary-product img{width:55px;height:70px}.shop-summary-total{padding-top:14px}.shop-checkout-form legend{font-size:.76rem}.shop-checkout-form .field>span{font-size:.66rem}.shop-checkout-form .field small{font-size:.58rem}.shop-phone-note{font-size:.6rem!important}.shop-checkout-form .consent{font-size:.61rem}
  .premium-footer{padding-top:34px}.premium-footer-main{grid-template-columns:1fr 1fr;gap:25px 20px}.premium-footer-main>div:first-child,.premium-footer-main>div:last-child{grid-column:1/-1}.premium-footer-legal{align-items:flex-start;flex-direction:column;gap:10px}.premium-whatsapp{width:52px!important;height:52px!important;right:14px!important;bottom:14px!important}
}

/* source: content-natural.css */
/* Supporting pages should feel like part of the shop, not documentation. */
.compact-page-hero{padding:56px 0 38px;background:linear-gradient(180deg,#f8fbfa,#fff)}
.compact-page-hero .narrow{max-width:820px}
.compact-page-hero h1{max-width:760px;margin:0 0 13px;color:#0d2b27;font-size:clamp(2.25rem,4.8vw,3.8rem);line-height:1.04}
.compact-page-hero p{max-width:650px;margin:0;color:#687d76;font-size:.88rem}
.compact-guide{padding-top:28px}
.compact-guide .process-list{max-width:900px}
.compact-guide .process-list article{grid-template-columns:42px 1fr;padding:22px 0;border-bottom:1px solid #e4eae8}
.compact-guide .process-list article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#edf5f2;color:#0c7a67;font-size:.61rem;font-weight:850}
.compact-guide .process-list h2{margin:0 0 5px;color:#163a34;font-size:1rem}
.compact-guide .process-list p{margin:0;color:#71847e;font-size:.72rem;line-height:1.5}
.compact-help{margin-top:24px;padding:16px 18px;border-radius:12px;background:#f4f8f6;color:#657a73;font-size:.69rem}
.compact-help p{margin:0}
.compact-help a{color:#0c7a67;font-weight:820}
.editorial-copy{max-width:760px;padding-top:8px;padding-bottom:8px}
.editorial-copy h2{max-width:640px;margin:0 0 19px;color:#0d2b27;font-size:clamp(1.65rem,3vw,2.3rem);line-height:1.12}
.editorial-copy p{margin:0 0 14px;color:#687d76;font-size:.78rem}
.editorial-copy .shop-button{margin-top:10px}
.compact-contact-grid{max-width:900px;grid-template-columns:1fr 1fr;gap:16px}
.compact-contact-grid .contact-tile{min-height:150px;padding:22px;border:1px solid #e1e8e5;border-radius:16px;box-shadow:none}
.compact-contact-grid .contact-tile>span{width:38px;height:38px;border-radius:11px}
.compact-contact-grid .contact-tile strong{font-size:.85rem}
.compact-contact-grid .contact-tile p{font-size:.67rem}

/* Existing FAQ, legal and security pages: reduce visual bulk while keeping useful detail. */
.site-premium .page-hero{padding-top:52px;padding-bottom:42px}
.site-premium .page-hero h1{font-size:clamp(2.1rem,4.5vw,3.5rem);line-height:1.05}
.site-premium .page-hero p{font-size:.82rem;line-height:1.55}
.site-premium .section{padding-top:54px;padding-bottom:54px}
.site-premium .accordion details{border-color:#e2e9e6}
.site-premium .accordion summary{padding:16px 0;font-size:.74rem}
.site-premium .accordion details p{font-size:.69rem;line-height:1.52}
.site-premium .contact-tile,.site-premium .values-grid article,.site-premium .transparency-grid article{box-shadow:none}

@media(max-width:620px){
  .compact-page-hero{padding:30px 0 22px}.compact-page-hero h1{font-size:2rem}.compact-page-hero p{font-size:.75rem}
  .site-premium .page-hero{padding-top:30px;padding-bottom:25px}.site-premium .page-hero h1{font-size:1.95rem}.site-premium .page-hero p{font-size:.74rem}
  .site-premium .section{padding-top:38px;padding-bottom:38px}
  .compact-guide{padding-top:12px}.compact-guide .process-list article{padding:16px 0}.compact-guide .process-list h2{font-size:.9rem}.compact-guide .process-list p{font-size:.67rem}
  .compact-contact-grid{grid-template-columns:1fr;gap:12px}.compact-contact-grid .contact-tile{min-height:0;padding:17px}
  .editorial-copy h2{font-size:1.5rem}.editorial-copy p{font-size:.7rem}
  .site-premium .accordion summary{font-size:.7rem}.site-premium .accordion details p{font-size:.65rem}
}

/* source: bolos-course-visuals.css */
/* Bolos de Casa Pro — imagens finais por contexto */

/* Loja: a capa vertical deve permanecer legível sem parecer um mockup solto. */
.shop-product-card[data-kind="course"] .shop-product-media,
.shop-feature-card[href="/produto/bolos-de-casa-pro/"] .shop-feature-image {
  background: linear-gradient(145deg, #edf4f1, #f8faf9);
}

.shop-product-card[data-kind="course"] .shop-product-media img,
.shop-feature-card[href="/produto/bolos-de-casa-pro/"] .shop-feature-image img {
  border-radius: 10px;
  filter: drop-shadow(0 12px 18px rgba(8, 35, 30, .14));
}

/* Página do produto: a arte criada para este contexto é horizontal. */
.shop-product-page.is-course .shop-product-hero-grid {
  grid-template-columns: minmax(420px, 1.05fr) minmax(0, .95fr);
  gap: 48px;
}

.shop-product-page.is-course .shop-product-image {
  min-height: 0;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  padding: 0;
  background: #061d19;
}

.shop-product-page.is-course .shop-product-image img {
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: cover;
  filter: none;
}

.shop-product-page.is-course .shop-product-image > span {
  background: rgba(6, 29, 25, .88);
  backdrop-filter: blur(6px);
}

/* Biblioteca do aluno: substituir a capa gráfica genérica pela arte real. */
.student-course-cover.has-course-image {
  padding: 0;
  background: #061d19;
}

.student-course-cover.has-course-image::before,
.student-course-cover.has-course-image::after,
.student-course-cover.has-course-image .student-course-cover-tag,
.student-course-cover.has-course-image > strong {
  display: none;
}

.student-course-cover.has-course-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Página principal do curso dentro da área do aluno. */
.member-course-cover-art.has-course-image {
  overflow: hidden;
  width: 100%;
  max-width: 470px;
  aspect-ratio: 16 / 9;
  margin-left: auto;
  padding: 0;
  border-radius: 22px;
  background: #061d19;
  transform: none;
}

.member-course-cover-art.has-course-image::before,
.member-course-cover-art.has-course-image::after {
  display: none;
}

.member-course-cover-art.has-course-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 980px) {
  .shop-product-page.is-course .shop-product-hero-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .member-course-hero .member-course-cover {
    display: block;
    width: 100%;
  }

  .member-course-cover-art.has-course-image {
    max-width: 720px;
    margin: 0;
  }

  .member-cover-meta {
    justify-content: flex-start;
  }
}

@media (max-width: 620px) {
  .shop-product-page.is-course .shop-product-image {
    min-height: 0;
    aspect-ratio: 16 / 9;
    padding: 0;
    border-radius: 16px;
  }

  .shop-product-card[data-kind="course"] .shop-product-media img {
    border-radius: 8px;
  }

  .student-course-card {
    grid-template-rows: auto 1fr;
  }

  .student-course-cover.has-course-image {
    aspect-ratio: 16 / 9;
    min-height: 0;
  }

  .member-course-cover-art.has-course-image {
    border-radius: 16px;
  }
}

/* source: signature-2026.css */
/* Pronto Digital MZ — App Platform 2026
   Camada visual responsiva. Não altera pagamentos, autenticação, entrega ou dados. */

:root {
  color-scheme: dark;
  --app-bg: #07131f;
  --app-bg-2: #091824;
  --app-surface: #0d1c29;
  --app-surface-2: #112332;
  --app-surface-3: #172b3b;
  --app-glass: rgba(13, 28, 41, .88);
  --app-text: #f5f8fa;
  --app-text-2: #c8d1d8;
  --app-muted: #8797a5;
  --app-line: rgba(202, 220, 232, .13);
  --app-line-strong: rgba(202, 220, 232, .22);
  --app-accent: #29c566;
  --app-accent-2: #52db82;
  --app-accent-soft: rgba(41, 197, 102, .12);
  --app-gold: #f1ad32;
  --app-danger: #ff6666;
  --app-shadow: 0 18px 50px rgba(0, 0, 0, .22);
  --app-shadow-soft: 0 8px 24px rgba(0, 0, 0, .14);
  --app-radius-sm: 12px;
  --app-radius: 18px;
  --app-radius-lg: 24px;
  --app-sidebar: 226px;
  --app-max: 1240px;
}

:root[data-theme="light"] {
  color-scheme: light;
  --app-bg: #f3f6f8;
  --app-bg-2: #eef2f5;
  --app-surface: #ffffff;
  --app-surface-2: #f8fafb;
  --app-surface-3: #edf2f5;
  --app-glass: rgba(255, 255, 255, .90);
  --app-text: #13202b;
  --app-text-2: #384955;
  --app-muted: #6d7c87;
  --app-line: rgba(20, 43, 58, .11);
  --app-line-strong: rgba(20, 43, 58, .18);
  --app-accent: #159447;
  --app-accent-2: #22ae57;
  --app-accent-soft: rgba(21, 148, 71, .10);
  --app-gold: #b97810;
  --app-shadow: 0 18px 45px rgba(29, 48, 62, .09);
  --app-shadow-soft: 0 8px 22px rgba(29, 48, 62, .07);
}

html { scroll-behavior: smooth; background: var(--app-bg); }
html[data-theme] { transition: background-color .2s ease; }
body.site-signature,
body.member-body,
body.member-login-body {
  margin: 0;
  color: var(--app-text);
  background: var(--app-bg);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body.site-signature *, body.member-body *, body.member-login-body * { box-sizing: border-box; }
body.site-signature a, body.member-body a, body.member-login-body a { color: inherit; }
body.site-signature h1, body.site-signature h2, body.site-signature h3,
body.member-body h1, body.member-body h2, body.member-body h3,
body.member-login-body h1, body.member-login-body h2 { color: var(--app-text); text-wrap: balance; }
body.site-signature p, body.member-body p, body.member-login-body p { text-wrap: pretty; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: var(--app-sidebar) minmax(0, 1fr); }
.app-sidebar {
  position: sticky; top: 0; height: 100vh; z-index: 120; display: flex; flex-direction: column; gap: 22px;
  padding: 22px 16px 18px; border-right: 1px solid var(--app-line); background: var(--app-bg-2);
}
.app-brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; min-width: 0; }
.app-brand-mark {
  width: 38px; height: 38px; flex: 0 0 38px; display: grid; grid-template-columns: 1fr 1fr; place-items: center;
  border: 1px solid rgba(241, 173, 50, .62); border-radius: 11px; color: var(--app-gold);
  background: linear-gradient(145deg, rgba(241,173,50,.08), rgba(41,197,102,.03)); font-size: .62rem; font-weight: 900; letter-spacing: -.08em;
}
.app-brand-copy { display: grid; line-height: 1.02; min-width: 0; }
.app-brand-copy strong { color: var(--app-text); font-size: .92rem; white-space: nowrap; }
.app-brand-copy small { margin-top: 4px; color: var(--app-accent); font-size: .61rem; font-weight: 900; letter-spacing: .18em; }
.app-side-nav { display: grid; gap: 7px; }
.app-side-nav a {
  min-height: 44px; display: flex; align-items: center; gap: 12px; padding: 0 12px; border: 1px solid transparent;
  border-radius: 12px; color: var(--app-muted); font-size: .82rem; font-weight: 760; text-decoration: none; transition: .17s ease;
}
.app-side-nav a svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.app-side-nav a:hover { color: var(--app-text); background: var(--app-surface); border-color: var(--app-line); }
.app-side-nav a[aria-current="page"] { color: var(--app-accent-2); background: var(--app-accent-soft); border-color: rgba(41,197,102,.17); }
.app-sidebar-spacer { flex: 1; }
.app-side-account { display: flex; align-items: center; gap: 10px; padding: 11px; border: 1px solid var(--app-line); border-radius: 14px; background: var(--app-surface); text-decoration: none; }
.app-side-account > svg { width: 20px; height: 20px; fill: none; stroke: var(--app-accent); stroke-width: 1.7; }
.app-side-account > span { display: grid; min-width: 0; }
.app-side-account small { color: var(--app-muted); font-size: .62rem; }
.app-side-account strong { margin-top: 2px; font-size: .77rem; }
.app-side-actions { display: grid; grid-template-columns: 1fr 42px; gap: 8px; }
.app-side-actions > a { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--app-line); border-radius: 12px; background: var(--app-surface); }
.app-side-actions > a svg { width: 18px; height: 18px; fill: none; stroke: var(--app-muted); stroke-width: 1.7; }
.app-stage { min-width: 0; min-height: 100vh; display: flex; flex-direction: column; }
.site-signature .premium-header.app-topbar {
  position: sticky; top: 0; z-index: 105; min-height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 10px 22px; border-bottom: 1px solid var(--app-line); background: var(--app-glass); backdrop-filter: blur(18px) saturate(1.2);
}
.app-mobile-brand { display: none; }
.app-topbar-context { display: grid; line-height: 1.08; }
.app-topbar-context small { color: var(--app-muted); font-size: .61rem; font-weight: 700; }
.app-topbar-context strong { margin-top: 4px; font-size: .86rem; }
.app-topbar-actions { display: flex; align-items: center; gap: 8px; }
.app-theme-toggle { width: 42px; height: 42px; display: grid; place-items: center; padding: 0; border: 1px solid var(--app-line); border-radius: 12px; color: var(--app-text-2); background: var(--app-surface); cursor: pointer; }
.app-theme-toggle-wide { width: auto; grid-template-columns: 20px 20px; gap: 4px; }
.theme-icon { grid-area: 1/1; display: grid; place-items: center; opacity: 0; transform: scale(.7); transition: .17s ease; }
.theme-icon svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; }
:root[data-theme="dark"] .theme-icon-sun, :root[data-theme="light"] .theme-icon-moon { opacity: 1; transform: scale(1); }
.app-theme-toggle-wide .theme-icon-sun { grid-column: 1; }
.app-theme-toggle-wide .theme-icon-moon { grid-column: 2; }
.app-theme-toggle-wide .theme-icon { grid-row: 1; opacity: .42; transform: scale(.86); }
:root[data-theme="dark"] .app-theme-toggle-wide .theme-icon-sun,
:root[data-theme="light"] .app-theme-toggle-wide .theme-icon-moon { opacity: 1; color: var(--app-accent); transform: scale(1); }
.app-account-button { min-height: 42px; display: inline-flex; align-items: center; gap: 8px; padding: 0 13px; border: 1px solid var(--app-line); border-radius: 12px; color: var(--app-text-2); background: var(--app-surface); text-decoration: none; font-size: .75rem; font-weight: 760; }
.app-account-button svg { width: 17px; height: 17px; fill: none; stroke: var(--app-accent); stroke-width: 1.7; }
.app-content { flex: 1; min-width: 0; }
.app-page-container { width: min(calc(100% - 40px), var(--app-max)); margin-inline: auto; }
.app-bottom-nav { display: none; }

.site-signature .app-eyebrow,
.site-signature .shop-kicker,
.site-signature .eyebrow,
.site-signature .premium-kicker { display: inline-flex; align-items: center; gap: 7px; color: var(--app-accent); font-size: .68rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.site-signature .shop-button,
.site-signature .premium-button,
.site-signature .button,
.site-signature .app-primary-button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 0 18px; border: 1px solid rgba(255,255,255,.05); border-radius: 13px; color: #fff; background: linear-gradient(135deg, #1ca74f, #2cca65); text-decoration: none; font-size: .82rem; font-weight: 820; box-shadow: 0 9px 24px rgba(30,190,89,.18); transition: .17s ease; }
.site-signature .shop-button:hover, .site-signature .premium-button:hover, .site-signature .button:hover { transform: translateY(-1px); filter: brightness(1.04); }
.site-signature .shop-button svg, .site-signature .premium-button svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.9; }

.app-home-dashboard { padding: 24px 0 18px; }
.app-home-toolbar { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 16px; }
.app-home-toolbar h1 { margin: 7px 0 0; font-size: clamp(1.8rem, 3vw, 2.65rem); line-height: 1; letter-spacing: -.045em; }
.app-home-shortcuts { display: flex; align-items: center; gap: 9px; }
.app-home-shortcuts a { min-height: 38px; display: inline-flex; align-items: center; gap: 7px; padding: 0 12px; border: 1px solid var(--app-line); border-radius: 11px; background: var(--app-surface); color: var(--app-text-2); text-decoration: none; font-size: .72rem; font-weight: 780; }
.app-home-shortcuts svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.app-search-launch, .app-search-box { min-height: 54px; display: flex; align-items: center; gap: 12px; padding: 0 16px; border: 1px solid var(--app-line); border-radius: 15px; background: var(--app-surface); color: var(--app-muted); text-decoration: none; box-shadow: var(--app-shadow-soft); }
.app-search-launch b { margin-left: auto; color: var(--app-accent); font-size: .72rem; }
.app-search-symbol { width: 25px; height: 25px; display: grid; place-items: center; font-size: 1.45rem; line-height: 1; color: var(--app-text-2); transform: rotate(-10deg); }
.app-category-chips { display: flex; align-items: center; gap: 8px; margin-top: 12px; overflow-x: auto; scrollbar-width: none; }
.app-category-chips::-webkit-scrollbar { display: none; }
.app-category-chips a, .app-category-chips button { flex: 0 0 auto; min-height: 34px; display: inline-flex; align-items: center; padding: 0 13px; border: 1px solid var(--app-line); border-radius: 999px; color: var(--app-text-2); background: var(--app-surface); font: inherit; font-size: .69rem; font-weight: 760; text-decoration: none; cursor: pointer; }
.app-category-chips .is-active { color: #fff; border-color: rgba(41,197,102,.38); background: linear-gradient(135deg, #199848, #29c566); }
.app-feature-banner { min-height: 320px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr); overflow: hidden; margin-top: 16px; border: 1px solid var(--app-line); border-radius: var(--app-radius-lg); background: linear-gradient(135deg, var(--app-surface), var(--app-surface-2)); text-decoration: none; box-shadow: var(--app-shadow); }
.app-feature-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(26px, 4vw, 48px); }
.app-badge { align-self: flex-start; display: inline-flex; padding: 6px 9px; border: 1px solid rgba(241,173,50,.45); border-radius: 999px; color: var(--app-gold); background: rgba(241,173,50,.07); font-size: .62rem; font-weight: 850; text-transform: uppercase; letter-spacing: .05em; }
.app-feature-copy h2 { max-width: 650px; margin: 13px 0 10px; font-size: clamp(2rem, 4vw, 3.7rem); line-height: .98; letter-spacing: -.05em; }
.app-feature-copy p { max-width: 610px; margin: 0; color: var(--app-text-2); line-height: 1.6; font-size: .93rem; }
.app-feature-copy > div { display: flex; align-items: center; gap: 20px; margin-top: 22px; }
.app-feature-copy > div strong { color: var(--app-accent-2); font-size: 1.55rem; }
.app-feature-copy > div span { display: inline-flex; align-items: center; gap: 7px; color: var(--app-text); font-size: .75rem; font-weight: 800; }
.app-feature-copy > div svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.app-feature-visual { min-height: 320px; display: grid; place-items: center; padding: 20px; background: radial-gradient(circle at center, rgba(41,197,102,.13), transparent 58%), linear-gradient(135deg, rgba(255,255,255,.02), transparent); }
.app-feature-visual img { width: 100%; height: 100%; max-height: 310px; object-fit: contain; filter: drop-shadow(0 18px 26px rgba(0,0,0,.28)); }
.app-trust-strip { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 10px; }
.app-trust-strip span { min-height: 38px; display: flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid var(--app-line); border-radius: 11px; color: var(--app-muted); background: var(--app-surface); font-size: .68rem; font-weight: 720; }
.app-trust-strip svg { width: 15px; height: 15px; fill: none; stroke: var(--app-accent); stroke-width: 1.7; }
.app-home-section { padding: 24px 0 30px; }
.app-home-section-soft { border-top: 1px solid var(--app-line); background: var(--app-bg-2); }
.app-section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.app-section-head h2 { margin: 5px 0 0; font-size: 1.35rem; letter-spacing: -.025em; }
.app-section-head > a { display: inline-flex; align-items: center; gap: 7px; color: var(--app-accent); text-decoration: none; font-size: .72rem; font-weight: 800; }
.app-section-head > a svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.app-product-rail { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.app-benefit-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.app-benefit-grid article { min-height: 112px; display: grid; grid-template-columns: 38px 1fr; gap: 12px; padding: 15px; border: 1px solid var(--app-line); border-radius: 15px; background: var(--app-surface); }
.app-benefit-grid article > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; color: var(--app-accent); background: var(--app-accent-soft); font-size: .68rem; font-weight: 900; }
.app-benefit-grid strong { font-size: .82rem; }
.app-benefit-grid p { margin: 5px 0 0; color: var(--app-muted); font-size: .72rem; line-height: 1.5; }

.site-signature .app-product-card { overflow: hidden; border: 1px solid var(--app-line); border-radius: 16px; background: var(--app-surface); box-shadow: none; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.site-signature .app-product-card:hover { transform: translateY(-2px); border-color: var(--app-line-strong); box-shadow: var(--app-shadow-soft); }
.app-product-card .shop-product-link { height: 100%; display: flex; flex-direction: column; color: inherit; text-decoration: none; }
.app-product-media { position: relative; aspect-ratio: 16 / 10; display: grid; place-items: center; overflow: hidden; padding: 10px; background: linear-gradient(145deg, var(--app-surface-2), var(--app-bg-2)); }
.app-product-media img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 8px 13px rgba(0,0,0,.20)); }
.app-product-type { position: absolute; top: 9px; left: 9px; padding: 4px 7px; border: 1px solid rgba(255,255,255,.08); border-radius: 7px; color: #eaf2f5; background: rgba(5,13,20,.72); backdrop-filter: blur(8px); font-size: .55rem; font-weight: 820; }
:root[data-theme="light"] .app-product-type { color: #fff; background: rgba(18,32,43,.76); }
.app-product-info { flex: 1; display: flex; flex-direction: column; padding: 12px; }
.app-product-category { color: var(--app-muted); font-size: .58rem; font-weight: 720; }
.app-product-info h3 { margin: 5px 0 5px; font-size: .92rem; line-height: 1.18; letter-spacing: -.02em; }
.app-product-info p { margin: 0 0 12px; color: var(--app-muted); font-size: .69rem; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.app-product-price { margin-top: auto; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-top: 10px; border-top: 1px solid var(--app-line); }
.app-product-price strong { color: var(--app-accent); font-size: 1rem; }
.app-product-price span { display: inline-flex; align-items: center; gap: 5px; color: var(--app-text-2); font-size: .61rem; font-weight: 760; }
.app-product-price svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.app-product-card.is-compact .app-product-media { aspect-ratio: 16 / 11; }
.app-product-card.is-compact .app-product-info h3 { font-size: .85rem; }
.app-store-head { padding: 24px 0 12px; }
.app-store-title { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-bottom: 14px; }
.app-store-title h1 { margin: 5px 0 5px; font-size: clamp(1.7rem, 3vw, 2.5rem); letter-spacing: -.04em; }
.app-store-title p { max-width: 650px; margin: 0; color: var(--app-muted); font-size: .8rem; }
.app-store-count { color: var(--app-muted); font-size: .68rem; white-space: nowrap; }
.app-search-box input { width: 100%; border: 0; outline: 0; color: var(--app-text); background: transparent; font: inherit; font-size: .8rem; }
.app-search-box input::placeholder { color: var(--app-muted); }
.app-store-list { padding: 10px 0 34px; }
.app-store-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.app-empty { padding: 44px 20px; text-align: center; color: var(--app-muted); }
.app-empty h2 { margin: 0 0 8px; }

.app-product-hero { padding: 24px 0 16px; }
.site-signature .shop-product-hero-grid.app-product-hero-grid { display: grid; grid-template-columns: minmax(300px, .8fr) minmax(0, 1.2fr); gap: 18px; align-items: stretch; }
.app-product-showcase, .app-product-copy { border: 1px solid var(--app-line); border-radius: 20px; background: var(--app-surface); }
.app-product-showcase { min-height: 460px; padding: 18px; }
.app-product-art { position: relative; width: 100%; height: 100%; min-height: 420px; display: grid; place-items: center; border-radius: 15px; overflow: hidden; background: radial-gradient(circle at 50% 42%, var(--app-accent-soft), transparent 55%), var(--app-bg-2); }
.app-product-art img { width: 100%; height: 100%; max-height: 430px; object-fit: contain; padding: 12px; filter: drop-shadow(0 18px 22px rgba(0,0,0,.25)); }
.app-product-art > span { position: absolute; left: 12px; bottom: 12px; padding: 5px 8px; border: 1px solid var(--app-line); border-radius: 8px; color: var(--app-text-2); background: var(--app-glass); font-size: .6rem; font-weight: 780; }
.app-product-copy { padding: clamp(22px, 3vw, 34px); }
.app-breadcrumb { display: flex; align-items: center; gap: 7px; margin-bottom: 12px; color: var(--app-muted); font-size: .66rem; }
.app-breadcrumb a { text-decoration: none; }
.app-product-copy h1 { margin: 12px 0 10px; max-width: 760px; font-size: clamp(2rem, 4.4vw, 4.1rem); line-height: .99; letter-spacing: -.055em; }
.app-product-copy .shop-product-lead { margin: 0; color: var(--app-text-2); font-size: .9rem; line-height: 1.62; }
.app-product-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 17px 0; }
.app-product-stats > div { min-height: 68px; display: flex; flex-direction: column; justify-content: center; padding: 10px; border: 1px solid var(--app-line); border-radius: 12px; background: var(--app-bg-2); }
.app-product-stats small { color: var(--app-muted); font-size: .57rem; }
.app-product-stats strong { margin-top: 4px; font-size: .72rem; line-height: 1.3; }
.app-highlight-list { display: grid; grid-template-columns: 1fr 1fr; gap: 7px 12px; margin: 0; padding: 0; list-style: none; }
.app-highlight-list li { display: flex; align-items: flex-start; gap: 7px; color: var(--app-text-2); font-size: .69rem; line-height: 1.45; }
.app-highlight-list svg { width: 15px; height: 15px; flex: 0 0 15px; margin-top: 1px; fill: none; stroke: var(--app-accent); stroke-width: 2; }
.app-buy-row { display: flex; align-items: center; gap: 14px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--app-line); }
.app-buy-row > div { display: grid; min-width: 120px; }
.app-buy-row small { color: var(--app-muted); font-size: .58rem; }
.app-buy-row strong { margin-top: 2px; color: var(--app-accent); font-size: 1.45rem; }
.app-buy-row .shop-button { flex: 1; }
.shop-pay-methods { margin: 9px 0 0; color: var(--app-muted); font-size: .62rem; }
.app-product-content { padding: 2px 0 20px; }
.app-product-content-grid { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 14px; align-items: start; }
.app-product-main { display: grid; gap: 12px; }
.app-content-card { padding: 20px; border: 1px solid var(--app-line); border-radius: 18px; background: var(--app-surface); }
.app-content-card > h2 { max-width: 820px; margin: 7px 0 15px; font-size: 1.22rem; line-height: 1.25; letter-spacing: -.025em; }
.app-audience h3 { margin: 0 0 9px; color: var(--app-text-2); font-size: .75rem; }
.app-audience > div { display: flex; flex-wrap: wrap; gap: 7px; }
.app-audience span { padding: 7px 9px; border: 1px solid var(--app-line); border-radius: 9px; color: var(--app-text-2); background: var(--app-bg-2); font-size: .64rem; }
.app-module-list { display: grid; gap: 8px; }
.app-module-card { display: grid; grid-template-columns: 34px 1fr; gap: 11px; padding: 12px; border: 1px solid var(--app-line); border-radius: 13px; background: var(--app-bg-2); }
.app-module-card > span { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 9px; color: var(--app-accent); background: var(--app-accent-soft); font-size: .62rem; font-weight: 900; }
.app-module-card h3 { margin: 0; font-size: .8rem; }
.app-module-card p { margin: 4px 0 0; color: var(--app-muted); font-size: .67rem; line-height: 1.5; }
.app-included-list { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0; padding: 0; list-style: none; }
.app-included-list li { display: flex; align-items: flex-start; gap: 8px; padding: 10px; border: 1px solid var(--app-line); border-radius: 11px; background: var(--app-bg-2); color: var(--app-text-2); font-size: .68rem; line-height: 1.4; }
.app-included-list svg { width: 15px; height: 15px; flex: 0 0 15px; fill: none; stroke: var(--app-accent); stroke-width: 2; }
.app-accordion { display: grid; gap: 7px; }
.app-accordion details { border: 1px solid var(--app-line); border-radius: 12px; background: var(--app-bg-2); }
.app-accordion summary { padding: 12px 14px; color: var(--app-text); cursor: pointer; font-size: .72rem; font-weight: 780; }
.app-accordion details p { margin: 0; padding: 0 14px 13px; color: var(--app-muted); font-size: .68rem; line-height: 1.55; }
.app-product-side { position: sticky; top: 78px; }
.app-side-purchase { display: grid; padding: 14px; border: 1px solid var(--app-line); border-radius: 18px; background: var(--app-surface); }
.app-side-purchase img { width: 100%; aspect-ratio: 16/10; object-fit: contain; padding: 8px; border-radius: 12px; background: var(--app-bg-2); }
.app-side-purchase > span { margin-top: 11px; color: var(--app-muted); font-size: .58rem; }
.app-side-purchase > strong { margin-top: 3px; font-size: .86rem; }
.app-side-purchase > p { margin: 7px 0 10px; color: var(--app-muted); font-size: .63rem; line-height: 1.45; }
.app-side-purchase > b { margin-bottom: 10px; color: var(--app-accent); font-size: 1.25rem; }
.app-side-purchase > small { margin-top: 8px; color: var(--app-muted); font-size: .57rem; text-align: center; }
.app-product-notes { padding: 0 0 26px; }
.app-product-notes details { border: 1px solid var(--app-line); border-radius: 14px; background: var(--app-surface); }
.app-product-notes summary { padding: 12px 14px; cursor: pointer; font-size: .68rem; font-weight: 750; }
.app-product-notes details div { padding: 0 14px 12px; }
.app-product-notes p { margin: 7px 0; color: var(--app-muted); font-size: .64rem; line-height: 1.5; }
.app-mobile-buybar { display: none; }

.app-checkout { padding: 22px 0 34px; }
.app-checkout-head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 16px; margin-bottom: 14px; }
.app-checkout-head .shop-back { min-height: 38px; display: inline-flex; align-items: center; padding: 0 11px; border: 1px solid var(--app-line); border-radius: 10px; background: var(--app-surface); text-decoration: none; color: var(--app-text-2); font-size: .68rem; }
.app-checkout-head h1 { margin: 4px 0 3px; font-size: 1.8rem; letter-spacing: -.04em; }
.app-checkout-head p { margin: 0; color: var(--app-muted); font-size: .72rem; }
.app-checkout-progress { min-width: 260px; display: flex; align-items: center; }
.app-checkout-progress span { display: grid; justify-items: center; gap: 4px; color: var(--app-muted); font-size: .58rem; }
.app-checkout-progress span b { width: 26px; height: 26px; display: grid; place-items: center; border: 1px solid var(--app-line-strong); border-radius: 50%; background: var(--app-surface); color: var(--app-text-2); font-size: .6rem; }
.app-checkout-progress span.active b, .app-checkout-progress span.complete b { color: #fff; border-color: var(--app-accent); background: var(--app-accent); }
.app-checkout-progress i { flex: 1; height: 1px; margin: 0 6px 17px; background: var(--app-line-strong); }
.app-checkout-shell { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 14px; align-items: start; }
.shop-checkout-main { display: grid; gap: 12px; }
.app-checkout-product { min-height: 92px; display: grid; grid-template-columns: 72px 1fr auto; align-items: center; gap: 12px; padding: 10px; border: 1px solid var(--app-line); border-radius: 15px; background: var(--app-surface); }
.app-checkout-product img { width: 72px; height: 72px; object-fit: contain; border-radius: 10px; background: var(--app-bg-2); }
.app-checkout-product > div { display: grid; }
.app-checkout-product span, .app-checkout-product small { color: var(--app-muted); font-size: .58rem; }
.app-checkout-product strong { margin: 3px 0; font-size: .8rem; }
.app-checkout-product > b { color: var(--app-accent); font-size: 1.05rem; }
.site-signature .checkout-form.app-checkout-form { display: grid; gap: 12px; }
.app-checkout-form fieldset { margin: 0; padding: 16px; border: 1px solid var(--app-line); border-radius: 16px; background: var(--app-surface); }
.app-checkout-form legend { padding: 0 5px; color: var(--app-text); font-size: .82rem; font-weight: 820; }
.app-checkout-form .field-grid { display: grid; gap: 10px; }
.app-checkout-form .field { display: grid; gap: 6px; }
.app-checkout-form .field > span { color: var(--app-text-2); font-size: .65rem; font-weight: 720; }
.app-checkout-form .field input { min-height: 48px; width: 100%; padding: 0 13px; border: 1px solid var(--app-line); border-radius: 11px; outline: 0; color: var(--app-text); background: var(--app-bg-2); font: inherit; font-size: .78rem; }
.app-checkout-form .field input:focus { border-color: rgba(41,197,102,.55); box-shadow: 0 0 0 3px var(--app-accent-soft); }
.app-checkout-form .field small { color: var(--app-muted); font-size: .58rem; }
.app-checkout-form .phone-input { display: grid; grid-template-columns: 58px 1fr; align-items: center; border: 1px solid var(--app-line); border-radius: 11px; background: var(--app-bg-2); overflow: hidden; }
.app-checkout-form .phone-input > span { display: grid; place-items: center; height: 48px; border-right: 1px solid var(--app-line); color: var(--app-muted); font-size: .7rem; }
.app-checkout-form .phone-input input { border: 0; border-radius: 0; background: transparent; }
.app-payment-methods { display: grid; gap: 8px; }
.app-payment-methods .payment-option { min-height: 68px; display: grid; grid-template-columns: 18px 38px 1fr 20px; align-items: center; gap: 11px; padding: 10px 12px; border: 1px solid var(--app-line); border-radius: 13px; color: var(--app-text-2); background: var(--app-bg-2); cursor: pointer; }
.app-payment-methods .payment-option.selected { border-color: rgba(41,197,102,.68); background: linear-gradient(90deg, var(--app-accent-soft), var(--app-bg-2)); }
.app-payment-methods input { position: absolute; opacity: 0; pointer-events: none; }
.payment-radio { width: 17px; height: 17px; border: 1px solid var(--app-line-strong); border-radius: 50%; background: var(--app-surface); box-shadow: inset 0 0 0 4px transparent; }
.payment-option.selected .payment-radio { border-color: var(--app-accent); background: var(--app-accent); box-shadow: inset 0 0 0 4px var(--app-surface); }
.app-payment-methods .payment-logo { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; font-size: .78rem; font-weight: 900; }
.mpesa-logo { color: #fff; background: #df2b2b; }
.emola-logo { color: #fff; background: #167bc9; }
.app-payment-methods .payment-option > span:nth-last-child(2) { display: grid; }
.app-payment-methods strong { font-size: .76rem; }
.app-payment-methods small { margin-top: 3px; color: var(--app-muted); font-size: .58rem; }
.app-payment-arrow { color: var(--app-muted); font-size: 1.2rem; }
.shop-phone-note { margin: 9px 0 0; color: var(--app-muted); font-size: .59rem; line-height: 1.5; }
.app-checkout-form .consent { display: flex; align-items: flex-start; gap: 8px; color: var(--app-muted); font-size: .59rem; line-height: 1.45; }
.app-checkout-form .consent input { margin-top: 2px; accent-color: var(--app-accent); }
.app-checkout-form .consent a { color: var(--app-text-2); }
.app-checkout-form .shop-pay-button { width: 100%; border: 0; cursor: pointer; }
.app-order-summary { position: sticky; top: 78px; padding: 17px; border: 1px solid var(--app-line); border-radius: 16px; background: var(--app-surface); }
.app-summary-row, .app-summary-total { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding: 11px 0; border-bottom: 1px solid var(--app-line); font-size: .67rem; }
.app-summary-row span { color: var(--app-muted); }
.app-summary-row strong { max-width: 165px; text-align: right; font-size: .68rem; }
.app-summary-total { align-items: center; border-bottom: 0; }
.app-summary-total span { color: var(--app-text-2); font-weight: 750; }
.app-summary-total strong { color: var(--app-accent); font-size: 1.22rem; }
.app-safe-note { display: flex; gap: 8px; margin-top: 7px; padding: 10px; border: 1px solid var(--app-line); border-radius: 11px; background: var(--app-bg-2); }
.app-safe-note svg { width: 17px; height: 17px; flex: 0 0 17px; fill: none; stroke: var(--app-accent); stroke-width: 1.8; }
.app-safe-note p { margin: 0; color: var(--app-muted); font-size: .6rem; line-height: 1.45; }
.app-order-summary > a { display: inline-block; margin-top: 10px; color: var(--app-accent); font-size: .62rem; text-decoration: none; }
.checkout-feedback { border-radius: 12px; font-size: .67rem; }
.checkout-feedback.notice, .checkout-feedback.success, .checkout-feedback.error { padding: 12px; border: 1px solid var(--app-line); background: var(--app-surface); }
.checkout-feedback.success { border-color: rgba(41,197,102,.35); }
.checkout-feedback.error { border-color: rgba(255,102,102,.35); }

.site-signature .page-hero, .site-signature .premium-page-head { padding: 28px 0 12px; background: transparent; }
.site-signature .page-hero .container, .site-signature .premium-page-head .container { width: min(calc(100% - 40px), 900px); margin-inline: auto; }
.site-signature .page-hero h1, .site-signature .premium-page-head h1 { margin: 7px 0 8px; font-size: clamp(1.8rem, 4vw, 3rem); letter-spacing: -.045em; }
.site-signature .page-hero p, .site-signature .premium-page-head p { margin: 0; color: var(--app-muted); line-height: 1.6; }
.site-signature .section { padding: 12px 0 30px; }
.site-signature .section .container { width: min(calc(100% - 40px), var(--app-max)); margin-inline: auto; }
.site-signature .section .container.narrow, .site-signature .container.narrow { width: min(calc(100% - 40px), 900px); }
.site-signature .editorial-copy, .site-signature .legal-content, .site-signature .compact-help { padding: 20px; border: 1px solid var(--app-line); border-radius: 18px; background: var(--app-surface); }
.site-signature .editorial-copy p, .site-signature .legal-content p, .site-signature .legal-content li { color: var(--app-text-2); line-height: 1.68; }
.site-signature .legal-content h2 { margin-top: 24px; font-size: 1.08rem; }
.site-signature .legal-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.site-signature .legal-links a { padding: 8px 10px; border: 1px solid var(--app-line); border-radius: 9px; color: var(--app-text-2); background: var(--app-bg-2); text-decoration: none; font-size: .65rem; }
.site-signature .process-list { display: grid; gap: 9px; }
.site-signature .process-list article { display: grid; grid-template-columns: 42px 1fr; gap: 12px; padding: 15px; border: 1px solid var(--app-line); border-radius: 14px; background: var(--app-surface); }
.site-signature .process-list article > span { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; color: var(--app-accent); background: var(--app-accent-soft); font-size: .66rem; font-weight: 900; }
.site-signature .process-list h2 { margin: 0; font-size: .9rem; }
.site-signature .process-list p { margin: 4px 0 0; color: var(--app-muted); font-size: .7rem; }
.site-signature .contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.site-signature .contact-tile { display: grid; grid-template-columns: 44px 1fr; gap: 12px; padding: 17px; border: 1px solid var(--app-line); border-radius: 16px; background: var(--app-surface); text-decoration: none; }
.site-signature .contact-tile > span { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 11px; color: var(--app-accent); background: var(--app-accent-soft); }
.site-signature .contact-tile svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.site-signature .contact-tile small, .site-signature .contact-tile p { color: var(--app-muted); }
.site-signature .accordion details { border-color: var(--app-line); background: var(--app-surface); color: var(--app-text); }

.app-footer { margin-top: auto; padding: 20px 22px 18px; border-top: 1px solid var(--app-line); background: var(--app-bg-2); }
.app-footer-main { display: flex; align-items: center; justify-content: space-between; gap: 24px; max-width: var(--app-max); margin: 0 auto; }
.app-footer-brand { margin-bottom: 8px; }
.app-footer-main p { margin: 0; color: var(--app-muted); font-size: .65rem; }
.app-footer-links { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px 15px; }
.app-footer-links a { color: var(--app-muted); font-size: .62rem; text-decoration: none; }
.app-footer-links a:hover { color: var(--app-text); }
.app-footer-bottom { max-width: var(--app-max); margin: 15px auto 0; padding-top: 12px; border-top: 1px solid var(--app-line); display: flex; justify-content: space-between; gap: 18px; color: var(--app-muted); font-size: .56rem; }
.premium-whatsapp { position: fixed; right: 18px; bottom: 18px; z-index: 130; width: 45px; height: 45px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; color: #fff; background: #1eaf55; box-shadow: var(--app-shadow); }
.premium-whatsapp svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.7; }

body.member-body { --member-sidebar-width: 226px; }
.member-shell { min-height: 100vh; background: var(--app-bg); }
.member-sidebar { width: var(--member-sidebar-width); border-right: 1px solid var(--app-line); background: var(--app-bg-2); box-shadow: none; }
.member-sidebar-head { min-height: 68px; padding: 15px 14px; border-bottom: 1px solid var(--app-line); }
.member-brand { color: var(--app-text); text-decoration: none; }
.member-brand-mark { width: 38px; height: 38px; border: 1px solid rgba(241,173,50,.55); border-radius: 11px; color: var(--app-gold); background: rgba(241,173,50,.06); }
.member-brand small { color: var(--app-muted); }
.member-nav { padding: 12px 10px; gap: 6px; }
.member-nav-link { min-height: 43px; border-radius: 11px; color: var(--app-muted); font-size: .75rem; }
.member-nav-link:hover { color: var(--app-text); background: var(--app-surface); }
.member-nav-link.is-active { color: var(--app-accent); background: var(--app-accent-soft); }
.member-nav-link svg { width: 18px; height: 18px; }
.member-sidebar-footer { padding: 10px; border-top: 1px solid var(--app-line); }
.member-back-site, .member-logout { min-height: 40px; border-radius: 10px; color: var(--app-muted); background: transparent; }
.member-main { margin-left: var(--member-sidebar-width); background: var(--app-bg); }
.member-topbar { min-height: 64px; padding: 9px 18px; border-bottom: 1px solid var(--app-line); background: var(--app-glass); backdrop-filter: blur(18px); }
.member-context span, .member-account-chip small { color: var(--app-muted); }
.member-context strong, .member-account-chip strong { color: var(--app-text); }
.member-account-chip { border: 1px solid var(--app-line); border-radius: 11px; background: var(--app-surface); }
.member-avatar { color: var(--app-accent); background: var(--app-accent-soft); }
.member-theme-toggle { width: 42px; height: 42px; margin-left: auto; display: grid; place-items: center; border: 1px solid var(--app-line); border-radius: 11px; color: var(--app-text-2); background: var(--app-surface); cursor: pointer; }
.member-theme-toggle > span[aria-hidden="true"] { grid-area: 1/1; opacity: 0; transition: .15s ease; }
:root[data-theme="dark"] .member-theme-toggle > span:first-child,
:root[data-theme="light"] .member-theme-toggle > span:nth-child(2) { opacity: 1; }
.member-content { max-width: 1180px; padding: 20px; }
.member-dashboard-hero, .member-account-panel, .member-course-hero, .course-module, .lesson-main, .lesson-curriculum, .member-material-card { border-color: var(--app-line) !important; background: var(--app-surface) !important; box-shadow: none !important; }
.member-dashboard-hero { min-height: auto; padding: 22px; border-radius: 18px; }
.member-dashboard-hero h1 { margin: 6px 0 7px; font-size: clamp(1.7rem, 3vw, 2.5rem); letter-spacing: -.04em; }
.member-dashboard-hero p { color: var(--app-muted); }
.member-dashboard-badge { border-color: var(--app-line); background: var(--app-bg-2); }
.member-dashboard-section { padding-top: 18px; }
.member-section-heading { margin-bottom: 10px; }
.member-section-heading h2 { font-size: 1.15rem; }
.member-course-grid { gap: 10px; }
.member-course-card { border: 1px solid var(--app-line) !important; border-radius: 16px !important; background: var(--app-surface) !important; box-shadow: none !important; overflow: hidden; }
.member-course-cover-art { background: var(--app-bg-2); }
.member-course-card p, .member-course-card small, .member-course-card .course-card-meta { color: var(--app-muted); }
.member-account-panel { margin-top: 14px; padding: 18px; border-radius: 17px; }
.member-account-panel-icon, .member-security-preview { background: var(--app-bg-2); border-color: var(--app-line); }
.member-account-panel p, .member-security-preview span { color: var(--app-muted); }
.member-account-value { border-color: var(--app-line); background: var(--app-bg-2); }
.member-course-hero { border-radius: 18px; overflow: hidden; }
.member-course-hero h1 { letter-spacing: -.035em; }
.member-course-aside { border-color: var(--app-line) !important; background: var(--app-surface) !important; box-shadow: none !important; }
.course-module { border-radius: 16px; }
.course-lesson-row, .lesson-curriculum-link { border-color: var(--app-line) !important; background: var(--app-bg-2) !important; color: var(--app-text) !important; }
.course-lesson-row small, .lesson-curriculum-link small, .course-module-heading p { color: var(--app-muted) !important; }
.lesson-video-frame { border: 1px solid var(--app-line); background: #000; }
.member-material-card { border-radius: 14px; }
.member-bottom-nav { display: none; }

.member-login-shell { min-height: 100vh; background: var(--app-bg); }
.member-login-visual { background: linear-gradient(145deg, #081827, #0b2630 55%, #0c3827); }
.member-login-copy h1 { color: #fff !important; letter-spacing: -.045em; }
.member-login-copy p, .member-login-visual-foot { color: rgba(235,244,248,.72); }
.member-login-trust { border-color: rgba(255,255,255,.13); background: rgba(255,255,255,.05); }
.member-login-form-panel { position: relative; background: var(--app-bg); }
.member-login-theme { position: absolute; top: 18px; right: 18px; }
.member-login-card { border: 1px solid var(--app-line); border-radius: 20px; background: var(--app-surface); box-shadow: var(--app-shadow); }
.member-login-card h2 { letter-spacing: -.035em; }
.member-login-intro, .member-login-help, .member-login-back { color: var(--app-muted); }
.member-login-card .field span { color: var(--app-text-2); }
.member-login-card .field input { border-color: var(--app-line); color: var(--app-text); background: var(--app-bg-2); }
.member-login-submit { color: #fff !important; background: linear-gradient(135deg, #199d49, #2acb64) !important; }
.member-login-identified { border-color: rgba(41,197,102,.24); background: var(--app-accent-soft); }

@media (max-width: 1080px) {
  :root { --app-sidebar: 196px; }
  .app-store-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .app-product-content-grid { grid-template-columns: minmax(0, 1fr) 250px; }
  .app-checkout-shell { grid-template-columns: minmax(0, 1fr) 280px; }
}

@media (max-width: 820px) {
  .app-shell { display: block; }
  .app-sidebar { display: none; }
  .site-signature .premium-header.app-topbar { min-height: 58px; padding: 8px 14px; }
  .app-mobile-brand { display: inline-flex; }
  .app-mobile-brand .app-brand-mark { width: 34px; height: 34px; flex-basis: 34px; }
  .app-mobile-brand .app-brand-copy strong { font-size: .78rem; }
  .app-mobile-brand .app-brand-copy small { font-size: .54rem; }
  .app-topbar-context { display: none; }
  .app-account-button span { display: none; }
  .app-account-button { width: 42px; padding: 0; justify-content: center; }
  .app-page-container { width: min(calc(100% - 24px), var(--app-max)); }
  .app-bottom-nav { position: fixed; left: 10px; right: 10px; bottom: max(8px, env(safe-area-inset-bottom)); z-index: 150; min-height: 64px; display: grid; grid-template-columns: repeat(4, 1fr); padding: 6px; border: 1px solid var(--app-line); border-radius: 18px; background: var(--app-glass); backdrop-filter: blur(20px) saturate(1.25); box-shadow: var(--app-shadow); }
  .app-bottom-nav a { display: grid; justify-items: center; align-content: center; gap: 3px; border-radius: 12px; color: var(--app-muted); text-decoration: none; font-size: .55rem; font-weight: 720; }
  .app-bottom-nav a[aria-current="page"] { color: var(--app-accent); background: var(--app-accent-soft); }
  .app-bottom-nav svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; }
  .app-content { padding-bottom: 76px; }
  .app-footer { padding-bottom: 94px; }
  .premium-whatsapp { right: 14px; bottom: 86px; }
  .app-feature-banner { grid-template-columns: 1fr .75fr; min-height: 270px; }
  .app-feature-visual { min-height: 270px; }
  .app-product-rail { grid-template-columns: repeat(3, minmax(220px, 1fr)); overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
  .app-product-rail::-webkit-scrollbar { display: none; }
  .site-signature .shop-product-hero-grid.app-product-hero-grid { grid-template-columns: minmax(240px,.75fr) minmax(0,1.25fr); gap: 12px; }
  .app-product-showcase { min-height: 390px; }
  .app-product-art { min-height: 350px; }
  .app-product-content-grid { grid-template-columns: 1fr; }
  .app-product-side { display: none; }
  .app-checkout-head { grid-template-columns: auto 1fr; }
  .app-checkout-progress { grid-column: 1 / -1; width: 100%; }
  .app-checkout-shell { grid-template-columns: 1fr; }
  .app-order-summary { position: static; order: -1; }
  body.member-body { --member-sidebar-width: 0px; padding-bottom: 76px; }
  .member-sidebar { transform: translateX(-100%); width: min(82vw, 290px); z-index: 200; }
  .member-sidebar.is-open { transform: translateX(0); }
  .member-main { margin-left: 0; }
  .member-content { padding: 14px 12px 86px; }
  .member-topbar { padding: 8px 11px; }
  .member-account-chip { max-width: 160px; }
  .member-bottom-nav { position: fixed; left: 10px; right: 10px; bottom: max(8px, env(safe-area-inset-bottom)); z-index: 180; min-height: 64px; display: grid; grid-template-columns: repeat(4,1fr); padding: 6px; border: 1px solid var(--app-line); border-radius: 18px; background: var(--app-glass); backdrop-filter: blur(20px); box-shadow: var(--app-shadow); }
  .member-bottom-nav a { display: grid; place-items: center; align-content: center; gap: 2px; border-radius: 12px; color: var(--app-muted); text-decoration: none; }
  .member-bottom-nav span { font-size: 1rem; line-height: 1; }
  .member-bottom-nav b { font-size: .53rem; font-weight: 720; }
}

@media (max-width: 640px) {
  .app-home-dashboard { padding-top: 14px; }
  .app-home-toolbar { align-items: flex-start; margin-bottom: 11px; }
  .app-home-toolbar h1 { font-size: 1.65rem; }
  .app-home-shortcuts { display: none; }
  .app-search-launch, .app-search-box { min-height: 50px; padding-inline: 13px; }
  .app-search-launch b { display: none; }
  .app-feature-banner { min-height: 0; grid-template-columns: 1.05fr .95fr; margin-top: 12px; border-radius: 18px; }
  .app-feature-copy { padding: 18px 10px 18px 16px; }
  .app-feature-copy h2 { font-size: clamp(1.45rem, 8vw, 2.1rem); }
  .app-feature-copy p { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: .68rem; line-height: 1.45; }
  .app-feature-copy > div { gap: 10px; margin-top: 12px; }
  .app-feature-copy > div strong { font-size: 1.05rem; }
  .app-feature-copy > div span { font-size: .6rem; }
  .app-feature-visual { min-height: 210px; padding: 8px; }
  .app-feature-visual img { max-height: 205px; }
  .app-trust-strip { grid-template-columns: 1fr; gap: 6px; }
  .app-trust-strip span { justify-content: flex-start; padding-inline: 12px; }
  .app-home-section { padding: 18px 0 22px; }
  .app-benefit-grid { grid-template-columns: 1fr; }
  .app-store-head { padding-top: 15px; }
  .app-store-title h1 { font-size: 1.55rem; }
  .app-store-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .app-store-grid .app-product-info { padding: 9px; }
  .app-store-grid .app-product-info p { display: none; }
  .app-store-grid .app-product-info h3 { font-size: .76rem; }
  .app-store-grid .app-product-category { font-size: .52rem; }
  .app-store-grid .app-product-price strong { font-size: .82rem; }
  .app-store-grid .app-product-price span { font-size: 0; }
  .app-store-grid .app-product-price span svg { width: 15px; height: 15px; }
  .site-signature .shop-product-hero-grid.app-product-hero-grid { grid-template-columns: 1fr; }
  .app-product-showcase { min-height: 330px; }
  .app-product-art { min-height: 295px; }
  .app-product-art img { max-height: 310px; }
  .app-product-copy { padding: 18px; }
  .app-product-copy h1 { font-size: 2rem; }
  .app-product-stats { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .app-product-stats > div { min-height: 60px; padding: 8px; }
  .app-product-stats strong { font-size: .62rem; }
  .app-highlight-list { grid-template-columns: 1fr; }
  .app-buy-row { display: none; }
  .shop-pay-methods { display: none; }
  .app-product-content { padding-top: 0; }
  .app-content-card { padding: 15px; border-radius: 15px; }
  .app-included-list { grid-template-columns: 1fr; }
  .app-mobile-buybar { position: fixed; left: 10px; right: 10px; bottom: 80px; z-index: 145; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 10px; padding: 9px 10px; border: 1px solid var(--app-line); border-radius: 16px; background: var(--app-glass); backdrop-filter: blur(20px); box-shadow: var(--app-shadow); }
  .app-mobile-buybar > div { display: grid; min-width: 94px; }
  .app-mobile-buybar small { color: var(--app-muted); font-size: .5rem; }
  .app-mobile-buybar strong { color: var(--app-accent); font-size: .93rem; }
  .app-mobile-buybar a { min-height: 42px; display: grid; place-items: center; border-radius: 11px; color: #fff; background: linear-gradient(135deg,#199d49,#2acb64); text-decoration: none; font-size: .72rem; font-weight: 820; }
  .app-product-page .app-content { padding-bottom: 142px; }
  .app-checkout { padding-top: 14px; }
  .app-checkout-head { grid-template-columns: 1fr; gap: 9px; }
  .app-checkout-head .shop-back { justify-self: start; }
  .app-checkout-head h1 { font-size: 1.55rem; }
  .app-checkout-progress { min-width: 0; }
  .app-checkout-product { grid-template-columns: 62px 1fr auto; }
  .app-checkout-product img { width: 62px; height: 62px; }
  .app-checkout-product > b { font-size: .9rem; }
  .app-checkout-form fieldset { padding: 13px; }
  .app-order-summary { padding: 14px; }
  .site-signature .contact-grid { grid-template-columns: 1fr; }
  .app-footer-main { align-items: flex-start; flex-direction: column; }
  .app-footer-links { justify-content: flex-start; }
  .app-footer-bottom { flex-direction: column; gap: 5px; }
  .member-dashboard-hero { padding: 16px; }
  .member-dashboard-hero h1 { font-size: 1.6rem; }
  .member-account-chip div { display: none; }
  .member-account-chip { width: 42px; justify-content: center; padding: 0; }
  .member-course-grid { grid-template-columns: 1fr; }
  .member-login-shell { display: block; }
  .member-login-visual { display: none; }
  .member-login-form-panel { min-height: 100vh; padding: 70px 14px 30px; }
  .member-login-card { width: min(100%, 460px); padding: 22px 16px; }
  .member-login-theme { top: 14px; right: 14px; }
}

@media (max-width: 390px) {
  .app-page-container { width: min(calc(100% - 18px), var(--app-max)); }
  .app-mobile-brand .app-brand-copy { display: none; }
  .app-topbar-actions { gap: 6px; }
  .app-category-chips a, .app-category-chips button { min-height: 32px; padding-inline: 11px; }
  .app-feature-copy h2 { font-size: 1.35rem; }
  .app-feature-visual { min-height: 185px; }
  .app-store-grid { gap: 7px; }
  .app-product-media { padding: 6px; }
  .app-product-info { padding: 8px; }
}

/* source: app-polish.css */
/* Final visual polish: contrast, readability and theme consistency. */

:root[data-theme="dark"] {
  --app-text: #f7fafc;
  --app-text-2: #d7e0e6;
  --app-muted: #a6b3bd;
  --app-line: rgba(218, 231, 239, .16);
  --app-line-strong: rgba(218, 231, 239, .27);
  --app-accent: #45d779;
  --app-accent-2: #69e695;
}

:root[data-theme="light"] {
  --app-text: #10202c;
  --app-text-2: #344854;
  --app-muted: #667782;
  --app-accent: #168344;
  --app-accent-2: #1f9950;
}

/* Public pages: prevent legacy theme rules from lowering contrast. */
body.site-signature .page-hero h1,
body.site-signature .premium-page-head h1,
body.site-signature .compact-page-hero h1,
body.site-signature .editorial-copy h2,
body.site-signature .process-list h2,
body.site-signature .contact-tile strong,
body.site-signature .legal-content h1,
body.site-signature .legal-content h2,
body.site-signature .accordion summary,
body.site-signature .app-product-card h3,
body.site-signature .app-product-copy h1,
body.site-signature .app-content-card h2,
body.site-signature .app-module-card h3 {
  color: var(--app-text) !important;
}

body.site-signature .page-hero p,
body.site-signature .premium-page-head p,
body.site-signature .compact-page-hero p,
body.site-signature .editorial-copy p,
body.site-signature .process-list p,
body.site-signature .compact-help p,
body.site-signature .contact-tile p,
body.site-signature .legal-content p,
body.site-signature .legal-content li,
body.site-signature .app-module-card p,
body.site-signature .app-accordion details p {
  color: var(--app-text-2) !important;
}

body.site-signature .compact-help,
body.site-signature .compact-help a,
body.site-signature .legal-links a,
body.site-signature .app-footer-links a,
body.site-signature .app-footer-main p,
body.site-signature .app-footer-bottom {
  color: var(--app-text-2) !important;
}

body.site-signature .app-footer-links a:hover,
body.site-signature .compact-help a:hover {
  color: var(--app-accent) !important;
}

body.site-signature .process-list article,
body.site-signature .compact-help,
body.site-signature .contact-tile,
body.site-signature .legal-content,
body.site-signature .accordion details {
  border-color: var(--app-line) !important;
}

/* Product and checkout details. */
body.site-signature .app-product-category,
body.site-signature .app-product-info p,
body.site-signature .app-product-stats small,
body.site-signature .app-side-purchase > span,
body.site-signature .app-side-purchase > p,
body.site-signature .app-side-purchase > small,
body.site-signature .app-checkout-head p,
body.site-signature .app-checkout-product span,
body.site-signature .app-checkout-product small,
body.site-signature .app-checkout-form .field small,
body.site-signature .shop-phone-note,
body.site-signature .app-checkout-form .consent,
body.site-signature .app-safe-note p {
  color: var(--app-muted) !important;
}

body.site-signature .app-product-info h3,
body.site-signature .app-product-price span,
body.site-signature .app-product-stats strong,
body.site-signature .app-highlight-list li,
body.site-signature .app-audience h3,
body.site-signature .app-audience span,
body.site-signature .app-included-list li,
body.site-signature .app-checkout-form .field > span,
body.site-signature .app-payment-methods strong,
body.site-signature .app-summary-row strong,
body.site-signature .app-summary-total span {
  color: var(--app-text-2) !important;
}

body.site-signature .app-checkout-form input::placeholder {
  color: var(--app-muted);
  opacity: .88;
}

/* Student area: harmonise older course components with both themes. */
body.member-body .member-kicker,
body.member-login-body .member-kicker {
  color: var(--app-accent) !important;
}

body.member-body .member-dashboard-hero h1,
body.member-body .member-section-heading h2,
body.member-body .member-course-card h2,
body.member-body .member-course-card h3,
body.member-body .member-course-card strong,
body.member-body .member-account-panel h2,
body.member-body .member-security-preview strong,
body.member-body .member-course-hero h1,
body.member-body .member-course-hero h2,
body.member-body .member-course-hero strong,
body.member-body .course-module-heading h2,
body.member-body .course-lesson-row strong,
body.member-body .course-sidebar-heading h2,
body.member-body .course-support strong,
body.member-body .course-material-card strong,
body.member-body .lesson-heading h1,
body.member-body .lesson-note strong,
body.member-body .lesson-nav-card strong,
body.member-body .lesson-curriculum-head h2,
body.member-body .lesson-curriculum-module summary strong,
body.member-body .lesson-curriculum-link strong {
  color: var(--app-text) !important;
}

body.member-body .member-dashboard-hero p,
body.member-body .member-course-card p,
body.member-body .member-account-panel p,
body.member-body .member-security-preview span,
body.member-body .member-course-hero p,
body.member-body .member-section-heading p,
body.member-body .course-module-heading p,
body.member-body .course-sidebar-heading p,
body.member-body .course-support p,
body.member-body .lesson-note p,
body.member-body .lesson-nav-card small,
body.member-body .lesson-curriculum-module summary small,
body.member-body .course-material-card small {
  color: var(--app-text-2) !important;
}

body.member-body .member-dashboard-badge small,
body.member-body .member-account-email,
body.member-body .member-account-value small,
body.member-body .member-security-preview small,
body.member-body .member-course-facts small,
body.member-body .course-module-heading > div > small,
body.member-body .course-lesson-row small,
body.member-body .course-lesson-number,
body.member-body .course-module-count,
body.member-body .lesson-position,
body.member-body .lesson-breadcrumb,
body.member-body .lesson-curriculum-head > span {
  color: var(--app-muted) !important;
}

body.member-body .member-dashboard-badge strong,
body.member-body .member-account-value strong,
body.member-body .member-course-facts strong,
body.member-body .course-module-heading > div > h2,
body.member-body .course-module-count,
body.member-body .course-material-card strong {
  color: var(--app-text) !important;
}

body.member-body .member-dashboard-badge,
body.member-body .member-account-value,
body.member-body .member-security-preview,
body.member-body .member-course-facts > span,
body.member-body .course-module-heading,
body.member-body .course-sidebar-card,
body.member-body .lesson-note,
body.member-body .lesson-nav-card,
body.member-body .lesson-curriculum-module,
body.member-body .course-material-card {
  border-color: var(--app-line) !important;
  background: var(--app-bg-2) !important;
}

body.member-body .course-module {
  overflow: hidden;
  border-color: var(--app-line) !important;
  background: var(--app-surface) !important;
}

body.member-body .course-module-heading {
  border-bottom: 1px solid var(--app-line) !important;
}

body.member-body .course-lesson-list,
body.member-body .course-lesson-row,
body.member-body .lesson-curriculum-link {
  background: var(--app-surface) !important;
}

body.member-body .course-lesson-row {
  border-top-color: var(--app-line) !important;
}

body.member-body .course-lesson-play,
body.member-body .course-module-index,
body.member-body .member-account-panel-icon,
body.member-body .member-avatar {
  color: var(--app-accent) !important;
}

body.member-body .course-module-index {
  background: var(--app-accent-soft) !important;
  border-color: rgba(41, 197, 102, .22) !important;
}

body.member-body .member-primary-cta,
body.member-login-body .member-login-submit {
  color: #fff !important;
}

body.member-body .member-bottom-nav a,
body.member-body .member-nav-link,
body.member-body .member-back-site,
body.member-body .member-logout {
  color: var(--app-text-2) !important;
}

body.member-body .member-bottom-nav a[aria-current="page"],
body.member-body .member-nav-link.is-active {
  color: var(--app-accent) !important;
}

body.member-login-body .member-login-card h2,
body.member-login-body .member-login-card .field span,
body.member-login-body .member-login-identified strong {
  color: var(--app-text) !important;
}

body.member-login-body .member-login-intro,
body.member-login-body .member-login-help,
body.member-login-body .member-login-back,
body.member-login-body .member-login-identified small {
  color: var(--app-text-2) !important;
}

@media (max-width: 820px) {
  body.site-signature .app-bottom-nav a,
  body.member-body .member-bottom-nav a {
    color: var(--app-text-2) !important;
  }

  body.site-signature .app-bottom-nav a[aria-current="page"],
  body.member-body .member-bottom-nav a[aria-current="page"] {
    color: var(--app-accent) !important;
  }
}

/* source: brand.css */
/* Pronto Digital MZ — identidade visual oficial.
   Camada isolada: altera apenas logótipos/ícones, sem tocar em checkout, pagamentos ou dados. */

/* Loja pública: logótipo horizontal oficial, adaptado automaticamente ao tema. */
.app-brand-logo-set {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  line-height: 0;
}

.app-brand-logo {
  display: block;
  width: 178px;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  object-position: left center;
}

.app-brand-logo-on-light { display: none; }
.app-brand-logo-on-dark { display: block; }

:root[data-theme="light"] .app-brand-logo-on-light { display: block; }
:root[data-theme="light"] .app-brand-logo-on-dark { display: none; }

.app-sidebar .app-brand-logo { width: 180px; }
.app-footer-brand .app-brand-logo { width: 188px; }

/* Área do aluno: mantém a estrutura existente e troca apenas o antigo bloco “PD” pelo símbolo oficial. */
.member-brand-mark {
  overflow: hidden;
  color: transparent !important;
  font-size: 0 !important;
  text-indent: -9999px;
  background-image: url("/images/brand/logo-pronto-digital-mz-symbol.png") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 78% auto !important;
}

/* Fallback visual caso algum navegador não carregue a imagem de marca. */
.member-brand-mark::before { content: ""; }

@media (max-width: 820px) {
  .app-mobile-brand .app-brand-logo { width: 138px; }
}

@media (max-width: 390px) {
  .app-mobile-brand .app-brand-logo { width: 122px; }
}

/* source: free-resource.css */
/* Pronto Digital MZ — recursos gratuitos */
.free-resource-hero { padding: 34px 0 28px; border-bottom: 1px solid var(--app-line); background: radial-gradient(circle at 82% 10%, rgba(41,197,102,.12), transparent 28%), var(--app-bg); }
.free-resource-hero-grid { display: grid; grid-template-columns: minmax(280px,.82fr) minmax(0,1.18fr); gap: clamp(28px,5vw,68px); align-items: center; }
.free-resource-visual { min-width: 0; }
.free-resource-art { position: relative; overflow: hidden; border: 1px solid var(--app-line-strong); border-radius: var(--app-radius-lg); background: var(--app-surface); box-shadow: var(--app-shadow); }
.free-resource-art img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.free-resource-art > span { position: absolute; left: 16px; bottom: 16px; padding: 8px 11px; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; color: #fff; background: rgba(7,19,31,.76); backdrop-filter: blur(10px); font-size: .68rem; font-weight: 850; text-transform: uppercase; letter-spacing: .06em; }
.free-resource-copy h1 { max-width: 760px; margin: 12px 0 12px; font-size: clamp(2.15rem,4.8vw,4.8rem); line-height: .98; letter-spacing: -.05em; }
.free-resource-lead { max-width: 730px; margin: 0 0 20px; color: var(--app-text-2); font-size: clamp(1rem,1.6vw,1.17rem); line-height: 1.65; }
.free-resource-badge { color: #07131f !important; background: linear-gradient(135deg, var(--app-gold), #ffd86a) !important; border-color: transparent !important; }
.free-resource-meta { display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0 20px; }
.free-resource-meta > span { min-width: 118px; display: grid; gap: 3px; padding: 12px 14px; border: 1px solid var(--app-line); border-radius: 14px; background: var(--app-surface); }
.free-resource-meta strong { color: var(--app-text); font-size: .94rem; }
.free-resource-meta small { color: var(--app-muted); font-size: .66rem; text-transform: uppercase; letter-spacing: .06em; }
.free-resource-hero-cta { margin-top: 2px; }
.free-resource-delivery-note { max-width: 620px; margin: 12px 0 0; color: var(--app-muted); font-size: .76rem; line-height: 1.5; }

.free-resource-claim-section { padding: 42px 0; border-bottom: 1px solid var(--app-line); background: linear-gradient(180deg, var(--app-bg-2), var(--app-bg)); scroll-margin-top: 82px; }
.free-resource-claim-grid { display: grid; grid-template-columns: minmax(0,.85fr) minmax(340px,1fr); gap: clamp(28px,6vw,80px); align-items: start; }
.free-resource-claim-copy { padding-top: 14px; }
.free-resource-claim-copy h2 { max-width: 620px; margin: 10px 0 12px; font-size: clamp(1.8rem,3.4vw,3.2rem); letter-spacing: -.035em; }
.free-resource-claim-copy > p { max-width: 620px; color: var(--app-text-2); line-height: 1.68; }
.free-resource-privacy-note { display: grid; gap: 4px; max-width: 620px; margin-top: 24px; padding: 16px 18px; border: 1px solid rgba(41,197,102,.2); border-radius: 16px; background: var(--app-accent-soft); }
.free-resource-privacy-note strong { color: var(--app-accent-2); font-size: .83rem; }
.free-resource-privacy-note span { color: var(--app-text-2); font-size: .78rem; line-height: 1.55; }
.free-resource-form-card { padding: clamp(20px,3vw,30px); border: 1px solid var(--app-line-strong); border-radius: var(--app-radius-lg); background: var(--app-surface); box-shadow: var(--app-shadow-soft); }
.free-resource-form-card form { display: grid; gap: 16px; }
.free-resource-form-card .field { display: grid; gap: 7px; }
.free-resource-form-card .field > span { color: var(--app-text); font-size: .78rem; font-weight: 760; }
.free-resource-form-card .field input { width: 100%; min-height: 48px; padding: 0 14px; border: 1px solid var(--app-line-strong); border-radius: 12px; color: var(--app-text); background: var(--app-bg-2); outline: none; font: inherit; }
.free-resource-form-card .field input:focus { border-color: var(--app-accent); box-shadow: 0 0 0 3px var(--app-accent-soft); }
.free-resource-form-card .field small { color: var(--app-muted); font-size: .67rem; }
.free-resource-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.free-resource-check { display: flex; align-items: flex-start; gap: 10px; color: var(--app-text-2); font-size: .72rem; line-height: 1.48; }
.free-resource-check input { width: 17px; height: 17px; margin: 2px 0 0; accent-color: var(--app-accent); flex: 0 0 auto; }
.free-resource-check a { color: var(--app-accent-2) !important; text-decoration: underline; text-underline-offset: 2px; }
.free-resource-check.optional { color: var(--app-muted); }
.free-resource-submit { width: 100%; border: 0; cursor: pointer; }
.free-resource-submit:disabled { cursor: default; opacity: .74; transform: none !important; }
.free-resource-feedback { min-height: 0; padding: 0; border-radius: 12px; font-size: .78rem; line-height: 1.5; }
.free-resource-feedback.success, .free-resource-feedback.error { padding: 12px 14px; border: 1px solid var(--app-line); }
.free-resource-feedback.success { color: var(--app-accent-2); background: var(--app-accent-soft); border-color: rgba(41,197,102,.22); }
.free-resource-feedback.error { color: #ff8b8b; background: rgba(255,102,102,.08); border-color: rgba(255,102,102,.2); }

.free-resource-content { padding-top: 34px; }
.free-resource-side b, .free-product-price strong { color: var(--app-accent-2) !important; letter-spacing: .025em; }
.free-product-type { color: #07131f !important; background: linear-gradient(135deg, var(--app-gold), #ffd86a) !important; }
.free-product-card .app-product-media img { object-fit: contain; object-position: center; }
.free-resource-mobile-bar strong { color: var(--app-accent-2); }

@media (min-width: 1101px) {
  .free-product-rail { grid-template-columns: repeat(4, minmax(0,1fr)); }
}

@media (max-width: 1100px) and (min-width: 701px) {
  .free-product-rail { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (max-width: 900px) {
  .free-resource-hero-grid, .free-resource-claim-grid { grid-template-columns: 1fr; }
  .free-resource-visual { width: min(520px, 100%); margin-inline: auto; }
  .free-resource-copy { text-align: left; }
  .free-resource-claim-copy { padding-top: 0; }
}

@media (max-width: 700px) {
  .free-product-rail { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .free-resource-hero { padding: 20px 0 24px; }
  .free-resource-hero-grid, .free-resource-claim-grid { gap: 22px; }
  .free-resource-copy h1 { font-size: clamp(2.05rem,13vw,3.15rem); }
  .free-resource-meta { display: grid; grid-template-columns: repeat(3,1fr); }
  .free-resource-meta > span { min-width: 0; padding: 10px; }
  .free-resource-claim-section { padding: 30px 0; }
  .free-resource-form-card { padding: 18px; border-radius: 18px; }
}

/* source: storefront-polish-2026.css */
/* Pronto Digital MZ — storefront polish 2026
   Foco: cards compactos, capas completas, CTAs mais fortes e melhor leitura no mobile. */

.site-signature .app-product-card {
  border-radius: 18px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
}

.site-signature .app-product-media,
.site-signature .app-product-card.is-compact .app-product-media {
  aspect-ratio: 1 / 1;
  min-height: 0;
  padding: 14px;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 42%, var(--app-accent-soft), transparent 62%),
    var(--app-bg-2);
}

.site-signature .app-product-media img,
.site-signature .free-product-card .app-product-media img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
  filter: drop-shadow(0 10px 16px rgba(0,0,0,.18));
}

.site-signature .app-product-info h3 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  min-height: 2.25em;
}

.site-signature .app-product-price {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
}

.site-signature .app-product-price > span {
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 0 11px;
  border-radius: 10px;
  color: #fff !important;
  background: linear-gradient(135deg, #159447, #29c566);
  box-shadow: 0 7px 18px rgba(30, 190, 89, .18);
  font-weight: 820;
  white-space: nowrap;
}

.site-signature .free-product-price > span {
  background: linear-gradient(135deg, #b87810, #e9aa32);
  color: #07131f !important;
}

.site-signature .app-product-price > span svg {
  width: 13px;
  height: 13px;
}

.site-signature .app-product-art img,
.site-signature .app-side-purchase img,
.site-signature .app-checkout-product img {
  object-fit: contain !important;
  object-position: center !important;
}

.site-signature .app-product-showcase {
  overflow: hidden;
}

.site-signature .app-primary-button,
.site-signature .shop-button {
  font-weight: 850;
  letter-spacing: -.005em;
}

.free-resource-check.optional > span {
  display: grid;
  gap: 4px;
}

.free-resource-optional-note {
  display: block;
  color: var(--app-muted);
  font-size: .64rem;
  font-weight: 500;
  line-height: 1.45;
}

.free-resource-claim-copy > p {
  margin-bottom: 0;
}

/* Checkout — marcas reais dos métodos de pagamento. */
.site-signature .app-payment-methods {
  gap: 10px;
}

.site-signature .app-payment-methods .payment-option {
  min-height: 78px;
  grid-template-columns: 18px 50px minmax(0, 1fr) 20px;
  gap: 12px;
  padding: 11px 13px;
  border-radius: 15px;
  transition: border-color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease;
}

.site-signature .app-payment-methods .payment-option:hover {
  transform: translateY(-1px);
  border-color: var(--app-line-strong);
  box-shadow: var(--app-shadow-soft);
}

.site-signature .app-payment-methods .payment-option.selected {
  border-color: rgba(41, 197, 102, .68);
  box-shadow: 0 0 0 1px rgba(41, 197, 102, .08), var(--app-shadow-soft);
}

.site-signature .app-payment-methods .payment-logo {
  position: relative;
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(15, 31, 43, .10);
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 6px 16px rgba(0, 0, 0, .08);
}

.site-signature .app-payment-methods .payment-logo img {
  width: 100%;
  height: 100%;
  display: block;
  padding: 4px;
  object-fit: contain;
  object-position: center;
}

.site-signature .app-payment-methods .payment-logo-fallback {
  width: 100%;
  height: 100%;
  place-items: center;
  color: #fff;
  font-size: 1rem;
  font-weight: 900;
}

.site-signature .app-payment-methods .payment-logo-fallback:not([hidden]) {
  display: grid;
}

.site-signature .app-payment-methods .mpesa-logo .payment-logo-fallback {
  background: #df2b2b;
}

.site-signature .app-payment-methods .emola-logo .payment-logo-fallback {
  background: #f47a20;
}

.site-signature .app-payment-methods .payment-option > span:nth-last-child(2) {
  min-width: 0;
}

.site-signature .app-payment-methods strong {
  font-size: .82rem;
  line-height: 1.15;
}

.site-signature .app-payment-methods small {
  margin-top: 5px;
  color: var(--app-muted);
  font-size: .61rem;
  line-height: 1.25;
}

@media (max-width: 820px) {
  .site-signature .app-product-rail,
  .site-signature .free-product-rail,
  .site-signature .app-store-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    overflow: visible !important;
    padding-bottom: 0;
  }

  .site-signature .app-product-card {
    min-width: 0;
  }

  .site-signature .app-product-media,
  .site-signature .app-product-card.is-compact .app-product-media {
    aspect-ratio: 1 / 1;
    padding: 10px;
  }

  .site-signature .app-product-info,
  .site-signature .app-store-grid .app-product-info {
    padding: 10px;
  }

  .site-signature .app-product-category,
  .site-signature .app-store-grid .app-product-category {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .52rem;
  }

  .site-signature .app-product-info h3,
  .site-signature .app-store-grid .app-product-info h3,
  .site-signature .app-product-card.is-compact .app-product-info h3 {
    min-height: 2.35em;
    margin: 5px 0 7px;
    font-size: .78rem;
    line-height: 1.18;
  }

  .site-signature .app-product-info p {
    display: none;
  }

  .site-signature .app-product-price,
  .site-signature .app-store-grid .app-product-price {
    grid-template-columns: 1fr;
    align-items: stretch;
    gap: 7px;
    padding-top: 8px;
  }

  .site-signature .app-product-price strong,
  .site-signature .app-store-grid .app-product-price strong {
    font-size: .9rem;
  }

  .site-signature .app-product-price > span,
  .site-signature .app-store-grid .app-product-price > span {
    width: 100%;
    min-height: 34px;
    padding: 0 8px;
    font-size: .59rem !important;
  }

  .site-signature .app-product-price > span svg,
  .site-signature .app-store-grid .app-product-price > span svg {
    width: 12px;
    height: 12px;
  }

  .site-signature .app-product-showcase {
    min-height: 0 !important;
    padding: 12px;
  }

  .site-signature .app-product-art {
    min-height: 0 !important;
    aspect-ratio: 1 / 1;
  }

  .site-signature .app-product-art img {
    max-height: none !important;
    padding: 10px;
  }

  .free-resource-page .free-resource-mobile-bar {
    display: none !important;
  }

  .free-resource-page .app-content {
    padding-bottom: 76px !important;
  }
}

@media (max-width: 640px) {
  .site-signature .app-home-section {
    padding-top: 14px;
  }

  .site-signature .app-section-head {
    margin-bottom: 10px;
  }

  .site-signature .app-section-head h2 {
    font-size: 1.22rem;
  }

  .site-signature .app-store-list {
    padding-top: 6px;
  }

  .site-signature .app-store-grid,
  .site-signature .app-product-rail,
  .site-signature .free-product-rail {
    gap: 9px !important;
  }

  .site-signature .app-product-type {
    top: 7px;
    left: 7px;
    padding: 4px 6px;
    font-size: .49rem;
  }

  .site-signature .app-product-copy {
    padding: 16px;
  }

  .site-signature .app-product-copy h1 {
    font-size: 1.82rem;
  }

  .free-resource-claim-section {
    padding-top: 24px;
  }

  .free-resource-claim-copy h2 {
    margin-bottom: 8px;
  }

  .site-signature .app-payment-methods .payment-option {
    min-height: 74px;
    grid-template-columns: 18px 46px minmax(0, 1fr) 16px;
    gap: 10px;
    padding: 10px 11px;
  }

  .site-signature .app-payment-methods .payment-logo {
    width: 46px;
    height: 46px;
    border-radius: 12px;
  }
}

@media (max-width: 390px) {
  .site-signature .app-page-container {
    width: min(calc(100% - 16px), var(--app-max));
  }

  .site-signature .app-store-grid,
  .site-signature .app-product-rail,
  .site-signature .free-product-rail {
    gap: 7px !important;
  }

  .site-signature .app-product-media,
  .site-signature .app-product-card.is-compact .app-product-media {
    padding: 7px;
  }

  .site-signature .app-product-info,
  .site-signature .app-store-grid .app-product-info {
    padding: 8px;
  }

  .site-signature .app-product-info h3,
  .site-signature .app-store-grid .app-product-info h3,
  .site-signature .app-product-card.is-compact .app-product-info h3 {
    font-size: .72rem;
  }

  .site-signature .app-product-price > span,
  .site-signature .app-store-grid .app-product-price > span {
    min-height: 32px;
    font-size: .55rem !important;
  }
}


/* Visa / Mastercard — checkout hospedado pela ZumboPay. */
.site-signature .app-payment-methods .card-logo { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; padding:5px 4px; }
.site-signature .app-payment-methods .card-visa { color:#173b8f; font-size:.58rem; line-height:1; font-weight:950; letter-spacing:-.04em; }
.site-signature .app-payment-methods .card-mastercard { display:flex; align-items:center; justify-content:center; width:30px; height:18px; }
.site-signature .app-payment-methods .card-mastercard i { width:17px; height:17px; border-radius:50%; background:#eb001b; }
.site-signature .app-payment-methods .card-mastercard i + i { margin-left:-6px; background:#f79e1b; opacity:.94; }
.site-signature .app-payment-methods .payment-option-card.selected { border-color:rgba(23,59,143,.46); box-shadow:0 0 0 1px rgba(23,59,143,.06), var(--app-shadow-soft); }


/* Card checkout: phone is only needed for mobile wallets. */
.app-checkout-form .field[hidden] { display: none !important; }

/* Compra assistida — ações principais com aparência de botões premium. */
.site-signature .app-payment-pause-actions {
  display: grid;
  gap: 12px;
  margin: 24px 0 14px;
}

.site-signature .app-payment-pause-button {
  min-height: 74px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 13px;
  padding: 11px 14px;
  border-radius: 18px;
  text-decoration: none !important;
  border: 1px solid transparent;
  box-shadow: 0 12px 28px rgba(8, 32, 28, .08);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease;
  -webkit-tap-highlight-color: transparent;
}

.site-signature .app-payment-pause-button:hover,
.site-signature .app-payment-pause-button:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 16px 34px rgba(8, 32, 28, .13);
}

.site-signature .app-payment-pause-button:active {
  transform: translateY(0) scale(.995);
}

.site-signature .app-payment-pause-whatsapp {
  color: #fff !important;
  background: linear-gradient(135deg, #0f8f4a 0%, #21bb63 100%);
  border-color: rgba(255, 255, 255, .18);
}

.site-signature .app-payment-pause-email {
  color: #15332d !important;
  background: linear-gradient(135deg, #ffffff 0%, #f2f8f6 100%);
  border-color: rgba(21, 51, 45, .12);
}

.site-signature .app-payment-pause-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  flex: 0 0 auto;
}

.site-signature .app-payment-pause-whatsapp .app-payment-pause-icon {
  background: rgba(255, 255, 255, .16);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12);
}

.site-signature .app-payment-pause-email .app-payment-pause-icon {
  color: #08765a;
  background: #e2f4ee;
  box-shadow: inset 0 0 0 1px rgba(8, 118, 90, .07);
}

.site-signature .app-payment-pause-icon svg {
  width: 25px;
  height: 25px;
  fill: currentColor;
}

.site-signature .app-payment-pause-button-copy {
  min-width: 0;
  display: grid;
  gap: 4px;
  text-align: left;
}

.site-signature .app-payment-pause-button-copy strong {
  color: inherit;
  font-size: .88rem;
  font-weight: 880;
  line-height: 1.15;
}

.site-signature .app-payment-pause-button-copy small {
  color: inherit;
  opacity: .82;
  font-size: .62rem;
  font-weight: 560;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.site-signature .app-payment-pause-arrow {
  width: 20px;
  height: 20px;
  display: grid;
  place-items: center;
  opacity: .76;
  transition: transform .18s ease;
}

.site-signature .app-payment-pause-button:hover .app-payment-pause-arrow,
.site-signature .app-payment-pause-button:focus-visible .app-payment-pause-arrow {
  transform: translateX(3px);
}

.site-signature .app-payment-pause-arrow svg {
  width: 19px;
  height: 19px;
  fill: currentColor;
}

.site-signature .app-payment-pause-note {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 8px;
  padding: 12px 14px;
  border-radius: 13px;
  color: var(--app-muted);
  background: var(--app-bg-2);
  font-size: .68rem;
  line-height: 1.5;
}

@media (min-width: 760px) {
  .site-signature .app-payment-pause-actions {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 520px) {
  .site-signature .app-payment-pause-button {
    min-height: 70px;
    grid-template-columns: 44px minmax(0, 1fr) 18px;
    gap: 11px;
    padding: 10px 12px;
    border-radius: 16px;
  }

  .site-signature .app-payment-pause-icon {
    width: 44px;
    height: 44px;
    border-radius: 13px;
  }

  .site-signature .app-payment-pause-button-copy strong {
    font-size: .82rem;
  }
}

/* source: storefront-azure.css */
/* Pronto Digital MZ — Azure storefront. Public presentation only. */
body.site-signature {
  --app-bg:#f6f9fd;--app-bg-2:#edf4fa;--app-surface:#fff;--app-surface-2:#f7fbfe;
  --app-surface-3:#e8f2f9;--app-glass:rgba(255,255,255,.96);--app-text:#0b1f3b;
  --app-text-2:#354b65;--app-muted:#657b90;--app-line:#e3edf5;
  --app-line-strong:#cbdce9;--app-accent:#087d92;--app-accent-2:#00bdbc;
  --app-accent-soft:rgba(0,214,209,.12);--app-gold:#ffb020;
  --app-shadow:0 20px 50px rgba(12,48,85,.09);--app-shadow-soft:0 9px 22px rgba(9,42,72,.07);
  --app-max:1260px;color:#0b1f3b;background:#f6f9fd;color-scheme:light;
}
body.site-signature a {text-decoration-thickness:1px}
body.site-signature .app-shell{display:block;grid-template-columns:minmax(0,1fr)}
body.site-signature .app-sidebar{display:none!important}
body.site-signature .app-stage{width:100%;min-height:100vh}
body.site-signature .premium-header.app-topbar{
  min-height:76px;position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;
  gap:20px;padding:10px max(24px,calc((100vw - 1260px)/2));
  background:linear-gradient(105deg,#081b34 0%,#07364e 100%)!important;
  border:0;border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px rgba(4,21,39,.1);
  color:#fff;z-index:105;
}
body.site-signature .app-mobile-brand{display:flex;align-items:center;flex:none;min-width:0;text-decoration:none}
body.site-signature .app-topbar-context{display:none}
.azure-wordmark{display:inline-flex;align-items:center;gap:10px;min-width:0;line-height:1.05}
.azure-brand-symbol{width:43px;height:43px;display:block;flex:none}
.azure-brand-name{display:grid;gap:4px;min-width:0;line-height:1.08}
.azure-brand-name strong{font-family:Inter,system-ui,sans-serif;font-size:19px;font-weight:850;white-space:nowrap;color:#fff;letter-spacing:-.045em}
.azure-brand-name strong em{color:#00d6d1;font-style:normal}
.azure-brand-name small{color:#bed6df;font-size:7px;font-weight:700;white-space:nowrap;letter-spacing:.075em}
.azure-header-search{min-width:170px;max-width:292px;flex:1;display:flex;align-items:center;gap:9px;min-height:40px;padding:0 13px;border:1px solid #d8e6f1;border-radius:10px;background:#fff;color:#7c8d9f!important;font-size:12px;text-decoration:none}
.azure-header-search span{font-size:22px;line-height:1;color:#0b1f3b}
.azure-header-nav{display:flex;align-items:center;justify-content:center;gap:19px;white-space:nowrap}
.azure-header-nav a{position:relative;padding:11px 0;color:#edf6fa!important;font-size:12px;font-weight:720;text-decoration:none}
.azure-header-nav a:hover,.azure-header-nav a[aria-current="page"]{color:#00e4dc!important}
.azure-header-nav a[aria-current="page"]::after{content:"";height:2px;position:absolute;bottom:3px;left:0;right:0;background:#00d6d1;border-radius:2px}
body.site-signature .app-topbar-actions{flex:none}
body.site-signature .app-theme-toggle{display:none!important}
body.site-signature .app-account-button{border:1px solid rgba(255,255,255,.19);background:rgba(255,255,255,.07);color:#fff!important;border-radius:10px;font-size:12px;min-height:40px}
body.site-signature .app-account-button svg{stroke:#00d6d1}
body.site-signature .shop-button,
body.site-signature .app-primary-button,
body.site-signature .premium-button,
body.site-signature .button{
  background:linear-gradient(120deg,#ffb020,#ff9c18)!important;border:1px solid #ffb020;
  border-radius:11px;color:#10203a!important;font-weight:820;box-shadow:0 8px 22px rgba(248,162,25,.19);
}
body.site-signature .shop-button:hover,body.site-signature .app-primary-button:hover{filter:brightness(1.05);transform:translateY(-2px)}
/* Hero: two distinct zones; real catalog art rather than fictional products. */
body.site-signature .app-home-dashboard{
  position:relative;overflow:hidden;padding:60px 0 25px;
  background:radial-gradient(ellipse at 70% 25%,rgba(0,214,209,.24),transparent 47%),
             linear-gradient(116deg,#07172e 0%,#06364d 78%,#0b5b70 100%);
}
body.site-signature .app-home-dashboard::before{content:"";position:absolute;right:-130px;top:-160px;width:570px;height:570px;border:1px solid rgba(0,214,209,.12);border-radius:50%;pointer-events:none}
body.site-signature .app-home-dashboard .app-page-container{
  position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);
  grid-template-areas:"copy feature" "search feature" "trust trust";
  align-items:center;column-gap:48px;row-gap:18px;
}
body.site-signature .app-home-dashboard .app-home-toolbar{grid-area:copy;display:flex;flex-direction:column;align-items:flex-start;margin:0;color:#fff}
body.site-signature .app-home-dashboard .app-home-toolbar h1{
  margin:12px 0 15px;max-width:670px;font-size:clamp(2.5rem,4.25vw,4.5rem);
  line-height:1.035;letter-spacing:-.055em;color:#fff!important;font-weight:850;
}
body.site-signature .app-home-toolbar h1 em{color:#00ddd4;font-style:normal}
body.site-signature .app-home-dashboard .app-eyebrow{color:#72f2ea;font-size:11px;letter-spacing:.11em}
body.site-signature .azure-lead{max-width:580px;color:#e4edf4!important;font-size:15px;line-height:1.6;margin:0 0 20px}
body.site-signature .app-home-shortcuts{flex-wrap:wrap;gap:12px}
body.site-signature .app-home-shortcuts a{min-height:44px;padding:0 18px;color:#10203a!important;background:#ffb020;border:1px solid #ffb020;font-size:12px;border-radius:10px}
body.site-signature .app-home-shortcuts a:nth-child(2){color:#f5fcff!important;background:transparent;border:1px solid rgba(255,255,255,.72)}
body.site-signature .app-home-dashboard .app-search-launch{
  grid-area:search;margin:0 0 6px;min-height:46px;max-width:560px;
  box-shadow:none;border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.11);color:#e9f4f7!important;
}
body.site-signature .app-home-dashboard .app-search-launch b{color:#72f2ea}
body.site-signature .app-home-dashboard .app-search-symbol{color:#72f2ea}
body.site-signature .app-home-dashboard .app-category-chips{display:none}
body.site-signature .app-home-dashboard .app-feature-banner{
  grid-area:feature;display:grid;grid-template-columns:1fr .93fr;min-height:390px;
  margin:0;background:radial-gradient(circle at 72% 35%,rgba(0,214,209,.25),transparent 53%),linear-gradient(125deg,#14324f,#0a4961);
  border:1px solid rgba(255,255,255,.16);border-radius:22px;
  box-shadow:0 25px 55px rgba(0,7,22,.26);overflow:hidden;
}
body.site-signature .app-feature-banner .app-feature-copy{padding:25px 7px 25px 25px;align-items:flex-start;justify-content:flex-end;position:relative;z-index:1;min-width:0}
body.site-signature .app-feature-banner .app-feature-copy h2{
  color:#fff!important;font-size:clamp(23px,2.4vw,34px);line-height:1.05;letter-spacing:-.04em;max-width:330px
}
body.site-signature .app-feature-banner .app-feature-copy p{font-size:12px;color:#d7e6ee;line-height:1.5;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
body.site-signature .app-feature-banner .app-feature-copy>div{flex-wrap:wrap;gap:9px;margin-top:14px}
body.site-signature .app-feature-banner .app-feature-copy>div strong{color:#7cf5e8;font-size:19px}
body.site-signature .app-feature-banner .app-feature-copy>div span{font-size:11px;color:#fff}
body.site-signature .app-feature-banner .app-feature-visual{min-height:390px;padding:15px 12px 15px 0;background:none}
body.site-signature .app-feature-banner .app-feature-visual img{max-height:330px;filter:drop-shadow(0 18px 20px rgba(0,0,0,.28))}
body.site-signature .app-home-dashboard .app-trust-strip{grid-area:trust;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 0}
body.site-signature .app-home-dashboard .app-trust-strip span{background:rgba(3,26,45,.34);border:1px solid rgba(255,255,255,.13);color:#effcff;min-height:47px;font-size:12px}
body.site-signature .app-home-dashboard .app-trust-strip svg{stroke:#00ded5}
/* Home category cards and product grid. */
.azure-category-section{padding:44px 0 14px;background:#fff}
.azure-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px}
.azure-section-title h2{font-size:clamp(24px,2.7vw,34px);line-height:1.16;margin:8px 0 0;color:#0b1f3b!important}
.azure-section-title>a{color:#087d92!important;font-size:12px;font-weight:750;text-decoration:none}
.azure-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.azure-category{min-height:108px;display:flex;align-items:center;gap:12px;padding:16px;border:1px solid #e8eff6;border-radius:17px;color:#0b1f3b!important;text-decoration:none!important;transition:.2s ease}
.azure-category:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(7,46,75,.1)}
.azure-cat-ebook{background:#eaf5ff}.azure-cat-course{background:#ddf7f2}.azure-cat-free{background:#fff1db}.azure-cat-all{background:#f0ebff}
.azure-category-icon{width:46px;height:46px;flex:none;display:grid;place-items:center;background:#fff;border-radius:13px;color:#087d92;font-size:25px;font-weight:900}
.azure-cat-course .azure-category-icon{color:#008f83}.azure-cat-free .azure-category-icon{color:#f48d16}.azure-cat-all .azure-category-icon{color:#6152d4}
.azure-category>span:nth-child(2){flex:1;min-width:0;display:grid;gap:5px}
.azure-category strong{font-size:13px;color:#102547;font-weight:850}
.azure-category small{font-size:11px;color:#4d6276;line-height:1.35}
.azure-category b{color:#087d92;font-size:18px;font-weight:700}
body.site-signature .app-home-section{padding:45px 0;background:#fff}
body.site-signature .app-home-section-soft{background:#f0f7fc;border-top:1px solid #e5eff6}
body.site-signature .app-section-head{margin-bottom:22px}
body.site-signature .app-section-head h2{font-size:clamp(23px,2.4vw,32px);letter-spacing:-.04em;color:#0b1f3b!important}
body.site-signature .app-section-head>a{color:#087d92!important;font-size:12px}
body.site-signature .app-product-rail{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
body.site-signature .app-product-card{background:#fff;border-color:#e1ebf3;border-radius:16px;box-shadow:0 9px 26px rgba(18,53,83,.055)}
body.site-signature .app-product-card:hover{box-shadow:0 14px 32px rgba(18,53,83,.13);border-color:#c5dce7}
body.site-signature .app-product-media{background:linear-gradient(135deg,#f3f7fb,#e7f2f8)!important;aspect-ratio:4/3;padding:17px}
body.site-signature .app-product-card.is-compact .app-product-media{aspect-ratio:4/3}
body.site-signature .app-product-info{padding:15px}
body.site-signature .app-product-info h3{font-size:14px;line-height:1.24;color:#112547!important}
body.site-signature .app-product-category{font-size:10px;color:#087d92}
body.site-signature .app-product-price{padding-top:12px}
body.site-signature .app-product-price strong{font-size:16px;color:#0b1f3b}
body.site-signature .app-product-price>span{background:#0c3854!important;color:#fff!important;box-shadow:none;border-radius:9px}
body.site-signature .free-product-price>span{background:#087d92!important;color:#fff!important}
body.site-signature .app-benefit-grid article{background:#fff;border-color:#e2edf5;border-radius:16px;padding:21px;min-height:124px}
body.site-signature .app-benefit-grid article>span{background:#d9f6f4;color:#058b89}
body.site-signature .app-benefit-grid strong{color:#13284a;font-size:14px}
body.site-signature .app-benefit-grid p{color:#62778a;font-size:12px}
/* Catalogue, product and checkout: presentation only, preserving data hooks. */
body.site-signature .app-store-head{background:linear-gradient(110deg,#f0f7fd,#e8f4f8);padding:38px 0 25px}
body.site-signature .app-store-title h1{color:#0b1f3b!important;font-size:clamp(30px,3vw,45px)}
body.site-signature .app-store-list{background:#fff;padding:28px 0 65px}
body.site-signature .app-store-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
body.site-signature .app-search-box{background:#fff;border-color:#d6e4f0}
body.site-signature .app-category-chips button{background:#fff;border-color:#dce7f0;color:#183754}
body.site-signature .app-category-chips button.is-active{color:#fff;background:#087d92;border-color:#087d92}
body.site-signature .app-product-hero{background:#f3f8fc;padding:36px 0}
body.site-signature .app-product-showcase,body.site-signature .app-product-copy,
body.site-signature .app-content-card,body.site-signature .app-side-purchase,
body.site-signature .app-order-summary{border-color:#e2edf4;border-radius:18px;background:#fff;box-shadow:0 9px 26px rgba(13,52,78,.04)}
body.site-signature .app-product-copy h1{color:#0a2040!important}
body.site-signature .app-product-copy .shop-product-lead{color:#50667c}
body.site-signature .app-product-art{background:radial-gradient(circle at 50% 45%,rgba(0,214,209,.15),transparent 62%),#f0f6fb}
body.site-signature .app-product-stats>div{background:#f5f9fc}
body.site-signature .app-buy-row strong,body.site-signature .app-side-purchase b{color:#0b1f3b}
body.site-signature .app-product-content{background:#fff;padding-top:20px}
body.site-signature .app-checkout{background:#f3f8fc;padding:36px 0 70px}
body.site-signature .app-checkout-head h1{color:#0b1f3b!important}
body.site-signature .shop-checkout-main,body.site-signature .app-checkout-form{color:#0b1f3b}
body.site-signature .app-payment-methods .payment-option.selected{border-color:#02b7b5;box-shadow:0 0 0 2px rgba(0,214,209,.13)}
body.site-signature .app-checkout-progress .active b{background:#087d92}
body.site-signature .shop-phone-note{color:#566e82}
body.site-signature .app-payment-pause-note{border-color:#d6e5ef;background:#f4f9fc;color:#36536c}
body.site-signature .app-mobile-buybar a{background:#ffb020;color:#0b1f3b!important}
body.site-signature .app-footer{background:#071b30!important;color:#c9d9e7;border:0;padding:32px 0 22px}
body.site-signature .app-footer .azure-brand-name strong{color:#fff}
body.site-signature .app-footer a{color:#e8f4fb}
body.site-signature .app-footer-bottom{color:#9eb4c8}
body.site-signature .app-footer-main p{color:#b4c6d5}
body.site-signature .whatsapp-float{bottom:24px}
@media (max-width:1150px){
 body.site-signature .premium-header.app-topbar{gap:13px;padding-inline:24px}
 .azure-header-nav{gap:12px}.azure-header-search{max-width:230px;font-size:11px}
 .azure-brand-name strong{font-size:17px}.azure-brand-name small{font-size:6px}
 body.site-signature .app-home-dashboard .app-page-container{column-gap:22px}
 body.site-signature .app-product-rail,body.site-signature .app-store-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .azure-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:820px){
 body.site-signature .premium-header.app-topbar{min-height:63px;padding:10px 18px}
 .azure-header-nav,.azure-header-search{display:none}
 .azure-brand-symbol{width:35px;height:35px}
 .azure-brand-name strong{font-size:16px}.azure-brand-name small{font-size:6px}
 body.site-signature .app-home-dashboard{padding:36px 0 25px}
 body.site-signature .app-home-dashboard .app-page-container{grid-template-columns:1fr;grid-template-areas:"copy" "search" "feature" "trust";row-gap:18px}
 body.site-signature .app-home-dashboard .app-home-toolbar h1{font-size:clamp(2.15rem,7vw,3.3rem);max-width:680px}
 body.site-signature .azure-lead{font-size:14px}
 body.site-signature .app-home-dashboard .app-feature-banner{min-height:265px;grid-template-columns:1fr .8fr}
 body.site-signature .app-feature-banner .app-feature-visual{min-height:265px}
 body.site-signature .app-feature-banner .app-feature-copy h2{font-size:clamp(21px,4vw,30px)}
 body.site-signature .app-home-dashboard .app-trust-strip{margin-top:0;grid-template-columns:repeat(3,minmax(0,1fr))}
 body.site-signature .app-home-dashboard .app-trust-strip span{padding:8px;line-height:1.25;text-align:center;font-size:10px}
 body.site-signature .app-product-rail,body.site-signature .app-store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
 body.site-signature .app-product-media{aspect-ratio:4/3}
 .azure-category-section{padding:30px 0 8px}.azure-category-grid{gap:10px}
 body.site-signature .app-home-section{padding:30px 0}
 body.site-signature .app-bottom-nav{background:#071b30;border-top-color:rgba(255,255,255,.12)}
 body.site-signature .app-bottom-nav a{color:#d5e5f2}
 body.site-signature .app-bottom-nav a[aria-current="page"]{color:#00d6d1}
 body.site-signature .whatsapp-float{bottom:90px}
}
@media (max-width:530px){
 body.site-signature .premium-header.app-topbar{padding-inline:14px}
 .azure-brand-name strong{font-size:14px}.azure-brand-name small{font-size:5.3px;letter-spacing:.03em}
 .azure-brand-symbol{width:32px;height:32px}
 body.site-signature .app-account-button{padding:0 10px;min-height:36px;font-size:11px}
 body.site-signature .app-account-button span{display:none}
 body.site-signature .app-page-container{width:calc(100% - 28px)}
 body.site-signature .app-home-dashboard .app-home-toolbar h1{font-size:clamp(2.05rem,10vw,2.8rem)}
 body.site-signature .app-home-dashboard .app-feature-banner{grid-template-columns:1fr .75fr;min-height:235px}
 body.site-signature .app-feature-banner .app-feature-copy{padding:16px 4px 16px 16px}
 body.site-signature .app-feature-banner .app-feature-copy h2{font-size:20px}
 body.site-signature .app-feature-banner .app-feature-copy p{display:none}
 body.site-signature .app-feature-banner .app-feature-visual{min-height:235px;padding:7px}
 body.site-signature .app-feature-banner .app-feature-visual img{max-height:215px}
 body.site-signature .app-feature-banner .app-feature-copy>div{display:grid;gap:7px}
 body.site-signature .app-feature-banner .app-feature-copy>div strong{font-size:17px}
 body.site-signature .app-home-dashboard .app-trust-strip{grid-template-columns:1fr;gap:7px}
 body.site-signature .app-home-dashboard .app-trust-strip span{justify-content:flex-start;padding:9px 13px;font-size:11px;min-height:35px}
 .azure-section-title{align-items:flex-start;flex-direction:column;gap:8px}
 .azure-category{padding:12px;min-height:95px;gap:8px}
 .azure-category-icon{width:35px;height:35px;font-size:20px;border-radius:10px}
 .azure-category strong{font-size:12px}.azure-category small{font-size:10px}
 .azure-category b{display:none}
 body.site-signature .app-product-info{padding:10px}
 body.site-signature .app-product-info h3{font-size:12px}
 body.site-signature .app-product-price strong{font-size:14px}
 body.site-signature .app-product-price>span{padding:7px!important;font-size:10px!important;min-height:31px}
 body.site-signature .app-benefit-grid{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.azure-category,body.site-signature .app-product-card,body.site-signature .shop-button{transition:none!important}}
