/* Shared product landing layout. Reference: yourpms / recall-recovery.
   Keep product widgets scoped to their own CSS; this file owns the page shell. */
.pd-simple {
  --pd-paper: #f8f7f3; --pd-ink: #162f42; --pd-navy: #102d44;
  --pd-muted: #536575; --pd-blue: #2168ec; --pd-blue-dark: #1458d0;
  --navy: #102d44; --blue: #2168ec; --ink: #162f42; --muted: #536575; --paper: #f8f7f3; --dark-gradient: #102d44; --cta-gradient: #2168ec;
  --pd-line: #e1e6e9; --pd-cta: #2168ec; --pd-card-shadow: none;
  margin: 0; background: var(--pd-paper) !important; color: var(--pd-ink) !important;
  font: 400 18px/1.6 Karla, Arial, sans-serif; -webkit-font-smoothing: antialiased;
}
.pd-simple *, .pd-simple *::before, .pd-simple *::after { box-sizing: border-box; }
.pd-simple :is(h1,h2,h3) { font-family: Rubik, Karla, sans-serif; }
.pd-simple :is(a,button,summary):focus-visible { outline: 3px solid var(--pd-blue); outline-offset: 4px; }
.pd-simple :is(section,[data-booking-inline]) { scroll-margin-top: 90px; }
.pd-simple :is(.container,.pd-container,.reviews-wrap) { width: min(1160px,calc(100% - 40px)); margin-inline: auto; }

/* One quiet, full-width header with the existing accessible product menu. */
.pd-simple .pd-product-nav { padding: 0 20px; background: #fff; border-bottom: 1px solid var(--pd-line); }
.pd-simple .pd-product-nav .pd-product-nav-bar { max-width: 1160px; min-height: 76px; padding: 10px 0; border: 0; border-radius: 0; background: #fff; box-shadow: none; backdrop-filter: none; }
.pd-simple .pd-product-nav .pd-product-nav-brand img { filter: none; height: 26px; }
.pd-simple .pd-product-nav .pd-product-nav-book { background: var(--pd-blue); border-radius: 10px; padding: 12px 16px; min-height: 44px; box-shadow: none; }
.pd-simple .pd-product-nav .pd-product-nav-book span { background: transparent; color: #fff; width: 16px; height: 16px; }
.pd-simple .pd-product-nav .pd-product-nav-book:hover span { transform: none; }

/* Centered headline, a short explanation, and one prominent action. */
.pd-simple :is(.hero,.pd-hero,.ob-hero,.reviews-hero) { width: 100%; margin: 0; padding: 64px 0 48px; border: 0; border-radius: 0; background: var(--pd-paper); box-shadow: none; text-align: center; }
.pd-simple :is(.hero,.ob-hero,.reviews-hero,.hero-stage)::after,
.pd-simple :is(.hero-stage,.reviews-hero)::before { display: none; }
.pd-simple .hero-stage { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.pd-simple .hero-grid { display: block; }
.pd-simple .ob-hero-inner { max-width: 1160px; width: calc(100% - 40px); margin-inline: auto; }
.pd-simple :is(.hero,.pd-hero,.ob-hero,.reviews-hero) h1 { max-width: 970px; margin: 0 auto 24px; padding: 0; font-size: clamp(40px,4.7vw,62px); font-weight: 700; line-height: 1.08; letter-spacing: -.05em; color: var(--pd-ink); }
.pd-simple :is(.hero h1 em,.hero h1 span,.pd-hero h1 span,.ob-h1 .ghost,.reviews-hero h1 em) { color: var(--pd-blue); font-style: normal; opacity: 1; }
.pd-simple :is(.eyebrow,.pd-eyebrow,.ob-eyebrow,.reviews-eyebrow,.reviews-kicker) { display: block; margin: 0 0 16px; padding: 0; border: 0; background: transparent; font: 800 12px/1.5 Karla,Arial,sans-serif; letter-spacing: .13em; text-transform: uppercase; color: var(--pd-blue); }
.pd-simple :is(.eyebrow,.ob-eyebrow)::before,.pd-simple .ob-eyebrow .dot { display: none; }
.pd-simple :is(.lede,.hero-copy,.pd-lead,.ob-subhead,.reviews-lede) { max-width: 750px; margin: 0 auto 28px; font: 400 19px/1.6 Karla,Arial,sans-serif; color: var(--pd-muted); }
.pd-simple :is(.actions,.hero-actions,.pd-actions,.ob-hero-ctas,.reviews-hero-actions) { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 16px; margin: 0 auto; }
.pd-simple :is(.button,.pd-button,.ob-hero-cta-primary,.reviews-primary,.reviews-price-card button,.reviews-inline-book-button,.reviews-founder-book) { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 15px 23px; border: 1px solid transparent; border-radius: 10px; background: var(--pd-blue); color: #fff; box-shadow: none; font: 700 16px/1.3 Karla,Arial,sans-serif; text-decoration: none; cursor: pointer; }
.pd-simple :is(.button,.pd-button,.ob-hero-cta-primary,.reviews-primary,.reviews-inline-book-button):hover { background: var(--pd-blue-dark); color: #fff; transform: none; box-shadow: none; }
.pd-simple :is(.button.secondary,.button-ghost,.pd-text-link,.reviews-secondary) { background: transparent; color: var(--pd-blue); padding: 12px 4px; min-height: 44px; border: 0; border-radius: 0; box-shadow: none; font: 700 16px/1.4 Karla,Arial,sans-serif; text-decoration: underline; text-underline-offset: 4px; }
.pd-simple :is(.micro,.hero-note,.pd-fine) { display: block; margin: 14px auto 0; font: 400 13px/1.5 Karla,Arial,sans-serif; color: var(--pd-muted); text-align: center; }
.pd-simple .hero-note svg { display: none; }

/* Compact sections, consistent reading widths, no decorative gradient stages. */
.pd-simple :is(.section,.pd-section,.reviews-section,.reviews-faq,.ob-bullets-section) { padding: 48px 0; background: var(--pd-paper); border: 0; }
.pd-simple :is(.section.alt,.pd-white,.reviews-product-walkthrough,.reviews-proof-section) { background: #fff; }
.pd-simple :is(.section-heading,.pd-heading,.reviews-walkthrough-heading,.reviews-section-heading,.reviews-faq-heading,.ob-bullets-header) { max-width: 800px; margin: 0 auto 28px; text-align: center; }
.pd-simple :is(.section-heading h2,.pd-heading h2,.reviews-section h2,.reviews-faq h2,.ob-bullets-header h2,.receptionist-integrations h2) { margin: 0 0 16px; color: var(--pd-ink); font-size: clamp(29px,3.5vw,42px); font-weight: 700; line-height: 1.15; letter-spacing: -.035em; }
.pd-simple :is(.section-heading h2 em,.section-heading h2 span,.reviews-section h2 em) { color: var(--pd-blue); font-style: normal; }
.pd-simple :is(.section-heading>p,.pd-heading>p,.reviews-walkthrough-heading>p:last-child) { margin: 0 auto; color: var(--pd-muted); font-size: 18px; line-height: 1.6; }
.pd-simple :is(.cards,.steps) { gap: 22px; }
.pd-simple :is(.card,.steps>li,.funnel-card,.reviews-price-card,.reviews-feature-card) { border: 1px solid var(--pd-line); border-radius: 16px; background: #fff; box-shadow: none; }
.pd-simple .card { padding: 28px; }
.pd-simple .card h3 { font-size: 21px; line-height: 1.3; }
.pd-simple .card p { color: var(--pd-muted); }
.pd-simple :is(.visual,.pd-demo,.reviews-demo-player) { max-width: 900px; margin: 0 auto; border-radius: 18px; }
.pd-simple .pd-demo :is(video,iframe) { display: block; width: 100%; }
.pd-simple .pd-demo .video { aspect-ratio: 16/9; }
.pd-simple .pd-demo iframe { height: 100%; border: 0; }
.pd-simple .video-link { font-size: 14px; text-align: center; }
.pd-simple .funnel-card { max-width: 760px; margin: 40px auto 0; text-align: left; }
.pd-simple :is(.trust-strip,.funnel-section,.guardrails) { background: #fff; color: var(--pd-ink); }
.pd-simple :is(.trust-strip,.funnel-section,.guardrails) p { color: var(--pd-muted); }
.pd-simple .ob-customizer { margin: 40px auto 0; max-width: 1000px; text-align: left; }
.pd-simple .ob-bullets-inner { width: min(1000px,calc(100% - 40px)); margin: auto; }
.pd-simple .ob-bullet-num { color: var(--pd-blue); }

/* Receptionist uses the same compact PMS and testimonial proof as the reference. */
.pd-simple .receptionist-integrations { padding: 48px 20px; background: var(--pd-paper); border-top: 1px solid var(--pd-line); }
.pd-simple .receptionist-integrations__band { max-width: 1000px; padding: 0; border: 0; border-radius: 0; background: transparent; }
.pd-simple .receptionist-integrations__platforms { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px; }
.pd-simple .receptionist-integrations__platforms li { width: calc((100% - 48px)/4); min-height: 108px; padding: 24px; border: 1px solid var(--pd-line); border-radius: 14px; }
.pd-simple .pd-proof-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.pd-simple .pd-proof-grid figure { margin: 0; min-width: 0; border: 1px solid var(--pd-line); border-radius: 16px; overflow: hidden; background: var(--pd-paper); }
.pd-simple .pd-proof-grid video { width: 100%; aspect-ratio: 4/5; display: block; background: var(--pd-navy); object-fit: contain; }
.pd-simple .pd-proof-grid figcaption { padding: 16px; text-align: center; }
.pd-simple .pd-proof-grid figcaption span { display: block; font-size: 14px; color: var(--pd-muted); }
.pd-simple #faq { padding: 48px 20px !important; background: #fff !important; }
.pd-simple #faq>div { max-width: 800px !important; }
.pd-simple #faq h2 { color: var(--pd-ink) !important; font-size: clamp(29px,3.5vw,42px) !important; margin-bottom: 28px !important; }
.pd-simple #faq>div>div { background: transparent !important; }
.pd-simple .faq-item-clean>button { padding: 20px 0 !important; }
.pd-simple .faq-item-clean>div { padding: 0 0 20px !important; }
.pd-simple .reviews-faq-grid { display: block; max-width: 800px; margin: auto; }
.pd-simple .reviews-faq-heading { margin-bottom: 28px; }

/* All inline demo forms sit below a centered heading, on the same navy band. */
.pd-simple :is(.pd-booking,#book,.reviews-book) { padding: 48px 0; background: var(--pd-navy); color: #fff; }
.pd-simple :is(.booking-layout,.booking-grid) { display: block; }
.pd-simple :is(.booking-layout,.booking-grid)>.section-heading { position: static; }
.pd-simple :is(.pd-booking,#book,.reviews-book) :is(.section-heading h2,.pd-heading h2,.reviews-book-heading h2) { color: #fff; }
.pd-simple :is(.pd-booking,#book,.reviews-book) :is(.section-heading p,.pd-heading p,.reviews-book-heading p) { color: #d5e3ee; }
.pd-simple :is(.pd-booking,#book,.reviews-book) :is(.eyebrow,.pd-eyebrow,.reviews-kicker) { color: #94bdff; }
.pd-simple .pd-footer { padding: 30px 0; background: #fff; border-top: 1px solid var(--pd-line); color: var(--pd-muted); font: 400 13px/1.6 Karla,Arial,sans-serif; }
.pd-simple .pd-footer .pd-container { display: flex; justify-content: space-between; align-items: center; gap: 24px; }
.pd-simple .pd-footer nav { display: flex; flex-wrap: wrap; gap: 22px; }
.pd-simple .pd-footer a { color: inherit; text-decoration: none; }
.pd-simple .pd-footer a:hover { text-decoration: underline; }

@media(max-width:800px) {
  .pd-simple :is(.hero,.pd-hero,.ob-hero,.reviews-hero) { padding: 36px 0 32px; }
  .pd-simple :is(.hero,.pd-hero,.ob-hero,.reviews-hero) h1 { font-size: clamp(32px,9vw,42px); }
  .pd-simple :is(.section,.pd-section,.reviews-section,.reviews-faq,.ob-bullets-section,.pd-booking,#book,.reviews-book) { padding: 32px 0; }
  .pd-simple :is(.container,.pd-container,.reviews-wrap,.ob-hero-inner) { width: calc(100% - 32px); }
  .pd-simple :is(.lede,.hero-copy,.pd-lead,.ob-subhead,.reviews-lede) { font-size: 17px; }
  .pd-simple :is(.cards,.steps) { grid-template-columns: 1fr; }
  .pd-simple .receptionist-integrations { padding: 32px 16px; }
  .pd-simple .receptionist-integrations__platforms { gap: 12px; }
  .pd-simple .receptionist-integrations__platforms li { width: calc((100% - 12px)/2); min-height: 88px; padding: 18px; }
  .pd-simple .pd-proof-grid { display: flex; overflow-x: auto; gap: 16px; scroll-snap-type: x mandatory; padding-bottom: 12px; }
  .pd-simple .pd-proof-grid figure { flex: 0 0 84%; scroll-snap-align: start; }
  .pd-simple .pd-footer .pd-container { flex-direction: column; align-items: flex-start; gap: 12px; }
  .pd-simple .pd-footer a { display: inline-flex; align-items: center; min-height: 44px; }
}
@media(max-width:480px) {
  .pd-simple .pd-product-nav { padding: 0 12px; }
  .pd-simple .pd-product-nav .pd-product-nav-bar { min-height: 68px; gap: 6px; }
  .pd-simple .pd-product-nav .pd-product-nav-brand img { height: 21px; }
  .pd-simple .pd-product-nav .pd-product-nav-book { padding: 10px 12px; font-size: 12px; }
  .pd-simple :is(.pd-actions,.actions,.hero-actions,.reviews-hero-actions) { flex-direction: column; gap: 8px; }
  .pd-simple :is(.pd-actions,.actions,.hero-actions,.reviews-hero-actions)>.button,
  .pd-simple .pd-actions>.pd-button { width: 100%; }
}
@media(prefers-reduced-motion:reduce) { .pd-simple { scroll-behavior: auto; } }

/* React Reviews keeps its existing qualification and calendar logic. */
.pd-simple .reviews-book .reviews-book-heading { max-width: 800px; text-align: center; margin: 0 auto 28px; }
.pd-simple .reviews-book :is(.lp-booking-points,.lp-booking-copy>p) { display: none; }
.pd-simple .reviews-footer { background: #fff; border-top: 1px solid var(--pd-line); padding: 30px 0; }
.pd-simple .reviews-footer .reviews-wrap { width: min(1160px,calc(100% - 40px)); }
.pd-simple :is(.service-card,.process-card,.guardrail-card,.scorecard) { border: 1px solid var(--pd-line); border-radius: 16px; box-shadow: none; }
.pd-simple .guardrail-card.alert { background: var(--pd-navy); }
.pd-simple .guardrail-card.alert p { color: #d5e3ee; }
.pd-simple .funnel-section { background: var(--pd-navy); }
.pd-simple .funnel-section .container { background: transparent; padding: 0; border-radius: 0; }
.pd-simple .funnel-section .section-heading h2 { color: #fff; }
.pd-simple .funnel-section p { color: #d5e3ee; }
.pd-simple .funnel-section .eyebrow { color: #94bdff; }
.pd-simple :is(.trust h2,.faq h2,.measurement-copy h2) { font-size: clamp(29px,3.5vw,42px); color: var(--pd-ink); line-height: 1.15; letter-spacing: -.035em; }
.pd-simple .faq>h2,.pd-simple .faq>.eyebrow { text-align: center; }
.pd-simple .calendar-shell { background: transparent; box-shadow: none; }
.pd-simple .visual { background: transparent; padding: 0; border: 0; box-shadow: none; }
.pd-simple .receptionist-demo-player { box-shadow: none; }

.pd-simple .pd-booking-inline { max-width: 1000px; margin: 28px auto 0; }
.pd-simple .receptionist-features__heading { text-align: center; color: var(--pd-ink); font-size: clamp(29px,3.5vw,42px); }
.pd-simple .receptionist-features__inner { max-width: 1160px; }
