/* v1.1.2: page-specific layout for migrated About/Contact WordPress pages.
   Existing homepage/global components remain unaffected. */
.st-detail-page{min-width:0;overflow-x:clip;color:var(--st-ink,#202530)}
.st-detail-page__banner{padding-block:clamp(42px,6vw,78px)}
.st-detail-page__banner h1{color:#fff;font-size:clamp(2rem,4vw,3.5rem);margin:10px 0 14px}
.st-detail-page__crumb{display:flex;gap:10px;align-items:center;color:#eff3f8;font-size:.88rem;flex-wrap:wrap}
.st-detail-page__crumb a{text-decoration:underline;text-underline-offset:3px}
.st-detail-page__crumb a:hover{color:var(--st-gold,#FFC000)}
.st-about-page__grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(25px,5vw,80px)}
.st-about-page__image{min-width:0;border-radius:clamp(14px,2vw,24px);overflow:hidden;background:#f4f7fa;box-shadow:0 18px 45px rgba(32,37,48,.09)}
.st-about-page__image img{display:block;width:100%;height:clamp(310px,37vw,505px);object-fit:cover}
.st-about-page__text{min-width:0}
.st-about-page__text h2,.st-about-page__center-heading h2{font-size:clamp(1.8rem,3.2vw,3.1rem);line-height:1.18;margin:10px 0 18px;overflow-wrap:anywhere}
.st-about-page__lead{font-size:clamp(.97rem,1.2vw,1.05rem);line-height:1.78;color:#4a5665;margin:0 0 20px}
.st-about-page__highlights{list-style:none;margin:0 0 26px;padding:0;display:grid;gap:10px}
.st-about-page__highlights li{position:relative;padding-left:28px;font-weight:600;line-height:1.55}
.st-about-page__highlights li:before{content:'✓';position:absolute;left:0;top:0;color:#866500;font-weight:900}
.st-about-page .st-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 20px;min-height:48px;font-weight:750}
.st-about-page__process{background:#f5f7fa}
.st-about-page__center-heading{text-align:center;max-width:730px;margin:0 auto 30px}
.st-about-page__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2vw,23px)}
.st-about-page__steps article{position:relative;min-width:0;padding:clamp(20px,2.6vw,33px);border:1px solid #e4e8ee;border-radius:18px;background:#fff;box-shadow:0 12px 25px rgba(32,37,48,.035)}
.st-about-page__steps h3{margin:12px 0 8px;font-size:1.2rem}
.st-about-page__steps p{color:#515b6c;line-height:1.68;margin:0}
.st-about-page__step-number{color:#866500;background:#fff4c9;padding:7px 11px;border-radius:9px;font-weight:800;font-variant-numeric:tabular-nums}
.st-about-page__booking{background:var(--st-navy,#202530);color:#fff}
.st-about-page__booking-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(20px,4vw,65px)}
.st-about-page__booking .st-section-kicker{color:var(--st-gold,#FFC000)}
.st-about-page__booking h2{color:#fff;font-size:clamp(1.75rem,3vw,2.8rem);margin:8px 0 12px}
.st-about-page__booking p:not(.st-section-kicker){color:#e8edf1;max-width:730px;margin:0}
.st-contact-page__body{width:100%;max-width:none;margin:0;padding:0;min-width:0}
.st-contact-page__body > :is(p,div,article){max-width:none}
.st-contact-page .st-contact-intro{background:#fff;padding-block:clamp(44px,5.5vw,80px)}
.st-contact-page .st-contact-intro .st-section-head{margin-bottom:30px}
.st-contact-page .st-contact-points{align-items:stretch}
.st-contact-page .st-contact-points>div{padding:clamp(18px,2vw,27px);min-width:0;box-shadow:0 12px 26px rgba(32,37,48,.045)}
.st-contact-page .st-contact-points :is(p,a){overflow-wrap:anywhere;word-break:normal}
.st-contact-page .st-enquiry-section{padding-block:clamp(44px,5vw,80px)}
@media(max-width:980px){.st-about-page__grid{grid-template-columns:1fr}.st-about-page__image{max-width:680px;margin-inline:auto;width:100%}.st-about-page__image img{height:auto;max-height:560px;aspect-ratio:491/507;object-fit:cover}.st-about-page__steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.st-detail-page__banner{padding-block:40px}.st-about-page__grid{gap:26px}.st-about-page__steps{grid-template-columns:1fr;gap:14px}.st-about-page__steps article{padding:22px}.st-about-page__booking-inner{grid-template-columns:1fr;text-align:center}.st-about-page__booking-inner .st-button{justify-self:center;width:min(100%,300px)}.st-contact-page .st-contact-intro .st-section-head{text-align:center;margin-inline:auto}}
@media(prefers-reduced-motion:reduce){.st-about-page *{scroll-behavior:auto}}
