
.detail-page header{max-width:1240px}.detail-page nav{gap:24px}.breadcrumbs{max-width:1240px;margin:24px auto;padding:0 5%;font-size:13px;color:var(--muted)}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.detail-hero{max-width:1240px;display:grid;grid-template-columns:1fr 1.1fr;gap:64px;margin:auto;padding:20px 5% 65px;align-items:center}.hero-copy h1{font:600 19px/1.45 Arial,sans-serif;letter-spacing:.02em;margin:0 0 22px;color:var(--muted)}.hero-line{font:400 clamp(28px,3vw,40px)/1.14 Georgia,serif;letter-spacing:-.025em;margin:0 0 24px}.hero-copy>p:not(.eyebrow):not(.hero-line):not(.fine):not(.detail-price){max-width:460px;color:var(--muted)}.detail-page .solid{border-radius:4px;line-height:1.45;text-align:center;max-width:100%;min-height:48px}.hero-image{margin:0;min-width:0}.hero-image img{display:block;width:100%;height:auto;border-radius:140px 140px 4px 4px}.hero-image figcaption{font-size:12px;color:var(--muted);margin-top:10px;text-align:center}.detail-section{max-width:1120px;margin:auto;padding:64px 5%;border-top:1px solid var(--line);scroll-margin-top:24px}.detail-page h2{font-size:clamp(29px,3vw,40px);line-height:1.2;margin:0 0 22px}.section-lead{max-width:650px;color:var(--muted)}.detail-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:36px}.detail-steps article{border-top:1px solid var(--line);padding-top:20px}.detail-steps span{font-size:11px;letter-spacing:.12em;color:var(--rose)}.detail-steps h3{font-size:25px;line-height:1.25;margin:12px 0}.detail-steps p{color:var(--muted);font-size:15px}.process-section{display:grid;grid-template-columns:minmax(0,350px) minmax(0,1fr);gap:65px;align-items:center;background:#eee1d9;max-width:1120px;margin:16px auto 64px;padding:48px 6%}.process-video video{width:100%;height:auto;display:block;max-height:580px;background:#214340;border-radius:5px}.process-copy p:not(.eyebrow){color:var(--muted)}.prompts{display:flex;gap:24px;margin:30px 0}.prompts p{flex:1;border-left:2px solid var(--rose);padding:2px 0 2px 18px;font:400 23px/1.4 Georgia,serif}.faq{max-width:900px}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-weight:600;min-height:32px;padding-right:14px}.faq summary:focus-visible{outline:2px solid var(--rose);outline-offset:5px}.faq details p{color:var(--muted);margin-bottom:4px}.closing{text-align:center;background:var(--pink);padding:64px 24px}.closing>p:not(.eyebrow):not(.fine){color:var(--muted)}.detail-page footer{margin-top:0}@media(max-width:850px){.detail-hero{gap:30px}.detail-steps{gap:20px}.process-section{gap:30px;padding:35px 5%}.detail-page header{justify-content:center}.detail-page nav{border-top:0;padding-top:0}}@media(max-width:620px){.detail-page header{padding:22px 6%;gap:18px}.detail-page .brand{font-size:32px}.detail-page nav{font-size:13px;gap:8px 20px;flex-wrap:wrap}.detail-page nav a{font-size:13px;min-height:44px}.breadcrumbs{margin:20px auto 12px;font-size:12px}.detail-hero{grid-template-columns:1fr;padding:16px 6% 38px;gap:30px}.hero-line{font-size:clamp(26px,6.8vw,30px);text-wrap:balance}.hero-copy h1{font-size:18px;margin-bottom:16px}.hero-copy .solid{display:flex;width:100%;justify-content:center}.hero-image{max-width:420px;justify-self:center}.hero-image img{border-radius:100px 100px 4px 4px}.detail-section{padding:42px 6%}.detail-steps{grid-template-columns:1fr;gap:16px;margin-top:26px}.detail-steps article{padding-top:16px}.detail-steps p{margin-bottom:8px}.process-section{grid-template-columns:1fr;margin-bottom:35px;padding:35px 6%;gap:30px}.process-video{max-width:300px;justify-self:center}.process-copy .solid{display:flex}.prompts{flex-direction:column;gap:8px;margin:22px 0}.prompts p{font-size:23px;margin:8px 0}.closing{padding:44px 6%}.closing .solid{display:flex;justify-content:center}.detail-page h2{font-size:30px}.detail-page .fine{font-size:12px}.detail-page .eyebrow{line-height:1.7;letter-spacing:.12em}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.process-video{width:100%;min-width:0}.instagram-reel{display:block;width:100%;height:650px;border:1px solid var(--line);border-radius:5px;background:#fff}.reel-link{font-size:13px;text-align:center;margin:12px 0 0}.reel-link a{text-decoration:underline;text-underline-offset:4px}@media(max-width:620px){.process-video{max-width:350px}.instagram-reel{height:620px}}

/* Reading paragraphs: aligned edges with a natural final line. */
.hero-copy>p:not(.eyebrow):not(.hero-line):not(.fine):not(.detail-price),
.detail-page .section-lead,
.detail-steps article>p,
.process-copy>p:not(.eyebrow),
.faq details>p{
  text-align:justify;
  text-align-last:left;
  -webkit-hyphens:auto;
  hyphens:auto;
  overflow-wrap:break-word;
}

/* Give medium screens the same reading space as the mobile layout. */
@media(min-width:621px) and (max-width:850px){
.detail-hero{grid-template-columns:minmax(0,1fr);max-width:680px;gap:32px;padding-bottom:44px}
.hero-copy>p:not(.eyebrow):not(.hero-line):not(.fine):not(.detail-price){max-width:none}
.hero-image{width:100%;max-width:420px;justify-self:center}
.hero-image img{border-radius:100px 100px 4px 4px}
.process-section{grid-template-columns:minmax(0,1fr);gap:30px}
.process-video{max-width:350px;justify-self:center}
.detail-steps{grid-template-columns:minmax(0,1fr);gap:18px}
.detail-steps article{padding-top:18px}
}

.hero-copy .detail-price{margin:24px 0 5px;color:var(--ink);font-size:28px;font-weight:600;line-height:1.4;text-align:left}.detail-price span{display:inline-block;font-size:12px;font-weight:400;color:var(--muted);margin-left:6px}

/* Introduction, then product, then purchase information. */
.detail-hero{display:flex;flex-direction:column;align-items:stretch;max-width:800px;gap:28px}
.detail-hero .hero-copy{width:100%}
.detail-hero .hero-copy>p:not(.eyebrow):not(.hero-line):not(.fine){max-width:none}
.detail-hero .hero-image{width:100%;max-width:480px;align-self:center}
.hero-purchase{width:100%;max-width:480px;align-self:center}
.hero-purchase .detail-price{margin:0 0 12px;font-size:28px;font-weight:600;line-height:1.4;text-align:left}
.hero-purchase .solid{display:flex;justify-content:center;width:100%;margin-top:0}
@media(max-width:620px){.detail-hero .hero-image,.hero-purchase{max-width:420px}.detail-hero{gap:24px}}

.gift-details{margin:20px 0 24px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;line-height:1.6}
.gift-details>div{display:grid;grid-template-columns:108px minmax(0,1fr);gap:12px;padding:5px 0}
.gift-details dt{font-weight:600;color:var(--ink)}
.gift-details dd{margin:0;color:var(--muted);overflow-wrap:break-word}
@media(max-width:380px){.gift-details>div{grid-template-columns:minmax(0,1fr);gap:2px;padding:7px 0}}

/* Compact the mobile header while preserving text sizes and touch targets. */
@media(max-width:620px){
  .detail-page header{padding:12px 6%;gap:6px}
  .detail-page header nav{margin:0;padding-top:0;padding-bottom:0}
  .detail-page header nav a{min-height:44px}
  .detail-page .breadcrumbs{margin:12px auto 8px}
  .detail-page .detail-hero{padding-top:8px}
}

/* Keep the mobile footer concise and its links easy to tap. */
@media(max-width:620px){
  .detail-page footer{padding:28px 6% 18px;gap:14px;grid-template-columns:minmax(0,1fr)}
  .detail-page footer>div:first-child>p{margin:8px 0 0}
  .detail-page footer h3{margin:0 0 4px}
  .detail-page footer>div:nth-child(2)>a{display:flex;align-items:center;min-height:44px;margin:0;padding:4px 0;width:fit-content;max-width:100%}
  .detail-page footer .footnote{margin:0;padding-top:14px}
}
