:root{--bg:#eceae4;--surf:#ffffff;--soft:#f6f4f2;--text:#0a0a0a;--accent:#c8102e;--act:#ffffff;--stext:#141414;--muted:#8a8880;--border:rgba(10,10,10,0.14);--rad:0px;--hf:Copperplate, 'Copperplate Gothic Light', 'Segoe UI', sans-serif;--bf:Baskerville, 'Baskerville Old Face', 'Palatino Linotype', Georgia, serif;--pad:5.6rem}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:var(--bf);line-height:1.6;overflow-x:hidden}
h1,h2,h3{font-family:var(--hf);line-height:1.05;font-weight:800}
.hnav{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;justify-content:space-between;
  align-items:center;padding:16px 6vw;background:color-mix(in srgb,var(--bg) 82%,transparent);
  backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}
.hbrand{font-family:var(--hf);font-weight:800;font-size:20px;text-decoration:none;color:var(--text);letter-spacing:.02em}
.hnav nav a{color:var(--muted);text-decoration:none;margin-left:22px;font-size:14px;letter-spacing:.06em}
.hnav nav a:hover{color:var(--accent)}
.hkick{display:inline-block;color:var(--accent);letter-spacing:.28em;font-size:12px;text-transform:uppercase;font-weight:700}
.hintro{min-height:92vh;display:flex;flex-direction:column;justify-content:center;padding:0 6vw;max-width:1100px;margin:0 auto}
.hintro h1{font-size:clamp(44px,9vw,120px);margin:14px 0 18px}
.hintro p{color:var(--muted);font-size:clamp(17px,2.2vw,22px);max-width:620px}
.hscrollhint{margin-top:34px;color:var(--accent);letter-spacing:.14em;font-size:13px;text-transform:uppercase}
.hwrap{height:520vh;position:relative}
.hsticky{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;align-items:center}
.htrack{display:flex;gap:26px;padding:0 6vw;will-change:transform}
.hpanel{flex:0 0 auto;width:min(74vw,460px);height:70vh;border-radius:var(--rad);
  border:1px solid var(--border);padding:34px;display:flex;flex-direction:column;justify-content:flex-end;
  background:var(--soft);overflow:hidden;position:relative}
.hlead,.hend{background:var(--surf);color:var(--stext);justify-content:center}
.hlead h2,.hend h2{font-size:clamp(28px,4vw,46px);margin:12px 0}
.hlead p,.hend p{color:color-mix(in srgb,var(--stext) 74%,transparent);font-size:16px}
.hsvc{background:var(--bg);justify-content:flex-start}
.hnum{font-family:var(--hf);font-size:52px;color:var(--accent);opacity:.5;font-weight:800}
.hsvc h3{font-size:26px;margin:12px 0 10px}
.hsvc p{color:var(--muted)}
.hshot{padding:0;border:none}
.hshot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hcap{position:relative;z-index:2;color:#fff;background:rgba(0,0,0,.5);padding:6px 12px;
  border-radius:99px;font-size:13px;letter-spacing:.08em;align-self:flex-start}
.hend .hbtn{align-self:flex-start;margin-top:18px}
.hbtn{display:inline-block;background:var(--accent);color:var(--act);text-decoration:none;
  padding:14px 30px;border-radius:99px;font-weight:700;letter-spacing:.04em}
.hbtn:hover{filter:brightness(1.08)}
.hbar{position:absolute;left:6vw;right:6vw;bottom:34px;height:3px;background:var(--border);border-radius:2px}
.hbar span{display:block;height:100%;width:0;background:var(--accent);border-radius:2px}
.hband,.hcontact{max-width:900px;margin:0 auto;padding:var(--pad) 6vw}
.hband h2,.hcontact h2{font-size:clamp(28px,4.5vw,50px);margin-bottom:16px}
.hband p{color:var(--muted);font-size:18px}
.hcontact ul{list-style:none;padding:0;margin:22px 0;display:grid;gap:12px}
.hcontact li{border-top:1px solid var(--border);padding-top:12px;font-size:18px}
.hcontact li span{display:block;color:var(--accent);font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:4px}
.hfoot{text-align:center;padding:40px;color:var(--muted);border-top:1px solid var(--border);
  font-size:13px;letter-spacing:.1em;text-transform:uppercase}
body.hreduce .hwrap{height:auto}
body.hreduce .hsticky{position:static;height:auto;display:block}
body.hreduce .htrack{flex-direction:column;transform:none!important;gap:20px}
body.hreduce .hpanel{width:auto;height:auto;min-height:240px}
body.hreduce .hshot{min-height:320px}
body.hreduce .hbar{display:none}
@media(max-width:720px){.hnav nav a{margin-left:14px;font-size:12px}.hpanel{width:82vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hscrollhint{display:none}}


.xq{box-sizing:border-box;font-family:Baskerville, 'Baskerville Old Face', 'Palatino Linotype', Georgia, serif;color:#0a0a0a;padding:56px 24px;width:100%}
.xq *{box-sizing:border-box;margin:0}
.xq .xq-wrap{max-width:1060px;margin:0 auto}
.xq h2{font-family:Copperplate, 'Copperplate Gothic Light', 'Segoe UI', sans-serif;font-size:1.7rem;line-height:1.2;margin-bottom:8px}
.xq .xq-kick{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#c8102e;margin-bottom:10px;font-weight:700}

.xq-strip{padding-left:0;padding-right:0}
.xq-strip .xq-wrap{padding:0 24px}
.xq-striprail{list-style:none;display:flex;gap:12px;overflow-x:auto;padding:14px 24px;scroll-snap-type:x mandatory}
.xq-striprail li{flex:0 0 min(64vw,300px);scroll-snap-align:start}
.xq-striprail img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:0px;display:block}


/* =====================================================
   DESIGN DNA: seventies-funk
   Whole-page visual system applied over the layout
   archetype. Appended last so it wins the cascade.
   ===================================================== */
html::after{content:'';position:fixed;inset:0;z-index:99990;pointer-events:none;border:none;background:none;background:linear-gradient(90deg,#c8102e,#d85a36,#be3235,#922d50);background-size:100% 10px;background-repeat:no-repeat;background-position:top}
html::before{content:'';position:fixed;inset:0;z-index:99980;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='70'%3E%3Cpath d='M0 70a70 70 0 0 1 140 0z' fill='%23c8102e'/%3E%3C/svg%3E");opacity:.06;}
h1,h2,h3{font-family:'Bookman Old Style', 'URW Bookman', Georgia, serif !important;letter-spacing:-0.01em !important;font-weight:800 !important;font-style:italic !important}
img{filter:sepia(.38) saturate(1.35) contrast(.98);border-radius:16px !important;border:3px solid rgba(200,16,46,.8) !important}
a[class*="btn"],button,span[class*="btn"]{border-radius:14px !important;border:3px solid #0a0a0a !important;font-weight:800}
div[class*="card"]:not([class*="cards"]),article[class*="card"],a[class*="card"],figure[class*="card"],li[class*="card"]{border-radius:18px !important;border:2px solid rgba(10,10,10,.7) !important}
