/* V27: compact editorial rhythm below the existing imagery.
   Intentionally does not target heroes, the homepage opening, or photo sizing. */
.visitor-journey { padding-top:48px; padding-bottom:48px; }
.visit-heading { max-width:760px; margin-bottom:28px; }
.visit-heading h2 { font-size:clamp(28px,3vw,40px); line-height:1.2; margin:16px 0; }
.visitor-journey ol { gap:32px; }
.visitor-journey li { padding-top:18px; }
.visitor-journey h3 { font-size:23px; line-height:1.3; margin:16px 0 12px; }
.visitor-journey li p { margin:0 0 16px; line-height:1.6; }
.creator-invitation { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); column-gap:7vw; align-items:center; padding-top:42px; padding-bottom:44px; }
.creator-invitation>.overline { grid-column:1/-1; margin-bottom:14px; }
.creator-invitation>a { margin:0; font-size:clamp(28px,3vw,42px); line-height:1.2; }
.creator-invitation>p { max-width:36ch; margin:0; font-size:17px; line-height:1.65; }
.concise-faq { gap:6vw; padding-top:44px; padding-bottom:48px; }
.concise-faq h2 { font-size:32px; line-height:1.2; margin:16px 0; }
.concise-faq>div>p { font-size:14px; line-height:1.65; }
.concise-faq .faq-list p { line-height:1.65; }

.occasion-depth { padding-top:48px; padding-bottom:48px; }
.depth-heading { max-width:850px; margin-bottom:28px; }
.depth-heading h2,.occasion-notes h2 { font-size:clamp(28px,3vw,40px); line-height:1.22; margin:16px 0; }
.depth-heading>p { font-size:18px; line-height:1.65; max-width:60ch; margin:0; }
.gathering-formats,.romance-paths { gap:5vw; }
.gathering-formats article,.romance-paths article,.season-planning article { padding-top:20px; }
.occasion-depth article h3 { font-size:clamp(23px,2.2vw,30px); line-height:1.25; margin:16px 0 12px; }
.occasion-depth article p,.production-brief dd { font-size:17px; line-height:1.65; max-width:62ch; }
.romance-depth .depth-heading { margin-left:0; }
.romance-paths article:last-child { padding-top:20px; }
.occasion-notes { padding-top:42px; padding-bottom:44px; }
.occasion-notes>p { font-size:17px; line-height:1.65; max-width:68ch; margin:14px 0; }
.notes-grid { gap:28px; margin-top:26px; }
.notes-grid p { line-height:1.65; }
.notes-grid strong { margin-bottom:10px; }
.season-planning { gap:28px; }
.production-depth { gap:5vw; }
.production-brief h3 { font-size:24px; line-height:1.3; margin-bottom:18px; }
.production-brief dl>div { padding:16px 0; }
.production-brief dt { margin-bottom:8px; }

/* Keep the selected images fully visible; tighten only their text surround. */
.concept-chapter { padding-top:24px; padding-bottom:32px; }
.concept-chapter>figcaption { padding-top:24px; padding-bottom:24px; }
.concept-chapter h2 { font-size:clamp(28px,3vw,40px); line-height:1.23; margin:16px 0; }
.concept-chapter p { font-size:17px; line-height:1.65; max-width:60ch; }
.concept-chapter small { margin-top:16px; line-height:1.65; }
.concept-landscape>figcaption { max-width:1000px; padding-top:16px; padding-bottom:24px; }
.journey-plan,.theme-romance .journey-plan { padding-top:44px; padding-bottom:48px; column-gap:7vw; }
.plan-intro h2 { font-size:clamp(28px,3vw,40px); line-height:1.22; margin:16px 0; }
.plan-intro>p { max-width:42ch; font-size:17px; line-height:1.65; }
.plan-content ol { margin-bottom:24px; }
.plan-content li { padding:18px 0; gap:18px; }
.plan-content h3 { font-size:22px; line-height:1.3; margin-bottom:8px; }
.plan-content li p { max-width:58ch; line-height:1.65; }
.plan-content .demo-boundary { margin-top:16px; }
.bespoke-link { margin-top:16px; }
.journey-limit { margin-top:16px; }
.visit-context { margin-top:16px; }

.creator-guidance { padding-top:36px; padding-bottom:44px; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:16px 6vw; align-items:start; }
.creator-guidance>.overline { grid-column:1; grid-row:1; }
.creator-guidance>p,.creator-guidance>a { grid-column:2; }
.creator-guidance p { font-family:var(--body,'Source Sans Pro',Arial,sans-serif); font-size:20px; line-height:1.6; max-width:62ch; margin:0; }
.edited-experience .creator-form-section { padding-top:44px; padding-bottom:56px; }
.edited-experience .creator-form-section h2 { font-size:clamp(28px,3vw,40px); line-height:1.2; }
.dx-footer { padding-top:44px; padding-bottom:32px; }
.dx-footer>div { margin-top:40px; padding-top:18px; }

/* Optional social icon links keep a dependable touch and keyboard target. */
.instagram-icon-link,.instagram-icon { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; flex-shrink:0; }
.instagram-icon-link svg,.instagram-icon svg { width:22px; height:22px; }
.instagram-icon-link:focus-visible,.instagram-icon:focus-visible { outline:2px solid currentColor; outline-offset:4px; border-radius:4px; }

@media(max-width:800px) {
 .visitor-journey { padding:36px 24px; }
 .visit-heading { margin-bottom:24px; }
 .visit-heading h2 { font-size:29px; }
 .visitor-journey li { margin-top:24px; padding-top:18px; }
 .visitor-journey li:first-child { margin-top:0; }
 .visitor-journey h3 { font-size:23px; margin:14px 0 10px; }
 .creator-invitation { display:block; padding:32px 24px 36px; }
 .creator-invitation>.overline { display:block; margin-bottom:14px; }
 .creator-invitation>a { font-size:29px; }
 .creator-invitation>p { max-width:58ch; margin-top:16px; font-size:16px; }
 .concise-faq { padding:36px 24px; }
 .concise-faq h2 { font-size:29px; }
 .concise-faq .faq-list { margin-top:24px; }
 .occasion-depth,.occasion-notes { padding:36px 24px; }
 .depth-heading { margin-bottom:24px; }
 .depth-heading h2,.occasion-notes h2 { font-size:28px; }
 .depth-heading>p { font-size:17px; }
 .gathering-formats article,.romance-paths article,.season-planning article { margin-top:24px; padding-top:18px; }
 .romance-paths article:last-child { padding-top:18px; }
 .occasion-depth article h3 { font-size:23px; }
 .notes-grid { margin-top:22px; }
 .notes-grid p { margin-top:20px; }
 .production-brief { margin-top:26px; }
 .concept-chapter { padding-top:12px; padding-bottom:20px; }
 .concept-chapter>figcaption,.concept-landscape>figcaption { padding:16px 24px 20px; }
 .concept-chapter h2,.concept-landscape h2 { font-size:28px; margin:14px 0; }
 .concept-chapter p { font-size:17px; line-height:1.65; }
 .concept-chapter small { margin-top:16px; }
 .journey-plan,.theme-romance .journey-plan,.theme-holidays .journey-plan,.theme-brands-and-shoots .journey-plan { padding:32px 24px 38px; }
 .plan-intro { margin-bottom:26px; }
 .plan-intro h2 { font-size:28px; }
 .plan-content li { padding:17px 0; }
 .creator-guidance { display:block; padding:32px 24px 36px; }
 .creator-guidance p { font-size:18px; line-height:1.65; margin:16px 0; }
 .edited-experience .creator-form-section { padding:36px 24px 40px; }
 .edited-experience .creator-form-section h2 { font-size:30px; }
 .dx-footer { padding-top:36px; padding-bottom:28px; }
 .dx-footer>div { margin-top:28px; }
}
