/* Lumi Nail Studio — site-only touches for the dark cinematic look. */
body { letter-spacing: .01em; }
.eyebrow { color: var(--c-primary); letter-spacing: .3em; font-weight: 600; }
h1, h2 { font-style: normal; }
h2 em, h1 em { font-style: italic; color: var(--c-primary); }
.btn { text-transform: uppercase; letter-spacing: .12em; font-size: .85rem; font-weight: 600; }
.btn--ghost { color: var(--c-text); }
.site-header::before { background: color-mix(in srgb, var(--c-bg) 72%, transparent); }
.walkin__content h1 { font-size: clamp(3rem, 8vw + 1rem, 7.5rem); max-width: 10ch; }
.kinetic { border-block: 1px solid var(--c-border); padding-block: var(--space-4); }
.kinetic + .kinetic { border-top: 0; }
.kinetic__line { font-family: var(--font-body); font-weight: 800; letter-spacing: -.05em; }
.kinetic__line--outline { color: transparent; -webkit-text-stroke: 1.5px var(--c-primary); }
.chapter { --fx-colour: 244,167,192; }
.chapter__line { font-family: var(--font-display); font-weight: 400; }
.chapter__line:nth-child(2) { font-style: italic; color: var(--c-primary); }
.chapter__note { margin-top: var(--space-4); color: var(--c-muted); max-width: 46ch; }
.svc-card { background: transparent; border: 0; padding: 0; }
.svc-card .card__media { margin: 0 0 var(--space-3); border-radius: var(--radius); aspect-ratio: 4 / 5; }
.svc-card h3 { font-family: var(--font-display); font-weight: 400; font-size: 1.7rem; }
.svc-card .card__price { color: var(--c-primary); letter-spacing: .08em; text-transform: uppercase; font-size: .85rem; }
.strip { display: grid; gap: var(--space-2); grid-template-columns: repeat(4, 1fr); }
.strip a { display: block; overflow: hidden; border-radius: var(--radius); }
.strip img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; transition: transform .9s var(--motion-ease), opacity .4s; opacity: .9; }
.strip a:hover img { transform: scale(1.06); opacity: 1; }
.cta-band { background: linear-gradient(120deg, var(--c-primary), var(--c-accent)); color: var(--c-primary-ink); }
.cta-band .btn--light { --btn-bg: var(--c-bg); --btn-ink: var(--c-text); }
.menu { display: grid; gap: var(--space-5) var(--space-6); grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); }
.menu h2 { font-size: 1.9rem; border-bottom: 1px solid var(--c-border); padding-bottom: .6rem; }
.menu dl { margin: 0; }
.menu dl div { display: grid; grid-template-columns: 1fr auto; gap: .2rem 1rem; padding: .9rem 0; border-bottom: 1px dashed var(--c-border); }
.menu dt { font-weight: 600; }
.menu dd { margin: 0; color: var(--c-primary); font-variant-numeric: tabular-nums; }
.menu dd.menu__desc { grid-column: 1 / -1; color: var(--c-muted); font-size: .95rem; }
.svc-hero { display: grid; gap: var(--space-5); grid-template-columns: 1fr 1fr; align-items: end; }
.svc-hero img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; border-radius: var(--radius); }
.gallery figure { background: var(--c-surface); }
.gallery img { aspect-ratio: 4 / 5; }
.map--placeholder { background: var(--c-surface); }
@media (max-width: 860px) {
  .strip { grid-template-columns: repeat(2, 1fr); }
  .svc-hero { grid-template-columns: 1fr; }
}
.cta-band h2 em { color: inherit; }
.walkin__scrim { background: linear-gradient(to top, rgba(11,10,13,.9) 0%, rgba(11,10,13,.55) 45%, rgba(11,10,13,.25) 75%, rgba(11,10,13,.5) 100%); }
.walkin .eyebrow { color: #fff; }
