

:root {
  --black: #080806;
  --ink: #12110e;
  --cream: #f6f0e4;
  --cream-2: #fffaf0;
  --paper: #e9dfcc;
  --gold: #e5c45f;
  --gold-2: #b99235;
  --text: #fbf6ed;
  --body: #d7cfc1;
  --muted: #aaa294;
  --dark-text: #17140f;
  --dark-muted: #625a4d;
  --btn: var(--gold);
  --on-btn: #0a0906;
  --btn-hover: #f0d477;
  --hero-mid: #151109;
  --story: #17140e;
  --footer: var(--footer);
  --field: var(--field);
  --line: color-mix(in srgb, var(--gold) 24%, transparent);
  --line-light: color-mix(in srgb, var(--text) 10%, transparent);
  --line-dark: color-mix(in srgb, var(--dark-text) 14%, transparent);
  --radius: 24px;
  --max: 1180px;
  --serif: Georgia, "Times New Roman", serif;
  --sans: "Inter", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; }
body { margin: 0; background: var(--black); color: var(--text); font-family: var(--sans); font-size: 17px; line-height: 1.58; -webkit-font-smoothing: antialiased; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
p { margin: 0 0 1.15rem; }
ul { margin: 0; padding-left: 1.2rem; }
section { position: relative; padding: 92px 0; background-color: var(--black); }
.wrap { width: min(var(--max), calc(100% - 44px)); margin: 0 auto; }
h1, h2, h3, blockquote, .serif { font-family: var(--serif); }
h1, h2, h3 { margin: 0; letter-spacing: -.035em; line-height: 1.04; font-weight: 700; }
h1 { font-size: clamp(2.7rem, 4.6vw, 4.4rem); max-width: 780px; }
h2 { font-size: clamp(2.2rem, 4.2vw, 4rem); max-width: 900px; }
h3 { font-size: clamp(1.4rem, 2.1vw, 2rem); }
.kicker { display: inline-flex; align-items: center; gap: 10px; color: var(--gold); font-size: .77rem; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }
.kicker::before { content: ""; width: 30px; height: 1px; background: currentColor; }
.section-cream .kicker, .section-paper .kicker { color: var(--gold-2); }
.lead { margin-top: 22px; max-width: 820px; font-size: clamp(1.08rem, 1.6vw, 1.3rem); opacity: .8; }
.section-head { margin-bottom: 46px; }
.section-head .kicker { margin-bottom: 18px; }
.section-ink { background: var(--ink); }
.section-cream { background: var(--cream); color: var(--dark-text); }
.section-paper { background: var(--paper); color: var(--dark-text); }
em.gold, .gold { color: var(--gold); font-style: normal; }
.section-cream em.gold, .section-paper em.gold { color: var(--gold-2); }


.nav { position: sticky; top: 0; z-index: 100; border-bottom: 1px solid color-mix(in srgb, var(--text) 8.0%, transparent); background: color-mix(in srgb, var(--black) 90%, transparent); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.nav-inner { min-height: 78px; display: flex; align-items: center; gap: 24px; }
.brand { font-family: var(--serif); font-size: 1.5rem; font-weight: 800; letter-spacing: -.04em; line-height: .85; color: var(--text); }
.brand small { display: block; font-family: var(--sans); font-size: .58rem; letter-spacing: .28em; text-transform: uppercase; color: var(--gold); font-weight: 800; margin-top: 6px; }
.nav-links { margin-left: auto; display: flex; align-items: center; gap: 25px; color: var(--muted); font-size: .88rem; font-weight: 700; }
.nav-links a:hover { color: var(--text); }
.mobile-menu { display: none; margin-left: auto; position: relative; }
.mobile-menu summary { list-style: none; cursor: pointer; border: 1px solid var(--line-light); border-radius: 50%; width: 44px; height: 44px; display: grid; place-items: center; }
.mobile-menu summary::-webkit-details-marker { display: none; }
.mobile-menu-content { position: absolute; right: 0; top: 54px; min-width: 240px; padding: 12px; border: 1px solid var(--line-light); border-radius: 16px; background: var(--ink); box-shadow: 0 22px 50px rgba(0,0,0,.45); }
.mobile-menu-content a { display: block; padding: 11px 12px; color: var(--body); font-weight: 700; }


.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 51px; padding: 13px 24px; border: 1px solid transparent; border-radius: 999px; background: var(--btn); color: var(--on-btn); font-size: .94rem; font-weight: 900; transition: transform .18s ease, background .18s ease; cursor: pointer; font-family: var(--sans); }
.btn:hover { transform: translateY(-2px); background: var(--btn-hover); }
.btn-secondary { border-color: color-mix(in srgb, var(--text) 22.0%, transparent); background: color-mix(in srgb, var(--text) 3.5%, transparent); color: var(--text); }
.btn-secondary:hover { background: color-mix(in srgb, var(--text) 8.0%, transparent); }
.btn-dark { background: var(--dark-text); color: var(--cream-2); }
.btn-dark:hover { background: color-mix(in srgb, var(--dark-text) 85%, var(--cream)); }
.btn-block { width: 100%; }


.hero { overflow: hidden; padding: 76px 0 82px; border-bottom: 1px solid var(--line-light);
  background: radial-gradient(circle at 14% 0%, color-mix(in srgb, var(--gold) 17.0%, transparent), transparent 30%), radial-gradient(circle at 92% 35%, color-mix(in srgb, var(--gold) 9.0%, transparent), transparent 27%), linear-gradient(135deg, var(--black), var(--hero-mid) 58%, var(--black)); }
.hero::after { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .08; background-image: linear-gradient(color-mix(in srgb, var(--text) 11.0%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--text) 11.0%, transparent) 1px, transparent 1px); background-size: 64px 64px; -webkit-mask-image: linear-gradient(to right, black, transparent 58%); mask-image: linear-gradient(to right, black, transparent 58%); }
.hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1.08fr .92fr; gap: 58px; align-items: center; }
.hero .kicker { margin-bottom: 18px; }
.hero h1 span { color: var(--gold); }
.hero-sub { margin-top: 25px; max-width: 700px; color: var(--body); font-size: clamp(1.06rem, 1.6vw, 1.26rem); }
.hero-note { margin-top: 18px; max-width: 680px; color: var(--muted); font-size: .96rem; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 31px; }
.hero-collage { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid color-mix(in srgb, var(--gold) 34.0%, transparent); border-radius: 30px; overflow: hidden; background: var(--ink); box-shadow: 0 34px 90px rgba(0,0,0,.55); }
.hero-person { position: relative; aspect-ratio: 1 / 1.07; overflow: hidden; border: 1px solid color-mix(in srgb, var(--text) 5.5%, transparent); }
.hero-person img { width: 100%; height: 100%; object-fit: cover; object-position: center 22%; filter: saturate(.88) contrast(1.04); transition: transform .55s ease, filter .55s ease; }
.hero-person:hover img { transform: scale(1.035); filter: saturate(1); }
.hero-caption { position: absolute; inset: auto 0 0; padding: 54px 13px 14px; background: linear-gradient(transparent, rgba(0,0,0,.92)); color: #fff; font-size: .88rem; font-weight: 900; line-height: 1.16; }
.hero-caption small { display: block; margin-top: 5px; color: var(--gold); font-size: .6rem; letter-spacing: .06em; text-transform: uppercase; }


.proof { padding: 22px 0; background: var(--cream-2); color: var(--dark-text); border-bottom: 1px solid var(--line-dark); }
.proof-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.proof-item { padding: 13px 24px; text-align: center; font-weight: 900; }
.proof-item + .proof-item { border-left: 1px solid var(--line-dark); }
.proof-item small { display: block; margin-top: 2px; color: var(--dark-muted); font-size: .8rem; font-weight: 700; }


.tension-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 70px; align-items: start; }
.tension-copy { font-size: 1.12rem; color: var(--body); }
.tension-copy strong { color: var(--gold); }
.voice-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.voice-list li { padding: 20px 0; border-bottom: 1px solid var(--line); font-family: var(--serif); font-size: clamp(1.2rem, 2vw, 1.65rem); line-height: 1.3; color: var(--text); }
.voice-list li b { color: var(--gold); font-weight: 700; }
.statement { margin: 34px 0 0; padding-top: 26px; border-top: 1px solid var(--line); color: var(--gold); font-family: var(--serif); font-size: clamp(1.35rem, 2.4vw, 2.1rem); line-height: 1.22; }


.keynote-grid { display: grid; grid-template-columns: .84fr 1.16fr; gap: 68px; align-items: start; }
.quote-card { position: sticky; top: 108px; border: 1px solid var(--line-dark); border-radius: var(--radius); padding: 38px; background: rgba(255,255,255,.5); box-shadow: 0 22px 60px rgba(36,27,9,.08); }
.quote-card blockquote { margin: 0; font-size: clamp(1.6rem, 2.8vw, 2.5rem); line-height: 1.14; letter-spacing: -.03em; }
.quote-card footer { margin-top: 22px; color: var(--gold-2); font-size: .82rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.benefits-title { margin: 29px 0 0; color: var(--gold-2); font-weight: 900; letter-spacing: .06em; text-transform: uppercase; font-size: .85rem; }
.outcomes { display: grid; margin-top: 18px; }
.outcome { display: grid; grid-template-columns: 45px 1fr; gap: 16px; padding: 22px 0; border-top: 1px solid var(--line-dark); }
.outcome:last-child { border-bottom: 1px solid var(--line-dark); }
.outcome b { color: var(--gold-2); font-size: .85rem; letter-spacing: .08em; padding-top: 6px; }
.outcome h3 { margin-bottom: 8px; font-size: 1.45rem; }
.outcome p { margin: 0; color: var(--dark-muted); }


.offrecord { overflow: hidden; background: linear-gradient(135deg, var(--story), var(--black) 60%); }
.offrecord::before { content: attr(data-watermark); position: absolute; right: -28px; top: 40px; color: color-mix(in srgb, var(--gold) 5.5%, transparent); font-family: var(--serif); font-size: clamp(4rem, 12vw, 10rem); font-weight: 900; letter-spacing: -.05em; white-space: nowrap; pointer-events: none; }
.offrecord-grid { position: relative; display: grid; grid-template-columns: 1.05fr .95fr; gap: 70px; align-items: start; }
.offrecord h2 { margin-top: 17px; }
.offrecord-copy { font-size: 1.08rem; color: var(--body); }
.offrecord-copy strong { color: var(--text); }
.topic-list { margin-top: 28px; border-top: 1px solid var(--line); }
.topic { display: grid; grid-template-columns: 22px 1fr; gap: 13px; padding: 16px 0; border-bottom: 1px solid var(--line); color: var(--text); }
.topic span { color: var(--gold); }
.confidential { margin-top: 24px; padding: 19px 21px; border: 1px solid color-mix(in srgb, var(--gold) 29.0%, transparent); border-radius: 16px; background: color-mix(in srgb, var(--gold) 6.0%, transparent); color: var(--body); font-size: .93rem; }
.confidential strong { color: var(--gold); }
.portrait { border-radius: var(--radius); overflow: hidden; border: 1px solid color-mix(in srgb, var(--gold) 30.0%, transparent); box-shadow: 0 30px 80px rgba(0,0,0,.5); }
.portrait img { width: 100%; aspect-ratio: 4/5; object-fit: cover; object-position: center 20%; }


.promise-grid { display: grid; grid-template-columns: 1.12fr .88fr; gap: 60px; align-items: center; }
.promise-title { font-size: clamp(2.2rem, 4.4vw, 4.4rem); }
.promise-copy { color: var(--dark-muted); font-size: 1.08rem; }
.promise-mark { padding: 31px; border-left: 4px solid var(--gold-2); background: rgba(255,255,255,.42); font-family: var(--serif); font-size: 1.35rem; line-height: 1.35; }


.people-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 20px; }
.person { grid-column: span 2; overflow: hidden; border: 1px solid var(--line-dark); border-radius: var(--radius); background: rgba(255,255,255,.55); display: flex; flex-direction: column; }
.person.wide { grid-column: span 3; }
.person img { width: 100%; aspect-ratio: 4/3; object-fit: cover; object-position: center 22%; filter: saturate(.9); }
.person.wide img { aspect-ratio: 16/10; }
.person-body { padding: 24px 26px 28px; }
.person-body h3 { font-size: 1.5rem; }
.person-role { margin: 6px 0 14px; color: var(--gold-2); font-size: .75rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.person-body blockquote { margin: 0; font-family: var(--sans); color: var(--dark-muted); font-size: 1rem; }


.schedule { border-top: 1px solid var(--line); }
.slot { display: grid; grid-template-columns: 210px 1fr auto; gap: 30px; align-items: start; padding: 26px 0; border-bottom: 1px solid var(--line); }
.slot-time { color: var(--gold); font-weight: 900; font-size: .88rem; letter-spacing: .08em; text-transform: uppercase; padding-top: 6px; }
.slot h3 { font-size: 1.55rem; }
.slot p { margin: 8px 0 0; color: var(--body); max-width: 640px; }
.slot-price { font-family: var(--serif); font-size: 1.3rem; color: var(--text); white-space: nowrap; padding-top: 2px; }
.slot.featured { background: linear-gradient(90deg, color-mix(in srgb, var(--gold) 8.0%, transparent), transparent 70%); padding-left: 18px; border-left: 3px solid var(--gold); }


.community-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 40px; }
.community-card { padding: 34px; border: 1px solid var(--line-dark); border-radius: var(--radius); background: rgba(255,255,255,.45); }
.community-card .kicker { margin-bottom: 14px; }
.community-card h3 { margin-bottom: 14px; }
.community-card p, .community-card li { color: var(--dark-muted); }
.community-card li + li { margin-top: .5rem; }


.pricing { background: radial-gradient(circle at 80% 0%, color-mix(in srgb, var(--gold) 12.0%, transparent), transparent 40%), var(--black); }
.countdown { display: flex; gap: 12px; margin-top: 26px; flex-wrap: wrap; }
.cd-box { min-width: 86px; padding: 14px 10px; border: 1px solid var(--line); border-radius: 16px; text-align: center; background: color-mix(in srgb, var(--gold) 5.0%, transparent); }
.cd-box b { display: block; font-family: var(--serif); font-size: 2rem; color: var(--gold); line-height: 1; }
.cd-box small { color: var(--muted); font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }
.price-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 46px; }
.price-grid.two { grid-template-columns: 1fr 1fr; }
.price-card { position: relative; padding: 34px 30px; border: 1px solid var(--line-light); border-radius: var(--radius); background: color-mix(in srgb, var(--text) 3.0%, transparent); display: flex; flex-direction: column; }
.price-card.best { border-color: var(--gold); background: linear-gradient(180deg, color-mix(in srgb, var(--gold) 10.0%, transparent), color-mix(in srgb, var(--gold) 2.0%, transparent)); }
.price-badge { position: absolute; top: -13px; left: 28px; padding: 5px 13px; border-radius: 999px; background: var(--btn); color: var(--on-btn); font-size: .7rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.price-label { color: var(--muted); font-size: .85rem; font-weight: 700; }
.price { margin: 12px 0 4px; font-family: var(--serif); font-size: clamp(2.2rem, 3.6vw, 3rem); color: var(--text); letter-spacing: -.03em; line-height: 1; }
.price-sub { color: var(--gold); font-size: .9rem; font-weight: 700; }
.price-card ul { margin: 20px 0 26px; color: var(--body); font-size: .95rem; flex: 1; }
.price-card li + li { margin-top: .5rem; }


.form-wrap { display: grid; grid-template-columns: .9fr 1.1fr; gap: 60px; align-items: start; }
.form-card { padding: 36px; border: 1px solid var(--line-dark); border-radius: var(--radius); background: rgba(255,255,255,.6); box-shadow: 0 22px 60px rgba(36,27,9,.08); }
.field { display: grid; gap: 7px; margin-bottom: 16px; }
.field label { font-size: .82rem; font-weight: 800; color: var(--dark-text); }
.field input, .field select, .field textarea { width: 100%; padding: 14px 16px; border: 1px solid rgba(23,20,15,.2); border-radius: 12px; background: var(--field); font: inherit; font-size: 1rem; color: var(--dark-text); }
.field input:focus, .field select:focus, .field textarea:focus { outline: 2px solid var(--gold-2); outline-offset: 1px; }
.check { display: flex; gap: 10px; align-items: flex-start; margin: 6px 0 20px; font-size: .9rem; color: var(--dark-muted); }
.check input { margin-top: 4px; accent-color: var(--gold-2); }
.terms { margin: 22px 0 0; padding-left: 1.2rem; color: var(--dark-muted); font-size: .9rem; }
.terms li + li { margin-top: .5rem; }
.form-ok { display: none; padding: 22px; border-radius: 16px; background: rgba(185,146,53,.12); border: 1px solid var(--gold-2); font-family: var(--serif); font-size: 1.25rem; }
form.sent .form-fields { display: none; }
form.sent .form-ok { display: block; }


.faq { border-top: 1px solid var(--line-dark); max-width: 900px; }
.faq details { border-bottom: 1px solid var(--line-dark); }
.faq summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 20px; padding: 24px 0; font-family: var(--serif); font-size: clamp(1.2rem, 1.9vw, 1.55rem); font-weight: 700; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; color: var(--gold-2); font-family: var(--sans); font-weight: 400; font-size: 1.6rem; line-height: 1; transition: transform .2s ease; }
.faq details[open] summary::after { transform: rotate(45deg); }
.faq details p { margin: 0 0 24px; color: var(--dark-muted); max-width: 760px; }


.final { text-align: center; background: linear-gradient(135deg, var(--story), var(--black) 60%); }
.final h2 { margin: 18px auto 0; }
.final .lead { margin-left: auto; margin-right: auto; }
.final .hero-actions { justify-content: center; }
.footer { padding: 56px 0; background: var(--footer); border-top: 1px solid var(--line-light); color: var(--muted); font-size: .92rem; }
.footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 40px; }
.footer a:hover { color: var(--text); }
.footer h4 { margin: 0 0 12px; color: var(--text); font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; }
.footer ul { list-style: none; padding: 0; }
.footer li + li { margin-top: .4rem; }


.reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s ease, transform .7s ease; }
.reveal.in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .reveal { opacity: 1; transform: none; transition: none; } html { scroll-behavior: auto; } }


@media (max-width: 980px) {
  .nav-links { display: none; }
  .mobile-menu { display: block; }
  .nav-cta { display: none; }
  .hero-grid, .tension-grid, .keynote-grid, .offrecord-grid, .promise-grid, .form-wrap { grid-template-columns: 1fr; gap: 40px; }
  .quote-card { position: static; }
  .people-grid { grid-template-columns: 1fr 1fr; }
  .person, .person.wide { grid-column: span 1; }
  .price-grid, .price-grid.two { grid-template-columns: 1fr; }
  .community-grid { grid-template-columns: 1fr; }
  .slot { grid-template-columns: 1fr; gap: 6px; }
  .footer-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  section { padding: 64px 0; }
  .wrap { width: calc(100% - 32px); }
  .hero { padding: 48px 0 56px; }
  .proof-grid { grid-template-columns: 1fr; }
  .proof-item + .proof-item { border-left: 0; border-top: 1px solid var(--line-dark); }
  .people-grid { grid-template-columns: 1fr; }
  .hero-actions .btn { width: 100%; }
  .form-card, .quote-card, .community-card { padding: 24px; }
  .cd-box { min-width: 70px; }
}





:where([data-tema]) { color: var(--text);
  --line: color-mix(in srgb, var(--gold) 24%, transparent);
  --line-light: color-mix(in srgb, var(--text) 10%, transparent);
  --line-dark: color-mix(in srgb, var(--dark-text) 14%, transparent); }
:where(.footer[data-tema]) { color: var(--muted); }
:where(.section-cream[data-tema], .section-paper[data-tema], .proof[data-tema]) { color: var(--dark-text); }
.footer[data-tema], .proof[data-tema] { position: relative; }
.footer[data-tema] { background: var(--footer); }












.mix-badge { position:absolute; top:12px; right:12px; z-index:150; display:none; align-items:center; gap:4px; padding:5px 6px 5px 10px; border-radius:999px; background:rgba(15,15,15,.88); color:#fff; font:700 11px/1 Inter, Arial, sans-serif; box-shadow:0 6px 18px rgba(0,0,0,.3); }
.mix-badge b { margin-right:4px; opacity:.75; font-weight:700; max-width:150px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mix-badge button { min-width:30px; height:26px; border-radius:999px; border:2px solid transparent; cursor:pointer; font:800 11px/1 Inter, Arial, sans-serif; }
.mix-badge button[aria-pressed="true"] { border-color:#fff; box-shadow:0 0 0 2px rgba(0,0,0,.5); }
html[data-mix] .mix-badge { display:inline-flex; }
.nav .mix-badge { top:50%; transform:translateY(-50%); right:auto; left:50%; }
.embed .mix-badge { display:none !important; }


.tema-switch { position:fixed; left:16px; bottom:16px; z-index:200; display:flex; align-items:center; gap:6px; padding:7px 10px; border-radius:999px; background:rgba(15,15,15,.9); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); box-shadow:0 10px 30px rgba(0,0,0,.35); font:700 12px/1 Inter, Arial, sans-serif; color:#fff; max-width:calc(100% - 32px); }
.tema-switch span { padding:0 2px 0 4px; opacity:.7; letter-spacing:.08em; text-transform:uppercase; font-size:10px; }
.tema-switch select { max-width:170px; height:28px; border-radius:999px; border:1px solid rgba(255,255,255,.25); background:#222; color:#fff; font:600 12px Inter, Arial, sans-serif; padding:0 8px; }
.tema-switch button { height:28px; min-width:28px; border-radius:999px; border:1px solid rgba(255,255,255,.25); background:#222; color:#fff; cursor:pointer; font:800 12px/1 Inter, Arial, sans-serif; padding:0 8px; }
.tema-switch .mix-toggle[aria-pressed="true"] { background:#fff; color:#000; }
.tema-switch .mix-only { display:none; }
.tema-switch.is-mix .mix-only { display:inline-block; }
.tema-switch.is-mix .ts-one, .tema-switch.is-mix .ts-prev, .tema-switch.is-mix .ts-next { display:none; }
.tema-switch a { color:#fff; margin-left:4px; opacity:.8; font-size:11px; white-space:nowrap; }
@media (max-width:640px){ .tema-switch { left:8px; right:8px; bottom:8px; overflow-x:auto; } }
.embed .tema-switch { display:none; }

.tema-switch { flex-wrap:nowrap; overflow-x:auto; }
.tema-switch .st-prev { margin-left:6px; }



[data-tema="2126"] { --black:#241f26; --ink:#2d282f; --hero-mid:#352f37; --story:#302a32; --footer:#171419; --text:#fcfbfc; --body:#d5d3d5; --muted:#a19fa2; --cream:#f9f4f3; --cream-2:#f3f2f4; --paper:#efe2e0; --field:#ffffff; --gold:#c9c3cc; --gold-2:#6d696e; --btn:#c9c3cc; --on-btn:#241f26; --btn-hover:#d3ced5; --dark-text:#1b171c; --dark-muted:#787476; }
[data-tema="2126"] :is(.offrecord, .section-ink, .pricing, .final, .footer), :is(.offrecord, .section-ink, .pricing, .final, .footer)[data-tema="2126"] { --black:#1f2024; --ink:#28292d; --story:#303035; --hero-mid:#2d2d31; --footer:#111214; --line: color-mix(in srgb, var(--gold) 22%, transparent); }



html[data-stilius="25"] { --serif:"Unbounded", Arial, sans-serif; --sans:"Inter", Arial, sans-serif; }
html[data-stilius="25"] :is(h1, h2, h3, blockquote, .serif, .brand, .price, .slot-price, .faq summary, .voice-list li, .statement, .promise-mark) { font-family:var(--serif); }
html[data-stilius="25"] body, html[data-stilius="25"] :is(.btn, .field input, .field select, .field textarea, .person-body blockquote) { font-family:var(--sans); }
html[data-stilius="25"] h1, html[data-stilius="25"] h2, html[data-stilius="25"] h3 { font-weight:700;letter-spacing:-.04em;line-height:1.02 }
html[data-stilius="25"] h1 { font-size:clamp(2.3rem,4vw,3.8rem) }
html[data-stilius="25"] h2 { font-size:clamp(1.9rem,3.4vw,3.2rem) }
html[data-stilius="25"] h3 { font-size:clamp(1.15rem,1.6vw,1.45rem) }
html[data-stilius="25"] .voice-list li, html[data-stilius="25"] .statement, html[data-stilius="25"] .promise-mark, html[data-stilius="25"] .faq summary, html[data-stilius="25"] .quote-card blockquote { font-family:"Inter",sans-serif;font-weight:500;letter-spacing:-.01em }
html[data-stilius="25"] .btn { border-radius:10px }
html[data-stilius="25"] { --radius:14px }



.rk { --rk-card: color-mix(in srgb, var(--text) 5%, transparent); --rk-line: color-mix(in srgb, var(--text) 12%, transparent); --rk-mut: var(--muted); --rk-tx: var(--text); --rk-acc: var(--gold); }
.section-cream .rk, .section-paper .rk, .rk.on-light { --rk-card: rgba(255,255,255,.65); --rk-line: color-mix(in srgb, var(--dark-text) 12%, transparent); --rk-mut: var(--dark-muted); --rk-tx: var(--dark-text); --rk-acc: var(--gold-2); }
.rk * { box-sizing: border-box; }
.rk-av { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; flex: 0 0 auto; background: color-mix(in srgb, var(--rk-acc) 25%, transparent); display: grid; place-items: center; font: 700 .9rem var(--sans); color: var(--rk-tx); border: 2px solid color-mix(in srgb, var(--rk-acc) 40%, transparent); }
.rk-av.sm { width: 38px; height: 38px; font-size: .75rem; }
.rk-av.lg { width: 76px; height: 76px; }
.rk-av.xl { width: 112px; height: 112px; }
.rk-name { overflow-wrap: anywhere; font-weight: 800; color: var(--rk-tx); font-size: .98rem; line-height: 1.2; }
.rk-role { overflow-wrap: anywhere; color: var(--rk-acc); font-size: .74rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; line-height: 1.3; margin-top: 3px; }
.rk-q { color: var(--rk-tx); margin: 0; font-family: var(--sans); }
.rk-q.big { font-family: var(--serif); font-size: clamp(1.4rem, 2.6vw, 2.2rem); line-height: 1.15; letter-spacing: -.02em; font-weight: 700; }
.rk-mut { color: var(--rk-mut); }
.rk-tag { display: inline-block; padding: 4px 10px; border-radius: 999px; background: color-mix(in srgb, var(--rk-acc) 18%, transparent); color: var(--rk-tx); font-size: .74rem; font-weight: 800; }
.rk-who { display: flex; align-items: center; gap: 12px; }
.rk-card { min-width: 0; overflow-wrap: anywhere; hyphens: auto; background: var(--rk-card); border: 1px solid var(--rk-line); border-radius: var(--radius); padding: 22px; }
.rk-grid { display: grid; gap: 14px; }
.rk-more { margin-top: 18px; }
.rk-more summary { cursor: pointer; list-style: none; display: inline-flex; padding: 12px 18px; border-radius: 999px; border: 1px solid var(--rk-line); color: var(--rk-tx); font-weight: 800; font-size: .9rem; }
.rk-more summary::-webkit-details-marker { display: none; }
.rk-more[open] summary { margin-bottom: 16px; }
.rk-stack { display: flex; }
.rk-stack .rk-av { margin-left: -12px; border: 3px solid var(--black); }
.section-cream .rk-stack .rk-av, .section-paper .rk-stack .rk-av { border-color: var(--cream); }
.rk-stack .rk-av:first-child { margin-left: 0; }
.rk-h { font-family: var(--serif); color: var(--rk-tx); font-size: clamp(1.4rem, 2.6vw, 2.2rem); line-height: 1.05; letter-spacing: -.03em; margin: 0 0 18px; font-weight: 700; }


.rk1-strip { display: flex; flex-wrap: wrap; gap: 10px 22px; align-items: center; padding-bottom: 22px; margin-bottom: 22px; border-bottom: 1px solid var(--rk-line); }
.rk1-strip span { display: flex; align-items: center; gap: 8px; font-weight: 700; color: var(--rk-tx); font-size: .88rem; }
.rk1-feat { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.rk2 { grid-template-columns: repeat(8, 1fr); gap: 10px; }
.rk2 button { all: unset; cursor: pointer; display: grid; gap: 6px; justify-items: center; text-align: center; }
.rk2 .rk-av { width: 100%; height: auto; aspect-ratio: 1; border-radius: 18px; }
.rk2 button[aria-pressed="true"] .rk-av { outline: 3px solid var(--rk-acc); outline-offset: 2px; }
.rk2 small { font-size: .7rem; font-weight: 700; color: var(--rk-tx); line-height: 1.15; }
.rk2-out { margin-top: 18px; min-height: 120px; }

.rk3 { grid-template-columns: 2fr 1fr 1fr; grid-auto-rows: minmax(150px, auto); }
.rk3 .rk-card:first-child { grid-row: span 2; display: flex; flex-direction: column; justify-content: space-between; }
.rk3 .rk-card:nth-child(4) { grid-column: span 2; }

.rk4 { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); }
.rk4-row { display: flex; gap: 14px; width: max-content; animation: rk4 60s linear infinite; padding: 6px 0; }
.rk4-row.rev { animation-direction: reverse; }
.rk4:hover .rk4-row { animation-play-state: paused; }
.rk4 .rk-card { width: 340px; padding: 16px 18px; }
@keyframes rk4 { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .rk4-row { animation: none; flex-wrap: wrap; width: auto; } }

.rk5 { border-top: 1px solid var(--rk-line); }
.rk5 > div { display: grid; grid-template-columns: 52px 220px 1fr; gap: 16px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--rk-line); }

.rk6-tabs { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 16px; }
.rk6-tabs button { all: unset; cursor: pointer; padding: 9px 16px; border-radius: 999px; border: 1px solid var(--rk-line); color: var(--rk-tx); font-weight: 800; font-size: .85rem; }
.rk6-tabs button[aria-pressed="true"] { background: var(--btn); color: var(--on-btn); border-color: transparent; }
.rk6 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

.rk7 { display: grid; grid-template-columns: 1.4fr 1fr; gap: 40px; align-items: center; }

.rk8-q { min-height: 150px; }
.rk8-nav { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 18px; }
.rk8-nav button { all: unset; cursor: pointer; opacity: .45; transition: opacity .2s; }
.rk8-nav button[aria-pressed="true"] { opacity: 1; }

.rk9 { columns: 3; column-gap: 14px; }
.rk9 .rk-card { break-inside: avoid; margin-bottom: 14px; }

.rk10 { display: grid; grid-template-columns: .8fr 1.2fr; gap: 40px; }
.rk10-num { font-family: var(--serif); font-size: clamp(4rem, 9vw, 7rem); line-height: .9; color: var(--rk-acc); font-weight: 700; }
.rk10-list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 18px; }

.rk11-a { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.rk11-a .rk-card { padding: 0; overflow: hidden; }
.rk11-a img { width: 100%; aspect-ratio: 4/5; object-fit: cover; display: block; }
.rk11-a .in { padding: 14px; }
.rk11-b { grid-template-columns: repeat(5, minmax(0, 1fr)); margin-top: 14px; }
.rk11-c { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.rk-chip { display: inline-flex; align-items: center; gap: 8px; padding: 5px 12px 5px 5px; border-radius: 999px; border: 1px solid var(--rk-line); color: var(--rk-tx); font-size: .82rem; font-weight: 700; background: var(--rk-card); }

.rk12 > div { display: flex; gap: 18px; align-items: baseline; padding: 14px 0; border-bottom: 1px solid var(--rk-line); }
.rk12 .rk-q { font-family: var(--serif); font-size: clamp(1.1rem, 2vw, 1.6rem); font-weight: 700; letter-spacing: -.02em; flex: 1; }
.rk12 .who { white-space: nowrap; font-size: .82rem; color: var(--rk-mut); font-weight: 700; }

.rk13 { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.rk13 .p { background: #fff; padding: 10px 10px 16px; border-radius: 4px; box-shadow: 0 14px 30px rgba(0,0,0,.25); color: #1b171c; transform: rotate(-2deg); }
.rk13 .p:nth-child(2n) { transform: rotate(2deg); }
.rk13 img { width: 100%; aspect-ratio: 1; object-fit: cover; display: block; }
.rk13 .p b { display: block; margin-top: 10px; font-size: .9rem; }
.rk13 .p span { font-size: .82rem; color: #555; }

.rk14 { width: 100%; border-collapse: collapse; color: var(--rk-tx); font-size: .95rem; }
.rk14 th { text-align: left; font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; color: var(--rk-acc); padding: 10px 12px; border-bottom: 1px solid var(--rk-line); }
.rk14 td { padding: 12px; border-bottom: 1px solid var(--rk-line); vertical-align: middle; }

.rk15 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.rk15 .res { font-family: var(--serif); font-size: 1.25rem; line-height: 1.1; letter-spacing: -.02em; color: var(--rk-tx); font-weight: 700; margin-bottom: 12px; }

.rk16 { text-align: center; max-width: 820px; margin: 0 auto; }
.rk16 .rk-stack { justify-content: center; margin-top: 18px; }

.rk17 details { border-bottom: 1px solid var(--rk-line); }
.rk17 summary { cursor: pointer; list-style: none; display: flex; align-items: center; gap: 14px; padding: 12px 0; }
.rk17 summary::-webkit-details-marker { display: none; }
.rk17 summary::after { content: "+"; margin-left: auto; color: var(--rk-acc); font-size: 1.4rem; }
.rk17 details[open] summary::after { content: "–"; }
.rk17 p { margin: 0 0 14px 66px; color: var(--rk-tx); }

.rk18 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.rk18 .ba { display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; align-items: center; margin: 12px 0; font-weight: 800; font-size: .9rem; color: var(--rk-tx); }
.rk18 .ba span:first-child { color: var(--rk-mut); text-decoration: line-through; text-decoration-thickness: 1px; }

.rk19 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 34px; }
.rk19 > div::before { content: "“"; display: block; font-family: var(--serif); font-size: 4rem; line-height: .6; color: var(--rk-acc); margin-bottom: 8px; }

.rk20 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.rk20 .f { position: relative; border-radius: var(--radius); overflow: hidden; aspect-ratio: 3/4; }
.rk20 .f img { width: 100%; height: 100%; object-fit: cover; }
.rk20 .f .o { position: absolute; inset: auto 0 0; padding: 60px 16px 16px; background: linear-gradient(transparent, rgba(0,0,0,.88)); color: #fff; }
.rk20 .f .o p { margin: 0 0 10px; font-size: .9rem; line-height: 1.35; }
.rk20 .f .rk-role { color: #ddd; }
.rk20 .f .rk-name { color: #fff; }

.rk21 { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(280px, 30%); gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 10px; }
.rk21 .rk-card { scroll-snap-align: start; }

.rk22 { display: flex; flex-wrap: wrap; gap: 10px; }
.rk22 .rk-chip { font-size: .9rem; padding: 6px 16px 6px 6px; }
.rk22 .rk-chip em { font-style: normal; color: var(--rk-mut); font-weight: 600; }

.rk23 > div { display: grid; grid-template-columns: 90px 1fr; gap: 22px; align-items: center; padding: 22px 0; border-bottom: 1px solid var(--rk-line); }
.rk23 > div:nth-child(2n) { grid-template-columns: 1fr 90px; text-align: right; }
.rk23 > div:nth-child(2n) .rk-av { order: 2; }

.rk24 { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.rk24 .rk-card { padding: 14px; font-size: .86rem; }

.rk25 { display: grid; grid-template-columns: 340px 1fr; gap: 34px; align-items: center; }
.rk25-img { width: 100%; aspect-ratio: 4/5; object-fit: cover; border-radius: var(--radius); }
.rk25-th { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 18px; }
.rk25-th button { all: unset; cursor: pointer; opacity: .5; }
.rk25-th button[aria-pressed="true"] { opacity: 1; }

.rk26 { grid-template-columns: 1fr 1fr; }

.rk27 { counter-reset: t; display: grid; grid-template-columns: 1fr 1fr; gap: 0 34px; }
.rk27 > div { counter-increment: t; display: grid; grid-template-columns: 46px 44px 1fr; gap: 12px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--rk-line); }
.rk27 > div::before { content: counter(t, decimal-leading-zero); font-family: var(--serif); font-weight: 700; color: var(--rk-acc); font-size: 1.2rem; }

.rk28 { text-align: center; }
.rk28 .n { font-family: var(--serif); font-weight: 700; letter-spacing: -.03em; color: var(--rk-tx); line-height: 1.15; font-size: clamp(1.2rem, 2.6vw, 2.1rem); }
.rk28 .n span { color: var(--rk-acc); font-family: var(--sans); font-size: .5em; font-weight: 700; letter-spacing: .04em; margin: 0 .6em; vertical-align: middle; }

.rk29 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.rk29 .num { font-family: var(--serif); font-size: 3rem; font-weight: 700; line-height: 1; color: var(--rk-acc); }

.rk30 { display: grid; grid-template-columns: .8fr 1.2fr; gap: 40px; align-items: start; }
.rk30-l { position: sticky; top: 100px; }
.rk30-r { display: grid; gap: 12px; }

@media (max-width: 980px) {
  .rk1-feat, .rk6, .rk18, .rk19, .rk29 { grid-template-columns: 1fr; }
  .rk2 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .rk3 { grid-template-columns: 1fr 1fr; } .rk3 .rk-card:first-child { grid-column: span 2; grid-row: auto; } .rk3 .rk-card:nth-child(4) { grid-column: auto; }
  .rk5 > div { grid-template-columns: 44px 1fr; } .rk5 > div > p { grid-column: 1 / -1; }
  .rk7, .rk10, .rk25, .rk30 { grid-template-columns: 1fr; }
  .rk30-l { position: static; }
  .rk9 { columns: 1; }
  .rk10-list, .rk27 { grid-template-columns: 1fr; }
  .rk11-a, .rk11-b { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rk13, .rk15, .rk20, .rk24 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rk21 { grid-auto-columns: 82%; }
  .rk26 { grid-template-columns: 1fr; }
  .rk23 > div, .rk23 > div:nth-child(2n) { grid-template-columns: 60px 1fr; text-align: left; } .rk23 > div:nth-child(2n) .rk-av { order: 0; }
  .rk12 > div { flex-direction: column; gap: 4px; }
  .rk14 th:nth-child(3), .rk14 td:nth-child(3) { display: none; }
}
@media (max-width: 560px) {
  .rk13, .rk15, .rk20, .rk24 { grid-template-columns: 1fr; }
  .rk11-a { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


.hero-recs { display: grid; }
.hero-recs .kicker { justify-self: start; }
.hero-rec { display: inline-flex; align-items: center; gap: 14px; margin-top: 26px; padding: 10px 18px 10px 10px; border: 1px solid var(--line-light); border-radius: 999px; color: var(--body); font-size: .86rem; line-height: 1.35; background: color-mix(in srgb, var(--text) 4%, transparent); }
.hero-rec b { color: var(--text); }
.hero-rec .rk-stack .rk-av { border-color: var(--black); }
.hero-rec:hover { border-color: var(--gold); }
@media (max-width: 640px) { .hero-rec { border-radius: 18px; align-items: flex-start; flex-direction: column; } }



.ft-wrap { --g: 2px; --ar: 4/5; --tx: #fff; --ac: var(--gold); }
.ft-grid { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: var(--g); background: var(--black); border-radius: var(--radius); overflow: hidden; }
.ft { position: relative; margin: 0; overflow: hidden; aspect-ratio: var(--ar); background: #1f2024; min-width: 0; }
.ft img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s ease, filter .6s ease; }
.ft:hover img { transform: scale(1.04); }
.ft-cap { position: absolute; inset: auto 0 0; padding: 70px 16px 16px; background: linear-gradient(transparent, rgba(0,0,0,.55) 40%, rgba(0,0,0,.92)); color: var(--tx); }
.ft-q { margin: 0 0 10px; font: 500 .92rem/1.35 var(--sans); letter-spacing: -.01em; overflow-wrap: anywhere; }
.ft-n { font: 800 .9rem/1.2 var(--sans); }
.ft-r { font: 800 .66rem/1.3 var(--sans); letter-spacing: .08em; text-transform: uppercase; color: var(--ac); margin-top: 3px; }
.ft-tag { position: absolute; top: 12px; left: 12px; padding: 5px 10px; border-radius: 999px; background: rgba(0,0,0,.6); backdrop-filter: blur(6px); color: #fff; font: 800 .66rem/1 var(--sans); letter-spacing: .06em; text-transform: uppercase; }
.ft-txt { display: flex; flex-direction: column; justify-content: space-between; padding: 20px; background: #1f2024; color: #fff; }
.ft-txt .ft-q { font-size: 1.05rem; font-weight: 600; }
.ft-txt .big { font-family: var(--serif); font-size: 2.6rem; line-height: 1; color: var(--ac); font-weight: 700; }
.ft-head { display: flex; align-items: baseline; gap: 14px; margin: 34px 0 10px; color: var(--text); }
.ft-head b { font-family: var(--serif); font-size: 2rem; line-height: 1; color: var(--ac); }
.ft-head span { font: 800 .72rem var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.ft-head:first-child { margin-top: 0; }
.section-cream .ft-head, .section-paper .ft-head { color: var(--dark-text); }
.section-cream .ft-head b, .section-paper .ft-head b { color: var(--gold-2); }



.ft-hover .ft-q { max-height: 0; opacity: 0; margin: 0; transition: all .35s ease; }
.ft-hover .ft:hover .ft-q, .ft-hover .ft:focus-within .ft-q { max-height: 200px; opacity: 1; margin-bottom: 10px; }
.ft-hover .ft-cap { padding-top: 40px; }

.ft-mosaic { grid-template-columns: repeat(4, minmax(0,1fr)); }
.ft-mosaic .ft:first-child { grid-column: span 2; grid-row: span 2; }
.ft-mosaic .ft:first-child .ft-q { font-size: 1.3rem; }

.ft-rows .ft-grid { border-radius: 0; }
.ft-rows .ft-grid:first-of-type { border-radius: var(--radius) var(--radius) 0 0; }

.ft-masonry { columns: 4; column-gap: var(--g); background: var(--black); border-radius: var(--radius); overflow: hidden; }
.ft-masonry .ft { aspect-ratio: auto; break-inside: avoid; margin-bottom: var(--g); }
.ft-masonry .ft img { height: auto; }
.ft-masonry .ft:nth-child(3n) { aspect-ratio: 3/4; } .ft-masonry .ft:nth-child(3n+1) { aspect-ratio: 1; } .ft-masonry .ft:nth-child(3n+2) { aspect-ratio: 4/5; }

.ft-tall { grid-template-columns: repeat(8, minmax(0,1fr)); --ar: 2/3; }
.ft-tall .ft-q { font-size: .78rem; }


.ft-duo img { filter: grayscale(1) contrast(1.05); }
.ft-duo .ft::before { content: ""; position: absolute; inset: 0; background: #241f26; mix-blend-mode: lighten; opacity: .9; pointer-events: none; }
.ft-duo .ft::after { content: ""; position: absolute; inset: 0; background: #c9c3cc; mix-blend-mode: multiply; opacity: .85; pointer-events: none; }
.ft-duo .ft-cap, .ft-duo .ft-tag { z-index: 2; }

.ft-bw img { filter: grayscale(1); }
.ft-bw .ft:hover img { filter: grayscale(0); }

.ft-center .ft-cap { inset: 0; display: flex; flex-direction: column; justify-content: center; text-align: center; padding: 20px; background: rgba(20,17,22,.62); }
.ft-center .ft-q { font-size: 1.1rem; font-weight: 700; font-family: var(--serif); letter-spacing: -.02em; line-height: 1.15; }
.ft-center .ft:hover .ft-cap { background: rgba(20,17,22,.3); }

.ft-split { grid-template-columns: repeat(3, minmax(0,1fr)); }
.ft-split .ft { aspect-ratio: auto; display: grid; grid-template-columns: 1fr 1fr; }
.ft-split .ft img { aspect-ratio: 4/5; }
.ft-split .ft-cap { position: static; background: #1f2024; padding: 20px; display: flex; flex-direction: column; justify-content: flex-end; }

.ft-top .ft-cap { inset: 0 0 auto; padding: 16px 16px 60px; background: linear-gradient(rgba(0,0,0,.9), rgba(0,0,0,.5) 50%, transparent); }
.ft-top .ft-q { order: 2; margin: 10px 0 0; }
.ft-top .ft-cap { display: flex; flex-direction: column; }

.ft-blocks { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; }
.ft-blocks .blk .ft-grid { grid-template-columns: 1fr 1fr; --ar: 1/1.07; }
.ft-blocks .blk h3 { margin: 0 0 12px; font-size: 1.2rem; }
.ft-blocks .blk h3 small { display: block; font: 800 .68rem var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--ac); margin-bottom: 6px; }

.ft-count { display: grid; grid-template-columns: 220px 1fr; gap: 22px; align-items: center; margin-bottom: 22px; }
.ft-count .num { font-family: var(--serif); font-size: 5rem; line-height: .9; color: var(--ac); font-weight: 700; }
.ft-count .lbl { font: 800 .8rem var(--sans); letter-spacing: .1em; text-transform: uppercase; color: var(--text); margin-top: 8px; }
.section-cream .ft-count .lbl, .section-paper .ft-count .lbl { color: var(--dark-text); }

.ft-chess .ft-txt { background: #241f26; }
.ft-chess .ft-txt .ft-q { font-size: 1rem; }

.ft-num .ft-tag { font-family: var(--serif); font-size: 1.1rem; padding: 6px 10px; background: var(--ac); color: #0b0b0b; }

.ft-wide { grid-template-columns: repeat(3, minmax(0,1fr)); --ar: 16/9; }
.ft-wide .ft-cap { inset: 0; display: flex; flex-direction: column; justify-content: center; width: 60%; padding: 20px; background: linear-gradient(90deg, rgba(0,0,0,.92), rgba(0,0,0,.6) 70%, transparent); }
.ft-wide .ft img { object-position: 80% 20% !important; }

.ft-quote-top .ft-cap { inset: 0; display: flex; flex-direction: column; justify-content: space-between; padding: 16px; background: linear-gradient(rgba(0,0,0,.85), transparent 45%, transparent 60%, rgba(0,0,0,.85)); }
.ft-quote-top .ft-q { font-family: var(--serif); font-size: 1.05rem; line-height: 1.15; letter-spacing: -.02em; font-weight: 700; }

.ft-side { display: grid; grid-template-columns: 44px 1fr; gap: 10px; margin-bottom: 12px; }
.ft-side .lab { writing-mode: vertical-rl; transform: rotate(180deg); text-align: center; font: 800 .72rem var(--sans); letter-spacing: .2em; text-transform: uppercase; color: var(--ac); border-right: 1px solid color-mix(in srgb, var(--ac) 40%, transparent); }

.ft-stagger .ft:nth-child(2n) { transform: translateY(28px); }
.ft-stagger { padding-bottom: 28px; }

.ft-hero3 { grid-template-columns: 1.2fr 1fr 1fr; }
.ft-hero3 .ft:first-child { grid-row: span 2; --ar: auto; }
.ft-hero3 .ft:first-child .ft-q { font-size: 1.35rem; font-family: var(--serif); font-weight: 700; letter-spacing: -.02em; line-height: 1.15; }

.ft-scroll { display: flex; gap: var(--g); overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 8px; }
.ft-scroll .ft { flex: 0 0 min(280px, 70vw); scroll-snap-align: start; border-radius: 14px; }

.ft-tier { grid-template-columns: repeat(6, minmax(0,1fr)); }
.ft-tier .ft.t1 { grid-column: span 2; grid-row: span 2; }
.ft-tier .ft.t1 .ft-q { font-size: 1.15rem; }

.ft-cover .ft-cap { inset: 0; display: flex; flex-direction: column; justify-content: flex-end; padding: 16px; background: linear-gradient(transparent 30%, rgba(0,0,0,.9)); }
.ft-cover .ft-n { font-family: var(--serif); font-size: 1.35rem; letter-spacing: -.03em; line-height: 1; font-weight: 700; order: 1; }
.ft-cover .ft-r { order: 2; margin: 6px 0 10px; }
.ft-cover .ft-q { order: 3; margin: 0; font-size: .82rem; opacity: .9; }

.ft-frame { gap: 14px; background: transparent; }
.ft-frame .ft { border-radius: 14px; outline: 1px solid color-mix(in srgb, var(--ac) 40%, transparent); outline-offset: 4px; }

.ft-tint img { filter: saturate(.15) brightness(.85); }
.ft-tint .ft:hover img { filter: none; }

.ft-half .ft-cap { inset: 0; padding: 16px; background: linear-gradient(transparent, rgba(0,0,0,.95) 55%); display: flex; flex-direction: column; justify-content: flex-end; }
.ft-half .ft-q { font-size: 1rem; font-weight: 700; }

.ft-tabs { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; }
.ft-tabs button { all: unset; cursor: pointer; padding: 9px 16px; border-radius: 999px; border: 1px solid color-mix(in srgb, var(--text) 18%, transparent); color: var(--text); font: 800 .85rem var(--sans); }
.ft-tabs button[aria-pressed="true"] { background: var(--btn); color: var(--on-btn); border-color: transparent; }
.section-cream .ft-tabs button, .section-paper .ft-tabs button { color: var(--dark-text); border-color: color-mix(in srgb, var(--dark-text) 18%, transparent); }
.ft-fade .ft { transition: opacity .3s; }
.ft-fade .ft.off { opacity: .18; }

.ft-round { gap: 10px; background: transparent; border-radius: 0; overflow: visible; }
.ft-round .ft { border-radius: 22px; }

.ft-bleed { border-radius: 0; gap: 0; }
.ft-bleed .ft-cap { padding: 90px 22px 22px; }
.ft-bleed .ft-q { font-size: 1rem; }

@media (max-width: 980px) {
  .ft-grid, .ft-mosaic, .ft-tier { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .ft-tall { grid-template-columns: repeat(4, minmax(0,1fr)); }
  .ft-split, .ft-wide, .ft-hero3 { grid-template-columns: 1fr 1fr; }
  .ft-hero3 .ft:first-child { grid-row: auto; grid-column: span 2; --ar: 16/10; }
  .ft-masonry { columns: 2; }
  .ft-blocks { grid-template-columns: 1fr; }
  .ft-count { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .ft-grid, .ft-mosaic, .ft-tier { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .ft-tall { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .ft-split, .ft-wide { grid-template-columns: 1fr; }
  .ft-split .ft { grid-template-columns: 1fr 1fr; }
  .ft-q { font-size: .8rem; }
  .ft-cap { padding: 50px 10px 10px; }
  .ft-stagger .ft:nth-child(2n) { transform: translateY(16px); }
}


.ft-masonry.ft-m3 { columns: 3; }
.ft-masonry.ft-m3 .ft-q { font-size: 1.05rem; }
.ft-masonry.ft-m5 { columns: 5; }
.ft-masonry.ft-m5 .ft-q { font-size: .78rem; }
.ft-masonry.ft-m5 .ft-cap { padding: 50px 12px 12px; }
.ft-masonry.ft-mgap { column-gap: 12px; background: transparent; overflow: visible; }
.ft-masonry.ft-mgap .ft { margin-bottom: 12px; border-radius: 18px; }
.ft-cols { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.ft-cols .col { display: flex; flex-direction: column; gap: var(--g); background: var(--black); border-radius: var(--radius); overflow: hidden; }
.ft-cols .col .ft-head { margin: 18px 16px 10px; }
.ft-cols .col .ft { aspect-ratio: auto; }
.ft-cols .col .ft img { height: auto; }
.ft-cols .col .ft:nth-child(3n+2) { aspect-ratio: 1; } .ft-cols .col .ft:nth-child(3n) { aspect-ratio: 4/5; } .ft-cols .col .ft:nth-child(3n+1) { aspect-ratio: 3/4; }
.ft-mosaic2 { grid-template-columns: repeat(6, minmax(0,1fr)); grid-auto-rows: 150px; grid-auto-flow: dense; }
.ft-mosaic2 .ft { aspect-ratio: auto; grid-row: span 2; }
.ft-mosaic2 .ft.w { grid-column: span 2; }
.ft-mosaic2 .ft.h { grid-row: span 3; }
.ft-mosaic2 .ft.xl { grid-column: span 2; grid-row: span 3; }
.ft-mosaic2 .ft.xl .ft-q { font-size: 1.15rem; }
.ft-mosaic2.ft-mgap { gap: 12px; background: transparent; overflow: visible; }
.ft-mosaic2.ft-mgap .ft { border-radius: 18px; }
@media (max-width: 980px) {
  .ft-masonry.ft-m3, .ft-masonry.ft-m5 { columns: 2; }
  .ft-cols { grid-template-columns: 1fr; }
  .ft-mosaic2 { grid-template-columns: repeat(4, minmax(0,1fr)); grid-auto-rows: 120px; }
}
@media (max-width: 600px) {
  .ft-mosaic2 { grid-template-columns: repeat(2, minmax(0,1fr)); grid-auto-rows: 110px; }
  .ft-mosaic2 .ft.xl, .ft-mosaic2 .ft.w { grid-column: span 2; }
}
.ft-cols.ft-cols4 { grid-template-columns: repeat(4, minmax(0,1fr)); gap: var(--g); padding-bottom: 40px; }
.ft-cols.ft-cols4 .col { border-radius: 0; overflow: visible; }
.ft-cols.ft-cols4 .col.down { transform: translateY(40px); }
@media (max-width: 980px){ .ft-cols.ft-cols4 { grid-template-columns: repeat(2, minmax(0,1fr)); } }


@media (hover: none) { .ft-hover .ft-q { max-height: none; opacity: 1; margin-bottom: 10px; } .ft-hover .ft-cap { padding-top: 70px; } }
@media (max-width: 600px) {
  .ft-masonry.ft-m3 { columns: 1; }
  .ft-masonry.ft-m3 .ft-q { font-size: .95rem; }
  .ft-quote-top .ft-q { font-size: .85rem; }
  .ft-quote-top .ft-cap { padding: 12px; }
  .ft-cols .col .ft-head { margin: 14px 12px 8px; }
}


.ft-rows { display: grid; grid-template-columns: repeat(var(--n, 4), minmax(0,1fr)); gap: var(--g); background: var(--black); border-radius: var(--radius); overflow: hidden; align-items: stretch; }
.ft-rows[data-n="2"] { --n: 2; }
.ft-rows .col { display: flex; flex-direction: column; gap: var(--g); min-width: 0; }
.ft-rows .ft { aspect-ratio: auto; flex: 1 1 auto; position: relative; }
.ft-rows .ft img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ft-rows .col:nth-child(odd) .ft:nth-child(3n+1), .ft-rows .col:nth-child(even) .ft:nth-child(3n+2) { aspect-ratio: 1; }
.ft-rows .col:nth-child(odd) .ft:nth-child(3n+2), .ft-rows .col:nth-child(even) .ft:nth-child(3n) { aspect-ratio: 4/5; }
.ft-rows .col:nth-child(odd) .ft:nth-child(3n), .ft-rows .col:nth-child(even) .ft:nth-child(3n+1) { aspect-ratio: 3/4; }
.ft-rows.ft-bw .ft img { filter: grayscale(1); }

