/* TENDU — "Barre Light": balletcore Pilates studio. Ballet pink, bordeaux, sage; italic serif; arched frames.
   Signature: satin-ribbon WebGL shader, giant arch hero frame, ribbon underline, graceful slow motion. */
:root { --shader-a: #F7E9E6; --shader-b: #EBC3BD; --shader-c: #FFF8F5; }
body { font-weight: 300; }
strong, .btn, .card__title, .tier__name { font-weight: 500; }
.announce { background: var(--accent); letter-spacing: 0.16em; text-transform: uppercase; font-size: 10.5px; }
.header__logo span { font-size: 2.2rem; letter-spacing: 0; }
.header__nav a { font-size: 13px; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 400; }
.btn { font-weight: 500; letter-spacing: 0.06em; text-transform: uppercase; font-size: 13px; }

.hero--arch { --hero-bg: var(--bg); min-height: min(94svh, 1000px); align-items: center; }
.hero--arch .hero__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr); }
.hero--arch .hero__title { font-size: clamp(3.6rem, 1.6rem + 8vw, 10rem); line-height: 0.86; letter-spacing: -0.03em; }
.hero--arch .hero__title em { color: var(--accent); }
.hero--arch .hero__title .split-line:last-child { padding-left: 0.9em; }
.hero--arch .hero__eyebrow { color: var(--accent); opacity: 1; letter-spacing: 0.24em; font-size: 11px; }
.hero--arch .hero__text { color: var(--muted); max-width: 42ch; }
.hero--arch .hero-figure { aspect-ratio: 3 / 4.3; max-width: 470px; margin-inline: auto; border-radius: 999px 999px 18px 18px; outline: 1px solid color-mix(in srgb, var(--accent) 35%, transparent); outline-offset: 14px; }
.hero--arch .hero-figure > .art, .hero--arch .hero-figure > img { border-radius: 999px 999px 18px 18px; }
.hero--arch .hero-chip { background: var(--surface); color: var(--ink); font-weight: 400; letter-spacing: 0.04em; }
.hero--arch .hero-chip strong { font-style: italic; color: var(--accent); }

.eyebrow { color: var(--accent); letter-spacing: 0.22em; font-weight: 500; }
.h2 em, .display em { color: var(--accent); }
.h2 em { background: linear-gradient(transparent 88%, color-mix(in srgb, var(--accent-soft) 70%, transparent) 88%); }
.ticker { background: var(--accent); border: 0; color: var(--accent-ink); }
.ticker__item { font-family: var(--font-display); font-style: italic; font-size: var(--step-2); text-transform: none; letter-spacing: 0; font-weight: 400; }
.ticker__item::after { content: '•'; opacity: 0.6; }
.ctile, .ctile img, .ctile .art { border-radius: 999px 999px 20px 20px; }
.ctile__label { background: linear-gradient(180deg, transparent, rgba(44, 26, 28, 0.55)); }
.ctile__label strong { font-style: italic; }
.card__media { border-radius: 999px 999px 20px 20px; }
.card__badge { top: auto; bottom: 12px; background: var(--accent); color: var(--accent-ink); font-weight: 500; }
.card__title { font-family: var(--font-display); font-size: var(--step-1); font-weight: 400; }
.card__price { color: var(--accent); }
.story__frame { border-radius: 999px 999px 24px 24px; }
.story__num { color: var(--accent); }
.tile { background: var(--surface); border-color: color-mix(in srgb, var(--accent) 16%, transparent); }
.tile--dark { background: var(--dark); }
.tile--accent { background: var(--accent); }
.tile__title { font-family: var(--font-display); font-weight: 400; font-size: var(--step-2); font-style: italic; }
.section--alt { background: var(--surface-2); }
.section--dark { background: var(--dark); }
.section--accent .seal__center { color: var(--accent-ink); }
.seal__center { font-style: italic; }
.faq summary { font-family: var(--font-display); font-weight: 400; font-size: var(--step-2); font-style: italic; }
.footer { background: var(--dark); }
.footer__word { font-style: italic; color: var(--accent-soft); }
.pdp__title { font-style: italic; }
.gallery__slide { border-radius: 400px 400px 24px 24px; }
.pill input:checked + span { background: var(--accent); border-color: var(--accent); color: var(--accent-ink); }
