/* Golden Plains Dental Services: interior-page patterns.
   Uses only the existing CSS variables from the site stylesheet. No new colours, fonts, shadows or radii. */

/* Preview bar (remove at launch) */



html{scroll-padding-top:160px}

/* Interior hero: bright, matching the homepage hero (Ajay, 14 Oct 2026). Photo placeholder framed beside the text on desktop, below on mobile. */
.pg-hero{padding-top:48px;background:var(--paper);color:var(--ink);padding-bottom:48px;border-bottom:1px solid var(--line)}
.pg-hero h1{max-width:900px;font-size:clamp(34px,4.2vw,54px);color:var(--ink);margin:0 0 24px}
.pg-hero-lede{max-width:620px;font-size:18px;line-height:1.75;color:var(--ink)}
.pg-hero-lede p{margin:0 0 20px}
.pg-hero a:not(.button){color:var(--ink);text-decoration-color:var(--gold);text-decoration-thickness:2px}
.pg-hero .actions{display:flex;flex-wrap:wrap;gap:14px;margin:8px 0 0}
.pg-hero .hero-photo.pg-hero-photo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:440px;padding:32px;box-sizing:border-box;background:var(--stone);border:1px dashed var(--muted);text-align:center;font-size:14px;line-height:1.6;color:var(--ink)}
.pg-hero-photo b{font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12px;color:var(--ink)}
.pg-hero-photo span{max-width:420px}
.pg-trust{display:flex;flex-wrap:wrap;gap:8px 10px;list-style:none;max-width:980px;margin:28px 0 0;padding:20px 0 0;border-top:1px solid var(--line);font-size:13px;line-height:1.6;color:var(--ink)}
.pg-trust li{background:var(--gold-light);border:1px solid var(--line);border-radius:999px;padding:4px 12px}
.pg-trust li:last-child{background:transparent;border:0;border-radius:0;padding:4px 0;flex-basis:100%}
.pg-hero .hero-grid:not(:has(.pg-hero-photo)){grid-template-columns:1fr}
@media (width<=600px){.pg-hero .hero-photo.pg-hero-photo{height:240px;padding:20px}}

/* Body sections */
.pg-intro{padding:56px 0 8px}
.pg-intro p{font-size:19px;line-height:1.8}
.pg-sec{padding:48px 0}
.pg-sec.pg-alt{background:var(--white)}
.pg-col{max-width:820px}
.pg-sec h2{margin:0 0 22px}
.pg-sec h2 a{text-decoration-color:var(--gold);text-decoration-thickness:2px}
.pg-sec ul,.pg-sec ol{padding-left:24px;margin:0 0 24px}
.pg-sec li{margin-bottom:8px}
.pg-sec li::marker{color:var(--ink)}
.pg-intro a:not(.button):not(.text-link),.pg-sec a:not(.button):not(.text-link){text-decoration-color:var(--gold);text-decoration-thickness:2px}
.pg-steps{counter-reset:none}
.pg-steps li{padding-left:6px}

/* Inline publish-blocker markers */
mark.confirm{background:var(--gold-light);color:var(--ink);border:1px solid var(--gold);padding:0 5px;border-radius:5px;font-size:.88em;line-height:1.6;box-decoration-break:clone;-webkit-box-decoration-break:clone}

/* Photo placeholders */
.pg-photo{max-width:820px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;min-height:240px;aspect-ratio:16/7;margin:32px 0;padding:28px;background:var(--stone);border:1px dashed var(--muted);border-radius:20px;text-align:center;color:var(--ink);font-size:14px;line-height:1.6;box-sizing:border-box}
.pg-photo b{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.pg-photo span{max-width:620px}

/* Card grid */
.pg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin:8px 0 28px}
.pg-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px;display:flex;flex-direction:column;gap:10px}
.pg-card h3{font-size:21px;margin:0}
.pg-card p{margin:0;font-size:15px;color:var(--muted)}
.pg-card p a{color:var(--ink);font-weight:650}

/* FAQ */
.pg-faq .faq-list{max-width:900px;margin-top:24px}
.pg-faq .faq-list summary h3{font-size:17px;font-weight:600;line-height:1.5;margin:0;letter-spacing:-.01em}
.pg-faq .faq-list details p{font-size:16px;padding-right:25px}
.pg-faq .faq-list details a{color:var(--ink)}

/* Final CTA */
.pg-cta{padding:24px 0 72px}
.pg-cta .final-inner{align-items:flex-start}
.pg-cta .final-inner h2{max-width:560px;margin:0 0 12px}
.pg-cta .final-inner p{font-size:16px;max-width:620px;margin-bottom:14px}
.pg-cta .pg-cta-body{flex:1}
.pg-cta .actions{flex-direction:row;flex-wrap:wrap}

/* Breadcrumb above the footer */
.pg-bc{padding:8px 0 36px}
.pg-bc .breadcrumbs{margin:0;font-size:13px}
.pg-bc .breadcrumbs li[aria-current]{color:var(--ink)}

@media (width<=700px){
  
  .pg-hero{padding-bottom:36px}
  .pg-hero-lede,.pg-intro p{font-size:17px}
  .pg-sec{padding:36px 0}
  .pg-photo{aspect-ratio:4/3;min-height:200px}
  .pg-cta .final-inner .actions{flex-direction:column;align-items:flex-start}
  main{padding-bottom:88px}
}

/* Tables, map placeholder, form preview button, CTA note */
.pg-table-wrap{overflow-x:auto;margin:8px 0 28px}
.pg-table{border-collapse:collapse;width:100%;min-width:520px;background:var(--white);border:1px solid var(--line);font-size:15px;line-height:1.6}
.pg-table th,.pg-table td{border:1px solid var(--line);padding:12px 16px;text-align:left;vertical-align:top}
.pg-table thead th{background:var(--gold-light)}
.pg-table tbody th{font-weight:650;background:var(--stone)}
.pg-map{display:flex;align-items:center;justify-content:center;max-width:820px;height:360px;margin:8px 0 24px;background:var(--stone);border:1px dashed var(--muted);border-radius:20px;color:var(--ink);font-size:14px;text-align:center;padding:20px;box-sizing:border-box}
.pg-form-button .button[disabled]{opacity:1;cursor:not-allowed}
.pg-hero .pg-cta-note{font-size:13px;margin:12px 0 0}
.pg-cta-actions{flex-shrink:0}
.pg-cta-actions .pg-cta-note{font-size:13px;margin:12px 0 0}

/* Blank photo placeholders (Ajay, 14 Oct 2026): plain soft boxes, landscape on desktop, taller on mobile */
.pg-photo{display:block;max-width:820px;min-height:0;aspect-ratio:16/10;margin:32px 0;padding:0;background:var(--stone);border:1px solid var(--line);border-radius:20px;box-sizing:border-box}
.pg-hero .hero-photo.pg-hero-photo{display:block;height:auto;aspect-ratio:4/3;padding:0;background:var(--stone);border:1px solid var(--line)}
@media (width<=600px){.pg-photo{aspect-ratio:1/1;min-height:0}.pg-hero .hero-photo.pg-hero-photo{height:auto;aspect-ratio:4/5;padding:0}}

/* Google rating card (homepage .hero-reviews markup), placed before the FAQ / final CTA (Ajay, 14 Oct 2026) */
.pg-gcard{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin:18px 0 0}
.pg-gcard .hero-reviews{margin:0}
.pg-gcard p{margin:0;font-size:14px;line-height:1.45;color:var(--ink);flex:1 1 220px}
.pg-gcard p a{font-weight:650;text-decoration-color:var(--gold);text-decoration-thickness:2px}
@media (max-width:600px){.pg-gcard{margin-top:14px;gap:4px 12px}.pg-gcard p{font-size:13px}}
.pg-cta-post p{margin:14px 0 0;font-size:15px}
@media (max-width:600px){.pg-hero{padding-top:24px}.pg-hero h1{margin-bottom:16px}.pg-hero-lede{font-size:17px;line-height:1.6}.pg-hero-lede p{margin-bottom:14px}}
/* NAV START */
.menu-toggle{align-items:center;gap:10px;min-height:44px;min-width:44px;padding:10px 18px 10px 14px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font-weight:600;letter-spacing:.01em;box-shadow:none;transition:border-color .2s ease,background-color .2s ease}
.menu-toggle:hover{border-color:var(--ink);background:var(--white)}
.menu-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.menu-icon{position:relative;display:inline-block;width:18px;height:12px}
.menu-icon::before,.menu-icon::after,.menu-icon>span{content:"";position:absolute;left:0;width:18px;height:2px;border-radius:2px;background:var(--ink);transition:transform .22s ease,opacity .18s ease,top .22s ease}
.menu-icon::before{top:0}.menu-icon>span{top:5px}.menu-icon::after{top:10px}
.menu-toggle[aria-expanded="true"] .menu-icon::before{top:5px;transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-icon::after{top:5px;transform:rotate(-45deg)}
.menu-toggle[aria-expanded="true"] .menu-icon>span{opacity:0}
@media (prefers-reduced-motion:reduce){.site-header,.site-header *,.menu-toggle,.menu-icon::before,.menu-icon::after,.menu-icon>span{transition:none!important}}
/* NAV END */

/* RATING CARD START */
.hero-reviews{box-sizing:border-box;max-width:100%;gap:12px;padding:13px 16px 13px 12px;border:1px solid #ded5c3;border-radius:14px;background:#fffdf8;transition:background-color 180ms ease,border-color 180ms ease}
.hero-reviews:hover{background:#faf4e7;border-color:#bc9b58}
.hero-reviews:focus-visible{outline:2px solid #806021;outline-offset:4px}
.review-logo-space{width:40px;height:48px}
.review-logo-space img{width:56px;height:56px}
.review-summary{gap:5px;min-width:0}
.review-score{font-size:15px;line-height:1.3;gap:6px;font-variant-numeric:tabular-nums}
.review-count{font-size:11px;line-height:1.4;color:#666158}
.review-stars{display:flex;gap:3px;color:#aa7b22}
.review-stars svg{display:block;width:14px;height:14px;fill:currentColor}
.review-star-track{fill:#e5ddcc}
.review-open{margin-left:2px;font-size:18px;color:#756c5a}
@media(max-width:360px){.hero-reviews{gap:9px;padding-right:12px;padding-left:8px}.review-logo-space{width:32px}.review-open{margin-left:0}}
@media(prefers-reduced-motion:reduce){.hero-reviews{transition:none}}
/* RATING CARD END */
