/* MarginGains marketing redesign, 2026-10 (CMO handoff, matches the app redesign).
   Loaded AFTER site.css on redesigned pages only; every rule is scoped to body.rd or an
   rd- class, so pages not yet restyled are untouched.
   Type: Fraunces 600 headlines, Source Sans 3 body. White cards, hairlines, no shadows. */

/* Source Sans 3 (SIL OFL 1.1, see /fonts/SourceSans3-OFL.txt), variable weight, self-hosted. */
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:200 900;font-display:swap;
  src:url('/fonts/SourceSans3-latinext-var.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:200 900;font-display:swap;
  src:url('/fonts/SourceSans3-latin-var.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

body.rd{
  --rd-ink:#1B1917; --rd-ink2:#4A4540; --rd-ink3:#7A746C; --rd-line:#DEDAD3;
  --rd-bg:#F4F3F0; --rd-nav:#16140F; --rd-nav-line:#3A362F; --rd-on-dark:#CFC9BF; --rd-on-dark2:#BDB8AE;
  --rd-red:#B8111F; --rd-red-soft:#F08A8F; --rd-red-tint:#F3E3E4;
  /* Home services: the HS app's locked gold identity (used by the later pages). */
  --rd-gold:#9A6A12; --rd-gold-btn:#B58C2F; --rd-gold-text:#86641C;   /* app's #8F6B1F is 4.4:1 on the page ground; #86641C passes AA (4.9:1) */ --rd-gold-tint:#F6EEDD; --rd-gold-line:#E6D7B8;
  --rd-good:#1E6B45;
  --rd-max:1200px; --rd-gutter:40px;
  background:var(--rd-bg); color:var(--rd-ink);
  font:400 17px/1.55 'Source Sans 3',-apple-system,'Helvetica Neue',Arial,sans-serif;
}
body.rd h1,body.rd h2,body.rd h3{font-family:'Fraunces',Georgia,serif;font-weight:600;letter-spacing:-.01em;}
body.rd h1{font-size:64px;line-height:1.03;margin:14px 0 18px;}
body.rd h2{font-size:42px;line-height:1.1;margin:10px 0 14px;}
body.rd h3{font-size:24px;line-height:1.2;margin:0 0 8px;}
:where(body.rd) p{margin:0 0 12px;}
:where(body.rd) section{padding:0;border-top:0;}
:where(body.rd) img{display:block;max-width:100%;}

.rd-w{max-width:var(--rd-max);margin:0 auto;padding:0 var(--rd-gutter);}
.rd-dark{background:var(--rd-nav);color:#fff;}
.rd-eye{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rd-red);}
.rd-dark .rd-eye{color:var(--rd-red-soft);}
.rd-lead{font-size:20px;color:var(--rd-on-dark);max-width:540px;}
.rd-muted{color:var(--rd-ink2);}

/* Buttons: one primary (filled) per section. */
.rd-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:12px;
  font:700 16px/1.2 'Source Sans 3',sans-serif;text-decoration:none;text-align:center;}
.rd-btn-r{background:var(--rd-red);color:#fff;}
.rd-btn-r:hover{background:#9C0E1A;}
.rd-btn-o{border:1.5px solid currentColor;color:inherit;}
.rd-btn-o:hover{background:rgba(127,127,127,.08);}
.rd-btn:focus-visible,.rd-nav a:focus-visible,.rd-login summary:focus-visible,.rd-line:focus-visible{outline:3px solid var(--rd-red-soft);outline-offset:2px;}

/* ---------- masthead (homepage v2, owner 2026-10-09: light, on the page ground) ---------- */
.rd-top{background:var(--rd-bg);color:var(--rd-ink);}
.rd-nav{display:flex;align-items:center;gap:30px;min-height:76px;font-weight:600;font-size:15.5px;}
.rd-logo{display:flex;align-items:center;gap:10px;font:600 22px 'Fraunces',Georgia,serif;}
.rd-mg{width:30px;height:30px;border-radius:8px;background:var(--rd-red);color:#fff;font:700 13px 'Source Sans 3',sans-serif;
  display:inline-flex;align-items:center;justify-content:center;}
.rd-links{display:flex;gap:30px;}
.rd-nav a{color:var(--rd-ink);text-decoration:none;}
.rd-nav a.rd-btn-r{color:#fff;}
.rd-links a:hover{text-decoration:underline;text-underline-offset:4px;}
.rd-acts{display:flex;align-items:center;gap:22px;margin-left:auto;}
.rd-acts .rd-btn{min-height:46px;}
.rd-login{position:relative;}
.rd-login summary{cursor:pointer;list-style:none;padding:8px 0;}
.rd-login summary::-webkit-details-marker{display:none;}
.rd-login summary::after{content:'';display:inline-block;margin-left:7px;vertical-align:3px;
  border:5px solid transparent;border-top-color:currentColor;border-bottom:0;}
.rd-login-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:70;min-width:220px;padding:8px;
  background:#fff;border:1px solid var(--rd-line);border-radius:14px;}
.rd-nav .rd-login-menu a{display:block;padding:10px 12px;border-radius:10px;color:var(--rd-ink);}
.rd-nav .rd-login-menu a:hover{background:var(--rd-bg);}

/* Shared primitives for the later pages (cards, app screens). */
.rd-card{background:#fff;border:1px solid var(--rd-line);border-radius:16px;padding:28px;}
.rd-shot{border-radius:14px;overflow:hidden;border:1px solid rgba(0,0,0,.08);background:#fff;}
.rd-shot img{width:100%;height:auto;}

/* ---------- hero + choose your business ---------- */
.rd-intro{padding-top:56px;}
.rd-intro h1{max-width:900px;}
.rd-sub{font-size:21px;color:var(--rd-ink2);max-width:760px;margin:0;}
:where(body.rd) .rd-live{margin:18px 0 0;font-size:15px;color:var(--rd-ink2);}
.rd-live strong{color:var(--rd-ink);font-weight:700;}
.rd-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px;}
.rd-choice{display:flex;flex-direction:column;gap:6px;min-height:150px;padding:24px;background:#fff;border:1px solid var(--rd-line);
  border-radius:16px;color:var(--rd-ink);text-decoration:none;}
.rd-choice b{font:600 24px/1.2 'Fraunces',Georgia,serif;}
.rd-choice span{color:var(--rd-ink2);font-size:16px;}
.rd-choice i{font-style:normal;font-weight:700;margin-top:auto;padding-top:14px;color:var(--rd-red);}
.rd-choice:hover{border-color:var(--rd-red);}
.rd-choice-hs{border-color:var(--rd-gold-line);}
.rd-choice-hs b,.rd-choice-hs i{color:var(--rd-gold-text);}
.rd-choice-hs:hover{border-color:var(--rd-gold-btn);}
.rd-choice:focus-visible{outline:3px solid var(--rd-red-soft);outline-offset:2px;}

/* ---------- what you see every morning (the Today card is real HTML, sample numbers) ---------- */
.rd-today-row{margin-top:56px;display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center;}
.rd-today{background:#fff;border:1px solid var(--rd-line);border-radius:16px;padding:26px;}
.rd-today-k{font-size:13px;color:var(--rd-ink3);}
:where(body.rd) .rd-today-line{font:600 27px/1.2 'Fraunces',Georgia,serif;margin:6px 0 16px;}
.rd-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.rd-tile{border:1px solid var(--rd-line);border-radius:14px;padding:18px;min-width:0;}
.rd-tile-l{font-size:14px;color:var(--rd-ink2);}
.rd-tile-v{font:600 36px/1.2 'Fraunces',Georgia,serif;}
.rd-tile-g{font-size:14px;font-weight:700;color:var(--rd-good);}
.rd-today-note{font-size:12px;color:var(--rd-ink3);margin-top:10px;}

/* ---------- grows with you ---------- */
.rd-grow{margin-top:64px;}
.rd-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:14px;}
.rd-step{background:#fff;border:1px solid var(--rd-line);border-radius:16px;padding:22px;}
.rd-step-n{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--rd-ink3);}
body.rd .rd-step h3{font-size:22px;margin:6px 0;}
.rd-step p{margin:0;font-size:16px;}

/* ---------- demo call ---------- */
.rd-call{margin-top:64px;}
.rd-call-box{border-radius:16px;padding:48px;display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;}
.rd-call-box h2{color:#fff;}
.rd-call-box .rd-lead{font-size:19px;margin:0;}
.rd-lines{display:grid;gap:12px;}
.rd-line{display:block;border:1px solid var(--rd-nav-line);border-radius:14px;padding:18px;color:#fff;text-decoration:none;}
.rd-line:hover{border-color:var(--rd-red-soft);}
.rd-line small{display:block;font-size:14px;color:var(--rd-on-dark2);}
.rd-line strong{display:block;font:600 30px/1.25 'Fraunces',Georgia,serif;}

/* ---------- our story + pricing ---------- */
.rd-story{margin-top:64px;padding-bottom:70px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;}
.rd-price{display:flex;align-items:center;gap:24px;padding:28px;background:#fff;border:1px solid var(--rd-line);border-radius:16px;}
.rd-price>div{flex:1;}
body.rd .rd-price h3{font-size:28px;margin:6px 0;}
.rd-price p{margin:0;font-size:16px;}

/* ---------- footer ---------- */
body.rd footer{border-top:1px solid var(--rd-line);padding:40px 0 60px;}
body.rd .foot{max-width:var(--rd-max);padding:0 var(--rd-gutter);}
body.rd .foot .ch{color:var(--rd-ink3);}
body.rd .foot a{color:var(--rd-ink2);}
body.rd .foot a:hover{color:var(--rd-ink);}
body.rd .foot .end{color:var(--rd-ink3);}

/* ---------- tablet ---------- */
@media (max-width: 1100px){
  .rd-nav,.rd-links{gap:22px;}
  .rd-call-box{grid-template-columns:1fr;padding:44px;}
  .rd-today-row{grid-template-columns:1fr;gap:28px;}
}
@media (max-width: 900px){
  .rd-nav{flex-wrap:wrap;row-gap:4px;padding:12px 0;}
  .rd-links{order:3;width:100%;flex-wrap:wrap;gap:6px 22px;}
  .rd-choices,.rd-steps{grid-template-columns:1fr;}
  .rd-choice{min-height:0;}
  .rd-story{grid-template-columns:1fr;gap:28px;}
  body.rd h1{font-size:52px;}
  body.rd h2{font-size:36px;}
}

/* ---------- phone (375px: 16px gutter, no sideways scroll) ---------- */
@media (max-width: 640px){
  body.rd{--rd-gutter:16px;}
  .rd-nav{gap:14px;}
  .rd-logo{font-size:20px;}
  .rd-acts{gap:14px;}
  .rd-acts .rd-btn{min-height:42px;padding:0 14px;font-size:15px;}
  .rd-links{gap:6px 18px;font-size:15px;}
  body.rd h1{font-size:40px;line-height:1.06;}
  body.rd h2{font-size:30px;}
  body.rd h3{font-size:21px;}
  .rd-lead{font-size:18px;}
  .rd-intro{padding-top:28px;}
  .rd-sub{font-size:18px;}
  .rd-choices{margin-top:24px;gap:12px;}
  .rd-choice{padding:20px;}
  .rd-choice b{font-size:22px;}
  .rd-today-row,.rd-grow,.rd-call,.rd-story{margin-top:48px;}
  .rd-today{padding:18px;}
  :where(body.rd) .rd-today-line{font-size:22px;}
  .rd-tiles{grid-template-columns:1fr;gap:8px;}
  .rd-tile{display:grid;grid-template-columns:1fr auto;align-items:baseline;column-gap:12px;padding:12px 14px;}
  .rd-tile-v{font-size:28px;grid-row:1 / span 2;grid-column:2;}
  .rd-card{padding:20px;}
  .rd-call-box{padding:28px 20px;}
  .rd-line strong{font-size:26px;}
  .rd-story{padding-bottom:56px;}
  .rd-price{flex-direction:column;align-items:stretch;padding:24px 20px;gap:20px;}
  body.rd .rd-price h3{font-size:24px;}
  body.rd .foot .end{margin-left:0;text-align:left;}
}

/* ---------- build your plan (/pricing) ---------- */
.rd-build-head{padding-top:40px;}
.rd-build-head h1{font-size:54px;}
.rd-build-head p{font-size:19px;max-width:700px;}
.rd-build{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start;margin-top:20px;padding-bottom:80px;}
.rd-build-main{min-width:0;}
/* Pricing steps: own class. .rd-step is the homepage's white step card; sharing it put a white panel behind these (CMO 2026-10-09). */
.rd-pstep{border:0;margin:0 0 30px;padding:0;min-width:0;background:transparent;}
.rd-pstep legend{padding:0;margin-bottom:10px;font-weight:700;}
.rd-plans{display:flex;gap:16px;}
.rd-plan{flex:1;display:block;position:relative;background:#fff;border:1.5px solid var(--rd-line);border-radius:16px;padding:22px 22px 22px 56px;cursor:pointer;}
.rd-plan:has(input:checked){border:2px solid var(--rd-ink);}
.rd-plan input{position:absolute;left:22px;top:24px;width:22px;height:22px;margin:0;accent-color:var(--rd-ink);}
.rd-plan-top{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;font-size:18px;}
.rd-plan-top strong{min-width:0;}
.rd-plan-top .rd-badge{flex-shrink:0;margin-left:auto;}
.rd-badge{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--rd-red,#B8111F);background:var(--rd-red-tint);border-radius:999px;padding:3px 10px;}
.rd-plan-price{display:block;font:600 40px/1.2 'Fraunces',Georgia,serif;margin-top:8px;}
.rd-plan-price small{font:600 15px 'Source Sans 3',sans-serif;color:var(--rd-ink3);}
.rd-plan-fit{display:block;color:var(--rd-ink2);font-size:15px;}
.rd-addons{padding:8px 26px 8px;}
body.rd .rd-group{font:700 13px/1.4 'Source Sans 3',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--rd-ink3);margin:18px 0 6px;}
.rd-addon{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px 0;border-top:1px solid var(--rd-line);cursor:pointer;}
.rd-addon-fixed{cursor:default;}
.rd-addon-txt strong{display:block;font-size:17.5px;}
.rd-addon-txt span{display:block;font-size:14.5px;color:var(--rd-ink3);}
.rd-addon-price{font-weight:700;text-align:right;max-width:220px;}
.rd-switch{appearance:none;-webkit-appearance:none;width:52px;height:30px;margin:0;border-radius:15px;cursor:pointer;
  background:radial-gradient(circle at 15px 50%,#fff 11px,transparent 12px) #D9D4CB;}
.rd-switch:checked{background:radial-gradient(circle at 37px 50%,#fff 11px,transparent 12px) #1E6B45;}
.rd-switch:focus-visible{outline:3px solid var(--rd-red-soft);outline-offset:2px;}
.rd-switch:disabled{cursor:not-allowed;opacity:.45;}
.rd-addon.is-included{cursor:default;}
.rd-switch-gap{width:52px;}
.rd-build-note{font-size:14px;color:var(--rd-ink3);margin-top:12px;}
.rd-build-note a,.rd-sum-note a{color:var(--rd-ink2);}
.rd-sum{position:sticky;top:20px;}
.rd-sum-lines{list-style:none;margin:16px 0 0;padding:0;}
.rd-sum-lines li{display:flex;justify-content:space-between;gap:12px;margin-top:8px;}
.rd-sum-total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--rd-line);margin:16px 0 0;padding-top:14px;font-weight:700;}
.rd-sum-total strong{font:600 34px/1.2 'Fraunces',Georgia,serif;}
.rd-sum-static{margin-top:16px;color:var(--rd-ink2);}
.rd-sum-note{font-size:14px;color:var(--rd-ink3);margin-top:8px;}
.rd-sum-center{text-align:center;}
.rd-sum-btn{width:100%;margin-top:20px;}
@media (max-width: 1100px){
  .rd-build{grid-template-columns:minmax(0,1fr) 320px;}
}
/* Below two columns the summary card drops to the bottom, so a slim bar keeps the monthly total in view (CMO 2026-10-09).
   Hidden until the script fills it; hidden on two-column widths. */
.rd-sticky{display:none;}
@media (max-width: 900px){
  .rd-sticky:not([hidden]){display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;align-items:center;justify-content:space-between;gap:12px;
    padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--rd-line);}
  .rd-sticky span{font-weight:700;}
  .rd-sticky strong{font:600 24px/1.2 'Fraunces',Georgia,serif;margin-left:8px;}
  .rd-sticky .rd-btn{height:44px;padding:0 18px;}
  body.rd-has-sticky{padding-bottom:72px;}
  .rd-build{grid-template-columns:minmax(0,1fr);}
  .rd-sum{position:static;}
}
@media (max-width: 640px){
  .rd-build-head{padding-top:28px;}
  .rd-build-head h1{font-size:40px;}
  .rd-build-head p{font-size:17px;}
  .rd-build{padding-bottom:56px;}
  .rd-plans{flex-direction:column;}
  .rd-plan{padding:18px 18px 18px 50px;}
  .rd-plan input{left:16px;top:20px;}
  .rd-plan-price{font-size:34px;}
  .rd-addons{padding:4px 16px 8px;}
  .rd-addon{grid-template-columns:52px minmax(0,1fr);gap:6px 14px;align-items:start;}
  .rd-addon-price{grid-column:2;text-align:left;max-width:none;}
  .rd-sum-total strong{font-size:30px;}
}

/* ---------- home services page (/home-services), redesign PR 4 ----------
   Page-only: every selector starts at body.rd-hs-page or an rd-hs- class, so the homepage, /pricing and /hospitality
   are untouched. Gold identity = the HS app tokens (--rd-gold #9A6A12 fill, --rd-gold-btn #B58C2F accents,
   --rd-gold-text #8F6B1F text). The page keeps its content classes (tabs, tiers, add-ons, books) for site-tabs.js
   and the pricing tests; these rules restyle them. Placed before the PR 3 block, which owns the file's tail. */
body.rd-hs-page{--accent:var(--rd-gold-btn);--accent-deep:var(--rd-gold-text);--tint:var(--rd-gold-tint);--on-accent:#fff;
  --hair:var(--rd-line);--ink:var(--rd-ink);--ink-2:var(--rd-ink2);--mut:var(--rd-ink3);--paper:var(--rd-bg);}
.rd-hs-masthead{background:var(--rd-nav);color:#fff;}
.rd-hs-masthead .rd-nav a{color:#fff;}
.rd-hs-masthead .rd-nav a.chip{padding:8px 0;}
.rd-hs-masthead .rd-links a[aria-current="page"]{text-decoration:underline;text-underline-offset:4px;}
.rd-hs-btn-g{background:var(--rd-gold);color:#fff;}
.rd-hs-btn-g:hover{background:var(--rd-gold-text);}
.rd-hs-page .rd-btn:focus-visible,.rd-hs-page .rd-nav a:focus-visible,.rd-hs-page .rd-line:focus-visible{outline-color:var(--rd-gold-btn);}
.rd-hs-hero{background:var(--rd-nav);color:#fff;padding:56px 0 72px;}
.rd-hs-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center;}
.rd-hs-page .rd-hs-hero .rd-eye,.rd-hs-page .rd-hs-call .rd-eye{color:var(--rd-gold-btn);}
.rd-hs-acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}
.rd-hs-quote{color:var(--rd-ink);padding:24px;}
.rd-hs-quote-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;}
.rd-hs-tag{flex:none;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:999px;background:var(--rd-gold-tint);color:var(--rd-gold-text);}
.rd-hs-quote-row{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--rd-line);}
.rd-hs-quote-row strong{flex:none;font-variant-numeric:tabular-nums;}
.rd-hs-quote-total{font-weight:700;}
.rd-hs-page .rd-hs-quote-note{margin:6px 0 0;font-size:14px;color:var(--rd-ink3);}
.rd-hs-sec{margin-top:72px;}
.rd-hs-page .sec-head{max-width:760px;}
.rd-hs-page .eyebrow{font-size:13px;font-weight:700;letter-spacing:.12em;color:var(--rd-gold-text);}
.rd-hs-page .sec-head p{margin-top:4px;font-size:18px;color:var(--rd-ink2);}
.rd-hs-page .currency-note{font-size:16px;}
.rd-hs-page .proofs{gap:16px;margin-top:28px;}
.rd-hs-page .proof{background:#fff;border:1px solid var(--rd-line);border-radius:16px;padding:24px;}
.rd-hs-page .proof .rd-hs-say-q{font:600 24px/1.25 'Fraunces',Georgia,serif;}
.rd-hs-page .proof .t{font-size:16px;}
.rd-hs-page .tabs{margin-top:28px;border-bottom-color:var(--rd-line);}
.rd-hs-page .tab{font-family:'Source Sans 3',sans-serif;font-size:16px;font-weight:700;color:var(--rd-ink2);border-radius:10px 10px 0 0;}
.rd-hs-page .tab:focus-visible{outline:3px solid var(--rd-gold-btn);outline-offset:2px;}
.rd-hs-page .panel>*{min-width:0;}
.rd-hs-page .panel .copy p{font-size:17px;}
.rd-hs-page .panel .copy .win{font-style:normal;color:var(--rd-ink);font-size:16px;}
.rd-hs-page .app{border-color:var(--rd-line);border-radius:14px;box-shadow:none;}
.rd-hs-gap{margin-top:8px;}
.rd-hs-page .flow{gap:16px;margin-top:28px;border:0;border-radius:0;overflow:visible;}
.rd-hs-page .step{background:#fff;border:1px solid var(--rd-line);border-radius:16px;padding:22px;}
.rd-hs-page .step .t{font-size:18px;font-weight:700;}
.rd-hs-page .step .d{font-size:16px;color:var(--rd-ink2);}
.rd-hs-call .rd-hs-promo,.rd-hs-call .rd-hs-note{grid-column:1 / -1;}
.rd-hs-promo{display:block;width:100%;height:auto;border-radius:14px;border:1px solid var(--rd-nav-line);background:#000;}
.rd-hs-page .rd-hs-say,.rd-hs-page .rd-hs-note{margin:0;font-size:15px;color:var(--rd-on-dark2);}
.rd-hs-call .rd-line:hover{border-color:var(--rd-gold-btn);}
.rd-hs-page .tiers{gap:16px;margin-top:28px;border:0;border-radius:0;background:transparent;overflow:visible;}
.rd-hs-page .tier{background:#fff;border:1px solid var(--rd-line);border-radius:16px;}
.rd-hs-page .tier.best{border:2px solid var(--rd-gold-btn);}
.rd-hs-page .tier .nm{font-weight:600;}
.rd-hs-page .tier .pr{font:600 36px/1.2 'Fraunces',Georgia,serif;}
.rd-hs-page .tier .pr span{font:400 15px 'Source Sans 3',sans-serif;}
.rd-hs-page .tier .fit{font-size:13px;font-weight:700;letter-spacing:.1em;}
.rd-hs-page .tier li{font-size:16px;}
.rd-hs-page .bigtalk{margin-top:16px;border-color:var(--rd-line);border-radius:16px;}
.rd-hs-page .bigtalk .rd-btn{margin-left:auto;}
.rd-hs-page .rd-hs-fine{margin-top:18px;}
.rd-hs-page .rd-hs-more{margin:8px 0 0;font-size:15px;color:var(--rd-ink2);}
.rd-hs-more a{color:var(--rd-gold-text);font-weight:700;}
.rd-hs-page .addons{gap:16px;margin-top:28px;}
.rd-hs-page .addon{border-color:var(--rd-line);border-radius:16px;padding:20px;}
.rd-hs-page .addon .an{font-size:17px;font-weight:700;}
.rd-hs-page .addon .ap{font-size:15px;font-weight:700;color:var(--rd-gold-text);}
.rd-hs-page .addon .ad{font-size:15px;color:var(--rd-ink2);}
.rd-hs-page .books{border-color:var(--rd-line);border-radius:16px;padding:36px;}
body.rd-hs-page .books h2{font-size:36px;}
.rd-hs-page .books>p{font-size:17px;}
.rd-hs-page .books-pt b{font-size:16px;font-weight:700;}
.rd-hs-page .books-pt span{font-size:15px;color:var(--rd-ink2);}
.rd-hs-page .books-price .bp{font-size:18px;font-weight:700;color:var(--rd-ink);}
.rd-hs-page .books-price .bs{font-size:15px;}
.rd-hs-close{margin-top:72px;padding-bottom:72px;}
.rd-hs-close-card{padding:40px;}
.rd-hs-close-card h2{max-width:20ch;}
@media (max-width: 1100px){
  .rd-hs-hero-grid{grid-template-columns:1fr;gap:32px;}
}
@media (max-width: 640px){
  .rd-hs-hero{padding:28px 0 48px;}
  .rd-hs-sec,.rd-hs-close{margin-top:48px;}
  .rd-hs-close{padding-bottom:56px;}
  .rd-hs-quote{padding:18px 16px;}
  .rd-hs-quote-top{flex-wrap:wrap;}
  .rd-hs-quote-row{font-size:15px;}
  .rd-hs-page .proof .rd-hs-say-q{font-size:21px;}
  .rd-hs-page .tab{padding:10px 12px;font-size:15px;}
  .rd-hs-page .bigtalk .rd-btn{margin-left:0;width:100%;}
  .rd-hs-page .books,.rd-hs-close-card{padding:24px 20px;}
  body.rd-hs-page .books h2{font-size:28px;}
  .rd-hs-acts .rd-btn{width:100%;}
}

/* ---------- restaurant page (/hospitality), redesign PR 3 ----------
   Page-only: every selector starts at body.rd-h-page or an rd-h- class, so the homepage and /pricing are untouched.
   The page keeps its own content classes (tabs, tiers, add-ons, books) because site-tabs.js and the pricing tests
   read them; these rules restyle them into the redesign system. */
body.rd-h-page{--accent:var(--rd-red);--accent-deep:var(--rd-red);--tint:var(--rd-red-tint);--hair:var(--rd-line);
  --ink:var(--rd-ink);--ink-2:var(--rd-ink2);--mut:var(--rd-ink3);--paper:var(--rd-bg);}
.rd-h-page .rd-nav a.chip{padding:8px 0;}
.rd-h-page .rd-links a[aria-current="page"]{text-decoration:underline;text-underline-offset:4px;}
.rd-h-hero{padding-top:56px;}
.rd-h-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end;}
.rd-h-hero-card p{margin:0;font-size:18px;color:var(--rd-ink2);}
.rd-h-hero-card .rd-h-trace{margin-top:16px;font-size:15px;color:var(--rd-ink3);}
.rd-h-trace b{color:var(--rd-ink);font-weight:700;}
.rd-h-acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;}
.rd-h-sec{margin-top:72px;}
.rd-h-page .sec-head{max-width:760px;}
.rd-h-page .eyebrow{font-size:13px;font-weight:700;letter-spacing:.12em;color:var(--rd-red);}
.rd-h-page .sec-head p{margin-top:4px;font-size:18px;color:var(--rd-ink2);}
.rd-h-page .currency-note{font-size:16px;}
.rd-h-page .proofs{gap:16px;margin-top:28px;}
.rd-h-page .proof{background:#fff;border:1px solid var(--rd-line);border-radius:16px;padding:24px;}
.rd-h-page .proof .n{font-weight:600;font-size:40px;}
.rd-h-page .proof .t{font-size:16px;}
.rd-h-page .tabs{margin-top:28px;border-bottom-color:var(--rd-line);}
.rd-h-page .tab{font-family:'Source Sans 3',sans-serif;font-size:16px;font-weight:700;color:var(--rd-ink2);border-radius:10px 10px 0 0;}
.rd-h-page .tab:focus-visible{outline:3px solid var(--rd-red-soft);outline-offset:2px;}
.rd-h-page .panel>*{min-width:0;}
.rd-h-page .panel .copy p{font-size:17px;}
.rd-h-page .panel .copy .win{font-style:normal;color:var(--rd-ink);font-size:16px;}
.rd-h-page .app{border-color:var(--rd-line);border-radius:14px;box-shadow:none;}
.rd-h-gap{margin-top:6px;}
.rd-h-page .flow{gap:16px;margin-top:28px;border:0;border-radius:0;overflow:visible;}
.rd-h-page .step{background:#fff;border:1px solid var(--rd-line);border-radius:16px;padding:22px;}
.rd-h-page .step .t{font-size:18px;font-weight:700;}
.rd-h-page .step .d{font-size:16px;color:var(--rd-ink2);}
.rd-h-call .rd-h-promo,.rd-h-call .rd-h-note{grid-column:1 / -1;}
.rd-h-promo{display:block;width:100%;height:auto;border-radius:14px;border:1px solid var(--rd-nav-line);background:#000;}
.rd-h-page .rd-h-say{margin:0;font-size:15px;color:var(--rd-on-dark2);}
.rd-h-page .rd-h-note{margin:16px 0 0;font-size:15px;color:var(--rd-ink3);}
.rd-h-note a{color:var(--rd-ink2);}
.rd-h-page .rd-h-call .rd-h-note{margin:0;color:var(--rd-on-dark2);}
.rd-h-page .tiers{gap:16px;margin-top:28px;border:0;border-radius:0;background:transparent;overflow:visible;}
.rd-h-page .tier{background:#fff;border:1px solid var(--rd-line);border-radius:16px;}
.rd-h-page .tier.best{border:2px solid var(--rd-ink);}
.rd-h-page .tier .nm{font-weight:600;}
.rd-h-page .tier .pr{font:600 36px/1.2 'Fraunces',Georgia,serif;}
.rd-h-page .tier .pr span{font:400 15px 'Source Sans 3',sans-serif;}
.rd-h-page .tier .fit{font-size:13px;font-weight:700;letter-spacing:.1em;}
.rd-h-page .tier li{font-size:16px;}
.rd-h-page .tier li a{color:var(--rd-ink);}
.rd-h-page .addons{gap:16px;margin-top:28px;}
.rd-h-page .addon{border-color:var(--rd-line);border-radius:16px;padding:20px;}
.rd-h-page .addon .an{font-size:17px;font-weight:700;}
.rd-h-page .addon .ap{font-size:15px;font-weight:700;color:var(--rd-ink);}
.rd-h-page .addon .ad{font-size:15px;color:var(--rd-ink2);}
.rd-h-page .books{border-color:var(--rd-line);border-radius:16px;padding:36px;}
body.rd-h-page .books h2{font-size:36px;}
.rd-h-page .books>p{font-size:17px;}
.rd-h-page .books-pt b{font-size:16px;font-weight:700;}
.rd-h-page .books-pt span{font-size:15px;color:var(--rd-ink2);}
.rd-h-page .books-price .bp{font-size:18px;font-weight:700;color:var(--rd-ink);}
.rd-h-page .books-price .bs{font-size:15px;}
.rd-h-close{margin-top:72px;padding-bottom:72px;}
.rd-h-close-card{padding:40px;}
.rd-h-close-card h2{max-width:20ch;}
@media (max-width: 1100px){
  .rd-h-hero-grid{grid-template-columns:1fr;gap:28px;align-items:start;}
}
@media (max-width: 640px){
  .rd-h-hero{padding-top:28px;}
  .rd-h-sec,.rd-h-close{margin-top:48px;}
  .rd-h-close{padding-bottom:56px;}
  .rd-h-page .proof .n{font-size:34px;}
  .rd-h-page .tab{padding:10px 12px;font-size:15px;}
  .rd-h-page .books,.rd-h-close-card{padding:24px 20px;}
  body.rd-h-page .books h2{font-size:28px;}
  .rd-h-acts .rd-btn{width:100%;}
}
