.content-page { min-height: 100vh; background:
  radial-gradient(circle at 88% 10%, rgba(248,184,209,.42), transparent 25rem),
  radial-gradient(circle at 8% 48%, rgba(247,201,173,.32), transparent 28rem), var(--paper-soft); }
.content-page .site-header { position: sticky; top: 0; }
.content-page .site-header nav { font-size: 14px; }
.content-page .site-header nav a[aria-current="page"] { color: var(--wine); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 7px; }
.content-main { max-width: 1120px; margin: 0 auto; padding: 72px 34px 96px; }
.content-hero { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr); gap: clamp(48px, 8vw, 110px); align-items: center; }
.content-eyebrow { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 16px; color: var(--wine); font-size: 12px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.content-eyebrow::before { content: ""; width: 28px; height: 2px; background: currentColor; }
.content-hero h1 { max-width: 10ch; margin: 0; font: 400 clamp(54px, 7vw, 88px)/.95 var(--display); letter-spacing: -.035em; text-wrap: balance; }
.content-hero h1 em { color: var(--wine); font-style: normal; }
.content-lead { max-width: 54ch; margin: 26px 0 0; color: var(--muted); font-size: clamp(18px, 2vw, 21px); line-height: 1.65; }
.content-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.content-actions .secondary-action { min-height: 52px; }
.content-photo { margin: 0; padding: 12px 12px 32px; background: var(--white); box-shadow: var(--photo-shadow); transform: rotate(3deg); }
.content-photo img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.content-photo figcaption { margin-top: 18px; text-align: center; font: 400 25px/1 var(--display); }
.content-section { margin-top: 100px; }
.content-section-heading { display: grid; grid-template-columns: .65fr 1.35fr; gap: 36px; align-items: end; margin-bottom: 34px; }
.content-section h2 { margin: 0; font: 400 clamp(40px, 5vw, 62px)/1 var(--display); letter-spacing: -.025em; }
.content-section-heading p { max-width: 58ch; margin: 0; color: var(--muted); line-height: 1.7; }
.process-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; counter-reset: process; }
.process-card { min-height: 230px; padding: 25px; border: 1px solid rgba(125,32,71,.13); border-radius: 18px; position: relative; overflow: hidden; background: rgba(255,255,255,.72); counter-increment: process; }
.process-card::before { content: counter(process, decimal-leading-zero); display: block; margin-bottom: 34px; color: var(--wine); font: 400 24px/1 var(--display); }
.process-card::after { content: ""; position: absolute; right: -24px; top: -32px; width: 100px; height: 100px; border-radius: 50%; background: var(--pink-soft); opacity: .55; }
.process-card h3 { margin: 0 0 9px; font: 400 25px/1.1 var(--display); }
.process-card p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.6; }
.boundary-card { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; padding: clamp(26px, 5vw, 54px); border-radius: 26px; color: var(--white); background: var(--wine-deep); }
.boundary-card h2 { color: var(--white); }
.boundary-card p { margin: 0; color: rgba(255,255,255,.78); line-height: 1.7; }
.boundary-list { display: grid; gap: 12px; }
.boundary-list div { padding: 17px 18px; border: 1px solid rgba(255,255,255,.17); border-radius: 14px; background: rgba(255,255,255,.06); }
.boundary-list strong { display: block; margin-bottom: 4px; }
.boundary-list span { color: rgba(255,255,255,.7); font-size: 13px; }
.faq-layout { display: grid; grid-template-columns: minmax(220px,.65fr) minmax(0,1.35fr); gap: clamp(38px,7vw,90px); align-items: start; }
.faq-intro { position: sticky; top: 130px; }
.faq-intro h1 { margin: 0; font: 400 clamp(54px,7vw,84px)/.95 var(--display); letter-spacing: -.035em; }
.faq-intro p { color: var(--muted); line-height: 1.65; }
.faq-list { border-top: 1px solid rgba(125,32,71,.22); }
.faq-list details { border-bottom: 1px solid rgba(125,32,71,.22); }
.faq-list summary { display: flex; justify-content: space-between; gap: 22px; padding: 25px 0; list-style: none; cursor: pointer; font-size: 19px; font-weight: 800; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; flex: 0 0 auto; color: var(--wine); font: 400 27px/1 var(--display); }
.faq-list details[open] summary::after { content: "−"; }
.faq-list details p { max-width: 68ch; margin: -4px 42px 25px 0; color: var(--muted); line-height: 1.72; }
.content-cta { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 90px; padding: 34px; border-radius: 22px; background: var(--paper-warm); }
.content-cta h2 { font-size: clamp(34px,4vw,48px); }
.content-cta p { margin: 8px 0 0; color: var(--muted); }
.content-footer { display: flex; justify-content: space-between; gap: 24px; max-width: 1120px; margin: 0 auto; padding: 28px 34px 38px; border-top: 1px solid rgba(125,32,71,.12); color: var(--muted); font-size: 12px; }
.content-footer nav { display: flex; gap: 18px; font-weight: 800; }
.content-footer a:hover { color: var(--wine); }
@media (max-width: 820px) {
  .content-page .site-header { height: auto; min-height: 72px; padding-block: 13px; gap: 14px; }
  .content-page .site-header nav { gap: 15px; }
  .content-page .site-header nav > a:not(.header-action) { display: inline-flex; }
  .content-page .merchant-mark { display: none; }
  .content-main { padding: 46px 20px 72px; }
  .content-hero, .faq-layout { grid-template-columns: 1fr; }
  .content-photo { max-width: 560px; margin: 16px auto 0; }
  .content-section { margin-top: 72px; }
  .content-section-heading, .boundary-card { grid-template-columns: 1fr; }
  .process-grid { grid-template-columns: 1fr 1fr; }
  .faq-intro { position: static; }
}
@media (max-width: 540px) {
  .content-page .site-header { align-items: flex-start; }
  .content-page .site-header nav { display: grid; gap: 3px; text-align: right; font-size: 12px; }
  .content-page .site-header nav > a:not(.header-action) { justify-content: flex-end; }
  .process-grid { grid-template-columns: 1fr; }
  .process-card { min-height: 0; }
  .content-cta { align-items: flex-start; flex-direction: column; }
  .content-footer { flex-direction: column; }
}

.content-footer { flex-wrap: wrap; align-items: center; }
.content-footer nav { flex-wrap: wrap; row-gap: 8px; }
.content-footer .footer-contact { min-height: 24px; display: inline-flex; align-items: center; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.pricing-main { max-width: 1040px; }
.pricing-heading { max-width: 72ch; margin-bottom: 36px; }
.pricing-heading h1 { margin: 0 0 18px; font: 400 48px/1.1 var(--display); letter-spacing: -.025em; text-wrap: balance; }
.pricing-heading p { color: var(--muted); line-height: 1.7; }
.price-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 18px 40px; padding: 30px 0; border-top: 1px solid rgba(125,32,71,.18); }
.price-row h2 { margin: 0 0 10px; font: 400 28px/1.2 var(--display); }
.price-row p { margin: 0; max-width: 62ch; color: var(--muted); line-height: 1.7; }
.price-amount { text-align: right; }
.price-amount strong { display: block; color: var(--wine); font: 400 34px/1.2 var(--display); white-space: nowrap; }
.price-amount span { display: block; margin-top: 8px; color: var(--muted); font-size: 13px; }
.pricing-detail { max-width: 74ch; margin-top: 42px; }
.pricing-detail h2 { margin: 0 0 14px; font: 400 28px/1.2 var(--display); }
.pricing-detail p, .pricing-detail li { line-height: 1.75; }
.pricing-detail a { color: var(--wine); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 540px) {
  .pricing-heading h1 { font-size: 36px; }
  .price-row { grid-template-columns: minmax(0,1fr); gap: 14px; padding: 24px 0; }
  .price-amount { text-align: left; }
  .price-amount strong { font-size: 30px; }
}
