/* Canonical landing elements. Shared byte-for-byte with the dedicated PMS site. */
body.landing-standard { --paper:#f8f7f3; --ink:#162f42; --navy:#102d44; --blue:#2168ec; --muted:#536575; --line:#e1e6e9; color:var(--ink); background:var(--paper); }
.landing-standard .landing-sequence { display:block; width:100%; margin:0; }
.landing-standard .landing-container { width:min(1160px,calc(100% - 40px)); margin:0 auto; }
.landing-standard .landing-stage { width:100%; margin:0; padding:48px 0; background:var(--paper); }
.landing-standard .landing-stage[data-landing-stage="hero"] { padding:64px 0 32px; }
.landing-standard .landing-stage[data-landing-stage="demo"],
.landing-standard .landing-stage[data-landing-stage="testimonials"] { background:#fff; }
.landing-standard .landing-stage[data-landing-stage="booking"] { background:var(--navy); color:#fff; }
.landing-standard .landing-stage>section,
.landing-standard .landing-stage>div>section { padding:0 !important; margin:0 auto; background:transparent !important; border:0; border-radius:0; }
.landing-standard .landing-hero { text-align:center; }
.landing-standard .landing-hero h1 { max-width:960px; margin:0 auto 22px; font:700 clamp(36px,4.7vw,62px)/1.08 Rubik,Karla,sans-serif; letter-spacing:-.045em; color:var(--ink); }
.landing-standard .landing-hero h1 :is(span,em) { color:var(--blue); font-style:normal; }
.landing-standard .landing-eyebrow { display:block; margin:0 0 14px; color:var(--blue); font:800 12px/1.5 Karla,sans-serif; letter-spacing:.12em; text-transform:uppercase; }
.landing-standard .landing-eyebrow .dot { display:none; }
.landing-standard .landing-lead { max-width:740px; margin:0 auto 24px; color:var(--muted); font:400 19px/1.6 Karla,sans-serif; }
.landing-standard .landing-actions { display:flex; justify-content:center; align-items:center; gap:20px; }
.landing-standard :is(.landing-button,.landing-pricing-cta,.pd-plan-button) { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:52px; margin-top:0; padding:14px 24px; background:var(--blue); color:#fff; border:0; border-radius:10px; box-shadow:none; font:700 16px/1.4 Karla,sans-serif; text-decoration:none; }
.landing-standard :is(.landing-button,.landing-pricing-cta,.pd-plan-button):hover { background:#1458d0; transform:none; }
.landing-standard .landing-text-link { color:var(--blue); font-weight:700; text-underline-offset:4px; }
.landing-standard .landing-secondary { margin:16px auto 0; font-size:14px; }
.landing-standard .landing-heading { max-width:780px; margin:0 auto 28px; text-align:center; }
.landing-standard .landing-stage h2:not(.cofounder-modal-dialog h2) { color:var(--ink); font:600 clamp(28px,3.2vw,40px)/1.16 Rubik,Karla,sans-serif !important; letter-spacing:-.035em; }
.landing-standard :is(.landing-heading,.section-heading,.pd-heading,.reviews-walkthrough-heading,.receptionist-features__heading) { text-align:center; }
.landing-standard .landing-heading h2 { margin:0 0 14px; }
.landing-standard .landing-heading p { margin:0; color:var(--muted); font-size:18px; }
.landing-standard :is(.landing-demo,.landing-proof) { padding:0; }
.landing-standard [data-landing-stage="demo"] :is(.pd-demo,.hero-video,.reviews-demo-player,.ob-customizer,.funnel-card) { max-width:900px; width:100%; margin:0 auto; border:1px solid var(--line); border-radius:16px; box-shadow:none; overflow:hidden; }
.landing-standard [data-landing-stage="demo"] .hero-video { aspect-ratio:16/9; }
.landing-standard [data-landing-stage="demo"] .hero-video :is(iframe,img) { width:100%; height:100%; object-fit:cover; }
.landing-standard [data-landing-stage="demo"] .ob-try-banner { max-width:900px; margin:0 auto 20px; }
.landing-standard .landing-stage :is(.landing-info-grid,.cards,.service-grid,.process-grid,.receptionist-features__panels) { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.landing-standard .landing-stage .receptionist-features__panels { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:1000px; margin-inline:auto; }
.landing-standard .landing-stage .receptionist-features { margin-bottom:48px; }
.landing-standard .landing-stage :is(.landing-card,.card,.service-card,.process-card,.receptionist-features__panel,.landing-pricing-card) { min-width:0; margin:0; padding:24px; background:#fff; color:var(--ink); border:1px solid var(--line); border-radius:16px; box-shadow:none; }
.landing-standard .landing-stage :is(.landing-card,.card,.service-card,.process-card,.receptionist-features__panel) h3 { margin:0 0 12px; font:600 21px/1.3 Rubik,Karla,sans-serif; letter-spacing:-.02em; }
.landing-standard .landing-card p { color:var(--muted); margin:0; }
.landing-standard .landing-details { margin:24px auto 0; border:1px solid var(--line); border-radius:12px; background:#fff; overflow:hidden; text-align:left; }
.landing-standard .landing-details>summary { padding:18px 22px; cursor:pointer; color:var(--ink); font-weight:700; }
.landing-standard .landing-details>section { padding:32px 16px !important; background:#fff !important; }
.landing-standard .landing-more { width:min(1160px,calc(100% - 40px)); }
.landing-standard .landing-more .container { width:100%; }
.landing-standard .landing-proof-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.landing-standard .landing-proof-grid .landing-card { padding:0; overflow:hidden; }
.landing-standard .landing-proof-grid video { display:block; width:100%; aspect-ratio:4/5; object-fit:contain; background:var(--navy); }
.landing-standard .landing-proof-grid figcaption { padding:18px; text-align:center; }
.landing-standard .landing-proof-grid figcaption span { display:block; color:var(--muted); font-size:14px; }
.landing-standard #landing-pricing { width:min(1160px,calc(100% - 40px)); margin:auto; }
.landing-standard #landing-pricing>.pd-pricing { max-width:none; width:100%; padding:0; }
.landing-standard .pd-pricing-heading { display:block; text-align:center; max-width:800px; margin:0 auto 28px; }
.landing-standard .pd-pricing-tax-badge { display:inline-block; margin-top:12px; }
.landing-standard .pd-comparison-hint { display:none; }
.landing-standard .landing-prices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; text-align:center; }
.landing-standard .landing-price { margin:12px 0 !important; color:var(--ink) !important; font:600 44px/1.15 Rubik,sans-serif; letter-spacing:-.04em; }
.landing-standard .landing-period { margin:0; font-size:15px; color:var(--muted); }
.landing-standard .pd-pricing-quote { max-width:650px !important; padding:28px !important; background:#fff !important; border:1px solid var(--line) !important; border-radius:16px !important; text-align:center; }
.landing-standard .pd-outbound-pricing { padding:28px; border:1px solid var(--line); border-radius:16px; box-shadow:none; }
.landing-standard .pd-compare { min-width:650px; }
.landing-standard .pd-comparison-scroll { overflow:auto; }
.landing-standard .landing-details { overflow:auto; }
.landing-standard .landing-stage[data-landing-stage="booking"] h2:not(.cofounder-modal-dialog h2) { color:#fff; }
.landing-standard [data-landing-stage="booking"] :is(.d4w-booking-heading,.reviews-book-heading,.section-heading,.pd-heading) { max-width:800px; margin:0 auto 28px; text-align:center; }
.landing-standard [data-landing-stage="booking"] :is(.booking-layout,.booking-grid) { display:block; }
.landing-standard [data-landing-stage="booking"] :is(.booking-layout,.booking-grid)>.section-heading { position:static; }
.landing-standard .landing-stage[data-landing-stage="booking"] :is(.section-heading p,.pd-heading p,.d4w-booking-heading p,.reviews-book-heading p) { color:#d5e3ee; }
.landing-standard [data-landing-stage="booking"] :is(.pd-booking-inline,.d4w-booking-widget) { max-width:1000px; margin:0 auto; }
.landing-standard [data-landing-stage="info"] :is(.partner-proof-grid,.partner-photo) { max-width:1000px; margin:auto; }
.landing-standard .reviews-nav { display:none; }
.landing-standard .reviews-lp { background:var(--paper); }
.landing-standard .reviews-inline-booking { display:none; }
@media(max-width:800px) {
 .landing-standard .landing-stage { padding:32px 0; }
 .landing-standard .landing-stage[data-landing-stage="hero"] { padding:36px 0 28px; }
 .landing-standard .landing-container,.landing-standard .landing-more,.landing-standard #landing-pricing { width:calc(100% - 32px); }
 .landing-standard .landing-hero h1 { font-size:clamp(32px,9vw,42px); }
 .landing-standard .landing-lead { font-size:17px; }
 .landing-standard .landing-stage :is(.landing-info-grid,.cards,.service-grid,.process-grid,.receptionist-features__panels,.landing-prices) { grid-template-columns:1fr; }
 .landing-standard .landing-proof-grid { display:flex; gap:16px; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:12px; }
 .landing-standard .landing-proof-grid .landing-card { flex:0 0 84%; scroll-snap-align:start; }
 .landing-standard .landing-actions { flex-wrap:wrap; gap:12px; }
 .landing-standard .landing-actions .landing-button { width:100%; }
 .landing-standard #landing-pricing .container { width:100%; }
 .landing-standard .landing-stage h2:not(.cofounder-modal-dialog h2) { font-size:30px !important; }
 .landing-standard .pd-pricing-heading { max-width:100%; }
 .landing-standard .pd-pricing-quote { padding:24px !important; }
}

/* Booking headings are owned by the universal booking stylesheet. */

.landing-standard .landing-plan-note { margin:12px 0 0 !important; font-size:14px; }

/* Keep the demo button clear of compact pricing cards. */
.landing-standard .landing-pricing-plans + .landing-pricing-cta { margin-top:24px; }
