.intro-portrait { max-width: 480px; margin-inline: auto; }
.intro-portrait img { width:100%; height:clamp(380px,43vw,550px); object-fit:cover; object-position:center 27%; }
.page-intro { max-width:900px; margin:auto; padding:64px var(--gutter) 32px; text-align:center; }
.page-intro h1 { margin-bottom:24px; }
.page-intro > p:not(.eyebrow) { max-width:60ch; margin:0 auto 26px; }
main > .planning-packages { max-width:1240px; margin:0 auto; padding:40px var(--gutter); }
.package-teaser { max-width:820px; margin:40px auto 0; text-align:center; }
.package-teaser h3 { margin-bottom:18px; }
.package-teaser > p { margin-bottom:22px; }
.secondary-note { max-width:900px; text-align:center; }
.secondary-note h2 { margin-bottom:24px; }
.secondary-note p + p { margin-top:18px; }
@media(max-width:700px){.intro-portrait{max-width:420px}.intro-portrait img{height:450px}.page-intro{padding-top:40px}main > .planning-packages{padding-top:24px}.site-header nav{gap:12px}}

.meet-copy h1 { margin-bottom:26px; font-size:clamp(42px,5vw,72px); }

.options-heading { text-align:center; margin:0 0 30px; font-size:clamp(32px,4vw,48px); }
.individual-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.package-card h3 { font-size:clamp(28px,2.8vw,36px); margin-bottom:18px; }
.quote-price { font-family:var(--serif); font-size:28px; color:var(--mauve); }
.alacarte-link { margin-top:16px; }
@media(max-width:700px){.individual-grid{grid-template-columns:minmax(0,1fr)}}
