/* Contact and policy pages only. Loaded after site.css.
   Reuses the site's colours, fonts and spacing, and only adds what long-form text needs. */

/* Base blocks these pages share (section spacing, contact rows, help box). */
.section-pad{padding:56px var(--gutter)}
.tiny-line{display:inline-block;width:24px;height:1px;background:var(--gold)}
.faq-section{display:grid;grid-template-columns:1fr;gap:35px;background:var(--cream)}
.faq-section h2{font-size:clamp(40px,6vw,57px);margin:24px 0}
.faq-section h2 em{color:var(--gold-text)}
.booking-details{border-top:1px solid #c5bdb1;margin:0}
.booking-details p{display:flex;justify-content:space-between;gap:20px;margin:0}
.booking-details strong{font-weight:400}
.contact-details p{align-items:baseline;padding:18px 0;border-bottom:1px solid #c5bdb1;font-size:14px;line-height:1.5}
.contact-details p span{flex:none;color:#6b6259;font-size:12px}
.contact-details strong{text-align:right}
.contact-details a{text-decoration:underline;text-underline-offset:4px}
.section-cta{display:flex;flex-direction:column;align-items:flex-start;gap:22px;border-top:1px solid #c3b59f;margin-top:35px;padding-top:30px}
.section-cta p{font-family:var(--serif);font-size:21px;letter-spacing:-.02em}
.social-links{display:flex;gap:25px;font-size:11px;text-decoration:underline;text-underline-offset:5px;margin:30px 0}
.page-intro h1 em{font-style:italic;color:var(--gold)}

/* Page intro: the dark band the header sits on, as on the home page. */
.page-intro{background:#171510;color:var(--cream);padding-top:56px;padding-bottom:56px}
.page-intro .eyebrow{display:flex;align-items:center;gap:9px;font-size:8px;letter-spacing:.08em;color:#d0c7b4}
.page-intro .tiny-line{width:18px}
.page-intro h1{font-size:clamp(44px,14vw,55px);line-height:1.02;letter-spacing:-.055em;margin-top:24px;max-width:none}
.page-intro h1 em{margin-left:0;font-size:1em;line-height:inherit;letter-spacing:-.055em}
.page-lead{font-size:13px;line-height:1.65;color:#d7d0c3;margin-top:20px;max-width:520px}
.page-updated{font-size:11px;color:#c5beaf;margin-top:12px}

/* Page body: light section, one column on small screens. */
.page-body{background:#f5f1e8}
.page-text{max-width:68ch;color:#4f423a}
.page-text section+section{margin-top:40px}
.page-text h2,.page-summary h2{font-family:Georgia,serif;font-size:24px;line-height:1.2;letter-spacing:-.03em;color:var(--ink)}
.page-text h2{border-top:1px solid #afa18b;padding-top:20px;margin-bottom:14px}
.page-text h3{font-family:Georgia,serif;font-size:20px;font-weight:400;line-height:1.3;letter-spacing:-.03em;color:var(--ink);margin:26px 0 10px}
.page-text p,.page-summary p{font-size:15px;line-height:1.7;margin-bottom:14px}
.page-text ul,.page-summary ul{list-style:none;padding:0;margin:0 0 16px}
.page-text li,.page-summary li{position:relative;padding-left:24px;font-size:15px;line-height:1.65;margin-bottom:8px}
.page-text li:before,.page-summary li:before{content:'—';position:absolute;left:0;color:#b99a67}
.page-text a,.page-summary a{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.page-text a:hover,.page-summary a:hover{color:#887047}
.page-text strong,.page-summary strong{font-weight:600;color:var(--ink)}

/* "In simple words": a highlighted panel in the champagne tone of the course ribbon. */
.page-summary{background:#e9e1d1;border:1px solid #cfc4b2;padding:24px;margin-bottom:44px;max-width:68ch;color:#3a3428}
.page-summary h2{margin-bottom:16px}
.page-summary h2 em{letter-spacing:inherit}
.page-summary ul{margin-bottom:0}
.page-summary li:last-child{margin-bottom:0}

/* On this page: a short list of section links, ruled like the FAQ list. */
.page-toc{margin-bottom:48px}
.page-toc .eyebrow{font-size:10px;color:#7b684a;margin-bottom:14px}
.page-toc ul{list-style:none;padding:0;margin:0;border-top:1px solid #c5bdb1;display:grid;grid-template-columns:1fr 1fr;column-gap:16px}
.page-toc li{border-bottom:1px solid #c5bdb1}
.page-toc a{display:block;padding:12px 0;font-size:12px;line-height:1.4;color:#4f423a}
.page-toc a:hover{color:#887047}

/* Help box: reuses .section-cta, with the contact links underneath. */
.page-help{margin-top:56px}
.page-help-copy p{margin-bottom:6px}
.page-help-copy p a{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;white-space:nowrap}
.page-help-copy p a:hover{color:#887047}
.page-help .social-links{margin:16px 0 0}

/* Contact page: the home page contact layout (.faq-section with .contact-details rows), plus call, WhatsApp and email buttons. */
.contact-page{row-gap:56px}
.contact-intro{font-size:13px;color:#716756;max-width:420px}
.contact-actions{display:grid;gap:12px;margin-top:28px;max-width:420px}
.contact-page .page-help{margin-top:0}

@media(min-width:761px){
 .section-pad{padding-top:96px;padding-bottom:96px}
 .faq-section{grid-template-columns:1fr 1.25fr;gap:9vw}
 .contact-details p{font-size:15px;padding:20px 0}
 .contact-details p span{font-size:13px}
 .section-cta{flex-direction:row;justify-content:space-between;align-items:center}
 .section-cta p{font-size:22px}
 .page-intro{padding-top:88px;padding-bottom:80px}
 .page-intro .eyebrow{gap:12px;font-size:10px;letter-spacing:.13em}
 .page-intro .tiny-line{width:24px}
 .page-intro h1{font-size:clamp(55px,5.8vw,90px);margin-top:28px}
 .page-lead{font-size:15px;margin-top:24px}
 .page-updated{font-size:12px;margin-top:14px}
 .page-text h2,.page-summary h2{font-size:27px}
 .page-text h2{padding-top:22px}
 .page-text h3{font-size:21px}
 .page-text p,.page-summary p,.page-text li,.page-summary li{font-size:16px}
 .page-summary{padding:36px;margin-bottom:56px}
 .page-text section+section{margin-top:48px}
 .page-toc a{font-size:13px}
 .contact-page{row-gap:70px}
 .contact-intro{font-size:14px}
 .contact-actions{margin-top:34px}
 .page-help{grid-column:1 / -1;margin-top:70px}
}
@media(min-width:1051px){
 .page-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);column-gap:9vw;align-items:start}
 .page-summary,.page-text{grid-column:2}
 .page-aside{grid-column:1;grid-row:1 / span 2;align-self:stretch}
 .page-toc{position:sticky;top:40px;max-height:calc(100svh - 80px);overflow:auto;margin-bottom:0}
 .page-toc ul{display:block}
 .page-toc a{padding:9px 0}
 .page-body-short .page-aside{grid-row:1}
 .page-body-short .page-summary{position:sticky;top:40px;margin-bottom:0}
 .page-body-short .page-text{grid-row:1}
}
