/* =====================================================================
   Quietum Plus - "Still Harbor" theme
   qp- prefixed flat components + is-/has- states + u- utilities
   order: tokens > reset > base > layout > components > sections > utils
   ===================================================================== */
:root{
  --c-deep:#0e3a44; --c-teal:#14606e; --c-teal-soft:#2a8294;
  --c-sage:#6f9a86; --c-sage-soft:#dcebd9; --c-sage-tint:#e7f0ea;
  --c-gold:#d99a32; --c-gold-deep:#b87d1f; --c-gold-tint:#f7ecd6;
  --c-ink:#173230; --c-muted:#566664;
  --c-bg:#f5f8f6; --c-mist:#e9f1ef; --c-card:#ffffff; --c-cream:#fbf6ec;
  --c-line:#d6e2de;
  --font-head:'Petrona',Georgia,'Times New Roman',serif;
  --font-body:'Reddit Sans',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --shell:1180px; --radius:16px; --radius-sm:10px;
  --shadow:0 18px 50px -28px rgba(14,58,68,.45);
  --shadow-soft:0 10px 30px -22px rgba(14,58,68,.4);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--c-bg);color:var(--c-ink);font-family:var(--font-body);
  font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:var(--font-head);line-height:1.16;color:var(--c-deep);font-weight:600;margin:0 0 .5em}
h1{font-size:clamp(2rem,4.4vw,3.1rem);letter-spacing:-.01em}
h2{font-size:clamp(1.5rem,2.9vw,2.15rem)}
h3{font-size:1.22rem}
p{margin:0 0 1rem}
a{color:var(--c-teal);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}
ul,ol{margin:0 0 1rem}

/* ---- layout ---- */
.qp-shell{width:min(var(--shell),92vw);margin-inline:auto}
.qp-section{padding:clamp(2.6rem,6vw,4.6rem) 0}
.qp-prose{max-width:760px}
.qp-prose h2{margin-top:1.6em}
.qp-prose h2:first-child{margin-top:0}
.qp-center{text-align:center;margin-inline:auto}
.qp-sec-head{max-width:680px;margin:0 auto 2.2rem;text-align:center}
.qp-sec-head p{color:var(--c-muted)}
.qp-skip{position:absolute;left:-999px}
.qp-skip:focus{left:1rem;top:1rem;background:#fff;padding:.6rem 1rem;border-radius:8px;z-index:100}

/* ---- ribbon + header ---- */
.qp-ribbon{background:var(--c-deep);color:#eaf3f0;text-align:center;font-size:.82rem;
  letter-spacing:.02em;padding:.5rem 1rem}
.qp-header{position:sticky;top:0;z-index:50;background:rgba(245,248,246,.92);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--c-line)}
.qp-header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 0}
.qp-brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--c-deep)}
.qp-brand-mark{width:34px;height:34px;border-radius:50%;flex:0 0 auto;
  background:radial-gradient(circle at 32% 30%,var(--c-gold),var(--c-teal-soft) 60%,var(--c-deep));
  box-shadow:inset 0 0 0 3px rgba(255,255,255,.5)}
.qp-brand-text{display:flex;flex-direction:column;line-height:1.05}
.qp-brand-text strong{font-family:var(--font-head);font-size:1.2rem;font-weight:600}
.qp-brand-sub{font-size:.66rem;letter-spacing:.13em;text-transform:uppercase;color:var(--c-muted)}
.qp-nav{display:flex;align-items:center;gap:1.4rem}
.qp-nav-link{color:var(--c-ink);font-weight:500;font-size:.97rem}
.qp-nav-link.is-active,.qp-nav-link:hover{color:var(--c-teal);text-decoration:none}
.qp-burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:.4rem}
.qp-burger span{width:24px;height:2px;background:var(--c-deep);border-radius:2px;transition:.25s}

/* ---- buttons ---- */
.qp-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;
  font-family:var(--font-body);font-weight:700;font-size:.96rem;letter-spacing:.01em;
  padding:.78rem 1.5rem;border-radius:999px;border:2px solid transparent;cursor:pointer;
  transition:transform .15s ease,box-shadow .2s ease,background .2s ease;text-align:center}
.qp-btn:hover{text-decoration:none;transform:translateY(-2px)}
.qp-btn--gold{background:var(--c-gold);color:#3a2708;box-shadow:0 12px 24px -12px rgba(217,154,50,.8)}
.qp-btn--gold:hover{background:var(--c-gold-deep);color:#fff}
.qp-btn--teal{background:var(--c-teal);color:#fff}
.qp-btn--teal:hover{background:var(--c-deep)}
.qp-btn--ghost{background:transparent;border-color:var(--c-teal);color:var(--c-teal)}
.qp-btn--ghost:hover{background:var(--c-teal);color:#fff}
.qp-hero .qp-btn--ghost,.qp-cta-band .qp-btn--ghost{border-color:rgba(255,255,255,.7);color:#fff}
.qp-hero .qp-btn--ghost:hover,.qp-cta-band .qp-btn--ghost:hover{background:#fff;color:var(--c-deep)}
.qp-btn--lg{padding:.95rem 1.9rem;font-size:1.02rem}
.qp-btn--block{display:flex;width:100%}

/* ---- badges ---- */
.qp-badges{list-style:none;padding:0;margin:1.4rem 0 0;display:flex;flex-wrap:wrap;gap:.55rem;justify-content:center}
.qp-badges li{background:var(--c-card);border:1px solid var(--c-line);color:var(--c-teal);
  font-size:.74rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;
  padding:.4rem .8rem;border-radius:999px}

/* ---- breadcrumb ---- */
.qp-crumb{background:var(--c-mist);font-size:.84rem;border-bottom:1px solid var(--c-line)}
.qp-crumb .qp-shell{padding:.6rem 0}
.qp-crumb a{color:var(--c-muted)}
.qp-crumb span[aria-current]{color:var(--c-deep);font-weight:600}
.qp-crumb-sep{color:var(--c-sage)}

/* ---- hero ---- */
.qp-hero{background:linear-gradient(160deg,#10454f 0%,#16606e 55%,#2a8294 100%);color:#eef5f2;
  padding:clamp(2.4rem,5vw,4rem) 0 clamp(2rem,4vw,3rem)}
.qp-hero h1{color:#fff}
.qp-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:2.5rem;align-items:center}
.qp-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:600;color:var(--c-gold-tint)}
.qp-lede{font-size:1.16rem;color:#dcebe6}
.qp-portal{background:rgba(255,255,255,.09);border-left:3px solid var(--c-gold);
  padding:.85rem 1.1rem;border-radius:0 10px 10px 0;font-size:.95rem;color:#eaf3f0}
.qp-hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin:1.4rem 0}
.qp-hero-stats{display:flex;gap:1.8rem;margin-top:1.4rem;flex-wrap:wrap}
.qp-hero-stats b{font-family:var(--font-head);font-size:1.7rem;display:block;color:#fff}
.qp-hero-stats span{font-size:.8rem;color:#bcd6cf;text-transform:uppercase;letter-spacing:.05em}
.qp-hero-art{position:relative;display:flex;justify-content:center}
.qp-hero-seal{position:absolute;right:0;bottom:8%;background:var(--c-gold);color:#3a2708;
  font-size:.7rem;font-weight:700;text-align:center;line-height:1.25;padding:.7rem .8rem;border-radius:50%;
  width:96px;height:96px;display:flex;flex-direction:column;justify-content:center;
  box-shadow:var(--shadow);text-transform:uppercase;letter-spacing:.04em}
.qp-hero-seal b{font-size:1rem}
.qp-hero .qp-badges li{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.25);color:#fff}

/* ---- bottles (real pack photography, single image per figure) ---- */
.qp-bottles{display:flex;justify-content:center;align-items:flex-end}
.qp-bottles img{filter:drop-shadow(0 18px 28px rgba(0,0,0,.32))}
.qp-bottles--hero img{width:min(420px,82vw);height:auto}
.qp-bottles--card img{width:auto;height:auto;max-height:158px;max-width:100%}

/* ---- intro / prose ---- */
.qp-intro{background:var(--c-card);border-block:1px solid var(--c-line)}
.qp-prose .qp-note{font-size:.85rem;color:var(--c-muted);font-style:italic}

/* ---- pillars ---- */
.qp-pillar{background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--radius);
  padding:1.6rem;margin-bottom:1.4rem;box-shadow:var(--shadow-soft)}
.qp-pillar-head{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1rem}
.qp-pillar-num{font-family:var(--font-head);font-size:1.7rem;font-weight:700;color:var(--c-gold);
  background:var(--c-gold-tint);width:54px;height:54px;border-radius:14px;display:flex;
  align-items:center;justify-content:center;flex:0 0 auto}
.qp-pillar-head p{color:var(--c-muted);margin:.2rem 0 0}
.qp-ing-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.qp-ing-list li{border-top:2px solid var(--c-sage-tint);padding-top:.6rem}
.qp-ing-top{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}
.qp-ing-name{font-weight:600;color:var(--c-deep)}
.qp-ing-dose{font-size:.82rem;font-weight:700;color:var(--c-gold-deep);white-space:nowrap}
.qp-ing-list p{font-size:.86rem;color:var(--c-muted);margin:.3rem 0 0}
.qp-pillar-foot{text-align:center;color:var(--c-muted)}

/* ---- verify ---- */
.qp-verify-sec{background:var(--c-deep);color:#e9f3f0}
.qp-verify-sec h2{color:#fff}
.qp-verify-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.2rem;align-items:center}
.qp-verify-sec .qp-eyebrow{color:var(--c-gold-tint)}
.qp-verify-sec p{color:#c8ddd7}
.qp-verify-box{background:var(--c-card);color:var(--c-ink);border-radius:var(--radius);
  padding:1.4rem;box-shadow:var(--shadow)}
.qp-verify-table{width:100%;border-collapse:collapse;font-size:.9rem}
.qp-verify-table caption{font-weight:700;color:var(--c-teal);text-align:left;margin-bottom:.6rem;
  font-family:var(--font-head);font-size:1.05rem}
.qp-verify-table th,.qp-verify-table td{text-align:left;padding:.6rem .4rem;border-bottom:1px solid var(--c-line);vertical-align:top}
.qp-verify-table th{color:var(--c-muted);font-weight:500;width:46%}
.qp-verify-table td{font-weight:600;color:var(--c-deep)}
.qp-verify-coa{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}
.qp-verify-coa span{font-size:.78rem;color:var(--c-muted)}
.qp-verify-link{display:inline-block;margin-top:.8rem;font-weight:600}

/* steps */
.qp-steps{list-style:none;padding:0;margin:1.6rem 0 0;counter-reset:s;display:grid;gap:1rem}
.qp-steps li{display:flex;gap:1rem;background:var(--c-card);border:1px solid var(--c-line);
  border-radius:var(--radius-sm);padding:1.1rem 1.2rem}
.qp-step-num{flex:0 0 auto;width:38px;height:38px;border-radius:50%;background:var(--c-teal);color:#fff;
  font-weight:700;display:flex;align-items:center;justify-content:center;font-family:var(--font-head)}
.qp-steps h3{margin:.1rem 0 .3rem;font-size:1.05rem}
.qp-steps p{margin:0;color:var(--c-muted);font-size:.92rem}

/* ---- promise ---- */
.qp-promise{background:var(--c-cream)}
.qp-promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
.qp-promise-card{background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--radius);padding:1.5rem}
.qp-promise-num{font-family:var(--font-head);font-size:1.4rem;color:var(--c-gold-deep);font-weight:700}
.qp-promise-card h3{margin:.4rem 0 .4rem}
.qp-promise-card p{color:var(--c-muted);margin:0}

/* ---- experts teaser ---- */
.qp-experts-row{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center}
.qp-advisor-mini{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}
.qp-advisor-mini li{display:flex;align-items:center;gap:.9rem;background:var(--c-card);
  border:1px solid var(--c-line);border-radius:var(--radius-sm);padding:.8rem 1rem}
.qp-advisor-mini span{width:46px;height:46px;border-radius:50%;background:var(--c-sage-tint);
  color:var(--c-teal);font-weight:700;display:flex;align-items:center;justify-content:center;font-family:var(--font-head)}
.qp-advisor-mini small{color:var(--c-muted);display:block}
.qp-link-arrow{font-weight:600;display:inline-block;margin-top:.6rem}

/* ---- pricing ---- */
.qp-pricing{background:var(--c-mist)}
.qp-price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;align-items:start}
.qp-price-card{position:relative;background:var(--c-card);border:1px solid var(--c-line);
  border-radius:var(--radius);padding:1.8rem 1.4rem;text-align:center;box-shadow:var(--shadow-soft)}
.qp-price-card.is-featured{border:2px solid var(--c-gold);box-shadow:var(--shadow);transform:translateY(-8px)}
.qp-price-rib{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--c-gold);
  color:#3a2708;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;
  padding:.3rem .9rem;border-radius:999px;white-space:nowrap}
.qp-price-head h3{margin:.2rem 0 0;color:var(--c-teal);font-size:1.5rem}
.qp-price-note{font-size:.8rem;color:var(--c-gold-deep);font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.qp-price-supply{color:var(--c-muted);font-size:.9rem;margin:.2rem 0 0}
.qp-price-figs{margin:.8rem 0}
.qp-price-was{text-decoration:line-through;color:var(--c-muted);font-size:.95rem}
.qp-price-now{display:block;color:var(--c-deep)}
.qp-price-now b{font-family:var(--font-head);font-size:3rem;line-height:1}
.qp-price-now small{font-size:.85rem;color:var(--c-muted)}
.qp-price-total{display:block;font-size:.82rem;color:var(--c-muted)}
.qp-price-save{background:var(--c-sage-tint);color:var(--c-teal);font-weight:700;
  border-radius:8px;padding:.4rem;font-size:.9rem;margin:.4rem 0 .8rem}
.qp-price-list{list-style:none;padding:0;margin:0 0 1.2rem;text-align:left;display:grid;gap:.4rem}
.qp-price-list li{position:relative;padding-left:1.5rem;font-size:.9rem;color:var(--c-ink)}
.qp-price-list li::before{content:"\2714";position:absolute;left:0;color:var(--c-sage);font-weight:700}
.qp-pricing-foot{text-align:center;color:var(--c-muted);font-size:.86rem;margin-top:1.4rem}

/* ---- reviews ---- */
.qp-review-grid,.qp-rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.qp-review,.qp-rcard{background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--radius);
  padding:1.3rem;margin:0;box-shadow:var(--shadow-soft)}
.qp-stars{color:var(--c-gold);letter-spacing:.1em;margin-bottom:.5rem}
.qp-review cite,.qp-rcard small{color:var(--c-muted);font-style:normal;font-size:.82rem}
.qp-review p{font-size:.95rem}
.qp-reviews-teaser{text-align:center}
.qp-reviews-teaser .qp-review{text-align:left}
.qp-rcard-top{display:flex;align-items:center;gap:.7rem;margin-bottom:.6rem}
.qp-rcard-ini{width:42px;height:42px;border-radius:50%;background:var(--c-teal);color:#fff;
  font-weight:700;display:flex;align-items:center;justify-content:center;flex:0 0 auto;font-family:var(--font-head)}
.qp-rcard-badge{margin-left:auto;font-size:.66rem;background:var(--c-sage-tint);color:var(--c-teal);
  font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.2rem .5rem;border-radius:6px}
.qp-rcat{margin-bottom:2rem}
.qp-rcat h3{border-left:4px solid var(--c-gold);padding-left:.7rem}
.qp-rating-big{display:flex;align-items:center;gap:1.2rem;margin-top:1rem}
.qp-rating-big b{font-family:var(--font-head);font-size:3.4rem;color:var(--c-gold-deep);line-height:1}
.qp-rating-big .qp-stars{font-size:1.3rem}
.qp-rsplit-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.2rem}
.qp-criteria,.qp-dist{list-style:none;padding:0;margin:0;display:grid;gap:.7rem}
.qp-criteria li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.5rem .8rem}
.qp-criteria b{grid-column:2;color:var(--c-gold-deep)}
.qp-meter,.qp-bar{grid-column:1 / -1;height:7px;background:var(--c-mist);border-radius:99px;overflow:hidden}
.qp-meter i,.qp-bar i{display:block;height:100%;background:var(--c-sage);border-radius:99px}
.qp-dist li{display:grid;grid-template-columns:70px 1fr 44px;align-items:center;gap:.6rem}
.qp-dist .qp-bar{grid-column:2}
.qp-dist b{text-align:right;color:var(--c-muted)}
.qp-critical{background:var(--c-cream)}
.qp-timeline{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}
.qp-timeline li{display:grid;grid-template-columns:130px 1fr;gap:1rem;background:var(--c-card);
  border:1px solid var(--c-line);border-radius:var(--radius-sm);padding:.9rem 1.1rem}
.qp-timeline b{color:var(--c-teal)}

/* ---- forms / contact ---- */
.qp-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.4rem}
.qp-form{display:grid;gap:.9rem}
.qp-form label{display:grid;gap:.3rem;font-weight:600;font-size:.9rem;color:var(--c-deep)}
.qp-form input,.qp-form textarea{font-family:inherit;font-size:1rem;padding:.7rem .85rem;
  border:1px solid var(--c-line);border-radius:10px;background:var(--c-card);color:var(--c-ink)}
.qp-form input:focus,.qp-form textarea:focus{outline:2px solid var(--c-teal-soft);border-color:var(--c-teal)}
.qp-contact-form{background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--radius);padding:1.6rem;box-shadow:var(--shadow-soft)}

/* ---- lists ---- */
.qp-checklist{list-style:none;padding:0;margin:0 0 1rem;display:grid;gap:.5rem}
.qp-checklist li{position:relative;padding-left:1.7rem}
.qp-checklist li::before{content:"\2714";position:absolute;left:0;color:var(--c-sage);font-weight:700}
.qp-howto{padding-left:1.2rem;display:grid;gap:.6rem}
.qp-refs{font-size:.9rem;color:var(--c-muted);padding-left:1.2rem;display:grid;gap:.35rem}
.qp-filters,.qp-test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin:1.4rem 0}
.qp-filter,.qp-test{background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--radius);padding:1.3rem}
.qp-filter span{font-family:var(--font-head);font-size:1.4rem;color:var(--c-gold);font-weight:700}
.qp-filter h3,.qp-test h3{margin:.4rem 0 .3rem}
.qp-filter p,.qp-test p{color:var(--c-muted);margin:0;font-size:.92rem}

/* ---- formula table ---- */
.qp-formula-pillar{border-bottom:1px solid var(--c-line)}
.qp-formula-table{width:100%;border-collapse:collapse;margin-top:1rem;font-size:.93rem}
.qp-formula-table th,.qp-formula-table td{text-align:left;padding:.7rem .6rem;border-bottom:1px solid var(--c-line);vertical-align:top}
.qp-formula-table thead th{background:var(--c-sage-tint);color:var(--c-deep);font-weight:700}
.qp-ftd-name{font-weight:600;color:var(--c-deep)}
.qp-ftd-dose{color:var(--c-gold-deep);font-weight:700;white-space:nowrap}

/* ---- advisors ---- */
.qp-advisor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}
.qp-advisor{background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--radius);padding:1.6rem;text-align:center}
.qp-advisor-av{width:64px;height:64px;border-radius:50%;margin:0 auto 1rem;background:var(--c-teal);
  color:#fff;font-weight:700;font-size:1.3rem;display:flex;align-items:center;justify-content:center;font-family:var(--font-head)}
.qp-advisor-role{color:var(--c-gold-deep);font-weight:600;font-size:.86rem;margin:.2rem 0 .6rem}
.qp-advisor p{color:var(--c-muted);font-size:.92rem;margin:0}

/* ---- faq ---- */
.qp-faq-list{max-width:820px;margin:0 auto;display:grid;gap:.7rem}
.qp-faq{background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--radius-sm);overflow:hidden}
.qp-faq summary{cursor:pointer;padding:1rem 1.2rem;font-weight:600;color:var(--c-deep);list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:1rem}
.qp-faq summary::-webkit-details-marker{display:none}
.qp-faq summary::after{content:"+";font-size:1.4rem;color:var(--c-gold-deep);transition:.2s}
.qp-faq[open] summary::after{transform:rotate(45deg)}
.qp-faq-body{padding:0 1.2rem 1.1rem;color:var(--c-muted)}
.qp-faqs{background:var(--c-bg)}

/* ---- cta band ---- */
.qp-cta-band{background:linear-gradient(135deg,var(--c-deep),var(--c-teal));color:#fff;text-align:center}
.qp-cta-band h2{color:#fff}
.qp-cta-inner{max-width:720px;margin-inline:auto}
.qp-cta-band p{color:#cfe3dd}
.qp-cta-actions{display:flex;gap:.9rem;justify-content:center;flex-wrap:wrap;margin-top:1.2rem}
.qp-cta-band .qp-badges li{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.25);color:#fff}

/* ---- page head ---- */
.qp-page-head{background:linear-gradient(160deg,var(--c-mist),var(--c-bg));padding:clamp(2rem,5vw,3.4rem) 0 1.6rem;
  border-bottom:1px solid var(--c-line)}
.qp-page-head .qp-lede{max-width:720px;color:var(--c-muted)}

/* ---- footer ---- */
.qp-footer{background:var(--c-deep);color:#bcd6cf;padding:3rem 0 2rem;font-size:.92rem}
.qp-foot-top{display:grid;grid-template-columns:1.3fr 2fr;gap:2.4rem}
.qp-brand--foot strong{color:#fff}
.qp-foot-about p{color:#9fc0b8}
.qp-foot-contact{font-size:.86rem;line-height:1.7}
.qp-footer a{color:#d7e8e2}
.qp-foot-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.qp-foot-col h3{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.7rem}
.qp-foot-col ul{list-style:none;padding:0;margin:0;display:grid;gap:.45rem}
.qp-foot-col a{color:#9fc0b8;font-size:.88rem}
.qp-foot-col a:hover{color:#fff}
.qp-foot-portal{margin-top:2rem;padding-top:1.2rem;border-top:1px solid rgba(255,255,255,.12);
  color:var(--c-gold-tint);font-weight:600;font-size:.86rem}
.qp-disclaimer{font-size:.78rem;color:#88aaa2;margin-top:.6rem}
.qp-foot-legal{font-size:.78rem;color:#88aaa2;margin-top:.6rem}

/* ---- utilities ---- */
.u-mt0{margin-top:0}
.u-hide{display:none}

/* ---- responsive ---- */
@media(max-width:900px){
  .qp-hero-grid,.qp-verify-grid,.qp-experts-row,.qp-contact-grid,.qp-rsplit-grid,.qp-foot-top{grid-template-columns:1fr}
  .qp-price-grid,.qp-promise-grid,.qp-review-grid,.qp-rgrid,.qp-advisor-grid,.qp-filters,.qp-test-grid,.qp-foot-cols{grid-template-columns:1fr 1fr}
  .qp-price-card.is-featured{transform:none}
  .qp-hero-art{order:-1}
}
@media(max-width:640px){
  .qp-burger{display:flex}
  .qp-nav{position:fixed;inset:0 0 0 auto;width:min(80vw,300px);flex-direction:column;align-items:flex-start;
    background:var(--c-card);padding:5rem 1.6rem 2rem;gap:1.2rem;transform:translateX(100%);
    transition:transform .28s ease;box-shadow:var(--shadow);z-index:60}
  body.has-menu-open .qp-nav{transform:translateX(0)}
  body.has-menu-open{overflow:hidden}
  .qp-nav-cta{width:100%}
  .qp-price-grid,.qp-promise-grid,.qp-review-grid,.qp-rgrid,.qp-advisor-grid,.qp-filters,.qp-test-grid,.qp-foot-cols{grid-template-columns:1fr}
  .qp-timeline li{grid-template-columns:1fr}
  .qp-dist li{grid-template-columns:60px 1fr 40px}
}
