/* Milestone landing pages use the existing type, palette and photography. */
.milestone-page .section{padding-block:64px}
.milestone-page main>.container{padding-inline:24px}
.milestone-page h2{font-size:clamp(2rem,3vw,3rem);line-height:1.15}
.milestone-page h3{font-size:1.65rem;line-height:1.2}
.milestone-page p{line-height:1.75}
.milestone-page .actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:28px}
.milestone-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center;padding-block:44px 64px}
.milestone-hero h1,.milestone-hub-intro h1{font-size:clamp(2.7rem,4.5vw,4.8rem);line-height:1.05;margin:18px 0 24px;max-width:18ch}
.milestone-lead{font-size:1.12rem;max-width:48ch}
.milestone-hero-note{font-size:.88rem;color:var(--muted);margin:24px 0 0}
.milestone-booking-help{font-size:.9rem;max-width:55ch;margin:18px 0 0;color:var(--muted)}
.milestone-booking-question{display:inline-flex;align-items:center;min-height:44px}
.milestone-hero-photo{margin:0;min-width:0}
.milestone-hero-photo figcaption{margin-top:12px;font-size:.88rem;color:var(--muted);line-height:1.5}
.milestone-hero-photo img{width:100%;height:auto;max-height:650px;object-fit:contain;border-radius:4px}
.milestone-plan{background:var(--soft,#edece6);padding:clamp(28px,4vw,52px);border-radius:4px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.milestone-plan .milestone-plan-title{font-family:var(--font-display);font-size:clamp(2.2rem,3vw,3rem);line-height:1.15;max-width:15ch;margin:14px 0 28px}
.milestone-plan ol{list-style:none;padding:0;margin:0 0 28px}
.milestone-plan li{display:flex;gap:14px;line-height:1.65;padding:14px 0;border-top:1px solid var(--line)}
.milestone-plan li span{font-size:.75rem;color:var(--muted);padding-top:3px}
.milestone-plan .text-link{align-self:flex-start}
.milestone-approach{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:64px}
.milestone-approach h2{max-width:19ch;margin:0}.milestone-approach>p{margin:0;max-width:55ch;align-self:center}
.milestone-preparation .planning-grid{margin-bottom:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.milestone-preparation article{border-top:1px solid var(--line);padding-top:20px}
.milestone-gallery-section{border-bottom:1px solid var(--line)}
.milestone-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start;margin:28px 0}
.milestone-gallery figure{margin:0}.milestone-gallery img{width:100%;height:auto;border-radius:3px}
.milestone-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}
.milestone-package-grid article{padding:28px;border:1px solid var(--line);border-radius:4px;display:flex;flex-direction:column;align-items:flex-start}
.milestone-package-grid .featured-package{background:var(--soft,#edece6)}
.milestone-package-grid h3{font-size:2rem;margin:0}.milestone-package-grid .eyebrow{font-size:.65rem;letter-spacing:.08em}
.milestone-package-grid .milestone-price{font-family:var(--font-display);font-size:3rem;line-height:1.2;margin:14px 0}
.milestone-package-grid ul{padding-left:18px;line-height:1.65;margin-bottom:24px}.milestone-package-grid li+li{margin-top:10px}
.milestone-package-grid .milestone-payment{font-size:.9rem;margin-top:auto;line-height:1.6}.milestone-package-grid .btn{margin-top:8px}
.signature-comparison{padding-block:64px}
.signature-comparison h2{font-size:clamp(2rem,3vw,3rem);line-height:1.15}
.signature-comparison .milestone-package-bookings{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%}
.signature-comparison .milestone-package-bookings .btn{align-self:stretch;white-space:normal}
.signature-comparison .package-secondary-booking{font-size:.9rem;line-height:1.5;min-height:44px;padding-block:12px;max-width:100%}
.signature-comparison #signature-package{scroll-margin-top:24px}
.signature-comparison .signature-mobile{display:none}
.signature-comparison .milestone-package-intro{max-width:68ch}
.milestone-package-review{max-width:76ch;margin:24px 0 0;padding:20px 24px;border-left:3px solid var(--accent);background:var(--soft,#edece6)}
.milestone-package-review .eyebrow{margin:0 0 10px;font-size:.7rem}
.milestone-package-review blockquote{margin:0}
.milestone-package-review blockquote p{font-size:1.1rem;line-height:1.6;margin:0}
.milestone-package-review figcaption{display:flex;align-items:center;flex-wrap:wrap;gap:8px 24px;margin-top:12px;font-size:.9rem}
.milestone-package-review .text-link{display:inline-flex;align-items:center;min-height:44px}
.signature-comparison .featured-package{border-color:var(--accent);border-width:2px;padding:27px}
.signature-comparison .milestone-package-label{font-size:.8rem;font-weight:600;line-height:1.5;min-height:2.4em;margin:0 0 12px;color:var(--muted)}
.signature-comparison .featured-package .milestone-package-label{color:var(--ink)}
.signature-comparison .milestone-price span{font-family:var(--font-body);font-size:1rem}
.signature-comparison .milestone-package-features{width:100%;margin:0 0 24px}
.signature-comparison .milestone-package-features>div{padding:12px 0;border-top:1px solid var(--line)}
.signature-comparison .milestone-package-features dt{font-size:.8rem;font-weight:600;color:var(--muted);line-height:1.4;margin-bottom:4px}
.signature-comparison .milestone-package-features dd{margin:0;line-height:1.55}
.signature-comparison .milestone-payment{padding-top:4px}
.signature-comparison .milestone-package-fees{margin:24px 0 8px;max-width:80ch}
.milestone-quote{display:flex;gap:48px;justify-content:space-between;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.milestone-quote p{max-width:65ch;margin:20px 0 0}.milestone-quote .btn{flex-shrink:0;max-width:300px;white-space:normal}
.milestone-questions{max-width:1000px}
.milestone-questions details{border-bottom:1px solid var(--line);padding:22px 0}
.milestone-questions summary{font-size:1.05rem;font-weight:600;cursor:pointer;line-height:1.6}
.milestone-questions details p{max-width:70ch;margin:18px 0 0}
.milestone-related{border-top:1px solid var(--line)}
.milestone-related-intro{max-width:68ch;margin:20px 0 0}
#other-sessions .section-heading>.text-link{display:inline-flex;align-items:center;min-height:44px}
.milestone-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:28px}
.milestone-related-grid>a{display:flex;flex-direction:column;align-items:flex-start;color:var(--ink);text-decoration:none;border-top:1px solid var(--line);padding-top:24px}
.milestone-related-grid p{margin-bottom:20px}.milestone-related-grid .text-link{margin-top:auto}
.milestone-hub-intro{padding-block:48px 64px}.milestone-hub-intro h1{max-width:20ch}
.milestone-hub-intro>p{max-width:65ch}.milestone-group-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:28px}
.milestone-session-group{border-top:1px solid var(--line);scroll-margin-top:24px}
.milestone-session-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:32px}
.milestone-session-grid article{display:flex;flex-direction:column;align-items:flex-start;padding-block:24px;border-top:1px solid var(--line)}
.milestone-session-heading{display:flex;gap:16px;align-items:center;width:100%;margin-bottom:18px;color:var(--ink);text-decoration:none}.milestone-session-heading img{width:88px;height:72px;object-fit:cover;border-radius:4px;flex:0 0 88px}.milestone-session-heading h3{margin:0;min-width:0;font-size:1.55rem;overflow-wrap:break-word}.milestone-session-heading:hover h3{text-decoration:underline;text-underline-offset:4px}
.milestone-session-grid p{margin-bottom:24px}.milestone-session-grid .text-link{margin-top:auto}
.milestone-session-heading img.milestone-thumbnail-contain{object-fit:contain;background:var(--paper)}
@media(max-width:991.98px){.milestone-hero{grid-template-columns:1fr;gap:32px}.milestone-hero>div{max-width:720px}.milestone-hero-photo img{max-height:600px}.milestone-approach{gap:32px}.milestone-package-grid{gap:16px}.milestone-package-grid article{padding:24px 18px}.milestone-quote{align-items:flex-start;flex-direction:column;gap:24px}.milestone-session-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767.98px){.milestone-page .section{padding-block:40px}.milestone-hero,.milestone-hub-intro{padding-block:32px 40px}.milestone-hero h1,.milestone-hub-intro h1{font-size:2.7rem}.milestone-lead{font-size:1.05rem}.milestone-approach,.milestone-preparation .planning-grid,.milestone-package-grid,.milestone-related-grid{grid-template-columns:1fr;gap:24px}.milestone-package-grid article{padding:28px}.milestone-gallery{gap:14px}.milestone-related .section-heading{display:block}.milestone-related .section-heading>.text-link{margin-top:20px}.milestone-plan{padding:28px}.milestone-plan .milestone-plan-title{font-size:2.5rem}}
@media(max-width:575.98px){.milestone-session-grid,.milestone-gallery{grid-template-columns:1fr}.milestone-gallery img{max-height:640px;object-fit:contain}.milestone-session-grid{gap:0}.milestone-group-links{gap:16px 24px}.milestone-page .actions{align-items:flex-start;flex-direction:column;gap:18px}.milestone-hero h1,.milestone-hub-intro h1{font-size:2.55rem;overflow-wrap:break-word}}

@media(min-width:768px) and (max-width:991.98px){.signature-comparison .featured-package{padding:23px 17px}}
@media(max-width:767.98px){
.signature-comparison{padding-block:40px}
.signature-comparison .signature-desktop{display:none}
.signature-comparison .signature-mobile{display:grid;gap:20px;margin-top:24px}
.signature-comparison .featured-package{padding:27px}
.signature-comparison .milestone-package-label{min-height:0}
.signature-comparison .milestone-package-fees{margin:0 0 8px}
.signature-comparison .milestone-package-costs>p:last-child{margin-bottom:0}
.signature-comparison .compact-package{padding:20px}
.signature-comparison .milestone-package-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;width:100%;margin-bottom:16px}
.signature-comparison .compact-package h3{font-size:1.65rem}
.signature-comparison .compact-package .milestone-price{font-size:2rem;margin:0;white-space:nowrap}
.signature-comparison .milestone-compact-features{list-style:none;padding:0;margin:0 0 20px}
.signature-comparison .milestone-compact-features li+li{margin-top:8px}
.signature-comparison .compact-package .milestone-payment{padding-top:0;margin-bottom:12px}
}
