/* ==========================================================================
   PASTEL (f23) — güzellik / kuaför / organizasyon / çiçekçi ailesi
   Renk/font/köşe değerleri panel değişkenlerinden gelir (var(--primary) …); sabit renk yerine
   değişkenlerden türetilen pastel tonlar kullanılır. İmza: kemer (arch) kırpım, serif italik vurgu, hap düğme.
   ========================================================================== */
:root {
  --f23-g: clamp(18px, 3vw, 40px);
  --f23-max: 1320px;
  --f23-sy: clamp(64px, 8vw, 124px);
  --f23-ivory: var(--bg);
  --f23-blush: var(--surface);
  --f23-deep: var(--secondary);
  --f23-line: color-mix(in srgb, var(--primary) 16%, var(--border));
  --f23-soft: color-mix(in srgb, var(--accent) 34%, var(--bg));
  --f23-tint: color-mix(in srgb, var(--primary) 10%, var(--bg));
  --f23-on-deep: color-mix(in srgb, var(--bg) 92%, var(--primary));
  --f23-arch: 999px 999px var(--radius) var(--radius);
  --f23-ease: cubic-bezier(.22, .68, .2, 1);
  --f23-shadow: 0 24px 50px -32px color-mix(in srgb, var(--secondary) 55%, transparent);
  --container: 1320px;
  --dark: var(--secondary);
}
.f23-masc { --f23-arch: 140px 140px 6px 6px; --f23-shadow: 0 22px 44px -30px rgba(0, 0, 0, .5); }

body.fam-pastel { font-family: var(--font-body); color: var(--text); background: var(--bg); -webkit-font-smoothing: antialiased; font-weight: 400; }
.fam-pastel h1, .fam-pastel h2, .fam-pastel h3, .fam-pastel h4 { font-family: var(--font-head); font-weight: var(--head-weight, 500); color: var(--heading); letter-spacing: -.01em; }
.fam-pastel .blk-hl, .f23-title em, .f23-h1 em { font-style: italic; color: var(--primary); font-weight: inherit; }
.fam-pastel img { max-width: 100%; }
.sr-only { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.f23-wrap { width: 100%; max-width: var(--f23-max); margin-inline: auto; padding-inline: var(--f23-g); box-sizing: border-box; }
.fam-pastel .container { max-width: var(--f23-max); padding-inline: var(--f23-g); }
.fam-pastel :focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }
.fam-pastel ::selection { background: var(--f23-soft); color: var(--heading); }

/* Düğmeler — hap */
.fam-pastel .btn { border-radius: var(--radius-btn, 40px); font-weight: 500; letter-spacing: .02em; gap: 10px; min-height: 48px; padding: 12px 26px; font-family: var(--font-body); font-size: .95rem; border-width: 1px; }
.fam-pastel .btn-sm { min-height: 40px; padding: 8px 18px; font-size: .86rem; }
.fam-pastel .btn-lg { min-height: 54px; padding: 14px 30px; }
.fam-pastel .btn-primary:hover { transform: none; }
.fam-pastel .btn-outline { color: var(--heading); border-color: color-mix(in srgb, var(--heading) 35%, transparent); }
.fam-pastel .btn-outline:hover { background: var(--heading); border-color: var(--heading); color: var(--bg); }
.fam-pastel .btn-light { background: var(--f23-blush); border-color: var(--f23-line); color: var(--heading); }
.fam-pastel .btn-light:hover { background: var(--f23-soft); color: var(--heading); }
.fam-pastel .btn i { transition: transform .25s var(--f23-ease); }
.fam-pastel .btn:hover i.ri-arrow-right-line { transform: translateX(3px); }
.f23-btn-ghost { background: transparent; border: 1px solid rgba(255, 255, 255, .6); color: #fff; }
.f23-btn-ghost:hover { background: #fff; color: var(--secondary); border-color: #fff; }
.f23-link { display: inline-flex; align-items: center; gap: 8px; font-weight: 500; font-size: .93rem; color: var(--heading); padding-bottom: 3px; border-bottom: 1px solid color-mix(in srgb, var(--primary) 55%, transparent); transition: color .2s, gap .2s; }
.f23-link:hover { color: var(--primary); gap: 12px; }

/* Ortak tipografi */
.f23-eyebrow { display: inline-flex; align-items: center; gap: 12px; font-family: var(--font-body); font-size: .75rem; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; color: var(--primary); margin-bottom: 16px; }
.f23-eyebrow::before { content: ""; width: 26px; height: 1px; background: currentColor; opacity: .7; }
.f23-al-center .f23-eyebrow::after { content: ""; width: 26px; height: 1px; background: currentColor; opacity: .7; }
.f23-title { font-size: clamp(2rem, 3.6vw, 3.25rem); line-height: 1.08; margin: 0; text-wrap: balance; }
.f23-lead { color: var(--muted); font-size: 1.05rem; line-height: 1.75; margin: 14px 0 0; max-width: 62ch; }
.f23-h1 { font-size: clamp(2.6rem, 5.4vw, 4.9rem); line-height: 1.02; margin: 0; letter-spacing: -.015em; text-wrap: balance; }
.site-perine .f23-h1 { font-size: clamp(2.9rem, 6vw, 5.6rem); line-height: .98; }
.site-perine .f23-title { font-size: clamp(2.3rem, 4vw, 3.7rem); }
.f23-ticks { list-style: none; margin: 22px 0 0; padding: 0; display: grid; gap: 12px; }
.f23-ticks li { position: relative; padding-inline-start: 30px; color: var(--text); line-height: 1.55; }
.f23-ticks li::before { content: ""; position: absolute; inset-inline-start: 0; top: .32em; width: 16px; height: 16px; border-radius: 50%; border: 1px solid var(--primary); background: radial-gradient(circle, var(--primary) 0 3px, transparent 3.5px); }
.f23-stars { display: inline-flex; gap: 2px; color: var(--primary); font-size: .9rem; }
.f23-orn { display: block; width: 46px; height: 23px; margin: 0 auto 18px; border: 1px solid var(--primary); border-bottom: 0; border-radius: 46px 46px 0 0; opacity: .7; position: relative; }
.f23-orn::after { content: ""; position: absolute; left: 50%; bottom: 0; width: 6px; height: 6px; margin-left: -3px; border-radius: 50%; background: var(--primary); }
.f23-center-btn { display: flex; justify-content: center; margin-top: clamp(28px, 4vw, 44px); }

/* Kemer */
.f23-arch { margin: 0; position: relative; overflow: hidden; border-radius: var(--f23-arch); background: var(--f23-blush); }
.f23-arch img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* Bölüm kabı + tonlar */
.f23-sec { position: relative; padding-block: var(--f23-sy); }
.f23-tone-ivory { background: var(--f23-ivory); }
.f23-tone-blush { background: var(--f23-blush); }
.f23-tone-deep { background: var(--f23-deep); color: color-mix(in srgb, var(--f23-on-deep) 78%, transparent); }
.f23-tone-deep :where(h2, h3, h4, strong), .f23-tone-deep .f23-title, .fam-pastel .f23-tone-deep h3 { color: var(--f23-on-deep); }
.f23-tone-deep .f23-lead, .f23-tone-deep p { color: color-mix(in srgb, var(--f23-on-deep) 72%, transparent); }
.f23-tone-deep .f23-eyebrow, .f23-tone-deep .blk-hl, .f23-tone-deep .f23-title em { color: var(--accent); }
.f23-tone-deep .f23-link { color: var(--f23-on-deep); border-color: color-mix(in srgb, var(--accent) 60%, transparent); }
.f23-tone-deep .btn-outline { color: var(--f23-on-deep); border-color: color-mix(in srgb, var(--f23-on-deep) 40%, transparent); }
.f23-tone-deep :is(.f23-menu-name, .f23-card-title, .f23-zn-body strong, .f23-salon h3 a, .f23-member h3, .f23-post-title, .f23-acc-it summary, .f23-rv-it blockquote, .f23-step h3, .f23-feat h3, .f23-bk-steps strong, .f23-fig dt, .f23-rv-it figcaption strong) { color: var(--f23-on-deep); }
.f23-tone-deep :is(.f23-step p, .f23-feat p, .f23-card-text, .f23-card-meta, .f23-member-bio, .f23-acc-body, .f23-bk-steps p, .f23-fig dd, .f23-rv-it figcaption small, .f23-post-meta, .f23-salon-info) { color: color-mix(in srgb, var(--f23-on-deep) 66%, transparent); }
.f23-tone-ivory + .f23-tone-ivory, .f23-tone-blush + .f23-tone-blush,
.blk-raw:has(> .f23-tone-ivory) + .blk-raw > .f23-tone-ivory, .blk-raw:has(> .f23-tone-blush) + .blk-raw > .f23-tone-blush { padding-top: 0; }

/* Bölüm başlığı */
.f23-head { display: flex; gap: 20px 48px; margin-bottom: clamp(30px, 4vw, 54px); }
.f23-head-main { min-width: 0; }
.f23-al-center { flex-direction: column; align-items: center; text-align: center; }
.f23-al-center .f23-head-main { max-width: 780px; }
.f23-al-center .f23-lead { margin-inline: auto; }
.f23-al-left { justify-content: space-between; align-items: flex-end; flex-wrap: wrap; }
.f23-al-left .f23-head-main { max-width: 720px; }
.f23-head-acts { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; }
.f23-al-center .f23-head-acts { margin-top: -4px; }

/* Sekmeler + çipler */
.f23-filterbar { display: flex; justify-content: center; align-items: center; gap: 14px 24px; flex-wrap: wrap; margin: -10px 0 clamp(26px, 3vw, 40px); }
.f23-al-left + .f23-filterbar, .f23-zones .f23-filterbar { justify-content: flex-start; }
.f23-tabs { display: inline-flex; flex-wrap: wrap; gap: 6px; padding: 5px; border-radius: 999px; background: var(--f23-blush); border: 1px solid var(--f23-line); }
.f23-tone-blush .f23-tabs { background: var(--bg); }
.f23-tabs button { background: none; border: 0; border-radius: 999px; padding: 9px 18px; min-height: 40px; color: var(--muted); font: 500 .88rem var(--font-body); cursor: pointer; transition: background .2s, color .2s; }
.f23-tabs button:hover { color: var(--heading); }
.f23-tabs button.is-active { background: var(--primary); color: var(--on-primary, #fff); }
.f23-tone-deep .f23-tabs { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .14); }
.f23-tone-deep .f23-tabs button { color: color-mix(in srgb, var(--f23-on-deep) 70%, transparent); }
.f23-tone-deep .f23-tabs button.is-active { background: var(--accent); color: var(--secondary); }
.f23-chips, .f23-hero-chips { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.f23-chips-l { font-size: .74rem; letter-spacing: .16em; text-transform: uppercase; color: var(--muted); margin-inline-end: 4px; }
.f23-chips a, .f23-hero-chips a { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 7px 15px; border-radius: 999px; border: 1px solid var(--f23-line); background: var(--bg); color: var(--heading); font-size: .86rem; transition: border-color .2s, background .2s; }
.f23-chips a:hover, .f23-hero-chips a:hover { border-color: var(--primary); background: var(--f23-tint); }
.f23-dot { width: 10px; height: 10px; border-radius: 50%; }
.is-hidden { display: none !important; }

/* ---------------- Kartlar ---------------- */
.f23-card { position: relative; min-width: 0; }
.f23-card-a { display: flex; flex-direction: column; height: 100%; color: inherit; text-decoration: none; }
.f23-card-media { position: relative; display: block; overflow: hidden; background: var(--f23-blush); }
.f23-card-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .9s var(--f23-ease); }
.f23-card-a:hover .f23-card-media img { transform: scale(1.05); }
.f23-card-ph { position: absolute; inset: 0; display: grid; place-items: center; font-size: 2.4rem; color: color-mix(in srgb, var(--primary) 55%, transparent); font-family: var(--font-head); }
.f23-card-body { display: flex; flex-direction: column; gap: 6px; min-width: 0; flex: 1; }
.f23-card-tag { font-size: .7rem; letter-spacing: .18em; text-transform: uppercase; color: var(--primary); font-weight: 500; }
.f23-card-title { font-family: var(--font-head); font-size: 1.32rem; font-weight: var(--head-weight, 500); color: var(--heading); line-height: 1.2; overflow-wrap: break-word; transition: color .2s; }
.f23-masc .f23-card-title { font-size: 1.22rem; }
.f23-card-a:hover .f23-card-title { color: var(--primary); }
.f23-card-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 9px; font-size: .85rem; color: var(--muted); }
.f23-card-meta i { width: 3px; height: 3px; border-radius: 50%; background: currentColor; opacity: .6; }
.f23-card-text { font-size: .92rem; color: var(--muted); line-height: 1.6; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.f23-card-foot { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: auto; padding-top: 10px; flex-wrap: wrap; }
.f23-card-price { font-weight: 500; color: var(--heading); white-space: nowrap; }
.f23-card-price .cl-price strong { font-size: 1.02rem; color: inherit; font-weight: 600; }
.f23-card-price .cl-price small { font-size: .76rem; color: var(--muted); font-weight: 400; }
.f23-card-go { display: inline-flex; align-items: center; gap: 6px; font-size: .86rem; font-weight: 500; color: var(--primary); }
.f23-card-a:hover .f23-card-go i { transform: translateX(3px); }
.f23-card-go i { transition: transform .25s; }
.f23-chip { position: absolute; inset-inline-start: 12px; top: 12px; z-index: 1; padding: 6px 12px; border-radius: 999px; background: color-mix(in srgb, var(--bg) 92%, transparent); color: var(--heading); font-size: .76rem; font-weight: 500; max-width: calc(100% - 24px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
/* arch: kemer görsel, ortalı yazı */
.f23-card-arch .f23-card-media { aspect-ratio: 3 / 4; border-radius: var(--f23-arch); }
.f23-card-arch .f23-card-body { align-items: center; text-align: center; padding: 20px 6px 4px; }
.f23-card-arch .f23-card-meta { justify-content: center; }
.f23-card-arch .f23-card-foot { justify-content: center; gap: 6px 16px; }
/* soft: yuvarlak köşe, sola hizalı, ince çerçeve */
.f23-card-soft .f23-card-a { background: var(--bg); border: 1px solid var(--f23-line); border-radius: var(--radius); overflow: hidden; transition: box-shadow .3s, border-color .3s; }
.f23-card-soft .f23-card-a:hover { box-shadow: var(--f23-shadow); border-color: color-mix(in srgb, var(--primary) 30%, var(--border)); }
.f23-card-soft .f23-card-media { aspect-ratio: 4 / 3; }
.f23-card-soft .f23-card-body { padding: 18px 20px 20px; }
.f23-tone-blush .f23-card-soft .f23-card-a { background: var(--bg); }
.f23-card.is-hidden, .f23-wcard.is-hidden { display: none; }

/* Izgaralar */
.f23-grid { display: grid; gap: clamp(26px, 3vw, 44px) clamp(16px, 2vw, 28px); }
.f23-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.f23-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.f23-rail { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 3 * 22px) / 4); gap: 22px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding-bottom: 6px; }
.f23-rail::-webkit-scrollbar { display: none; }
.f23-rail > * { scroll-snap-align: start; }
.f23-rail-nav { display: inline-flex; gap: 8px; }
.f23-rail-nav button { width: 46px; height: 46px; border-radius: 50%; border: 1px solid var(--f23-line); background: var(--bg); color: var(--heading); display: grid; place-items: center; font-size: 1.1rem; cursor: pointer; }
.f23-rail-nav button:hover { background: var(--primary); color: var(--on-primary, #fff); border-color: var(--primary); }

/* Geniş yatay kart (mekânlar) */
.f23-wide { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(18px, 2.4vw, 30px); }
.f23-wcard > a, .f23-wcard > div { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); height: 100%; background: var(--bg); border: 1px solid var(--f23-line); border-radius: var(--radius); overflow: hidden; color: inherit; transition: box-shadow .3s; }
.f23-wcard > a:hover { box-shadow: var(--f23-shadow); }
.f23-wcard-img { position: relative; display: block; min-height: 240px; background: var(--f23-blush); overflow: hidden; }
.f23-wcard-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--f23-ease); }
.f23-wcard > a:hover .f23-wcard-img img { transform: scale(1.05); }
.f23-wcard-body { display: flex; flex-direction: column; gap: 8px; padding: clamp(18px, 2.2vw, 28px); min-width: 0; }
.f23-wcard-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.f23-wcard-meta span { padding: 4px 11px; border-radius: 999px; background: var(--f23-blush); font-size: .8rem; color: var(--text); }
.f23-wcard:hover .f23-card-title { color: var(--primary); }

/* ---------------- HEADER ---------------- */
.f23-header { background: var(--bg); border-bottom: 1px solid var(--f23-line); }
.f23-header.is-scrolled { box-shadow: 0 10px 30px -22px color-mix(in srgb, var(--secondary) 60%, transparent); }
.f23-hbar { display: flex; align-items: center; gap: 24px; min-height: 84px; }
.f23-header .f23-wrap { max-width: 1520px; }
.f23-logo { flex: none; min-width: 0; }
.f23-header .site-logo { gap: 12px; color: var(--heading); }
.f23-header .site-logo img { max-height: 54px; }
.fam-pastel .logo-mark { width: 42px; height: 50px; border-radius: 999px 999px 8px 8px; background: var(--f23-blush); color: var(--primary); border: 1px solid var(--f23-line); font-size: 20px; }
.f23-masc .logo-mark { border-radius: 8px; background: var(--primary); color: #fff; border: 0; height: 44px; width: 44px; }
.fam-pastel .logo-text strong { font-family: var(--font-head); font-weight: var(--head-weight, 500); font-size: 1.42rem; letter-spacing: 0; color: inherit; }
.fam-pastel .logo-text small { letter-spacing: .22em; font-size: .62rem; }
.f23-header .main-nav { flex: 1; justify-content: center; }
.f23-header .nav-menu { gap: 2px; }
.f23-header .nav-menu > li > a { white-space: nowrap; font-weight: 400; font-size: .95rem; padding: 10px 13px; color: var(--heading); border-radius: 999px; letter-spacing: .01em; }
.f23-header .nav-menu > li > a:hover, .f23-header .nav-menu > li.is-active > a { color: var(--primary); }
.f23-header .nav-menu > li.is-active > a { background: var(--f23-tint); }
.f23-header .nav-menu .submenu { border-radius: 16px; border: 1px solid var(--f23-line); padding: 10px; background: var(--card-bg, #fff); }
.f23-header .nav-menu .submenu a { border-radius: 10px; }
@media (min-width: 1081px) { .f23-header .nav-menu > li:nth-last-child(-n+4) > .submenu { left: auto; right: 0; } }
.f23-header .nav-menu .submenu a:hover { background: var(--f23-blush); color: var(--primary); }
.header-actions.f23-actions, .f23-hside-r { display: flex; align-items: center; gap: 10px; flex: none; }
.f23-hcta { white-space: nowrap; }
.f23-ic, .f23-header .hdr-cart, .f23-header .hdr-acc { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; min-width: 44px; justify-content: center; padding: 0 10px; border-radius: 999px; color: var(--heading); font-size: .9rem; position: relative; }
.f23-header .hdr-cart:hover, .f23-header .hdr-acc:hover { background: var(--f23-blush); color: var(--primary); }
.f23-header .nav-toggle { background: var(--f23-blush); border-radius: 999px; }
.f23-header .hdr-acc span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.f23-header .hdr-cart .cart-count { position: absolute; top: 4px; inset-inline-end: 2px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 999px; background: var(--primary); color: var(--on-primary, #fff); font-size: .68rem; display: grid; place-items: center; line-height: 1; }
.f23-nav-extra { display: none; }
.f23-lang .lang-current { background: transparent; border: 0; color: inherit; display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 6px; font-size: .84rem; }
/* classic: ince bilgi şeridi */
.f23-topline { background: var(--f23-blush); font-size: .8rem; color: var(--muted); border-bottom: 1px solid var(--f23-line); }
.f23-topline-in { display: flex; justify-content: space-between; align-items: center; gap: 18px; min-height: 38px; }
.f23-topline-l, .f23-topline-r { display: inline-flex; align-items: center; gap: 18px; min-width: 0; }
.f23-topline-l { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.f23-topline a { color: var(--text); display: inline-flex; align-items: center; gap: 5px; }
.f23-topline a:hover { color: var(--primary); }
.f23-topline i { color: var(--primary); }
/* center: logo ortada */
.f23-h-center .f23-hbar-top { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); min-height: 92px; }
.f23-h-center .f23-logo { justify-self: center; }
.f23-h-center .f23-logo .site-logo { flex-direction: column; gap: 6px; text-align: center; }
.f23-h-center .logo-text { align-items: center; }
.f23-hside { display: flex; align-items: center; gap: 14px; min-width: 0; }
.f23-hside-r { justify-content: flex-end; }
.f23-hphone { display: inline-flex; align-items: center; gap: 8px; color: var(--heading); font-size: .9rem; white-space: nowrap; }
.f23-hphone i { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--f23-blush); color: var(--primary); }
.f23-navrow { border-top: 1px solid var(--f23-line); }
.f23-h-center .main-nav { justify-content: center; }
.f23-h-center .nav-menu > li > a { min-height: 52px; letter-spacing: .06em; text-transform: uppercase; font-size: .78rem; font-weight: 500; }
/* ink: koyu, erkeksi */
.f23-h-ink { background: var(--secondary); border-bottom-color: rgba(255, 255, 255, .08); }
.f23-h-ink .site-logo, .f23-h-ink .f23-lang .lang-current, .f23-h-ink .hdr-cart, .f23-h-ink .hdr-acc { color: #fff; }
.f23-h-ink .logo-text small { color: rgba(255, 255, 255, .6); }
.f23-h-ink .nav-menu > li > a { color: rgba(255, 255, 255, .86); letter-spacing: .04em; }
.f23-h-ink .nav-menu > li > a:hover, .f23-h-ink .nav-menu > li.is-active > a { color: var(--accent); background: rgba(255, 255, 255, .06); }
.f23-h-ink .nav-toggle { background: rgba(255, 255, 255, .1); }
.f23-h-ink .nav-toggle span { background: #fff; }
.f23-h-ink .hdr-cart:hover, .f23-h-ink .hdr-acc:hover { background: rgba(255, 255, 255, .08); color: var(--accent); }

/* ---------------- MANŞET ---------------- */
.f23-hero { position: relative; overflow: hidden; }
.f23-hero-text { color: var(--muted); font-size: 1.08rem; line-height: 1.75; margin: 22px 0 0; max-width: 54ch; }
.f23-hero-btns { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.f23-hero-chips { margin-top: 26px; }
.f23-figs { display: grid; grid-template-columns: repeat(var(--n, 3), minmax(0, 1fr)); gap: 18px; margin: 34px 0 0; padding-top: 26px; border-top: 1px solid var(--f23-line); }
.f23-figs.f23-n1 { --n: 1; } .f23-figs.f23-n2 { --n: 2; } .f23-figs.f23-n4 { --n: 4; }
.f23-fig { min-width: 0; }
.f23-fig dt { font-family: var(--font-head); font-size: clamp(1.8rem, 2.6vw, 2.5rem); line-height: 1; color: var(--heading); font-weight: var(--head-weight, 500); }
.f23-fig dt em { font-style: normal; color: var(--primary); font-size: .7em; margin-inline-start: 2px; }
.f23-fig dd { margin: 8px 0 0; font-size: .86rem; color: var(--muted); line-height: 1.4; }
.f23-badge { display: inline-flex; flex-direction: column; gap: 4px; padding: 18px 22px; border-radius: 22px; background: var(--bg); box-shadow: var(--f23-shadow); border: 1px solid var(--f23-line); min-width: 160px; }
.f23-badge strong { font-family: var(--font-head); font-size: 2rem; line-height: 1; color: var(--heading); font-weight: var(--head-weight, 500); }
.f23-badge span { font-size: .82rem; color: var(--muted); line-height: 1.35; }
.f23-dots { display: flex; gap: 8px; }
.f23-dots button { width: 9px; height: 9px; padding: 0; border-radius: 50%; border: 1px solid currentColor; background: transparent; opacity: .7; cursor: pointer; position: relative; }
.f23-dots button::after { content: ""; position: absolute; inset: -14px; }
.f23-dots button.is-active { background: currentColor; opacity: 1; }

/* arch */
.f23-hero-arch { background: radial-gradient(120% 90% at 85% 10%, var(--f23-tint), transparent 60%), var(--bg); padding: clamp(36px, 5vw, 70px) 0 clamp(48px, 6vw, 84px); }
.f23-ha-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: clamp(32px, 5vw, 80px); align-items: center; }
.f23-ha-media { position: relative; padding: 0 0 8% 10%; }
.f23-ha-main { aspect-ratio: 4 / 5; max-height: 640px; width: 100%; box-shadow: var(--f23-shadow); }
.f23-ha-dot { position: absolute; inset-inline-start: 0; bottom: 0; width: 38%; aspect-ratio: 1; border-radius: 50%; overflow: hidden; margin: 0; border: 8px solid var(--bg); box-shadow: var(--f23-shadow); }
.f23-ha-dot img { width: 100%; height: 100%; object-fit: cover; }
.f23-ha-ring { position: absolute; top: -18px; inset-inline-end: -18px; width: 34%; aspect-ratio: 1; border: 1px solid var(--primary); border-radius: 50%; opacity: .35; pointer-events: none; }
.f23-ha-badge { position: absolute; inset-inline-end: -14px; bottom: 16%; }
.f23-quickbar { margin-top: clamp(30px, 4vw, 54px); display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 18px 32px; align-items: center; padding: 18px 18px 18px 28px; border-radius: 999px; background: var(--bg); border: 1px solid var(--f23-line); box-shadow: var(--f23-shadow); }
.f23-quickbar-l { display: inline-flex; align-items: center; gap: 14px; }
.f23-quickbar-l > i { width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; background: var(--f23-tint); color: var(--primary); font-size: 1.3rem; flex: none; }
.f23-quickbar-l strong { display: block; font-family: var(--font-head); font-size: 1.3rem; color: var(--heading); font-weight: var(--head-weight, 500); line-height: 1.1; }
.f23-quickbar-l small { color: var(--muted); font-size: .84rem; }
.f23-quickbar .apt-quick { border: 0; box-shadow: none; padding: 0; background: transparent; }
.f23-quickbar .apt-quick.is-inline { grid-template-columns: minmax(0, 1.3fr) minmax(0, .9fr) auto; gap: 10px; }
.f23-quickbar .apt-quick-f span { padding-inline-start: 14px; }

/* veil */
.f23-hero-veil { min-height: min(88vh, 780px); display: flex; align-items: center; background: var(--secondary); color: #fff; padding: clamp(70px, 9vw, 120px) 0; }
.f23-hv-slides { position: absolute; inset: 0; }
.f23-hv-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1.2s ease; }
.f23-hv-slide.is-active { opacity: 1; }
.f23-hv-slide img { width: 100%; height: 100%; object-fit: cover; }
.f23-hero-veil::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, color-mix(in srgb, var(--secondary) 92%, transparent) 0%, color-mix(in srgb, var(--secondary) 70%, transparent) 45%, color-mix(in srgb, var(--secondary) 20%, transparent) 100%); }
.f23-hv-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, .7fr); gap: clamp(28px, 5vw, 80px); align-items: center; }
.f23-hero-veil .f23-h1 { color: #fff; }
.f23-hero-veil .f23-h1 em, .f23-hero-veil .blk-hl, .f23-hero-veil .f23-eyebrow { color: var(--accent); }
.f23-hero-veil .f23-hero-text { color: rgba(255, 255, 255, .82); }
.f23-hero-veil .f23-figs { border-top-color: rgba(255, 255, 255, .18); }
.f23-hero-veil .f23-fig dt { color: #fff; }
.f23-hero-veil .f23-fig dt em { color: var(--accent); }
.f23-hero-veil .f23-fig dd { color: rgba(255, 255, 255, .72); }
.f23-hv-card .apt-quick { max-width: 400px; margin-inline-start: auto; border-radius: calc(var(--radius) + 6px); padding: 26px; border: 0; }
.f23-hv-card .apt-quick-title { font-family: var(--font-head); font-size: 1.6rem; font-weight: var(--head-weight, 500); }
.f23-hero-veil > .f23-dots { position: absolute; z-index: 2; bottom: 28px; left: 50%; margin-left: -30px; color: #fff; }

/* trio */
.f23-hero-trio { background: linear-gradient(180deg, var(--f23-blush), var(--bg) 78%); padding: clamp(56px, 7vw, 100px) 0 clamp(48px, 6vw, 80px); }
.f23-ht-top { text-align: center; display: flex; flex-direction: column; align-items: center; }
.f23-ht-top .f23-eyebrow::after { content: ""; width: 26px; height: 1px; background: currentColor; opacity: .7; }
.f23-ht-top .f23-h1 { max-width: 16ch; }
.f23-ht-top .f23-hero-text { margin-inline: auto; text-align: center; }
.f23-ht-top .f23-hero-btns, .f23-ht-top .f23-hero-chips { justify-content: center; }
.f23-ht-row { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr) minmax(0, 1fr); gap: clamp(14px, 2vw, 28px); align-items: end; margin-top: clamp(40px, 5vw, 66px); }
.f23-ht-img { aspect-ratio: 3 / 4; }
.f23-ht-2 { aspect-ratio: 4 / 5.2; box-shadow: var(--f23-shadow); }
.f23-ht-1, .f23-ht-3 { margin-bottom: 8%; }
.f23-ht-row.f23-n1 { grid-template-columns: minmax(0, 1fr); max-width: 520px; margin-inline: auto; }
.f23-ht-row.f23-n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.f23-ht-badge { position: absolute; inset-inline-end: 4%; top: 6%; }
.f23-ht-figs .f23-figs { max-width: 760px; margin-inline: auto; text-align: center; }

/* panel */
.f23-hero-panel { padding: clamp(20px, 3vw, 36px) 0 clamp(40px, 5vw, 70px); }
.f23-hp-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: clamp(14px, 1.6vw, 22px); min-height: min(78vh, 700px); }
.f23-hp-txt { background: var(--f23-blush); border-radius: calc(var(--radius) * 1.6); padding: clamp(32px, 5vw, 72px); display: flex; flex-direction: column; justify-content: center; position: relative; overflow: hidden; }
.f23-hp-txt::before { content: ""; position: absolute; inset-inline-end: -90px; top: -90px; width: 260px; height: 260px; border-radius: 50%; background: color-mix(in srgb, var(--accent) 38%, transparent); }
.f23-hp-txt > * { position: relative; }
.f23-hero-panel .f23-h1 { font-size: clamp(2.4rem, 4.6vw, 4.3rem); }
.f23-hp-media { position: relative; border-radius: calc(var(--radius) * 1.6); overflow: hidden; min-height: 420px; background: var(--f23-blush); }
.f23-hp-slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1.1s ease; }
.f23-hp-slide.is-active { opacity: 1; }
.f23-hp-slide img { width: 100%; height: 100%; object-fit: cover; }
.f23-hp-cap { position: absolute; inset-inline-start: 20px; bottom: 20px; padding: 8px 14px; border-radius: 999px; background: color-mix(in srgb, var(--bg) 90%, transparent); font-size: .84rem; color: var(--heading); max-width: calc(100% - 40px); }
.f23-hp-badge { position: absolute; inset-inline-end: 20px; top: 20px; z-index: 1; }
.f23-hp-media > .f23-dots { position: absolute; inset-inline-end: 24px; bottom: 26px; color: #fff; z-index: 1; }

/* ---------------- HİKÂYE ---------------- */
.f23-st-grid { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: clamp(36px, 6vw, 100px); align-items: center; }
.f23-story.is-rev .f23-st-media { order: 2; }
.f23-st-media { position: relative; padding: 0 12% 10% 0; }
.f23-story.is-rev .f23-st-media { padding: 0 0 10% 12%; }
.f23-st-main { aspect-ratio: 4 / 5; }
.f23-st-dot { position: absolute; inset-inline-end: 0; bottom: 0; width: 42%; aspect-ratio: 1; border-radius: 50%; overflow: hidden; margin: 0; border: 8px solid var(--bg); box-shadow: var(--f23-shadow); }
.f23-story.is-rev .f23-st-dot { inset-inline-end: auto; inset-inline-start: 0; }
.f23-tone-blush .f23-st-dot { border-color: var(--f23-blush); }
.f23-st-dot img { width: 100%; height: 100%; object-fit: cover; }
.f23-st-year { position: absolute; top: 8%; inset-inline-start: -14px; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 112px; aspect-ratio: 1; border-radius: 50%; background: var(--primary); color: var(--on-primary, #fff); text-align: center; box-shadow: var(--f23-shadow); }
.f23-story.is-rev .f23-st-year { inset-inline-start: auto; inset-inline-end: -14px; }
.f23-st-year small { font-size: .62rem; letter-spacing: .16em; text-transform: uppercase; opacity: .85; max-width: 80%; line-height: 1.3; }
.f23-st-year strong { font-family: var(--font-head); font-size: 1.9rem; line-height: 1; font-weight: var(--head-weight, 500); color: inherit; }
.f23-st-txt .f23-lead { max-width: 58ch; }
.f23-st-txt .f23-link { margin-top: 26px; }

/* Rakam bandı */
.f23-figs-band { border-top: 0; padding-top: 0; margin-top: 0; text-align: center; }
.f23-figs-band .f23-fig + .f23-fig { border-inline-start: 1px solid var(--f23-line); }

/* ---------------- FİYAT LİSTESİ (menü) ---------------- */
.f23-pr-box { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(28px, 4vw, 60px); align-items: start; }
.f23-prices.has-img .f23-pr-box { grid-template-columns: minmax(0, .42fr) minmax(0, 1fr); }
.f23-pr-arch { aspect-ratio: 3 / 4; position: sticky; top: 120px; }
.f23-pr-main { background: var(--bg); border: 1px solid var(--f23-line); border-radius: calc(var(--radius) * 1.4); padding: clamp(24px, 4vw, 56px); position: relative; }
.f23-tone-ivory .f23-pr-main { background: var(--f23-blush); }
.f23-tone-deep .f23-pr-main { background: rgba(255, 255, 255, .04); border-color: rgba(255, 255, 255, .12); }
.f23-pr-main .f23-filterbar { margin: 0 0 clamp(20px, 3vw, 34px); }
.f23-menu { list-style: none; margin: 0; padding: 0; columns: 2; column-gap: clamp(36px, 5vw, 76px); }
.f23-menu-it { break-inside: avoid; padding: 14px 0; border-bottom: 1px dashed var(--f23-line); }
.f23-tone-deep .f23-menu-it { border-color: rgba(255, 255, 255, .14); }
.f23-menu-row { display: flex; align-items: baseline; gap: 10px; }
.f23-menu-name { font-family: var(--font-head); font-size: 1.18rem; font-weight: var(--head-weight, 500); color: var(--heading); line-height: 1.3; min-width: 0; }
.f23-menu-name a { color: inherit; }
.f23-menu-name a:hover { color: var(--primary); }
.f23-menu-dots { flex: 1; min-width: 18px; border-bottom: 1px dotted color-mix(in srgb, var(--muted) 60%, transparent); transform: translateY(-5px); }
.f23-menu-price { font-weight: 600; color: var(--primary); white-space: nowrap; font-size: 1rem; }
.f23-menu-price small { font-size: .84em; color: var(--muted); font-weight: 500; }
.f23-tone-deep .f23-menu-price { color: var(--accent); }
.f23-tone-deep .f23-menu-price small { color: rgba(255, 255, 255, .6); }
.f23-menu-meta { display: block; margin-top: 4px; font-size: .84rem; color: var(--muted); }
.f23-tone-deep .f23-menu-meta { color: rgba(255, 255, 255, .58); }
.f23-pr-foot { display: flex; justify-content: space-between; align-items: center; gap: 16px 28px; flex-wrap: wrap; margin-top: clamp(22px, 3vw, 34px); padding-top: 22px; border-top: 1px solid var(--f23-line); }
.f23-tone-deep .f23-pr-foot { border-color: rgba(255, 255, 255, .12); }
.f23-pr-foot p { margin: 0; font-size: .88rem; color: var(--muted); max-width: 70ch; }
.f23-pr-foot p i { color: var(--primary); }
.f23-masc .f23-menu-name { letter-spacing: .01em; }

/* ---------------- BÖLGELER + HESAPLAYICI ---------------- */
.f23-zn-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(26px, 4vw, 56px); align-items: start; }
.f23-zones.has-tool .f23-zn-grid { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); }
.f23-zn-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.f23-zn-a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 14px 16px; border-radius: var(--radius); background: var(--bg); border: 1px solid var(--f23-line); color: inherit; height: 100%; transition: border-color .2s, box-shadow .2s; }
.f23-tone-ivory .f23-zn-a { background: var(--f23-blush); }
a.f23-zn-a:hover { border-color: var(--primary); box-shadow: var(--f23-shadow); }
.f23-zn-pin { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: var(--f23-tint); color: var(--primary); font-size: 1.05rem; }
.f23-zn-body { min-width: 0; }
.f23-zn-body strong { display: block; font-family: var(--font-head); font-size: 1.12rem; font-weight: var(--head-weight, 500); color: var(--heading); line-height: 1.25; }
.f23-zn-body small { display: block; margin-top: 3px; font-size: .8rem; color: var(--muted); line-height: 1.45; }
.f23-zn-price { font-weight: 600; color: var(--primary); white-space: nowrap; font-size: .95rem; }
.f23-zn-tool { position: sticky; top: 110px; background: var(--bg); border: 1px solid var(--f23-line); border-radius: calc(var(--radius) * 1.4); padding: clamp(20px, 3vw, 32px); box-shadow: var(--f23-shadow); }
.f23-zn-tool-head { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 18px; }
.f23-zn-tool-ic { width: 48px; height: 48px; flex: none; border-radius: 999px 999px 10px 10px; display: grid; place-items: center; background: var(--f23-tint); color: var(--primary); font-size: 1.3rem; }
.f23-zn-tool h3 { margin: 0; font-size: 1.45rem; }
.f23-zn-tool-head p { margin: 6px 0 0; font-size: .9rem; color: var(--muted); }
.f23-zn-tool .tl-box { border: 0; padding: 0; box-shadow: none; background: transparent; }
.f23-zn-tool .tl-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; }
.f23-zn-tool .tl-outputs { position: static; }

/* ---------------- ARAÇ ---------------- */
.f23-tl-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(30px, 5vw, 80px); align-items: center; }
.f23-tool.is-rev .f23-tl-txt { order: 2; }
.f23-tl-txt .f23-link { margin-top: 24px; }
.f23-tl-img { aspect-ratio: 16 / 10; margin-top: 30px; border-radius: var(--radius); }
.f23-tl-box { background: var(--bg); border-radius: calc(var(--radius) * 1.4); padding: clamp(18px, 3vw, 34px); border: 1px solid var(--f23-line); box-shadow: var(--f23-shadow); position: relative; }
.f23-tl-box::before { content: ""; position: absolute; top: -1px; left: 50%; width: 70px; height: 35px; margin-left: -35px; border: 1px solid var(--f23-line); border-top: 0; border-radius: 0 0 70px 70px; background: var(--f23-blush); }
.f23-tone-blush .f23-tl-box::before { background: var(--f23-blush); }
.f23-tl-box .tl-box { border: 0; box-shadow: none; padding: 0; background: transparent; }

/* ---------------- ÖZELLİKLER ---------------- */
.f23-feats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(18px, 2.4vw, 30px); }
.f23-feats.f23-n4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.f23-feat { display: flex; gap: 18px; align-items: flex-start; padding: 26px; border-radius: var(--radius); background: var(--bg); border: 1px solid var(--f23-line); }
.f23-tone-ivory .f23-feat { background: var(--f23-blush); border-color: transparent; }
.f23-feat-ic { flex: none; width: 52px; height: 60px; border-radius: 999px 999px 12px 12px; display: grid; place-items: center; background: var(--f23-tint); color: var(--primary); font-size: 1.35rem; }
.f23-masc .f23-feat-ic { border-radius: 10px; height: 52px; }
.f23-feat h3 { font-size: 1.28rem; margin: 2px 0 6px; }
.f23-feat p { margin: 0; color: var(--muted); font-size: .93rem; line-height: 1.65; }
.f23-ft-split { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(30px, 5vw, 80px); align-items: center; }
.f23-ft-arch { aspect-ratio: 3 / 4; }
.f23-ft-split .f23-feats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.f23-ft-split .f23-feat { padding: 20px; }

/* ---------------- SÜREÇ ---------------- */
.f23-steplist { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(var(--n, 4), minmax(0, 1fr)); gap: clamp(18px, 2.4vw, 34px); position: relative; }
.f23-steplist.f23-n3 { --n: 3; } .f23-steplist.f23-n5 { --n: 5; } .f23-steplist.f23-n6 { --n: 3; }
.f23-steplist::before { content: ""; position: absolute; top: 34px; inset-inline: 8%; height: 1px; background: var(--f23-line); }
.f23-tone-deep .f23-steplist::before { background: rgba(255, 255, 255, .16); }
.f23-step { position: relative; text-align: center; padding: 0 6px; }
.f23-step-no { position: relative; z-index: 1; display: grid; place-items: center; width: 68px; height: 68px; margin: 0 auto 20px; border-radius: 50%; background: var(--bg); border: 1px solid var(--f23-line); font-family: var(--font-head); font-style: italic; font-size: 1.5rem; color: var(--primary); }
.f23-tone-blush .f23-step-no { background: var(--f23-blush); }
.f23-tone-deep .f23-step-no { background: var(--f23-deep); border-color: rgba(255, 255, 255, .2); color: var(--accent); }
.f23-step-ic { display: none; }
.f23-step h3 { font-size: 1.3rem; margin: 0 0 8px; }
.f23-step p { margin: 0; font-size: .92rem; color: var(--muted); line-height: 1.65; }

/* ---------------- ÖNCE / SONRA ---------------- */
.f23-ba-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: clamp(22px, 3vw, 44px); align-items: start; }
.f23-ba.blk-ba { aspect-ratio: 4 / 3; border-radius: calc(var(--radius) * 1.4); box-shadow: var(--f23-shadow); }
.f23-ba .blk-ba-l { background: color-mix(in srgb, var(--bg) 92%, transparent); color: var(--heading); letter-spacing: .14em; text-transform: uppercase; font-size: .68rem; font-weight: 600; }
.f23-ba .blk-ba-handle { background: var(--bg); }
.f23-ba .blk-ba-handle i { color: var(--primary); }
.f23-ba .blk-ba-range { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: ew-resize; margin: 0; }
.f23-ba-cap { margin: 16px 4px 0; font-size: .92rem; color: var(--muted); }
.f23-ba-cap strong { font-family: var(--font-head); font-size: 1.15rem; color: var(--heading); font-weight: var(--head-weight, 500); }
.f23-ba-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.f23-ba-pick { width: 100%; display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 14px; align-items: center; padding: 10px; border-radius: var(--radius); border: 1px solid var(--f23-line); background: var(--bg); text-align: start; cursor: pointer; color: inherit; font: inherit; transition: border-color .2s, background .2s; }
.f23-ba-pick:hover { border-color: var(--primary); }
.f23-ba-pick.is-active { border-color: var(--primary); background: var(--f23-tint); }
.f23-ba-thumb { width: 64px; height: 64px; border-radius: 999px 999px 10px 10px; overflow: hidden; background: var(--f23-blush); }
.f23-ba-thumb img { width: 100%; height: 100%; object-fit: cover; }
.f23-ba-pick strong { display: block; font-family: var(--font-head); font-size: 1.08rem; color: var(--heading); font-weight: var(--head-weight, 500); line-height: 1.25; }
.f23-ba-pick small { display: block; margin-top: 3px; color: var(--muted); font-size: .8rem; line-height: 1.4; }
.f23-ba-single { max-width: 900px; margin: 0 auto clamp(30px, 4vw, 50px); }
.f23-ba-note { margin: 12px 0 0; font-size: .84rem; color: var(--muted); text-align: center; }

/* ---------------- LOOKBOOK ---------------- */
.f23-look { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(14px, 1.8vw, 24px); }
.f23-look.f23-n5 .f23-look-it:first-child { grid-row: span 2; grid-column: span 2; }
.f23-look.f23-n3, .f23-look.f23-n6, .f23-look.f23-n9 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.f23-look.f23-n3 .f23-look-it, .f23-look.f23-n6 .f23-look-it, .f23-look.f23-n9 .f23-look-it { aspect-ratio: 4 / 3; min-height: 0; }
.f23-look.f23-n3 .f23-look-it:first-child, .f23-look.f23-n6 .f23-look-it:first-child, .f23-look.f23-n9 .f23-look-it:first-child { border-radius: var(--radius); }
.f23-look.f23-n6 .f23-look-it:nth-child(2), .f23-look.f23-n3 .f23-look-it:nth-child(2) { border-radius: var(--f23-arch); }
.f23-look-it { position: relative; display: block; overflow: hidden; border-radius: var(--radius); min-height: 220px; color: #fff; background: var(--f23-blush); }
.f23-look-it:first-child { border-radius: var(--f23-arch); }
.f23-look-img { position: absolute; inset: 0; }
.f23-look-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--f23-ease); }
.f23-look-it:hover .f23-look-img img { transform: scale(1.05); }
.f23-look-cap { position: absolute; inset: auto 0 0 0; padding: 50px 20px 18px; background: linear-gradient(transparent, rgba(0, 0, 0, .62)); }
.f23-look-cap strong { display: block; font-family: var(--font-head); font-size: 1.25rem; font-weight: var(--head-weight, 500); line-height: 1.2; color: #fff; }
.f23-look-cap small { font-size: .8rem; color: rgba(255, 255, 255, .8); }
.gal-albums .f23-look-card .f23-look-it { min-height: 0; aspect-ratio: 4 / 5; border-radius: var(--f23-arch); }

/* ---------------- EKİP ---------------- */
.f23-team-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(22px, 3vw, 40px); }
.f23-team-grid.f23-n3 { grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 1000px; margin-inline: auto; }
.f23-member { text-align: center; min-width: 0; }
.f23-member-img { aspect-ratio: 3 / 4; margin-bottom: 18px; }
.f23-member-img img { transition: transform .9s var(--f23-ease); }
.f23-member:hover .f23-member-img img { transform: scale(1.04); }
.f23-member h3 { font-size: 1.4rem; margin: 0; }
.f23-member-pos { margin: 6px 0 0; font-size: .82rem; letter-spacing: .08em; text-transform: uppercase; color: var(--primary); }
.f23-member-bio { margin: 10px 0 0; font-size: .9rem; color: var(--muted); line-height: 1.6; }
.f23-member-acts { display: flex; justify-content: center; align-items: center; gap: 8px; margin-top: 14px; flex-wrap: wrap; }
.f23-member-book { display: inline-flex; align-items: center; gap: 6px; margin-top: 14px; min-height: 40px; padding: 8px 16px; border-radius: 999px; border: 1px solid var(--f23-line); color: var(--heading); font-size: .86rem; transition: background .2s, color .2s, border-color .2s; }
.f23-member-acts .f23-member-book { margin-top: 0; }
.f23-member-book:hover { background: var(--primary); color: var(--on-primary, #fff); border-color: var(--primary); }
.f23-member-ic { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--f23-line); color: var(--heading); }
.f23-member-ic:hover { color: var(--primary); border-color: var(--primary); }

/* ---------------- PAKETLER (shop) ---------------- */
.f23-ptabs { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px; width: fit-content; max-width: 100%; margin: -10px auto clamp(28px, 3vw, 42px); padding: 5px; border-radius: 999px; background: var(--bg); border: 1px solid var(--f23-line); }
.f23-tone-ivory .f23-ptabs { background: var(--f23-blush); }
.f23-ptabs button { border: 0; background: none; border-radius: 999px; padding: 9px 20px; min-height: 42px; color: var(--muted); font: 500 .9rem var(--font-body); cursor: pointer; }
.f23-ptabs button.is-active { background: var(--primary); color: var(--on-primary, #fff); }
.fam-pastel { --sh-radius: calc(var(--radius) * 1.2); --sh-card-bg: var(--bg); --sh-card-border: var(--f23-line); --sh-soft: var(--f23-blush); --sh-accent: var(--primary); --sh-shadow: var(--f23-shadow); }
.fam-pastel .sh-pkg { border-radius: calc(var(--radius) * 1.2); border: 1px solid var(--f23-line); background: var(--bg); box-shadow: none; padding: clamp(22px, 2.6vw, 32px); transition: box-shadow .3s, transform .3s; }
.fam-pastel .sh-pkg:hover { box-shadow: var(--f23-shadow); }
.fam-pastel .sh-pkg.is-popular { border-color: var(--primary); box-shadow: 0 0 0 1px var(--primary), var(--f23-shadow); }
.fam-pastel .sh-pkg-ribbon { background: var(--primary); color: var(--on-primary, #fff); border-radius: 999px; font-weight: 500; letter-spacing: .06em; }
.fam-pastel .sh-pkg-icon { border-radius: 999px 999px 10px 10px; background: var(--f23-tint); color: var(--primary); }
.f23-masc .sh-pkg-icon { border-radius: 8px; }
.fam-pastel .sh-pkg h3 { font-size: 1.45rem; font-weight: var(--head-weight, 500); }
.fam-pastel .sh-price strong { font-family: var(--font-head); font-weight: var(--head-weight, 500); color: var(--heading); }
.fam-pastel .sh-feat li i { background: var(--f23-tint); color: var(--primary); }
.fam-pastel .sh-feat li.is-hi i { background: var(--primary); color: var(--on-primary, #fff); }
.fam-pastel .sh-feat li.is-hi { color: var(--heading); font-weight: 500; }
.fam-pastel .sh-old { color: var(--muted); }
.fam-pastel .sh-cycle { border-radius: 999px; background: var(--bg); border: 1px solid var(--f23-line); }
.fam-pastel .sh-cycle button { border-radius: 999px; }
.fam-pastel .sh-pkg .btn { white-space: normal; text-align: center; line-height: 1.3; }

/* ---------------- RANDEVU ---------------- */
.f23-bk-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(30px, 5vw, 80px); align-items: center; }
.f23-bk-txt .f23-head { margin-bottom: 26px; }
.f23-bk-steps { list-style: none; margin: 0 0 26px; padding: 0; display: grid; gap: 16px; counter-reset: s; }
.f23-bk-steps li { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: 16px; align-items: start; }
.f23-bk-steps li > span { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--f23-line); font-family: var(--font-head); font-style: italic; font-size: 1.2rem; color: var(--primary); background: var(--bg); }
.f23-bk-steps strong { display: block; font-family: var(--font-head); font-size: 1.25rem; font-weight: var(--head-weight, 500); color: var(--heading); margin-top: 2px; }
.f23-bk-steps p { margin: 4px 0 0; font-size: .92rem; color: var(--muted); line-height: 1.6; }
.f23-bk-svcs { list-style: none; margin: 0 0 22px; padding: 0; border-top: 1px solid var(--f23-line); }
.f23-bk-svcs a { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 14px; align-items: center; padding: 14px 4px; border-bottom: 1px solid var(--f23-line); color: var(--heading); }
.f23-bk-svcs a span { font-family: var(--font-head); font-size: 1.15rem; }
.f23-bk-svcs a small { color: var(--muted); font-size: .82rem; }
.f23-bk-svcs a:hover { color: var(--primary); }
.f23-bk-card { position: relative; padding: 46px 0 0; }
.f23-bk-card::before { content: ""; position: absolute; inset: 0 8% 22% 8%; border-radius: var(--f23-arch); background: var(--f23-tint); }
.f23-tone-blush .f23-bk-card::before { background: var(--bg); }
.f23-bk-card .apt-quick { position: relative; max-width: 440px; margin-inline: auto; border-radius: calc(var(--radius) * 1.3); padding: 30px; border-color: var(--f23-line); box-shadow: var(--f23-shadow); background: var(--bg); }
.fam-pastel .apt-quick-title { font-family: var(--font-head); font-size: 1.6rem; font-weight: var(--head-weight, 500); }
.fam-pastel .apt-quick-title i { display: none; }
.fam-pastel .apt-quick-f { font-weight: 500; letter-spacing: .04em; }
.fam-pastel .apt-quick-f select, .fam-pastel .apt-quick-f input { min-height: 48px; border-radius: 999px; padding-inline: 16px; }

/* ---------------- YORUMLAR ---------------- */
.f23-rv { position: relative; max-width: 900px; margin: 0 auto; text-align: center; }
.f23-rv-q { display: block; font-family: var(--font-head); font-size: 7rem; line-height: .6; color: var(--primary); opacity: .35; height: 50px; }
.f23-rv-track { display: grid; }
.f23-rv-it { grid-area: 1 / 1; margin: 0; opacity: 0; visibility: hidden; transition: opacity .7s ease, visibility .7s; }
.f23-rv-it.is-active { opacity: 1; visibility: visible; }
.f23-rv-it blockquote { margin: 16px 0 0; font-family: var(--font-head); font-style: italic; font-size: clamp(1.35rem, 2.4vw, 2.05rem); line-height: 1.45; color: var(--heading); font-weight: var(--head-weight, 400); text-wrap: pretty; }
.f23-masc .f23-rv-it blockquote { font-style: normal; }
.f23-rv-it figcaption { margin-top: 24px; display: flex; flex-direction: column; gap: 3px; }
.f23-rv-it figcaption strong { font-size: .95rem; letter-spacing: .1em; text-transform: uppercase; color: var(--heading); font-weight: 500; }
.f23-rv-it figcaption small { color: var(--muted); font-size: .86rem; }
.f23-rv-nav { display: flex; justify-content: center; align-items: center; gap: 18px; margin-top: 30px; color: var(--primary); }
.f23-rv-nav > button { width: 46px; height: 46px; border-radius: 50%; border: 1px solid var(--f23-line); background: var(--bg); color: var(--heading); display: grid; place-items: center; cursor: pointer; }
.f23-rv-nav > button:hover { background: var(--primary); color: var(--on-primary, #fff); border-color: var(--primary); }
.f23-tone-deep .f23-rv-nav > button { background: transparent; color: #fff; border-color: rgba(255, 255, 255, .25); }

/* ---------------- BLOG ---------------- */
.f23-posts { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 1fr); gap: clamp(18px, 2.4vw, 32px); }
.f23-posts.f23-n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.f23-posts.f23-n1 { grid-template-columns: minmax(0, 1fr); max-width: 640px; }
.f23-post { min-width: 0; }
.f23-post > a { display: flex; flex-direction: column; gap: 16px; color: inherit; height: 100%; }
.f23-post-img { display: block; aspect-ratio: 4 / 3; border-radius: var(--radius); overflow: hidden; background: var(--f23-blush); }
.f23-post.is-lead .f23-post-img { aspect-ratio: 5 / 4; border-radius: var(--f23-arch); }
.f23-post-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--f23-ease); }
.f23-post > a:hover .f23-post-img img { transform: scale(1.05); }
.f23-post-body { display: flex; flex-direction: column; gap: 8px; }
.f23-post-meta { display: flex; gap: 12px; flex-wrap: wrap; font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.f23-post-meta b { color: var(--primary); font-weight: 500; }
.f23-post-title { font-family: var(--font-head); font-size: 1.38rem; font-weight: var(--head-weight, 500); color: var(--heading); line-height: 1.25; transition: color .2s; }
.f23-post.is-lead .f23-post-title { font-size: 1.7rem; }
.f23-post > a:hover .f23-post-title { color: var(--primary); }

/* ---------------- SSS ---------------- */
.f23-fq-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(30px, 5vw, 80px); align-items: start; }
.f23-fq-side .f23-head { margin-bottom: 26px; }
.f23-fq-card { border-radius: calc(var(--radius) * 1.4); background: var(--bg); border: 1px solid var(--f23-line); overflow: hidden; }
.f23-tone-ivory .f23-fq-card { background: var(--f23-blush); }
.f23-fq-img { aspect-ratio: 16 / 9; border-radius: 0; }
.f23-fq-card-in { padding: 26px; }
.f23-fq-card h3 { font-size: 1.55rem; margin: 0 0 8px; line-height: 1.2; }
.f23-fq-card p { margin: 0 0 18px; color: var(--muted); font-size: .93rem; }
.f23-fq-tel { display: inline-flex; align-items: center; gap: 6px; margin-inline-start: 14px; color: var(--heading); font-size: .92rem; }
.f23-acc { border-top: 1px solid var(--f23-line); }
.f23-acc-it { border-bottom: 1px solid var(--f23-line); }
.f23-acc-it summary { list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 22px 4px; cursor: pointer; font-family: var(--font-head); font-size: 1.24rem; color: var(--heading); font-weight: var(--head-weight, 500); line-height: 1.35; }
.f23-acc-it summary::-webkit-details-marker { display: none; }
.f23-acc-it summary i { flex: none; width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--f23-line); color: var(--primary); transition: transform .3s, background .2s; }
.f23-acc-it[open] summary i { transform: rotate(45deg); background: var(--f23-tint); }
.f23-acc-body { padding: 0 4px 22px; color: var(--muted); line-height: 1.75; max-width: 70ch; }
.f23-acc-body p:last-child { margin-bottom: 0; }

/* ---------------- ŞUBELER ---------------- */
.f23-salon-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(16px, 2vw, 26px); }
.f23-salon-grid.f23-n3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.f23-salon-grid.f23-n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.f23-salon { display: flex; flex-direction: column; border-radius: calc(var(--radius) * 1.2); background: var(--bg); border: 1px solid var(--f23-line); overflow: hidden; min-width: 0; }
.f23-tone-ivory .f23-salon { background: var(--f23-blush); }
.f23-tone-deep .f23-salon { background: rgba(255, 255, 255, .05); border-color: rgba(255, 255, 255, .12); }
.f23-salon-img { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--f23-blush); }
.f23-salon-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .9s var(--f23-ease); }
.f23-salon:hover .f23-salon-img img { transform: scale(1.05); }
.f23-salon-body { display: flex; flex-direction: column; gap: 8px; padding: 20px; flex: 1; }
.f23-salon h3 { font-size: 1.32rem; margin: 0; line-height: 1.2; }
.f23-salon h3 a { color: var(--heading); }
.f23-salon h3 a:hover { color: var(--primary); }
.f23-salon-info { list-style: none; margin: 4px 0 0; padding: 0; display: grid; gap: 6px; font-size: .86rem; color: var(--muted); }
.f23-salon-info li { display: flex; gap: 8px; align-items: flex-start; line-height: 1.45; }
.f23-salon-info i { color: var(--primary); margin-top: 2px; }
.f23-salon-info a { color: var(--text); }
.f23-salon-acts { display: flex; align-items: center; gap: 12px 16px; flex-wrap: wrap; margin-top: auto; padding-top: 12px; }
.f23-salons-map { margin-top: clamp(24px, 3vw, 40px); border-radius: calc(var(--radius) * 1.2); overflow: hidden; border: 1px solid var(--f23-line); }

/* ---------------- BANT + KAPANIŞ ---------------- */
.f23-banner { padding-block: calc(var(--f23-sy) * .6); }
.f23-bn-box { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); border-radius: calc(var(--radius) * 1.6); overflow: hidden; background: var(--f23-blush); }
.f23-banner.is-rev .f23-bn-img { order: 2; }
.f23-bn-img { min-height: 360px; position: relative; }
.f23-bn-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.f23-bn-txt { padding: clamp(30px, 5vw, 70px); display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 4px; }
.f23-bn-txt .btn { margin-top: 24px; }
.f23-cta { padding-block: calc(var(--f23-sy) * .7) var(--f23-sy); }
.f23-cta-box { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); gap: clamp(26px, 4vw, 60px); align-items: center; padding: clamp(32px, 5vw, 72px); border-radius: calc(var(--radius) * 1.8); background: var(--f23-deep); color: var(--f23-on-deep); position: relative; overflow: hidden; }
.f23-cta-box::before { content: ""; position: absolute; inset-inline-start: -120px; bottom: -160px; width: 360px; height: 360px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .1); }
.f23-cta-box .f23-title { color: var(--f23-on-deep); }
.f23-cta-box .f23-title em, .f23-cta-box .blk-hl, .f23-cta-box .f23-eyebrow { color: var(--accent); }
.f23-cta-box .f23-lead { color: color-mix(in srgb, var(--f23-on-deep) 74%, transparent); }
.f23-cta-box .btn-outline { color: var(--f23-on-deep); border-color: color-mix(in srgb, var(--f23-on-deep) 40%, transparent); }
.f23-cta-box .btn-outline:hover { background: var(--f23-on-deep); color: var(--secondary); }
.f23-cta-txt { position: relative; }
.f23-cta-lines { display: flex; flex-wrap: wrap; gap: 10px 26px; margin-top: 24px; }
.f23-cta-lines a { display: inline-flex; align-items: center; gap: 8px; color: color-mix(in srgb, var(--f23-on-deep) 86%, transparent); font-size: .95rem; }
.f23-cta-lines a:hover { color: var(--accent); }
.f23-cta-media { position: relative; }
.f23-cta-arch { aspect-ratio: 4 / 5; max-width: 380px; margin-inline: auto; }
.f23-cta-ring { position: absolute; top: -16px; inset-inline-end: 6%; width: 30%; aspect-ratio: 1; border-radius: 50%; border: 1px solid var(--accent); opacity: .5; }

/* ---------------- SAYFA BAŞLIĞI ---------------- */
.f23-ph { padding: clamp(40px, 6vw, 84px) 0; background: var(--f23-blush); color: var(--text); }
.f23-ph::after { display: none; }
.f23-ph .page-hero-inner { display: grid; grid-template-columns: minmax(0, 1fr); gap: 30px; align-items: center; }
.f23-ph .page-title { color: var(--heading); font-size: clamp(2.3rem, 4.8vw, 4rem); line-height: 1.05; margin: 12px 0 0; font-weight: var(--head-weight, 500); }
.site-perine .f23-ph .page-title { font-size: clamp(2.6rem, 5.4vw, 4.6rem); }
.f23-ph .page-subtitle { color: var(--muted); font-size: 1.05rem; line-height: 1.7; margin-top: 14px; max-width: 62ch; }
.f23-ph .breadcrumb li { color: var(--muted); font-size: .8rem; letter-spacing: .06em; }
.f23-ph .breadcrumb a { color: var(--text); }
.f23-ph .breadcrumb a:hover { color: var(--primary); }
.f23-ph-arch .page-hero-inner { grid-template-columns: minmax(0, 1fr) minmax(0, 300px); }
.f23-ph-media .f23-arch { aspect-ratio: 4 / 5; max-height: 340px; width: 100%; margin-inline-start: auto; }
.f23-ph-media { margin-bottom: calc(clamp(40px, 6vw, 84px) * -1 - 2px); align-self: end; }
.f23-ph-media .f23-arch { border-radius: 999px 999px 0 0; }
.f23-ph-orn { display: grid; place-items: center; width: 200px; height: 240px; margin-inline-start: auto; border-radius: 999px 999px 0 0; border: 1px solid var(--f23-line); border-bottom: 0; font-size: 3rem; color: color-mix(in srgb, var(--primary) 50%, transparent); }
.f23-ph-center { text-align: center; position: relative; overflow: hidden; isolation: isolate; }
.f23-ph-center .page-hero-bg { opacity: .14; filter: saturate(.6); }
.f23-ph-center.has-image::after { display: block; content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, color-mix(in srgb, var(--f23-blush) 70%, transparent), var(--f23-blush)); }
.f23-ph-center .f23-ph-txt { display: flex; flex-direction: column; align-items: center; }
.f23-ph-center .breadcrumb ol { justify-content: center; }
.f23-ph-center .page-subtitle { margin-inline: auto; }
.f23-ph-center .f23-ph-txt::after { content: ""; width: 46px; height: 23px; margin-top: 24px; border: 1px solid var(--primary); border-bottom: 0; border-radius: 46px 46px 0 0; opacity: .6; }
.f23-ph-ink { background: var(--secondary); color: #fff; position: relative; isolation: isolate; overflow: hidden; }
.f23-ph-ink .page-hero-bg { opacity: .28; }
.f23-ph-ink.has-image::after { display: block; content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, var(--secondary) 30%, color-mix(in srgb, var(--secondary) 40%, transparent)); }
.f23-ph-ink .page-title { color: #fff; }
.f23-ph-ink .page-subtitle, .f23-ph-ink .breadcrumb li { color: rgba(255, 255, 255, .72); }
.f23-ph-ink .breadcrumb a { color: #fff; }
.f23-ph-ink .breadcrumb a:hover { color: var(--accent); }

/* ---------------- FOOTER ---------------- */
.f23-footer { --f23-foot: var(--f23-blush); --f23-fl: var(--text); --f23-fh: var(--primary); background: var(--f23-foot); color: var(--text); font-size: .93rem; border-top: 1px solid var(--f23-line); padding-top: 0; }
.f23-masc .f23-footer { --f23-fl: rgba(255, 255, 255, .78); --f23-fh: var(--accent); }
.site-footer.f23-footer a:not(.btn) { color: var(--f23-fl); }
.site-footer.f23-footer a:not(.btn):hover { color: var(--f23-fh); }
.site-footer.f23-footer h3 { margin-bottom: 18px; }
.f23-foot-nl .nl-row { display: flex; gap: 8px; }
.f23-foot-nl .nl-input { flex: 1 1 0; min-width: 0; min-height: 52px; border-radius: 999px; padding: 0 22px; border: 1px solid var(--f23-line); background: var(--bg); }
.f23-foot-nl .nl-check { justify-content: center; text-align: start; margin-top: 12px; font-size: .8rem; color: var(--muted); }
.f23-masc .f23-foot-nl .nl-check { color: rgba(255, 255, 255, .55); }
.f23-masc .f23-footer { --f23-foot: var(--secondary); color: rgba(255, 255, 255, .74); border-top: 0; }
.f23-foot-nl { border-bottom: 1px solid var(--f23-line); }
.f23-masc .f23-foot-nl { border-color: rgba(255, 255, 255, .1); }
.f23-foot-nl-in { text-align: center; padding-block: clamp(46px, 6vw, 76px); max-width: 720px; }
.f23-foot-nl h2 { font-size: clamp(1.8rem, 3vw, 2.6rem); margin: 0; }
.f23-foot-nl p { color: var(--muted); margin: 10px auto 22px; }
.f23-masc .f23-foot-nl h2 { color: #fff; }
.f23-masc .f23-foot-nl p { color: rgba(255, 255, 255, .64); }
.f23-foot-nl form { max-width: 520px; margin-inline: auto; }
.f23-foot-nl .btn { min-height: 52px; }
.f23-foot-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(0, 1fr)); gap: clamp(26px, 4vw, 60px); padding-block: clamp(46px, 6vw, 76px); }
.f23-foot-grid.f23-fc2 { grid-template-columns: minmax(0, 1.4fr) repeat(4, minmax(0, 1fr)); }
.f23-foot-grid.f23-fc0 { grid-template-columns: minmax(0, 1.6fr) repeat(2, minmax(0, 1fr)); }
.f23-foot-brand p { margin: 18px 0 0; color: var(--muted); line-height: 1.75; max-width: 42ch; }
.f23-masc .f23-foot-brand p { color: rgba(255, 255, 255, .62); }
.site-footer.f23-footer .site-logo { color: var(--heading); }
.f23-masc .site-footer.f23-footer .site-logo { color: #fff; }
.f23-foot-social { margin-top: 22px; }
.f23-footer .social-links { display: flex; gap: 8px; flex-wrap: wrap; }
.site-footer.f23-footer .social-links a:not(.btn) { width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--f23-line); color: var(--heading); }
.site-footer.f23-footer .social-links a:not(.btn):hover { background: var(--primary); color: var(--on-primary, #fff); border-color: var(--primary); }
.f23-masc .site-footer.f23-footer .social-links a:not(.btn) { color: #fff; border-color: rgba(255, 255, 255, .2); }
.f23-foot-col h3 { font-family: var(--font-body); font-size: .74rem; letter-spacing: .2em; text-transform: uppercase; color: var(--primary); font-weight: 600; margin: 4px 0 18px; }
.f23-masc .f23-foot-col h3 { color: var(--accent); }
.site-footer.f23-footer .f23-foot-col h3 { color: var(--f23-fh); }
.f23-foot-col ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.f23-foot-col a { color: var(--text); }
.f23-masc .f23-foot-col a { color: rgba(255, 255, 255, .78); }
.f23-foot-col a:hover { color: var(--primary); }
.f23-masc .f23-foot-col a:hover { color: var(--accent); }
.f23-foot-contact li { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 10px; line-height: 1.5; overflow-wrap: break-word; }
.f23-foot-contact i { color: var(--primary); margin-top: 3px; }
.f23-masc .f23-foot-contact i { color: var(--accent); }
.f23-foot-bottom { border-top: 1px solid var(--f23-line); font-size: .84rem; color: var(--muted); }
.f23-masc .f23-foot-bottom { border-color: rgba(255, 255, 255, .1); color: rgba(255, 255, 255, .55); }
.f23-foot-bottom-in { display: flex; justify-content: space-between; align-items: center; gap: 14px 26px; flex-wrap: wrap; padding-block: 22px; }
.f23-footer .footer-menu { list-style: none; display: flex; flex-wrap: wrap; gap: 6px 20px; margin: 0; padding: 0; }
.f23-footer .footer-menu a { color: inherit; }
.site-footer.f23-footer .footer-menu a:not(.btn):hover { color: var(--primary); }
.f23-footer .footer-menu .submenu, .f23-footer .footer-menu .submenu-toggle, .f23-footer .footer-menu li > a > i { display: none; }
.site-footer.f23-footer .f23-top { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--f23-line); color: var(--heading); }
.f23-masc .site-footer.f23-footer .f23-top { color: #fff; border-color: rgba(255, 255, 255, .2); }
.site-footer.f23-footer .f23-top:hover { background: var(--primary); color: var(--on-primary, #fff); }

/* ---------------- İÇ SAYFALAR (çekirdek görünümler) ---------------- */
.fam-pastel .section { padding: var(--f23-sy) 0; }
.fam-pastel .section-alt { background: var(--f23-blush); }
.fam-pastel .card { border-radius: var(--radius); border-color: var(--f23-line); background: var(--bg); }
.fam-pastel .card:hover { transform: none; box-shadow: var(--f23-shadow); }
.fam-pastel .card-title { font-family: var(--font-head); font-weight: var(--head-weight, 500); font-size: 1.3rem; }
.fam-pastel .card-title a { color: var(--heading); }
.fam-pastel .card-link { color: var(--primary); font-weight: 500; }
.fam-pastel .card-icon { border-radius: 999px 999px 10px 10px; }
.fam-pastel .grid:has(> .f23-card), .fam-pastel .grid:has(> .f23-post) { gap: clamp(26px, 3vw, 44px) clamp(16px, 2vw, 28px); }
.fam-pastel .prose { font-size: 1.05rem; line-height: 1.85; }
.fam-pastel .prose h2 { font-size: clamp(1.7rem, 2.6vw, 2.2rem); }
.fam-pastel .prose h3 { font-size: 1.45rem; }
.fam-pastel .prose blockquote { border-left-color: var(--primary); background: var(--f23-blush); font-family: var(--font-head); font-size: 1.25rem; border-radius: 0 var(--radius) var(--radius) 0; }
.fam-pastel .prose ul li::marker { color: var(--primary); }
.fam-pastel .widget { background: var(--f23-blush); border-color: transparent; border-radius: calc(var(--radius) * 1.2); }
.fam-pastel .widget-title { font-size: 1.35rem; border-bottom-color: var(--f23-line); }
.fam-pastel .widget-title::after { background: var(--primary); }
.fam-pastel .contact-list i { border-radius: 999px 999px 8px 8px; }
.fam-pastel .contact-card { background: var(--f23-blush); border-color: transparent; border-radius: calc(var(--radius) * 1.2); }
.fam-pastel .contact-card i { color: var(--primary); }
.fam-pastel .card-pad, .fam-pastel .quote-box { border-color: var(--f23-line); border-radius: calc(var(--radius) * 1.2); }
.fam-pastel input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), .fam-pastel select, .fam-pastel textarea { border-radius: calc(var(--radius) * .7); border-color: var(--f23-line); }
.fam-pastel input:focus, .fam-pastel select:focus, .fam-pastel textarea:focus { border-color: var(--primary); box-shadow: 0 0 0 3px var(--f23-tint); outline: none; }
.fam-pastel .faq-item { border-color: var(--f23-line); border-radius: var(--radius); background: var(--bg); }
.fam-pastel .faq-item summary, .fam-pastel .faq-q { font-family: var(--font-head); font-size: 1.18rem; font-weight: var(--head-weight, 500); color: var(--heading); }
.fam-pastel .testimonial-card { border-radius: calc(var(--radius) * 1.2); border-color: var(--f23-line); background: var(--f23-blush); }
.fam-pastel .testimonial-card blockquote { font-family: var(--font-head); font-style: italic; font-size: 1.2rem; color: var(--heading); }
.fam-pastel .t-stars { color: var(--primary); }
.fam-pastel .chip, .fam-pastel .cl-term-chip { border-radius: 999px; border-color: var(--f23-line); background: var(--bg); min-height: 40px; }
.fam-pastel .chip.is-active, .fam-pastel .cl-term-chip.is-active { background: var(--primary); border-color: var(--primary); color: var(--on-primary, #fff); }
.fam-pastel .pagination a, .fam-pastel .pagination span { border-radius: 999px; }
.fam-pastel .badge { border-radius: 999px; }
.fam-pastel .team-card .team-photo { border-radius: var(--f23-arch); }
.fam-pastel .empty-state i { color: var(--primary); }
.fam-pastel .about-media img { border-radius: var(--f23-arch); aspect-ratio: 4 / 5; object-fit: cover; width: 100%; }
.fam-pastel .about-stats { background: var(--f23-blush); }
.fam-pastel .stat-item strong { font-family: var(--font-head); font-weight: var(--head-weight, 500); color: var(--heading); }
.fam-pastel .stat-item i, .fam-pastel .why-item i { color: var(--primary); }
.fam-pastel .why-item { border-radius: var(--radius); background: var(--f23-blush); border: 0; }
.fam-pastel .why-item h3 { font-size: 1.3rem; }
.fam-pastel .section-subtitle { font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: var(--head-weight, 500); }
.fam-pastel .team-card { text-align: center; }
.fam-pastel .team-card .team-photo { aspect-ratio: 3 / 4; overflow: hidden; }
.fam-pastel .team-card .team-photo img { width: 100%; height: 100%; object-fit: cover; }
.fam-pastel .team-card h3 { font-size: 1.3rem; margin: 14px 0 2px; }
.fam-pastel .team-pos { color: var(--primary); font-size: .8rem; letter-spacing: .06em; text-transform: uppercase; }
.fam-pastel .inline-quote { border-radius: calc(var(--radius) * 1.4); background: var(--f23-blush); border: 0; }
.f23-svc-book { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px 36px; align-items: center; padding: clamp(22px, 3.4vw, 40px); margin-top: 40px; }
.f23-svc-book h2 { margin: 0 0 8px; font-size: clamp(1.6rem, 2.6vw, 2.2rem); }
.f23-svc-book p { color: var(--muted); margin: 0 0 18px; }
.f23-svc-book .apt-quick { max-width: none; border-color: var(--f23-line); box-shadow: none; }
@media (max-width: 760px) { .f23-svc-book { grid-template-columns: minmax(0, 1fr); } }
/* İç sayfa kapanış bandı — anasayfa kapanışıyla aynı dil: koyu yuvarlak kutu */
.f23-ctaband { --cta-bg: var(--f23-deep); --cta-text: var(--f23-on-deep); --cta-btn-bg: var(--accent); --cta-btn-text: var(--secondary); background: transparent; color: var(--f23-on-deep); padding: 0 0 var(--f23-sy); }
.f23-ctaband-in { display: flex; flex-direction: column; align-items: center; text-align: center; background: var(--f23-deep); border-radius: calc(var(--radius) * 1.8); padding: clamp(40px, 6vw, 76px) clamp(20px, 4vw, 60px); position: relative; overflow: hidden; }
.f23-ctaband-in::before { content: ""; position: absolute; inset-inline-end: -110px; top: -140px; width: 320px; height: 320px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .1); }
.f23-ctaband .f23-orn { border-color: var(--accent); }
.f23-ctaband .f23-orn::after { background: var(--accent); }
.f23-ctaband h2 { font-size: clamp(1.8rem, 3.2vw, 2.8rem); margin: 0; max-width: 24ch; text-wrap: balance; color: var(--f23-on-deep); }
.f23-ctaband p { color: color-mix(in srgb, var(--f23-on-deep) 72%, transparent); margin: 12px auto 0; max-width: 60ch; }
.f23-ctaband .cta-actions { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; margin-top: 26px; position: relative; }
.f23-ctaband .btn-outline { color: var(--f23-on-deep); border-color: color-mix(in srgb, var(--f23-on-deep) 40%, transparent); }
.f23-ctaband .btn-outline:hover { background: var(--f23-on-deep); color: var(--secondary); border-color: var(--f23-on-deep); }
.fam-pastel { --primary-soft: var(--f23-tint); }
.fam-pastel .tl-q-title { font-family: var(--font-head); font-size: 1.5rem; font-weight: var(--head-weight, 500); }
.fam-pastel .tl-ico { border-radius: 999px 999px 12px 12px; background: var(--f23-tint); color: var(--primary); }
.fam-pastel .tl-card h3, .fam-pastel .tl-card strong { font-family: var(--font-head); font-weight: var(--head-weight, 500); }

/* Koleksiyonlar (liste, filtre, tablo, detay) */
.fam-pastel .cl-sidebar { --cl-card: var(--f23-blush); background: var(--f23-blush); border: 0; }
@media (min-width: 992px) { .fam-pastel .cl-sidebar { border-radius: calc(var(--radius) * 1.2); } }
.fam-pastel .cl-flabel { font-family: var(--font-body); font-size: .74rem; letter-spacing: .16em; text-transform: uppercase; color: var(--primary); }
.fam-pastel .cl-grid { gap: clamp(24px, 3vw, 40px) clamp(14px, 1.8vw, 24px); }
.fam-pastel .cl-grid .f23-card { height: 100%; }
.fam-pastel .cl-grid-list .f23-wcard > a, .fam-pastel .cl-grid-cards-wide .f23-wcard > a { min-height: 220px; }
.fam-pastel .cl-table-wrap { border-radius: calc(var(--radius) * 1.2); border: 1px solid var(--f23-line); background: var(--bg); overflow: auto; }
.fam-pastel .cl-table { border-collapse: collapse; width: 100%; }
.fam-pastel .cl-table thead th { background: var(--f23-blush); font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; color: var(--primary); font-weight: 600; border: 0; }
.fam-pastel .cl-table tbody th { font-family: var(--font-head); font-size: 1.12rem; font-weight: var(--head-weight, 500); color: var(--heading); }
.fam-pastel .cl-table tbody th a { color: var(--heading); }
.fam-pastel .cl-table tbody th a:hover { color: var(--primary); }
.fam-pastel .cl-table tbody th small { display: block; font-family: var(--font-body); font-size: .76rem; color: var(--muted); margin-top: 2px; }
.fam-pastel .cl-table td, .fam-pastel .cl-table tbody th { border: 0; border-bottom: 1px dashed var(--f23-line); padding: 14px 12px; vertical-align: middle; }
.fam-pastel .cl-table tbody th { min-width: 150px; }
.fam-pastel .cl-table .cl-td-act { white-space: nowrap; padding-inline-end: 16px; }
.fam-pastel .cl-table thead th { padding: 14px 12px; }
.fam-pastel .cl-table tr:last-child td, .fam-pastel .cl-table tr:last-child th { border-bottom: 0; }
.fam-pastel .cl-price strong { color: var(--primary); }
.fam-pastel .cl-chip { border-radius: 999px; background: var(--f23-tint); color: var(--heading); }
.fam-pastel .cl-side-card, .fam-pastel .cl-inquiry { border-radius: calc(var(--radius) * 1.2); border-color: var(--f23-line); background: var(--f23-blush); }
.fam-pastel .cl-gallery-main { border-radius: calc(var(--radius) * 1.4); overflow: hidden; }
.fam-pastel .cl-block-title { font-size: 1.5rem; }
.fam-pastel .cl-cmpbar { border-radius: 999px 999px 0 0; }
.f23-cmp { position: absolute; top: 12px; inset-inline-end: 12px; z-index: 2; }
.f23-wcard { position: relative; }
.f23-cmp span { display: inline-flex; align-items: center; gap: 4px; padding: 6px 10px; border-radius: 999px; background: color-mix(in srgb, var(--bg) 94%, transparent); font-size: .76rem; cursor: pointer; }
.f23-cmp input { position: absolute; opacity: 0; }
.f23-cmp input:checked + span { background: var(--primary); color: var(--on-primary, #fff); }

/* Araçlar */
.fam-pastel { --tl-accent: var(--primary); }
.fam-pastel .tl-box { border-radius: calc(var(--radius) * 1.2); border-color: var(--f23-line); }
.fam-pastel .tl-outputs { background: var(--secondary); border-radius: calc(var(--radius) * 1.1); }
.fam-pastel .tl-out.is-hl { border-left-color: var(--accent); background: rgba(255, 255, 255, .07); }
.fam-pastel .tl-out-v { font-family: var(--font-head); font-weight: var(--head-weight, 500); }
.fam-pastel .tl-out.is-hl .tl-out-v { color: var(--accent); }
.fam-pastel .tl-cta, .fam-pastel .tl-outputs .btn { white-space: normal; text-align: center; line-height: 1.35; height: auto; }
.fam-pastel .tl-opt { border-radius: var(--radius); }
.fam-pastel .tl-card { border-radius: calc(var(--radius) * 1.2); border-color: var(--f23-line); }

/* Randevu sihirbazı */
.fam-pastel { --apt-radius: calc(var(--radius) * 1.2); --apt-card: var(--bg); --apt-soft: var(--f23-blush); --apt-line: var(--f23-line); --apt-accent: var(--primary); --apt-accent-soft: var(--f23-tint); --apt-shadow: var(--f23-shadow); }
.fam-pastel .apt-wiz.apt-style-card { padding: clamp(18px, 3.4vw, 44px); }
.fam-pastel .apt-steps { gap: 4px; padding: 5px; border-radius: 999px; background: var(--f23-blush); border: 1px solid var(--f23-line); }
.fam-pastel .apt-steps li { border-radius: 999px; background: transparent; min-height: 44px; }
.fam-pastel .apt-steps li.is-active { background: var(--primary); }
.fam-pastel .apt-pane-title { font-size: 1.6rem; font-weight: var(--head-weight, 500); }
.fam-pastel .apt-opt { border-radius: calc(var(--radius) * .9); border-width: 1px; }
.fam-pastel .apt-opt-ic { border-radius: 999px 999px 10px 10px; background: var(--f23-tint); }
.f23-masc .apt-opt-ic { border-radius: 8px; }
.fam-pastel .apt-opt-body strong { font-family: var(--font-head); font-size: 1.12rem; font-weight: var(--head-weight, 500); }
.fam-pastel .apt-ava { border-radius: 999px 999px 12px 12px; width: 52px; height: 60px; flex-basis: 52px; }
.fam-pastel .apt-day { border-radius: 50%; aspect-ratio: 1; height: auto; max-height: 50px; justify-self: center; width: 100%; max-width: 50px; }
.fam-pastel .apt-slot { border-radius: 999px; border-width: 1px; }
.fam-pastel .apt-side { border-radius: calc(var(--radius) * 1.2); }
.fam-pastel .apt-side h4 { font-family: var(--font-head); font-size: 1.25rem; font-weight: var(--head-weight, 500); }
.fam-pastel .apt-code strong { background: var(--secondary); border-radius: 999px; }
.fam-pastel .apt-cal-nav { border-radius: 50%; }

/* Satış / sepet / hesap */
.fam-pastel .sh-box, .fam-pastel .sh-buybox, .fam-pastel .sh-group-card { border-radius: calc(var(--radius) * 1.2); border-color: var(--f23-line); }
.fam-pastel .sh-steps-bar { border-radius: 999px; }
.fam-pastel .acc-side, .fam-pastel .acc-card { border-radius: calc(var(--radius) * 1.2); border-color: var(--f23-line); }
.fam-pastel .acc-nav a.is-active { background: var(--f23-tint); color: var(--primary); }

/* Galeri / dokümanlar / şubeler */
.fam-pastel .gal-albums { gap: clamp(18px, 2.4vw, 32px); }
.fam-pastel .gal-item { border-radius: var(--radius); overflow: hidden; }
.fam-pastel .gal-filter .chip { min-height: 40px; }
.fam-pastel .doc-card, .fam-pastel .branch-card { border-radius: calc(var(--radius) * 1.2); border-color: var(--f23-line); }
.fam-pastel .branch-card h3, .fam-pastel .doc-card h3 { font-family: var(--font-head); font-weight: var(--head-weight, 500); }

/* Formlar (form oluşturucu) */
.fam-pastel .fb.fb-style-card { border-radius: calc(var(--radius) * 1.2); border-color: var(--f23-line); }
.fam-pastel .fb-title { font-family: var(--font-head); font-weight: var(--head-weight, 500); }
.fam-pastel .fb-input, .fam-pastel .fb-select-wrap select { border-radius: calc(var(--radius) * .7); }

/* Çerez bandı / popup */
.fam-pastel .cookie-bar { border-radius: calc(var(--radius) * 1.2); }

/* ---------------- DUYARLI ---------------- */
@media (max-width: 1480px) and (min-width: 1081px) {
  .f23-header .nav-menu > li > a { padding: 10px 9px; font-size: .9rem; }
  .f23-hbar { gap: 16px; }
}
@media (max-width: 1280px) and (min-width: 1081px) {
  .f23-header .nav-menu > li > a { padding: 8px 4px; font-size: .8rem; letter-spacing: 0; }
  .f23-header .f23-wrap { padding-inline: 20px; }
  .f23-hbar { gap: 10px; }
  .f23-header .logo-text small { display: none; }
  .f23-header .nav-menu > li > a > i { display: none; }
  .f23-hcta span { display: none; }
  .f23-hcta { padding-inline: 14px; }
  .fam-pastel .f23-header .logo-text strong { font-size: 1.2rem; }
}
@media (max-width: 1200px) {
  .f23-cols-4, .f23-team-grid, .f23-salon-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .f23-rail { grid-auto-columns: calc((100% - 2 * 22px) / 3); }
  .f23-foot-grid, .f23-foot-grid.f23-fc2 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .f23-foot-brand { grid-column: 1 / -1; }
  .f23-quickbar { grid-template-columns: minmax(0, 1fr); border-radius: calc(var(--radius) * 1.4); padding: 22px; }
}
@media (max-width: 1080px) {
  .f23-hbar { min-height: 72px; gap: 12px; }
  .f23-header .main-nav { flex: none; }
  .f23-hcta, .f23-topline, .f23-hphone span, .f23-actions .f23-lang { display: none; }
  .f23-nav-extra { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding: 22px 6px 0; }
  .f23-nav-extra .btn { width: 100%; }
  .f23-nav-phone { color: #111; display: inline-flex; align-items: center; gap: 8px; }
  .f23-h-center .f23-hbar-top { min-height: 76px; }
  .f23-navrow { border-top: 0; height: 0; }
  .f23-h-center .nav-menu > li > a { min-height: 0; text-transform: none; letter-spacing: 0; font-size: 1rem; }
  .f23-header .main-nav .nav-menu > li > a { font-weight: 500; }
  .f23-header .main-nav .nav-menu > li.is-active > a { background: transparent; }
  .f23-h-ink .main-nav .nav-menu > li > a { color: #111; }
  .f23-header .hdr-acc span, .f23-header .hdr-acc em { display: none; }
  .f23-ha-grid, .f23-hv-grid, .f23-st-grid, .f23-tl-grid, .f23-bk-grid, .f23-fq-grid, .f23-ba-grid, .f23-ft-split, .f23-cta-box { grid-template-columns: minmax(0, 1fr); }
  .f23-ha-media { max-width: 560px; }
  .f23-hv-card .apt-quick { margin-inline-start: 0; }
  .f23-hp-grid { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .f23-hp-media { aspect-ratio: 4 / 3; min-height: 0; }
  .f23-story.is-rev .f23-st-media { order: 0; }
  .f23-st-media { max-width: 560px; }
  .f23-tool.is-rev .f23-tl-txt { order: 0; }
  .f23-zones.has-tool .f23-zn-grid { grid-template-columns: minmax(0, 1fr); }
  .f23-zn-tool, .f23-pr-arch { position: static; }
  .f23-prices.has-img .f23-pr-box { grid-template-columns: minmax(0, 1fr); }
  .f23-pr-media { display: none; }
  .f23-feats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .f23-steplist, .f23-steplist.f23-n5 { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 34px; }
  .f23-steplist::before { display: none; }
  .f23-wide { grid-template-columns: minmax(0, 1fr); }
  .f23-look { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .f23-look.f23-n3, .f23-look.f23-n6, .f23-look.f23-n9 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .f23-posts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .f23-posts .is-lead { grid-column: 1 / -1; }
  .f23-posts .is-lead > a { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: 26px; }
  .f23-cta-media { display: none; }
  .f23-bn-box { grid-template-columns: minmax(0, 1fr); }
  .f23-banner.is-rev .f23-bn-img { order: 0; }
  .f23-bn-img { min-height: 260px; }
  .f23-ph-arch .page-hero-inner { grid-template-columns: minmax(0, 1fr) minmax(0, 200px); }
}
@media (max-width: 760px) {
  :root { --f23-g: 16px; }
  .f23-cols-3, .f23-cols-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 14px; }
  .f23-card-title { font-size: 1.12rem; }
  .f23-card-arch .f23-card-body { padding: 14px 2px 2px; }
  .f23-card-soft .f23-card-body { padding: 14px; }
  .f23-card-text { -webkit-line-clamp: 2; font-size: .86rem; }
  .f23-card-foot { justify-content: flex-start; }
  .f23-rail { grid-auto-columns: 72%; }
  .f23-menu { columns: 1; }
  .f23-menu-name { font-size: 1.08rem; }
  .f23-zn-list { grid-template-columns: minmax(0, 1fr); }
  .f23-feats, .f23-feats.f23-n4, .f23-ft-split .f23-feats { grid-template-columns: minmax(0, 1fr); }
  .f23-feat { padding: 20px; }
  .f23-steplist, .f23-steplist.f23-n5 { grid-template-columns: minmax(0, 1fr); }
  .f23-step { display: grid; grid-template-columns: 56px minmax(0, 1fr); text-align: start; column-gap: 16px; }
  .f23-step-no { width: 56px; height: 56px; margin: 0; grid-row: span 2; font-size: 1.25rem; }
  .f23-step h3 { margin: 6px 0 4px; }
  .f23-team-grid, .f23-team-grid.f23-n3 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 14px; }
  .f23-member h3 { font-size: 1.15rem; }
  .f23-member-pos { font-size: .72rem; letter-spacing: .04em; }
  .f23-salon-grid, .f23-salon-grid.f23-n3, .f23-salon-grid.f23-n2 { grid-template-columns: minmax(0, 1fr); }
  .f23-posts, .f23-posts.f23-n2 { grid-template-columns: minmax(0, 1fr); }
  .f23-posts .is-lead > a { display: flex; }
  .f23-look { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .f23-look-it { min-height: 170px; }
  .f23-look-cap { padding: 40px 12px 12px; }
  .f23-look-cap strong { font-size: 1.02rem; }
  .f23-figs { gap: 14px; }
  .f23-figs.f23-n3, .f23-figs.f23-n4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .f23-figs-band .f23-fig + .f23-fig { border: 0; }
  .f23-hero-btns .btn { flex: 1 1 auto; }
  .f23-ha-media { padding: 0 0 12% 8%; }
  .f23-ha-badge { inset-inline-end: 0; bottom: 4%; }
  .f23-badge { padding: 12px 16px; min-width: 0; }
  .f23-badge strong { font-size: 1.5rem; }
  .f23-quickbar .apt-quick.is-inline { grid-template-columns: minmax(0, 1fr); }
  .f23-quickbar-l small { display: none; }
  .f23-hero-veil { min-height: 0; }
  .f23-ht-row, .f23-ht-row.f23-n2 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-items: start; }
  .f23-ht-2 { order: -1; grid-column: 1 / -1; aspect-ratio: 4 / 4.4; }
  .f23-ht-1, .f23-ht-3 { margin: 0; aspect-ratio: 1; }
  .f23-ht-badge { display: none; }
  .f23-wcard > a, .f23-wcard > div { grid-template-columns: minmax(0, 1fr); }
  .f23-wcard-img { min-height: 0; aspect-ratio: 16 / 10; }
  .f23-ph-arch .page-hero-inner { grid-template-columns: minmax(0, 1fr); }
  .f23-ph-media { display: none; }
  .f23-foot-grid, .f23-foot-grid.f23-fc2, .f23-foot-grid.f23-fc0 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .f23-foot-contact { grid-column: 1 / -1; }
  .f23-foot-nl .nl-row { flex-direction: column; }
  .f23-foot-bottom-in { flex-direction: column; align-items: flex-start; }
  .f23-ba-pick { grid-template-columns: 52px minmax(0, 1fr); }
  .f23-ba-thumb { width: 52px; height: 52px; }
  .f23-tabs, .f23-ptabs { flex-wrap: nowrap; overflow-x: auto; max-width: 100%; scrollbar-width: none; justify-content: flex-start; }
  .f23-tabs::-webkit-scrollbar, .f23-ptabs::-webkit-scrollbar { display: none; }
  .f23-tabs button, .f23-ptabs button { flex: none; padding: 8px 14px; font-size: .84rem; white-space: nowrap; }
  .f23-filterbar { justify-content: flex-start; flex-direction: column; align-items: stretch; }
  .f23-filterbar > * { max-width: 100%; }
  .f23-chips { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; }
  .f23-chips::-webkit-scrollbar { display: none; }
  .f23-chips a, .f23-chips-l { flex: none; }
  .f23-pr-main { padding: 20px 16px; }
  .f23-acc-it summary { font-size: 1.08rem; padding: 18px 2px; }
  .f23-fq-tel { margin: 14px 0 0; }
  .f23-h-center .f23-hside-l .f23-lang { display: none; }
}
@media (max-width: 480px) {
  .f23-h-center .f23-hbar-top { grid-template-columns: auto minmax(0, 1fr) auto; }
  .f23-h-center .f23-logo .logo-text small { display: none; }
  .f23-hbar { gap: 8px; }
  .f23-logo { flex: 1 1 auto; min-width: 0; }
  .f23-header .site-logo { gap: 8px; max-width: 100%; }
  .f23-header .logo-mark { width: 34px; height: 40px; font-size: 17px; flex: none; }
  .f23-masc .f23-header .logo-mark { height: 34px; }
  .fam-pastel .f23-header .logo-text { min-width: 0; }
  .fam-pastel .f23-header .logo-text strong { font-size: 1.08rem; line-height: 1.15; white-space: normal; }
  .f23-header .logo-text small { display: none; }
  .header-actions.f23-actions, .f23-hside-r { gap: 2px; }
  .f23-header .hdr-cart, .f23-header .hdr-acc { min-width: 44px; padding: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .fam-pastel *, .fam-pastel *::before, .fam-pastel *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
