/* Purchase-first sections reuse the established Floral & Petals design system. */
.section.gift-hero { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); align-items:center; gap:clamp(24px,5vw,80px); padding-block:42px; }
.gift-hero-copy,.gift-hero-art { min-width:0; }
.gift-hero h1 { font:400 clamp(32px,4.5vw,60px)/1.17 var(--serif); letter-spacing:-1.8px; margin:0; max-width:720px; }
.gift-hero .lead { max-width:620px; font-size:17px; line-height:1.75; }
.gift-hero .eyebrow { color:var(--green); font-size:11px; }
.gift-actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px 24px; margin-block:26px 18px; }
.gift-actions .button { font-size:15px; min-height:48px; border-radius:8px; gap:18px; }
.gift-text-link { display:inline-block; padding-block:10px; font-size:14px; font-weight:600; }
.gift-assurance { color:var(--muted); font-size:13px; max-width:610px; line-height:1.75; }
.gift-hero-art { margin:0; background:white; border:1px solid var(--line); border-radius:24px 24px 8px 8px; overflow:hidden; }
.gift-hero-art img { width:100%; height:auto; aspect-ratio:1; object-fit:contain; }
.gift-hero-art figcaption { padding:14px 18px; font-size:12px; color:var(--muted); background:#f0eee6; line-height:1.6; }
.section.gift-trust { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding-block:24px; border-block:1px solid var(--line); }
.gift-trust p { margin:0; }
.gift-trust strong,.gift-trust span { display:block; }
.gift-trust strong { color:var(--green); font-size:15px; }
.gift-trust span { font-size:13px; color:var(--muted); margin-top:4px; }
.section.month-finder { padding-block:42px; }
.month-finder>p:not(.eyebrow) { color:var(--muted); max-width:740px; }
.gift-month-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; margin-top:24px; }
.gift-month { display:grid; grid-template-columns:1fr auto; gap:4px 8px; position:relative; text-decoration:none; background:#fffdf9; border:1px solid var(--line); border-radius:10px; padding:18px 14px; min-height:88px; }
.gift-month>span:first-child { font:400 17px/1.4 var(--serif); }
.gift-month small { grid-column:1; color:var(--muted); font-size:12px; }
.gift-month .month-arrow { grid-column:2; grid-row:1/3; align-self:center; color:var(--green); }
.gift-month:hover { background:#e9eee4; border-color:var(--green); }
.section.gift-collection-intro { display:grid; grid-template-columns:minmax(0,2fr) minmax(200px,1fr); gap:36px; padding-block:32px 12px; border-top:1px solid var(--line); }
.gift-collection-intro p { max-width:830px; color:var(--muted); }
.gift-collection-intro nav { display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:6px; }
.gift-collection-intro nav a { padding:10px 0; }
.section.matching-gifts { padding-block:28px 10px; border-top:1px solid var(--line); }
.matching-gifts p { max-width:870px; }
.month-gift-hero+.matching-gifts+.catalog .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.month-gift-hero+.matching-gifts+.catalog .product-info h3 { font-size:17px; }
.month-gift-hero+.matching-gifts+.catalog .product-info p { font-size:13px; }
.month-gift-hero+.matching-gifts+.catalog .product-cta { font-size:14px; display:inline-block; padding-block:10px; }
#flower-story { scroll-margin-top:24px; }
@media(max-width:1000px) { .gift-month-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:700px) {
 .section.gift-hero { grid-template-columns:1fr; gap:24px; padding-block:28px; }
 .gift-hero h1 { letter-spacing:-1px; font-size:36px; }
 .gift-hero .lead { font-size:16px; }
 .gift-actions { margin-block:20px 12px; gap:6px; flex-direction:column; align-items:stretch; }
 .gift-actions .button { justify-content:center; text-align:center; }
 .gift-hero-art { max-width:480px; width:100%; justify-self:center; }
 .section.gift-trust { grid-template-columns:1fr; gap:16px; }
 .gift-month-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .gift-month { padding:15px; }
 .section.gift-collection-intro { grid-template-columns:1fr; gap:8px; }
 .gift-collection-intro nav { flex-direction:row; flex-wrap:wrap; gap:8px 16px; }
 .month-gift-hero+.matching-gifts+.catalog .product-grid { grid-template-columns:1fr; gap:30px; }
 .month-gift-hero+.matching-gifts+.catalog .product-card { max-width:480px; width:100%; justify-self:center; }
}
@media(prefers-reduced-motion:reduce) { .gift-month { transition:none; } }


/* Seasonal acquisition pages and current-month merchandising. */
.section.seasonal-now { padding-block:34px; border-block:1px solid var(--line); }
.seasonal-now>p:not(.eyebrow) { max-width:760px; color:var(--muted); }
.seasonal-now-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:22px; }
.seasonal-now-grid a { display:flex; justify-content:space-between; gap:16px; align-items:center; min-height:82px; padding:18px 20px; border:1px solid var(--line); border-radius:10px; background:#fffdf9; text-decoration:none; }
.seasonal-now-grid a:hover { border-color:var(--green); background:#e9eee4; }
.seasonal-now-grid strong { font:400 20px/1.3 var(--serif); }
.seasonal-now-grid span { color:var(--green); font-size:13px; text-align:right; }
.section.campaign-promise,.section.campaign-next { max-width:980px; }
.campaign-promise { border-top:1px solid var(--line); }
.campaign-promise p,.campaign-next p { max-width:820px; line-height:1.85; }
body:has(.campaign-promise) .catalog .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
body:has(.campaign-promise) .catalog .product-card { max-width:430px; width:100%; }
body:has(.campaign-promise) .catalog .product-info h3 { font-size:16px; }
@media(max-width:800px) {
 .seasonal-now-grid { grid-template-columns:1fr; }
 body:has(.campaign-promise) .catalog .product-grid { grid-template-columns:1fr; }
 body:has(.campaign-promise) .catalog .product-card { justify-self:center; }
}
