/* v2026.11.10.2: readable type and a tighter rhythm on the restored site. */
body.stlph-polished {
  --ink:#242038;
  --muted:#484250;
  --accent:#705a34;
  font-size:17px;
  line-height:1.6;
  color:var(--ink);
}
.stlph-polished .header-inner { min-height:78px; padding-block:8px; gap:20px; }
.stlph-polished .desktop-nav { gap:18px; row-gap:8px; }
.stlph-polished .desktop-nav a { font-size:15px; line-height:1.4; }
.stlph-polished .brand-type>span { font-size:17px; }
.stlph-polished .brand-type small { font-size:12px; color:#484250; }
.stlph-polished .header-actions .button { font-size:15px; min-height:44px; }
.stlph-polished .hero-grid { padding-block:34px 32px; gap:32px; }
.stlph-polished .hero h1 { font-size:clamp(2.15rem,3.7vw,3.15rem); line-height:1.12; margin-bottom:16px; }
.stlph-polished .hero-lead { font-size:19px; line-height:1.55; color:#484250; margin-bottom:16px; max-width:47ch; }
.stlph-polished .hero-actions { margin-top:20px; }
.stlph-polished .button-large { font-size:16px; min-height:48px; padding:12px 18px; }
.stlph-polished .microcopy { font-size:14px; line-height:1.5; color:#484250; margin-top:12px; }
.stlph-polished .hero-planner-link { font-size:14px; margin-top:12px; }
.stlph-polished .eyebrow { font-size:13px; letter-spacing:.08em; color:#705a34; margin-bottom:10px; }
.stlph-polished .restored-hero-figure figcaption,
.stlph-polished .restored-image-note { font-size:13px; line-height:1.45; color:#51485a; }
.stlph-polished .restored-benefits { padding-block:18px; }
.stlph-polished .restored-benefit-grid { gap:20px; }
.stlph-polished .restored-benefit-grid article { padding-right:16px; }
.stlph-polished .restored-benefit-grid span { font-size:12px; color:#705a34; letter-spacing:.05em; }
.stlph-polished .restored-benefit-grid h2 { font-size:18px; line-height:1.3; margin-block:5px 7px; }
.stlph-polished .restored-benefit-grid p { font-size:15px; line-height:1.5; color:#484250; }
.stlph-polished .section { padding-block:48px; }
.stlph-polished .section-heading { gap:28px; margin-bottom:24px; }
.stlph-polished .section-heading h2,
.stlph-polished .center-heading h2,
.stlph-polished .page-grid h2,
.stlph-polished .section>.wrap>h2,
.stlph-polished .section-navy h2,
.stlph-polished .contact-inner h2,
.stlph-polished .request-layout>div:first-child h2 {
  font-size:clamp(1.8rem,2.65vw,2.25rem); line-height:1.2;
}
.stlph-polished .section-heading>p { font-size:17px; line-height:1.55; }
.stlph-polished .center-heading { margin-bottom:24px; }
.stlph-polished .restored-comparison .center-heading h2 { font-size:36px; }
.stlph-polished .restored-comparison-grid { gap:20px; }
.stlph-polished .restored-outcome header { padding:14px 20px; }
.stlph-polished .restored-outcome header p { font-size:14px; color:#484250; }
.stlph-polished .restored-outcome h3 { font-size:23px; }
.stlph-polished .restored-outcome figcaption { padding:14px 20px; font-size:16px; line-height:1.5; color:#484250; }
.stlph-polished .restored-hubs { padding-block:30px 34px; }
.stlph-polished .restored-hub-grid { gap:24px; }
.stlph-polished .restored-hub-circle { max-width:188px; margin-bottom:13px; padding:7px; }
.stlph-polished .restored-hub h3 { font-size:21px; }
.stlph-polished .restored-hub p { font-size:16px; line-height:1.5; color:#484250; }
.stlph-polished .restored-hub small { font-size:14px; }
.stlph-polished .trust-row { padding-block:17px; }
.stlph-polished .trust-row p { font-size:15px; line-height:1.5; color:#484250; }
.stlph-polished .trust-row strong { font-size:19px; }
.stlph-polished .service-card { padding:20px; }
.stlph-polished .restored-service-image { width:calc(100% + 40px); margin:-20px -20px 17px; }
.stlph-polished .service-card h3 { font-size:21px; line-height:1.25; margin-bottom:8px; }
.stlph-polished .service-card p,
.stlph-polished .occasion-card p { font-size:16px; line-height:1.55; color:#484250; }
.stlph-polished .occasion-card { padding:20px; }
.stlph-polished .occasion-card h3 { font-size:20px; line-height:1.25; }
.stlph-polished .occasion-symbol { margin-bottom:14px; }
.stlph-polished .section-foot { gap:16px; margin-top:20px; }
.stlph-polished .restored-crew-grid { gap:32px; }
.stlph-polished .restored-crew-grid h2 { font-size:35px; line-height:1.2; }
.stlph-polished .restored-crew-grid p { font-size:17px; color:#484250; }
.stlph-polished .restored-crew-grid figcaption,
.stlph-polished .restored-page-figure figcaption { font-size:14px; color:#51485a; }
.stlph-polished .restored-crew-list { gap:8px; margin-block:18px 22px; }
.stlph-polished .restored-crew-list li { font-size:16px; padding-block:8px; }
.stlph-polished .event-plan-layout { gap:28px; }
.stlph-polished .event-plan-summary { padding:22px; }
.stlph-polished .steps-grid { gap:28px; }
.stlph-polished .steps-grid h3 { font-size:21px; line-height:1.25; margin-bottom:10px; }
.stlph-polished .steps-grid p { font-size:17px; line-height:1.55; }
.stlph-polished .step-number { width:50px; height:50px; border-radius:14px; margin-bottom:17px; }
.stlph-polished .areas-layout { gap:32px; }
.stlph-polished .section-navy .eyebrow { color:#e4d5bb; }
.stlph-polished .section-navy p:not(.eyebrow) { color:#eeeaf8; }
.stlph-polished .area-list li { font-size:16px; padding:8px 11px; }
.stlph-polished .request-layout { gap:32px; }
.stlph-polished .request-tips { margin-top:18px; color:#484250; }
.stlph-polished .request-tips li { padding-block:5px; }
.stlph-polished .faq-list summary { font-size:18px; padding:14px 8px; }
.stlph-polished .faq-list details { padding-block:8px; }
.stlph-polished .faq-list p { font-size:17px; line-height:1.6; color:#484250; }
.stlph-polished .contact-band { padding-block:40px; }
.stlph-polished .footer { padding-top:36px; }
.stlph-polished .footer-grid { gap:28px; }
.stlph-polished .footer-bottom { margin-top:24px; padding-top:18px; font-size:14px; }
.stlph-polished .footer p,
.stlph-polished .footer nav a { font-size:15px; line-height:1.55; }
.stlph-polished .page-hero { padding-block:34px; }
.stlph-polished .page-hero .editorial { gap:32px; }
.stlph-polished .page-hero h1 { font-size:clamp(2.2rem,3.3vw,2.9rem); line-height:1.15; }
@media(min-width:1100px) and (max-width:1279px) {
  .stlph-polished .header-inner { gap:16px; }
  .stlph-polished .desktop-nav { gap:14px; }
  .stlph-polished .brand-type>span { font-size:15px; }
}
@media(max-width:1099px) {
  .stlph-polished .header-inner { min-height:72px; gap:16px; }
  .stlph-polished .hero-grid { gap:26px; padding-block:28px; }
  .stlph-polished .restored-benefit-grid { gap:18px; }
}
@media(max-width:759px) {
  .stlph-polished .section { padding-block:34px; }
  .stlph-polished .hero-grid { gap:22px; padding-block:26px 22px; }
  .stlph-polished .hero h1 { font-size:clamp(2rem,8.8vw,2.4rem); margin-bottom:14px; }
  .stlph-polished .hero-lead { font-size:18px; line-height:1.55; }
  .stlph-polished .hero-actions { gap:10px; }
  .stlph-polished .button-large { font-size:15px; min-height:48px; padding:12px 15px; }
  .stlph-polished .restored-benefits { padding-block:16px; }
  .stlph-polished .restored-benefit-grid { gap:18px 16px; }
  .stlph-polished .restored-benefit-grid article { padding:0; }
  .stlph-polished .restored-benefit-grid h2 { font-size:17px; }
  .stlph-polished .restored-benefit-grid p { font-size:15px; }
  .stlph-polished .section-heading { gap:16px; margin-bottom:22px; }
  .stlph-polished .section-heading h2,
  .stlph-polished .center-heading h2 { font-size:30px; }
  .stlph-polished .restored-comparison .center-heading h2 { font-size:31px; }
  .stlph-polished .restored-outcome h3 { font-size:21px; }
  .stlph-polished .restored-hubs { padding-block:24px 28px; }
  .stlph-polished .restored-hub-grid { gap:24px 18px; }
  .stlph-polished .restored-hub-circle { max-width:170px; padding:6px; }
  .stlph-polished .restored-hub h3 { font-size:19px; }
  .stlph-polished .restored-hub p { font-size:15px; }
  .stlph-polished .restored-crew-grid h2 { font-size:30px; }
  .stlph-polished .service-card { padding:18px; }
  .stlph-polished .restored-service-image { width:calc(100% + 36px); margin:-18px -18px 16px; }
  .stlph-polished .service-card h3 { font-size:20px; }
  .stlph-polished .occasion-card { padding:17px; }
  .stlph-polished .occasion-card h3 { font-size:18px; }
  .stlph-polished .occasion-card p { font-size:15px; }
  .stlph-polished .restored-crew-grid,
  .stlph-polished .request-layout,
  .stlph-polished .page-hero .editorial { gap:24px; }
  .stlph-polished .page-hero { padding-block:28px; }
  .stlph-polished .page-hero h1 { font-size:36px; }
  .stlph-polished .contact-band { padding-block:32px; }
}
@media(max-width:639px) {
  .stlph-polished .header-inner { min-height:68px; gap:12px; }
  .stlph-polished .brand-type>span { font-size:15px; }
  .stlph-polished .brand-type small { font-size:11px; }
}
