/* ═══════════ SECRET SHOP REVIEW — report theme ═══════════
   Ported from the Rejuve review. Everything is scoped under
   .shop-root so it cannot collide with the studio chrome or the
   16:9 pitch-deck renderer, which share the same page. */
.shop-root{
  --navy-900:#0C2E49;
  --navy-800:#103A5C;
  --navy-700:#16496F;
  --ocean:#2E7DB0;
  --ocean-bright:#57A6DA;
  --paper:#EDF2F5;
  --card:#FFFFFF;
  --ink:#16232E;
  --ink-soft:#516573;
  --ink-faint:#8497A3;
  --line:#DBE3EA;
  --line-soft:#E9EEF2;
  --good:#3E8E77;
  --avg:#C0892C;
  --imp:#C4664A;
  --good-bg:#E7F1EE;
  --avg-bg:#F7EFDD;
  --imp-bg:#F6E7E1;
  --sh:0 1px 2px rgba(12,46,73,.04),0 8px 30px rgba(12,46,73,.06);
  --sh-lg:0 2px 6px rgba(12,46,73,.06),0 24px 60px rgba(12,46,73,.12);
  --maxw:940px;

  background:var(--paper);
  color:var(--ink);
  font-family:'Inter',system-ui,-apple-system,sans-serif;
  font-size:17px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
  min-height:100%;
}
.shop-root *{box-sizing:border-box;}
.shop-root h1,.shop-root h2,.shop-root h3,.shop-root h4{
  font-family:'Bricolage Grotesque','Montserrat',sans-serif;
  font-weight:700;line-height:1.12;margin:0;letter-spacing:-.015em;
}
.shop-root p{margin:0 0 1em;}
.shop-root a{color:var(--ocean);}
.shop-root em{font-style:normal;}
.shop-root .s-wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}

/* nav */
.shop-root .s-nav{
  position:sticky;top:0;z-index:50;
  background:rgba(237,242,245,.86);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.shop-root .s-nav-inner{
  max-width:var(--maxw);margin:0 auto;padding:0 28px;
  height:60px;display:flex;align-items:center;gap:22px;
}
.shop-root .s-brand img{height:34px;width:auto;display:block;}
.shop-root .s-brand-txt{font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:700;font-size:15px;color:var(--navy-800);}
.shop-root .s-nav-links{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap;}
.shop-root .s-nav-links a{
  font-size:13.5px;font-weight:500;color:var(--ink-soft);text-decoration:none;
  padding:7px 12px;border-radius:8px;transition:background .15s,color .15s;white-space:nowrap;
}
.shop-root .s-nav-links a:hover{background:#fff;color:var(--navy-800);}
.shop-root .s-nav-links a.on{background:var(--navy-800);color:#fff;}
@media(max-width:760px){.shop-root .s-nav-links{display:none;}}

/* sections */
.shop-root .s-sec{padding:76px 0;border-top:1px solid var(--line-soft);scroll-margin-top:70px;}
.shop-root .s-sec.s-tight{padding-top:0;border-top:none;}
.shop-root .s-eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ocean);margin-bottom:20px;
}
.shop-root .s-eyebrow .tick{width:22px;height:1.5px;background:var(--ocean);display:inline-block;}
.shop-root .s-h2{font-size:clamp(28px,4vw,40px);max-width:20ch;margin-bottom:18px;text-wrap:balance;}
.shop-root .s-h3{font-size:22px;color:var(--navy-800);margin-bottom:6px;}
.shop-root .s-lead{font-size:20px;color:var(--ink-soft);max-width:660px;}
.shop-root .s-sublead{color:var(--ink-soft);max-width:60ch;margin-bottom:26px;}
.shop-root .s-hint{font-size:13px;color:var(--ink-faint);margin-top:16px;}
.shop-root .s-prose{max-width:66ch;color:var(--ink-soft);}

/* hero */
.shop-root .s-hero{
  background:linear-gradient(160deg,var(--navy-900) 0%,var(--navy-800) 55%,var(--navy-700) 100%);
  color:#fff;padding:0;border-top:none;position:relative;overflow:hidden;
}
.shop-root .s-hero::after{
  content:"";position:absolute;right:-160px;top:-120px;width:520px;height:520px;
  background:radial-gradient(circle,rgba(87,166,218,.22),transparent 62%);pointer-events:none;
}
.shop-root .s-hero-inner{max-width:var(--maxw);margin:0 auto;padding:88px 28px 76px;position:relative;z-index:1;}
.shop-root .s-logo{height:54px;width:auto;display:block;margin-bottom:30px;}
.shop-root .s-kicker{font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ocean-bright);margin-bottom:26px;}
.shop-root .s-h1{font-size:clamp(38px,6vw,62px);font-weight:800;color:#fff;max-width:15ch;margin-bottom:8px;}
.shop-root .s-hero-sub{font-size:19px;color:#B9CEDD;max-width:56ch;margin-top:22px;}
.shop-root .s-scenario{
  margin-top:40px;padding:26px 28px;border-left:3px solid var(--ocean-bright);
  background:rgba(255,255,255,.05);border-radius:0 12px 12px 0;max-width:62ch;
}
.shop-root .s-scenario .q{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:21px;line-height:1.45;color:#EAF2F8;margin:0;}
.shop-root .s-hero-meta{display:flex;flex-wrap:wrap;gap:36px;margin-top:44px;padding-top:26px;border-top:1px solid rgba(255,255,255,.14);}
.shop-root .s-hero-meta .l{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#7FA0B6;margin-bottom:5px;}
.shop-root .s-hero-meta .v{font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:600;font-size:18px;color:#fff;}

/* intake */
.shop-root .s-intake-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;margin-top:10px;}
@media(max-width:640px){.shop-root .s-intake-grid{grid-template-columns:1fr;}}
.shop-root .s-field{background:#F7FAFC;border:1px solid var(--line);border-radius:12px;padding:14px 18px;transition:border .15s,background .15s;}
.shop-root .s-field:focus-within{border-color:var(--ocean);background:#fff;}
.shop-root .s-field label{display:block;font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px;}
.shop-root .s-field input{width:100%;border:none;background:transparent;font-family:inherit;font-size:17px;font-weight:500;color:var(--ink);padding:0;}
.shop-root .s-field input:focus{outline:none;}
.shop-root .s-field input::placeholder{color:#AFC0CB;font-weight:400;font-style:italic;}
.shop-root .s-field.ro input{cursor:default;}
.shop-root .s-field.key{background:#EAF3FA;border-color:#C3DDEE;}
.shop-root .s-field .in-money{display:flex;align-items:center;}
.shop-root .s-field .in-money .pre{color:var(--ocean);font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:700;font-size:18px;padding-right:3px;}
.shop-root .s-field.key input{font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:700;font-size:19px;color:var(--navy-800);}
.shop-root .key-note{display:block;font-size:11px;color:var(--ocean);margin-top:7px;font-weight:600;}

/* steps */
.shop-root .s-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px;}
@media(max-width:760px){.shop-root .s-steps{grid-template-columns:1fr 1fr;}}
.shop-root .s-step{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 20px;box-shadow:var(--sh);}
.shop-root .s-step .n{font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:700;font-size:14px;color:var(--ocean);margin-bottom:12px;}
.shop-root .s-step h4{font-size:16px;margin-bottom:7px;color:var(--navy-800);}
.shop-root .s-step p{font-size:14.5px;color:var(--ink-soft);margin:0;}

/* scorecard */
.shop-root .s-score-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:34px;}
@media(max-width:640px){.shop-root .s-score-row{grid-template-columns:1fr 1fr;}}
.shop-root .s-score{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px 20px;text-align:center;box-shadow:var(--sh);}
.shop-root .s-score .big{font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:800;font-size:44px;line-height:1;}
.shop-root .s-score .lbl{font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-top:10px;color:var(--ink-soft);}
.shop-root .s-score.zero .big{color:var(--ink-faint);}
.shop-root .s-score.good .big{color:var(--good);}
.shop-root .s-score.avg .big{color:var(--avg);}
.shop-root .s-score.imp .big{color:var(--imp);}

/* metrics */
.shop-root .s-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px;}
@media(max-width:760px){.shop-root .s-metrics{grid-template-columns:1fr;}}
.shop-root .s-metric{
  background:linear-gradient(165deg,#fff,#FAFCFD);border:1px solid var(--line);
  border-radius:16px;padding:28px 26px;box-shadow:var(--sh);position:relative;overflow:hidden;
}
.shop-root .s-metric::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--imp);}
.shop-root .s-metric .figure{font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:800;font-size:46px;line-height:1;color:var(--navy-900);letter-spacing:-.02em;}
.shop-root .s-metric .figure span{font-size:20px;font-weight:600;color:var(--ink-soft);}
.shop-root .s-metric .cap{font-size:15px;color:var(--ink-soft);margin-top:12px;}
.shop-root .s-metric .cap strong{color:var(--ink);font-weight:600;}

/* journey */
.shop-root .s-journey{margin-top:14px;position:relative;}
.shop-root .s-stop{position:relative;padding:0 0 8px 54px;margin-bottom:22px;}
.shop-root .s-stop::before{content:"";position:absolute;left:19px;top:30px;bottom:-22px;width:2px;background:var(--line);}
.shop-root .s-stop:last-child::before{display:none;}
.shop-root .s-stop .node{
  position:absolute;left:8px;top:4px;width:24px;height:24px;border-radius:50%;
  background:#fff;border:2px solid var(--line);z-index:2;
  display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;
  color:var(--ink-faint);font-family:'Bricolage Grotesque','Montserrat',sans-serif;
}
.shop-root .s-stop.imp .node{border-color:var(--imp);color:var(--imp);}
.shop-root .s-stop.avg .node{border-color:var(--avg);color:var(--avg);}
.shop-root .s-stop.good .node{border-color:var(--good);color:var(--good);}
.shop-root .s-stop-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px 22px;box-shadow:var(--sh);}
.shop-root .s-stop-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px;}
.shop-root .s-stop-head h3{font-size:18px;color:var(--navy-800);}
.shop-root .s-badge{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 11px;border-radius:999px;}
.shop-root .s-badge.imp{background:var(--imp-bg);color:var(--imp);}
.shop-root .s-badge.avg{background:var(--avg-bg);color:var(--avg);}
.shop-root .s-badge.good{background:var(--good-bg);color:var(--good);}
.shop-root .s-stop-card p{font-size:15.5px;color:var(--ink-soft);margin:0;}
.shop-root .s-stop-card .obs{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line);font-size:14px;color:var(--ink-faint);}
.shop-root .s-stop-card .obs b{color:var(--ink-soft);font-weight:600;}

/* bright spot */
.shop-root .s-bright{margin-top:30px;background:var(--good-bg);border:1px solid #CBE3DB;border-radius:16px;padding:26px 28px;display:flex;gap:18px;align-items:flex-start;}
.shop-root .s-bright .brightic{flex:none;width:26px;height:26px;color:var(--good);margin-top:2px;}
.shop-root .s-bright h4{font-size:16px;color:#256452;margin-bottom:6px;}
.shop-root .s-bright p{font-size:15.5px;color:#2F6B59;margin:0;}

/* discussion */
.shop-root .s-discuss{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:34px 32px;box-shadow:var(--sh-lg);margin-top:12px;}
.shop-root .s-prompts{display:grid;gap:14px;margin:0 0 28px;}
.shop-root .s-prompt{display:flex;gap:14px;align-items:flex-start;font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:19px;color:var(--navy-800);line-height:1.4;}
.shop-root .s-prompt .dot{flex:none;width:9px;height:9px;border-radius:50%;background:var(--ocean);margin-top:11px;}
.shop-root .s-notes-label{font-size:12.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:10px;display:flex;align-items:center;gap:10px;}
.shop-root .s-internal{background:#EAF3FA;color:var(--ocean);border-radius:999px;padding:3px 9px;font-size:10.5px;letter-spacing:.06em;}
.shop-root .s-discuss textarea{
  width:100%;min-height:150px;resize:vertical;border:1px solid var(--line);border-radius:12px;
  padding:16px 18px;font-family:inherit;font-size:15.5px;color:var(--ink);line-height:1.6;background:#FBFCFD;
}
.shop-root .s-discuss textarea:focus{outline:2px solid var(--ocean);outline-offset:1px;border-color:var(--ocean);}

/* transition */
.shop-root .s-transition{background:linear-gradient(160deg,var(--navy-900),var(--navy-800));color:#fff;}
.shop-root .s-transition .s-eyebrow{color:var(--ocean-bright);}
.shop-root .s-transition .s-eyebrow .tick{background:var(--ocean-bright);}
.shop-root .s-transition .s-h2{color:#fff;}
.shop-root .s-pull{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:clamp(24px,3.6vw,34px);line-height:1.4;color:#EAF2F8;max-width:22ch;margin:0;}
.shop-root .s-pull + .s-pull{margin-top:28px;}
.shop-root .s-pull em{color:#fff;border-bottom:2px solid var(--ocean-bright);padding-bottom:1px;}
.shop-root .s-transition .s-prose{color:#B9CEDD;}

/* the fix */
.shop-root .s-fix{display:grid;gap:18px;margin-top:34px;}
.shop-root .s-fixcard{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh);display:grid;grid-template-columns:1fr 1fr;overflow:hidden;}
@media(max-width:760px){.shop-root .s-fixcard{grid-template-columns:1fr;}}
.shop-root .s-fixcard .gap{padding:26px 28px;background:#FBF3F0;border-right:1px solid var(--line);}
@media(max-width:760px){.shop-root .s-fixcard .gap{border-right:none;border-bottom:1px solid var(--line);}}
.shop-root .s-fixcard .sol{padding:26px 28px;}
.shop-root .fix-tag{font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px;}
.shop-root .fix-tag.g{color:var(--imp);}
.shop-root .fix-tag.s{color:var(--ocean);}
.shop-root .s-fixcard h3{font-size:19px;color:var(--navy-800);margin-bottom:10px;}
.shop-root .s-fixcard p{font-size:15px;color:var(--ink-soft);margin:0;}
.shop-root .s-fixcard ul{margin:12px 0 0;padding-left:18px;}
.shop-root .s-fixcard li{font-size:15px;color:var(--ink-soft);margin-bottom:6px;}
.shop-root .s-fixcard li::marker{color:var(--ocean);}

/* calculator */
.shop-root .s-calc{margin-top:38px;background:linear-gradient(165deg,var(--navy-800),var(--navy-900));color:#fff;border-radius:18px;padding:38px 34px;box-shadow:var(--sh-lg);}
.shop-root .s-calc .s-eyebrow{color:var(--ocean-bright);}
.shop-root .s-calc .s-eyebrow .tick{background:var(--ocean-bright);}
.shop-root .s-calc-h{font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:700;font-size:24px;color:#fff;margin-bottom:6px;}
.shop-root .s-calc-sub{color:#9FBBD0;font-size:15.5px;margin-bottom:26px;max-width:56ch;}
.shop-root .s-calc-inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
@media(max-width:760px){.shop-root .s-calc-inputs{grid-template-columns:1fr;}}
.shop-root .ci label{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#9FBBD0;margin-bottom:9px;}
.shop-root .ci-field{display:flex;align-items:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:0 14px;transition:border .15s;}
.shop-root .ci-field:focus-within{border-color:var(--ocean-bright);}
.shop-root .ci-field .pre{color:#9FBBD0;font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:600;font-size:20px;padding-right:4px;}
.shop-root .ci-field input{flex:1;background:transparent;border:none;outline:none;color:#fff;font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:700;font-size:23px;padding:13px 0;width:100%;}
.shop-root .ci-field input::placeholder{color:#5C7C93;font-weight:600;}
.shop-root .ci-help{font-size:12.5px;color:#7FA0B6;margin-top:8px;}
.shop-root .s-loss{display:flex;gap:8px;}
.shop-root .s-loss button{flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);color:#B9CEDD;font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:700;font-size:17px;padding:13px 0;border-radius:10px;cursor:pointer;transition:.15s;}
.shop-root .s-loss button:hover:not(:disabled){background:rgba(255,255,255,.12);}
.shop-root .s-loss button:disabled{cursor:default;}
.shop-root .s-loss button.on{background:var(--ocean-bright);border-color:var(--ocean-bright);color:var(--navy-900);}
.shop-root .s-calc-out{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:16px;margin-top:26px;}
@media(max-width:760px){.shop-root .s-calc-out{grid-template-columns:1fr;}}
.shop-root .co{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:22px 18px;text-align:center;display:flex;flex-direction:column;justify-content:center;}
.shop-root .co.big{background:rgba(87,166,218,.12);border-color:rgba(87,166,218,.42);}
.shop-root .co-num{font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:800;font-size:32px;line-height:1;color:#fff;}
.shop-root .co-num.hero{font-size:clamp(36px,6vw,54px);color:var(--ocean-bright);margin:6px 0;letter-spacing:-.02em;}
.shop-root .co-lbl{font-size:12.5px;color:#9FBBD0;margin-top:10px;line-height:1.35;}
.shop-root .co-lbl.top{margin-top:0;margin-bottom:2px;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:600;}
.shop-root .s-calc-note{font-size:13.5px;color:#88A6BD;margin:22px 0 0;max-width:60ch;}

/* package */
.shop-root .s-package{margin-top:38px;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--sh-lg);padding:38px 34px;}
.shop-root .s-pkg-h{font-size:24px;color:var(--navy-800);margin-bottom:6px;}
.shop-root .s-pkg-sub{color:var(--ink-soft);font-size:15.5px;margin-bottom:28px;max-width:58ch;}
.shop-root .s-pkg-items{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
@media(max-width:700px){.shop-root .s-pkg-items{grid-template-columns:1fr;}}
.shop-root .s-pkg-item{display:flex;gap:15px;align-items:flex-start;background:#F7FAFC;border:1px solid var(--line-soft);border-radius:14px;padding:20px;}
.shop-root .s-pkg-ic{flex:none;width:40px;height:40px;border-radius:11px;background:var(--navy-800);display:flex;align-items:center;justify-content:center;}
.shop-root .s-pkg-ic svg{width:21px;height:21px;color:#fff;}
.shop-root .s-pkg-body h4{font-size:17px;color:var(--navy-800);margin-bottom:5px;}
.shop-root .s-pkg-body p{font-size:14.5px;color:var(--ink-soft);margin:0 0 11px;}
.shop-root .s-fixes{display:inline-block;font-size:11.5px;font-weight:600;color:var(--good);background:var(--good-bg);padding:4px 11px;border-radius:999px;}
.shop-root .s-pkg-price{display:grid;grid-template-columns:1.3fr 1fr;gap:16px;margin-top:20px;}
@media(max-width:700px){.shop-root .s-pkg-price{grid-template-columns:1fr;}}
.shop-root .pp-main{background:linear-gradient(160deg,var(--navy-800),var(--navy-900));color:#fff;border-radius:16px;padding:26px 28px;display:flex;flex-direction:column;justify-content:center;}
.shop-root .pp-amt{font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:800;font-size:46px;line-height:1;color:#fff;letter-spacing:-.02em;}
.shop-root .pp-amt span{font-size:19px;font-weight:600;color:#9FBBD0;letter-spacing:0;}
.shop-root .pp-main .pp-lbl{font-size:14.5px;color:#C6D8E5;margin-top:12px;}
.shop-root .pp-add{background:#EAF3FA;border:1px solid #C3DDEE;border-radius:16px;padding:26px 28px;display:flex;flex-direction:column;justify-content:center;}
.shop-root .pp-plus{font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:800;font-size:31px;line-height:1;color:var(--ocean);}
.shop-root .pp-plus span{font-size:16px;font-weight:600;color:var(--ink-soft);}
.shop-root .pp-add .pp-lbl{font-size:14px;color:var(--ink-soft);margin-top:11px;}
.shop-root .s-pkg-vs{margin-top:20px;padding:20px 24px;background:#EFF5F9;border-left:3px solid var(--ocean);border-radius:0 12px 12px 0;font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:19px;line-height:1.5;color:var(--navy-800);}
.shop-root .s-pkg-vs b{font-style:normal;font-weight:600;color:var(--navy-900);}

/* next step */
.shop-root .s-next{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:36px 34px;box-shadow:var(--sh-lg);margin-top:12px;display:flex;gap:28px;align-items:center;flex-wrap:wrap;}
.shop-root .s-next .txt{flex:1;min-width:260px;}
.shop-root .s-next h3{font-size:22px;color:var(--navy-800);margin-bottom:8px;}
.shop-root .s-next p{font-size:16px;color:var(--ink-soft);margin:0;}
.shop-root .s-cta{
  display:inline-flex;align-items:center;gap:10px;background:var(--navy-800);color:#fff;
  text-decoration:none;font-family:'Bricolage Grotesque','Montserrat',sans-serif;font-weight:600;font-size:16px;
  padding:15px 26px;border-radius:12px;transition:background .15s,transform .15s;white-space:nowrap;
}
.shop-root .s-cta:hover{background:var(--ocean);transform:translateY(-1px);}

/* footer */
.shop-root .s-footer{background:var(--navy-900);color:#9FBBD0;text-align:center;padding:40px 28px;border-top:none;}
.shop-root .s-footer .fq{font-family:'Fraunces',Georgia,serif;font-style:italic;font-size:19px;color:#D6E4EE;margin-bottom:10px;}
.shop-root .s-footer .fb{font-size:13px;letter-spacing:.12em;text-transform:uppercase;}

/* scroll reveal */
.shop-root .s-sec > .s-wrap > *,.shop-root .s-hero-inner > *{}
.shop-root .reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease;}
.shop-root .reveal.in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  .shop-root .reveal{opacity:1;transform:none;transition:none;}
}

/* ── reputation vs the market ──
   A ranked bar chart rather than a table: the point is the gap, and a
   gap is read faster as length than as two columns of digits. */
.shop-root .s-rep{margin-top:26px;border:1px solid #E3EBF1;border-radius:14px;overflow:hidden;background:#fff;}
.shop-root .s-rep-head,.shop-root .s-rep-row{
  display:grid;grid-template-columns:minmax(0,1fr) 160px 76px 62px;
  gap:14px;align-items:center;padding:11px 18px;
}
.shop-root .s-rep-head{
  background:#F4F8FB;border-bottom:1px solid #E3EBF1;font-size:11.5px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);
}
.shop-root .s-rep-head .s-rep-n,.shop-root .s-rep-head .s-rep-rate{text-align:right;}
.shop-root .s-rep-head > div:first-child{grid-column:1 / span 2;}
.shop-root .s-rep-row + .s-rep-row{border-top:1px solid #EEF3F7;}
.shop-root .s-rep-name{font-size:15px;color:var(--ink);display:flex;align-items:center;gap:8px;min-width:0;}
.shop-root .s-rep-row.me{background:#F0F7FC;}
.shop-root .s-rep-row.me .s-rep-name{font-weight:700;color:var(--navy-800);}
.shop-root .s-rep-you{
  font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  background:var(--ocean);color:#fff;padding:2px 7px;border-radius:999px;flex:none;
}
.shop-root .s-rep-far{font-size:12px;color:var(--ink-faint);flex:none;}
.shop-root .s-rep-bar{height:9px;background:#EDF2F6;border-radius:999px;overflow:hidden;}
.shop-root .s-rep-bar span{display:block;height:100%;border-radius:999px;background:#C3D4E0;}
.shop-root .s-rep-row.me .s-rep-bar span{background:var(--ocean);}
.shop-root .s-rep-n{text-align:right;font-weight:700;font-size:15px;color:var(--navy-800);font-variant-numeric:tabular-nums;}
.shop-root .s-rep-rate{text-align:right;font-size:14px;color:var(--ink-soft);font-variant-numeric:tabular-nums;}
.shop-root .s-foot{margin-top:14px;font-size:12.5px;color:var(--ink-faint);max-width:70ch;}

/* ── service page rankings ── */
.shop-root .s-rk-wrap{margin-top:26px;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.shop-root .s-rk{width:100%;border-collapse:collapse;min-width:520px;background:#fff;
  border:1px solid #E3EBF1;border-radius:14px;overflow:hidden;}
.shop-root .s-rk th{
  background:#F4F8FB;text-align:left;padding:11px 16px;font-size:11.5px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid #E3EBF1;
}
.shop-root .s-rk td{padding:12px 16px;border-top:1px solid #EEF3F7;font-size:14.5px;vertical-align:top;}
.shop-root .s-rk tbody tr:first-child td{border-top:none;}
.shop-root .s-rk-pos{width:58px;}
.shop-root .s-rk-pos span{
  display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;
  border-radius:8px;font-weight:700;font-size:14px;padding:0 6px;
}
.shop-root .s-rk tr.good .s-rk-pos span{background:var(--good-bg);color:var(--good);}
.shop-root .s-rk tr.avg .s-rk-pos span{background:var(--avg-bg);color:var(--avg);}
.shop-root .s-rk tr.imp .s-rk-pos span{background:var(--imp-bg);color:var(--imp);}
.shop-root .s-rk-kw{color:var(--ink);}
.shop-root .s-rk-url{display:block;font-size:12px;color:var(--ink-faint);margin-top:3px;word-break:break-all;}
.shop-root .s-rk-vol,.shop-root .s-rk-page{
  text-align:right;color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap;
}
.shop-root .s-rk-page{font-size:13px;color:var(--ink-faint);}
@media(max-width:620px){
  .shop-root .s-rep-head,.shop-root .s-rep-row{grid-template-columns:minmax(0,1fr) 64px 54px;}
  .shop-root .s-rep-bar{display:none;}
  .shop-root .s-rep-head > div:first-child{grid-column:1;}
}

/* print: a paged document, not 16:9 slides */
@media print{
  .shop-root .s-nav{display:none;}
  .shop-root{background:#fff;}
  .shop-root .s-sec{padding:34px 0;break-inside:avoid-page;}
  .shop-root .s-hero{break-after:page;}
  .shop-root .s-stop,.shop-root .s-fixcard,.shop-root .s-metric,
  .shop-root .s-package,.shop-root .s-calc,.shop-root .s-discuss{break-inside:avoid;}
  .shop-root .s-rep-row,.shop-root .s-rk tr{break-inside:avoid;}
  .shop-root .s-rk-wrap{overflow:visible;}
  .shop-root .s-rk{min-width:0;}
  .shop-root .reveal{opacity:1 !important;transform:none !important;}
}
