/*!
 * Blend – design proposal B "Ogledalo" (Mirror)
 * Loads after main.css and only restyles. Idea: the salon's curved mirrors and magenta wall.
 * Blush paper, deep plum ink, serif display (Lora) + Inter text, arched image frames,
 * centred editorial compositions, framed slideshow with a vertical shutter.
 */
.theme-b {
  --c-paper: #fdf6f9;
  --c-tile: #f7e7ef;
  --c-petal: #f3d6e5;
  --c-mirror: #ead2de;
  --c-ink: #3a1230;
  --c-graphite: #6a4a5e;
  --c-magenta: #ec008c;
  --c-magenta-ink: #ad0068;
  --c-wall: #3a1230;
  --c-magenta-light: #ff7cc6;
  --f-display: "Lora", Georgia, serif;
  --f-text: "Inter", "Segoe UI", system-ui, sans-serif;
  --radius-img: 28px;
  --arch: 28px 28px 28px 28px;
  --focus: 0 0 0 3px var(--c-paper), 0 0 0 6px var(--c-magenta-ink);
}
.theme-b body, body.theme-b { background: var(--c-paper); font-size: calc(var(--t-base) * .94); line-height: 1.72; }
body.theme-b ::selection { background: var(--c-ink); color: #fff; }
body.theme-b h1, body.theme-b h2, body.theme-b h3, body.theme-b h4 { font-weight: 400; letter-spacing: -.015em; }

/* sentence case everywhere (A uses lowercase display type) */
.theme-b .page-title, .theme-b .h-section, .theme-b .svc-item__name, .theme-b .hero__motto, .theme-b .brand-intro__motto,
.theme-b .cine__title, .theme-b .wall__title, .theme-b .footer-claim, .theme-b .svc-detail h2, .theme-b .menu-panel a.menu-link { text-transform: none; }
.theme-b .page-title { font-weight: 400; letter-spacing: -.03em; line-height: 1; }
.theme-b .h-section { letter-spacing: -.025em; }
.theme-b .kicker { font: 500 var(--t-xs)/1.4 var(--f-text); letter-spacing: .02em; color: var(--c-magenta-ink); }

/* header: nav left, logo centred, tools right */
.theme-b .site-header .wrap { display: grid; grid-template-columns: 1fr auto 1fr; gap: 1rem; }
.theme-b .brand { grid-column: 2; grid-row: 1; margin: 0; }
.theme-b .brand__sub { display: none; }
.theme-b .brand svg { width: 124px; }
.theme-b .nav-main { grid-column: 1; grid-row: 1; justify-self: start; }
.theme-b .nav-main a { font: 500 var(--t-xs)/1 var(--f-text); letter-spacing: .02em; }
.theme-b .nav-main a::after { height: 1px; bottom: 10px; }
.theme-b .header-tools { grid-column: 3; grid-row: 1; justify-self: end; }
.theme-b .site-header.is-scrolled { background: rgba(253,246,249,.88); }
@media (max-width: 991.98px) {
  .theme-b .site-header .wrap { grid-template-columns: auto 1fr; }
  .theme-b .brand { grid-column: 1; }
  .theme-b .header-tools { grid-column: 2; }
}

/* buttons: plum pills, magenta sweep */
.theme-b .btn { --bg: var(--c-ink); font: 500 var(--t-xs)/1 var(--f-text); letter-spacing: .03em; min-height: 50px; padding: .9rem 1.5rem; }
.theme-b .btn--ghost { --bg: transparent; --fg: var(--c-ink); }
.theme-b .btn--light { --bg: #fff; --fg: var(--c-ink); }
.theme-b .wall .btn--light, .theme-b .cine .btn--light { color: var(--c-ink); }
.theme-b .link-arrow { font: 500 var(--t-xs)/1 var(--f-text); letter-spacing: .03em; text-decoration: underline; text-underline-offset: .35em; }

/* arched frames – the salon's curved mirrors */
.theme-b .frame--tall, .theme-b .member .frame, .theme-b .svc-detail .frame { border-radius: var(--arch); }
.theme-b .member .frame {  }
.theme-b .reel__item .frame { border-radius: 24px; }
.theme-b .reel__item:nth-child(odd) .frame { border-radius: var(--arch); aspect-ratio: 3 / 3.4; }

/* slideshow: framed passe-partout, centred serif titles, vertical shutter */
.theme-b .cine { background: var(--c-ink); }
.theme-b .cine__slides { inset: 0; border-radius: 0px; overflow: hidden; }
.theme-b .cine__slide.is-entering { clip-path: inset(100% 0 0 0); }
.theme-b .cine__slide.is-entering.from-left { clip-path: inset(0 0 100% 0); }
.theme-b .cine__slide.is-active { transition: clip-path 1.4s cubic-bezier(.83,0,.17,1); }
.theme-b .cine__slide.is-leaving .cine__media img { transform: scale(1.12) translateY(-5%); filter: brightness(.4) saturate(.8); }
.theme-b .cine__media::before { opacity: .07; }
.theme-b .cine__bar { background: var(--c-ink); }
.theme-b .cine__media::after { background: linear-gradient(180deg, rgba(58,18,48,.55) 0%, rgba(58,18,48,0) 25%, rgba(58,18,48,0) 40%, rgba(58,18,48,.85) 100%), radial-gradient(70% 42% at 50% 68%, rgba(58,18,48,.55), rgba(58,18,48,0) 75%); }
.theme-b .cine__caption { bottom: clamp(8rem, 18vh, 12rem); }
.theme-b .cine__caption .wrap { text-align: center; }
.theme-b .cine__title { margin-inline: auto; max-width: 18ch; font: 400 clamp(2.5rem, 1.3rem + 5.4vw, 7.4rem)/1 var(--f-display); letter-spacing: -.03em; }
.theme-b .cine__sub { justify-content: center; }
.theme-b .cine__sub p { font: 400 var(--t-base)/1.5 var(--f-text); }
.theme-b .cine__ui { padding-bottom: clamp(1.6rem, 3.4vh, 2.6rem); }
.theme-b .cine__dot .lbl { font: 500 var(--t-xs)/1.2 var(--f-text); letter-spacing: .03em; }
.theme-b .cine__dot .fill { background: var(--c-magenta-light); }
.theme-b .cine__count { font-family: var(--f-display); font-style: italic; }
.theme-b .cine__scroll { display: none; }

/* brand intro: centred */
.theme-b .brand-intro { text-align: center; }
.theme-b .brand-intro .hero__mark { max-width: 980px; margin-inline: auto; }
.theme-b .brand-intro__grid { grid-template-columns: 1fr; justify-items: center; }
.theme-b .brand-intro__motto { grid-column: 1; font: italic 400 var(--t-xl)/1.05 var(--f-display); letter-spacing: -.02em; max-width: 18ch; }
.theme-b .brand-intro__body { grid-column: 1; max-width: 52ch; }
.theme-b .brand-intro .btn-row, .theme-b .brand-intro .hero__facts { justify-content: center; }

/* statement + services */
.theme-b .statement { font: 400 clamp(1.5rem, 1.05rem + 2vw, 3rem)/1.3 var(--f-display); letter-spacing: -.015em; }
.theme-b .statement strong { font-weight: 400; font-style: italic; }
.js-anim .theme-b .statement .w, .theme-b.js-anim .statement .w { color: #dcc0cf; }
html.js-anim body.theme-b .statement .w { color: #dcc0cf; }
.theme-b .svc-item__name { font: 400 clamp(1.6rem, 1.1rem + 1.8vw, 3rem)/1.1 var(--f-display); letter-spacing: -.02em; }
.theme-b a.svc-item__row:hover .svc-item__name { font-style: italic; }
.theme-b .svc-item__icon { border-color: var(--c-ink); }
.theme-b .svc-preview { border-radius: 999px 999px 24px 24px; }

/* team, steps, brands */
.theme-b .member { text-align: center; }
.theme-b .member__name { font: 400 var(--t-lg)/1.1 var(--f-display); }
.theme-b .member__role { font: 500 var(--t-xs)/1.3 var(--f-text); letter-spacing: .03em; }
.theme-b .team-grid--big .member__name { font-size: var(--t-xl); }
.theme-b .team-grid--big .member__bio { margin-inline: auto; }
.theme-b .step::before { font-family: var(--f-display); font-style: italic; background: var(--c-paper); border-color: var(--c-ink); color: var(--c-ink); }
.theme-b .section--tile .step::before { background: var(--c-tile); }
.theme-b .steps__line span { background: var(--c-ink); }
.theme-b .brand-card { border-radius: var(--arch); padding-top: clamp(3rem, 6vw, 6rem); }

/* plum "wall" instead of magenta */
.theme-b .wall { background: var(--c-ink); }
.theme-b .wall__title { font-weight: 400; }
.theme-b .wall__big { font-family: var(--f-display); }
.theme-b .wall__swoosh { opacity: .5; }
.theme-b .wall__swoosh path { fill: var(--c-magenta); }
.theme-b .wall .kicker { color: var(--c-magenta-light); }

/* reviews */
.theme-b .review { border-radius: 26px; position: relative; padding-top: 2.6rem; }
.theme-b .review::before { content: "“"; position: absolute; top: .4rem; right: 1.4rem; font: 400 5rem/1 var(--f-display); color: var(--c-petal); }
.theme-b .review blockquote { font-family: var(--f-display); font-size: var(--t-md); line-height: 1.55; }
.theme-b .reviews__num { font-family: var(--f-display); font-weight: 400; }

/* FAQ, forms, prose */
.theme-b .faq__q { font: 400 var(--t-md)/1.3 var(--f-display); }
.theme-b .faq__item[open] .plus { background: var(--c-ink); border-color: var(--c-ink); }
.theme-b .field input, .theme-b .field select, .theme-b .field textarea { font-family: var(--f-text); border-color: #c9adbc; border-radius: 16px; }
.theme-b .field label { font-family: var(--f-text); }
.theme-b .prose h2, .theme-b .prose h3 { font-family: var(--f-display); }

/* menu panel, footer, misc */
.theme-b .menu-panel { background: var(--c-ink); }
.theme-b .menu-panel a.menu-link { font: 400 clamp(2.4rem, 10vw, 4.2rem)/1.15 var(--f-display); }
.theme-b .has-menu-open .menu-toggle { color: var(--c-ink); }
.theme-b .menu-toggle { background: var(--c-ink); }
.theme-b .site-footer { background: #2b0d23; }
.theme-b .footer-claim { font: italic 400 var(--t-lg)/1.2 var(--f-display); }
.theme-b .footer-mark .logo-m { stroke: rgba(255,124,198,.28); }
.theme-b .to-top { background: var(--c-ink); }
.theme-b .lang-switch a[aria-current="true"] { background: var(--c-ink); }
.theme-b .cursor { border-color: var(--c-ink); }
.theme-b .hours, .theme-b .breadcrumb ol, .theme-b .contact-list span, .theme-b .hero__facts, .theme-b .cap, .theme-b .frame figcaption { font-family: var(--f-text); }
.theme-b .contact-list a, .theme-b .contact-list address { font-family: var(--f-display); }
.theme-b .data-label { font-family: var(--f-text); border-radius: 26px; }
.theme-b .cc-banner h2, .theme-b .cc-dialog h2 { font-family: var(--f-display); font-weight: 400; }
.theme-b .lightbox { background: rgba(43,13,35,.97); }
.theme-b .lb-btn:hover { background: var(--c-magenta); }
