/* Long-form sections restored into the editorial system.
   Uses the tokens from home-editorial.css (--paper --ink --forest --deep --accent --muted --line --serif --sans)
   and mirrors the existing components: .service-inclusions cards, .pricing-section band, .table-scroll, .eyebrow. */

/* H1 keyword kicker: sits in the eyebrow slot, but lives inside the <h1> */
.be-internal h1 .h1-kicker{display:block;font:500 10px/1.7 var(--sans);letter-spacing:2.5px;text-transform:uppercase;margin:0 0 25px;max-width:none}
.occasion-hero h1 .h1-kicker{color:#eac1d5}
.interior-hero h1 .h1-kicker{font-size:9px;letter-spacing:2px;color:#674e73}

/* section shells */
.seo-band{background:#f0e5eb}
.seo-section .section-heading{align-items:flex-end}
.seo-section .section-heading h2{font-size:clamp(30px,3.1vw,46px);letter-spacing:-1.6px;line-height:1.08;max-width:880px}
.seo-section .section-heading h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.6px;font-size:1.08em}
.seo-section .section-heading>p{max-width:420px}
.seo-body{display:flex;flex-direction:column;gap:24px;align-items:stretch;min-width:0}
.seo-body>*{min-width:0;max-width:100%}
.seo-body>*{margin:0}
.seo-body>p{font-size:14px;line-height:1.85;color:var(--muted);max-width:860px}
.seo-body>p a,.seo-card p a,.seo-block>p a{text-decoration:underline;text-underline-offset:4px;text-decoration-color:#b79fc4}
.seo-body>p a:hover,.seo-card p a:hover{text-decoration-color:currentColor}
.seo-body>h3{font:30px/1.15 var(--serif);margin-top:22px}
.seo-body>.text-link{align-self:flex-start;margin-top:6px}

/* cards — same skin as .service-inclusions */
.seo-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;counter-reset:seo}
.seo-cards[data-cols="1"]{grid-template-columns:minmax(0,640px)}
.seo-cards[data-cols="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.seo-cards[data-cols="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}
.seo-card{counter-increment:seo;background:#f3eaf5;border:1px solid #e7d8eb;border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:12px;transition:background .2s,transform .2s}
.seo-band .seo-card{background:#fffafd;border-color:#e6d3df}
.seo-card:hover{background:#ecdae3;transform:translateY(-3px)}
.seo-band .seo-card:hover{background:#fff}
.seo-card:before{content:counter(seo,decimal-leading-zero);font-size:9px;letter-spacing:1px;color:#725780}
.seo-card h3{font:27px/1.15 var(--serif);margin:6px 0 2px}
.seo-card h4{font:600 9px/1.6 var(--sans);letter-spacing:1.6px;text-transform:uppercase;color:#725780;margin:10px 0 0}
.seo-card p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}
.seo-card ul,.seo-body>ul,.seo-block ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.seo-card li,.seo-body>ul>li,.seo-block li{font-size:13px;line-height:1.7;color:var(--muted);padding-left:20px;position:relative}
.seo-card li:before,.seo-body>ul>li:before,.seo-block li:before{content:'✧';position:absolute;left:0;top:0;color:var(--forest);font-size:11px}
.seo-card li strong,.seo-body li strong{color:var(--ink);font-weight:500}
.seo-card .text-link{align-self:flex-start;font-size:12px;margin-top:auto;gap:14px}
p.seo-tag{font:500 9px/1.7 var(--sans);letter-spacing:1.8px;text-transform:uppercase;color:#725780}
p.seo-stars{color:var(--forest);letter-spacing:3px;font-size:12px}
.seo-stats{display:flex;gap:28px;flex-wrap:wrap;padding:14px 0;border-block:1px solid #e1ccd6}
.seo-stat strong{display:block;font:400 28px/1 var(--serif);color:var(--ink)}
.seo-stat span{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:#725780}
.seo-card blockquote{font:italic 21px/1.42 var(--serif);margin:0;color:var(--ink)}
.seo-card dl{display:grid;grid-template-columns:auto 1fr;gap:7px 16px;margin:4px 0;padding:14px 0;border-block:1px solid #e1ccd6}
.seo-card dt{font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:#725780;padding-top:3px}
.seo-card dd{margin:0;font-size:12.5px;color:var(--muted);line-height:1.6}
.seo-card p.seo-author{margin-top:auto;padding-top:14px;border-top:1px solid #e1ccd6;display:grid;gap:3px}
.seo-author strong{font-weight:500;color:var(--ink);font-size:13px}
.seo-author span{font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:#725780;line-height:1.6}

/* link chips */
.seo-chips{display:flex;flex-wrap:wrap;gap:10px}
.seo-chips a{font-size:12px;line-height:1.4;padding:11px 18px;border:1px solid #d6bbc8;border-radius:40px;background:#fffafd;transition:background .2s,color .2s,border-color .2s}
.seo-chips a:hover{background:var(--forest);border-color:var(--forest);color:var(--paper)}

/* stacked content blocks (price lists) */
.seo-blocks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 36px}
.seo-block{min-width:0}
.seo-block h3{font:30px/1.15 var(--serif);margin:0 0 8px}
.seo-block>p{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 14px}
.seo-table{margin:0}
.seo-table table{min-width:0;font-size:12px}
.seo-table th,.seo-table td{padding:12px 14px}
.seo-table thead th{font-weight:500;font-size:10px;letter-spacing:1.2px;text-transform:uppercase}
.seo-table td.num{white-space:nowrap;font-weight:500;color:var(--ink)}
.seo-band .seo-table tbody{background:#fffafd}

@media(max-width:1100px){
  .seo-cards[data-cols="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}
  .seo-blocks{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:850px){
  .seo-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  .seo-cards,.seo-cards[data-cols="1"],.seo-cards[data-cols="2"],.seo-cards[data-cols="4"]{grid-template-columns:minmax(0,1fr);gap:14px}
  .seo-card{padding:22px}
  .seo-card h3{font-size:24px}
  .seo-card:hover{transform:none}
  .seo-section .section-heading h2{font-size:31px;letter-spacing:-1px}
  .seo-body>h3,.seo-block h3{font-size:26px}
  .seo-table table{min-width:520px}
  .be-internal h1 .h1-kicker{font-size:8px;letter-spacing:1.5px;margin-bottom:20px}
}
@media(prefers-reduced-motion:reduce){.seo-card{transition:none}.seo-card:hover{transform:none}}
