/* Shop the Edit · typography (2026-09-28), after the "Darline font duo" pin:
   a flowing SCRIPT laid over tall, high-contrast SERIF CAPS, tiny wide-tracked labels, an asterisk divider,
   a serif body line, and an engraved rose. Mapped to Kassy's own brand fonts:
   - Nightshade          -> script flourish ("Darline", "Interior Design")
   - Oranienbaum         -> tall high-contrast serif caps ("FONT DUO", "Florentine") + product names
   - Montserrat 400      -> tiny tracked labels ("INTRODUCING", "SINCE 1956")
   - Cormorant Garamond  -> body lines and product notes                                                */
:root { --f-display: 'Oranienbaum', 'Cormorant Garamond', serif; }
body[data-theme] { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 18px; }

/* tiny tracked labels */
body[data-theme] .label, body[data-theme] .kicker, body[data-theme] .fine-caps, body[data-theme] .browse a, body[data-theme] .notice {
  font-family: var(--f-label); font-weight: 400; letter-spacing: .32em; text-transform: uppercase; }
body[data-theme] .kicker { font-size: 11px; color: var(--muted); margin: 0 0 6px; text-align: center; }
body[data-theme] .label { font-size: 10.5px; }
body[data-theme] .card .label { font-size: 9.5px; }
body[data-theme] .browse-title { font-family: var(--f-display); letter-spacing: .12em; font-size: 19px; }
body[data-theme] .browse .home { font-family: var(--f-script); font-size: 26px; letter-spacing: 0; text-transform: none; font-style: normal; }

/* the duo heading: script flourish over serif caps, centered, with an asterisk under it */
body[data-theme] .edit-head, body[data-theme] .soon .wrap > .hx, body[data-theme] .promo-txt .hx { text-align: center; }
body[data-theme] .hx { display: flex; flex-direction: column; align-items: center; line-height: 1; }
body[data-theme] .hx .s { font-family: var(--f-script); font-weight: 400; font-style: normal; font-size: 1.12em; color: var(--accent); line-height: .9; margin-bottom: -.28em; position: relative; z-index: 1; letter-spacing: 0; }
body[data-theme] .hx .n { font-family: var(--f-display); font-weight: 400; text-transform: uppercase; letter-spacing: .04em; font-size: .92em; line-height: 1; }
body[data-theme] .hx-sec { font-size: clamp(48px, 6.4vw, 86px); }
body[data-theme] .edit-head .hx::after, body[data-theme] .promo-txt .hx::after { content: '*'; display: block; font: 400 26px/1 var(--f-display); color: var(--accent); margin-top: 16px; }
body[data-theme] .sec-sub { text-align: center; font: italic 400 19px/1.5 'Cormorant Garamond', serif; color: var(--muted); margin-top: 12px; }
body[data-theme] .promo .hx { font-size: clamp(46px, 5.6vw, 76px); }
body[data-theme] .promo .hx .n { display: block; font-weight: 400; }
body[data-theme] .soon .hx { font-size: clamp(46px, 5.6vw, 76px); }

/* hero: tracked label line, script word, serif caps line */
body[data-theme] .hero-h { font: 400 clamp(40px, 5.4vw, 74px)/1 var(--f-display); letter-spacing: 0; }
body[data-theme] .hero-h .h-lead { display: block; font: 400 12px/1 var(--f-label); letter-spacing: .38em; text-transform: uppercase; color: var(--muted); margin-bottom: 10px; }
body[data-theme] .hero-h em { display: inline-block; font: 400 1.5em/1 var(--f-script); color: var(--accent); margin-bottom: -.3em; position: relative; z-index: 1; white-space: nowrap; }
body[data-theme] .hero-h br { display: none; }
body[data-theme] .hero-h .h-serif { display: block; text-transform: uppercase; letter-spacing: .03em; }
body[data-theme] .hero-intro { font-size: clamp(21px, 2.1vw, 26px); }
body[data-theme] .hero-sub { font-style: italic; font-size: 16px; }

/* intro */
body[data-theme] .intro-name { font-family: var(--f-display); letter-spacing: .03em; }
body[data-theme] .intro .stack { font-family: var(--f-display); font-size: 25px; letter-spacing: .01em; }
body[data-theme] .intro .stack span:nth-child(odd) { font-family: var(--f-script); font-size: 1.35em; line-height: 1.1; }
body[data-theme] .intro p { font-size: 18px; line-height: 1.7; }

/* products: serif caps-lowercase names, italic serif notes */
body[data-theme] .card h3, body[data-theme] .featured-txt h3 { font-family: var(--f-display); font-weight: 400; font-size: clamp(19px, 1.6vw, 22px); letter-spacing: .01em; line-height: 1.2; }
body[data-theme] .card p, body[data-theme] .featured-txt p { font: italic 400 16px/1.45 'Cormorant Garamond', serif; }
body[data-theme] .featured-txt h3 { font-size: 26px; }

/* banners */
body[data-theme] .obsess h2 { font-family: var(--f-display); letter-spacing: .02em; }
body[data-theme] .obsess h2.ob-duo { display: flex; flex-direction: column; align-items: center; line-height: .95; }
body[data-theme] .ob-script { font: 400 .8em/1 var(--f-script); text-transform: none; color: #efd9c6; margin-bottom: -.22em; position: relative; z-index: 1; }
body[data-theme] .ob-serif { display: block; }
body[data-theme] .obsess p { font-family: 'Cormorant Garamond', serif; font-size: 21px; line-height: 1.55; }
body[data-theme] .obsess .cta { margin-top: 26px; }

/* promo + notes + soon + ig bodies */
body[data-theme] .promo p, body[data-theme] .soon p, body[data-theme] .note-card ul { font-size: 18px; }
body[data-theme] .note-card p { font-size: 23px; }
body[data-theme] .ig p { font-family: 'Cormorant Garamond', serif; font-size: 20px; font-weight: 500; }
body[data-theme] .disclosure { font-size: 14px; }
body[data-theme] .pill { font-weight: 500; letter-spacing: .26em; }

@media (max-width: 520px) {
  body[data-theme] .hx-sec { font-size: 50px; }
  body[data-theme] .hero-h { font-size: 38px; }
  body[data-theme] .hero-h .h-lead { font-size: 10px; letter-spacing: .28em; }
  body[data-theme] .card h3 { font-size: 17px; }
  body[data-theme] .card p { font-size: 15px; }
}
