:root { --ink:#1a140c; --gold:#b8892e; --paper:#f6f1e8; --line:#e2d6c2; --muted:#6b5e4e; --navy:#2a2118; }
* { box-sizing:border-box; }
body { margin:0; font-family:"Segoe UI", Arial, sans-serif; color:var(--ink); background:var(--paper); line-height:1.6; }
img { max-width:100%; height:auto; display:block; }
a { color:#7a5a1a; text-decoration:none; }
a:hover { color:var(--gold); }
h1,h2,h3 { font-family:Georgia, serif; color:var(--navy); margin:0 0 .55em; line-height:1.25; }
.wrap { width:min(1160px, calc(100% - 32px)); margin:0 auto; }
.topbar { background:#1a140c; color:#ddd2c2; font-size:13px; }
.topbar .wrap { display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap; padding:8px 0; }
.topbar a { color:#f0e6d4; }
.brandbar { background:#fff; border-bottom:3px solid var(--gold); }
.brandbar .wrap { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 0; }
.logo { display:flex; align-items:center; gap:12px; color:var(--navy); }
.logo img { height:50px; width:auto; }
.logo span { font-size:13px; color:var(--muted); display:block; }
.btn { display:inline-flex; align-items:center; padding:10px 16px; font-weight:600; font-size:14px; border-radius:2px; }
.btn-gold { background:var(--gold); color:#1a1408; }
.btn-gold:hover { color:#1a1408; filter:brightness(1.08); }
.btn-line { border:1px solid var(--navy); color:var(--navy); background:#fff; }
.btn-line:hover { background:var(--navy); color:#fff; }
nav.main { background:#2a2118; position:sticky; top:0; z-index:20; }
nav.main ul { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; }
nav.main a { color:#fff; display:block; padding:12px 16px; font-size:14px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; }
nav.main a:hover { color:#f3d48a; background:rgba(255,255,255,.06); }
.nav-toggle { display:none; margin:8px; background:transparent; color:#fff; border:1px solid #c9b48a; padding:8px 12px; }
.hero { position:relative; min-height:70vh; color:#fff; display:flex; align-items:flex-end; overflow:hidden; }
.hero-slides { position:absolute; inset:0; }
.hero-slide { position:absolute; inset:0; opacity:0; background-size:cover; background-position:center; animation:fade 28s infinite; }
.hero-slide:nth-child(1){animation-delay:0s} .hero-slide:nth-child(2){animation-delay:7s} .hero-slide:nth-child(3){animation-delay:14s} .hero-slide:nth-child(4){animation-delay:21s}
@keyframes fade { 0%{opacity:0} 6%{opacity:1} 22%{opacity:1} 28%{opacity:0} 100%{opacity:0} }
.hero-mask { position:absolute; inset:0; background:linear-gradient(180deg, rgba(26,20,12,.15), rgba(26,20,12,.82)); }
.hero-content { position:relative; z-index:2; width:min(1160px, calc(100% - 32px)); margin:0 auto; padding:48px 0 56px; }
.eyebrow { color:#e7c56a; letter-spacing:.16em; text-transform:uppercase; font-size:12px; font-weight:700; }
.hero h1 { color:#fff; font-size:clamp(30px,5vw,52px); max-width:16ch; }
.hero p { max-width:60ch; color:#efe6d6; }
.hero-actions { display:flex; gap:10px; flex-wrap:wrap; }
section { padding:50px 0; }
.section-kicker { color:var(--gold); letter-spacing:.14em; text-transform:uppercase; font-size:12px; font-weight:700; }
.muted { color:var(--muted); }
.grid-4,.grid-3,.grid-2 { display:grid; gap:16px; }
.grid-4 { grid-template-columns:repeat(4,1fr); }
.grid-3 { grid-template-columns:repeat(3,1fr); }
.grid-2 { grid-template-columns:1fr 1fr; }
.card { background:#fff; border:1px solid var(--line); color:inherit; overflow:hidden; }
.card img { width:100%; aspect-ratio:1; object-fit:contain; background:#fff; padding:8px; }
.card .pad { padding:12px 14px 16px; }
.card h3 { font-size:15px; margin:0 0 6px; }
.desc { font-size:13px; color:var(--muted); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.facts { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.fact { background:#fff; border-left:3px solid var(--gold); padding:14px 16px; }
.fact b { display:block; font-size:20px; font-family:Georgia,serif; }
.cta-band { background:#1a140c; color:#fff; padding:42px 0; }
.cta-band h2 { color:#fff; }
.crumb { font-size:13px; color:var(--muted); padding:18px 0 0; }
.detail { display:grid; grid-template-columns:1fr 1fr; gap:28px; padding:24px 0 48px; }
.detail-photo { background:#fff; border:1px solid var(--line); padding:16px; }
.detail-photo img { width:100%; max-height:520px; object-fit:contain; }
.actions { display:flex; gap:10px; flex-wrap:wrap; margin:16px 0; }
.info-card { background:#fff; border:1px solid var(--line); padding:18px; margin-bottom:14px; }
.pager { display:flex; gap:8px; flex-wrap:wrap; margin:20px 0; }
.pager a,.pager span { padding:7px 11px; border:1px solid var(--line); background:#fff; }
.pager .on { background:#2a2118; color:#fff; border-color:#2a2118; }
footer { background:#140f0a; color:#cbbda8; padding:30px 0 14px; font-size:14px; }
footer h3 { color:#fff; font-size:16px; }
footer a { color:#eadcc4; }
.footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:22px; }
.copy { border-top:1px solid #3a2f22; margin-top:18px; padding-top:12px; font-size:12px; }
.prose { max-width:74ch; }
.prose p { margin:0 0 1em; }
.wa-float { position:fixed; right:16px; bottom:16px; background:#25D366; color:#083516; font-weight:700; padding:12px 16px; border-radius:999px; }
.wa-float:hover { color:#083516; }
@media (max-width:900px){ .grid-4,.grid-3,.facts,.detail,.footer-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:640px){
  .nav-toggle{display:inline-block;}
  nav.main ul{display:none;width:100%;flex-direction:column;}
  nav.main.open ul{display:flex;}
  .grid-4,.grid-3,.facts,.detail,.footer-grid{grid-template-columns:1fr;}
}

/* === fail-patch enrich (senkosteel-inspired layout density) === */
:root{--fp-ink:#0B1220;--fp-blue:#1E5AA8;--fp-blue-soft:#8FB1DD;--fp-muted:#5B6B7C;--fp-bg:#F5F7FA;--fp-line:#D7DEE7;--fp-max:1160px;--fp-s-4:1rem;--fp-s-5:1.5rem;--fp-s-6:2rem;--fp-s-7:3rem;--fp-s-8:4rem;--fp-s-9:5rem}
.full-bleed,.hero.full-bleed,.hero-full,.banner-full{position:relative;isolation:isolate;overflow:hidden;min-height:100vh;min-height:70vh;background-size:cover;background-position:center}
.hero.full-bleed{display:flex;align-items:flex-end;color:#fff;background:#0B1220}
.hero.full-bleed .hero-media,.hero-full .hero-media{position:absolute;inset:0;z-index:-2}
.hero.full-bleed .hero-media img,.hero-full .hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.hero.full-bleed::after,.hero-full::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,rgba(11,18,32,.78),rgba(11,18,32,.45) 55%,rgba(11,18,32,.55));pointer-events:none}
.hero.full-bleed .hero-inner,.hero.full-bleed .wrap{position:relative;z-index:1;padding:var(--fp-s-9) 1.25rem var(--fp-s-8);max-width:760px}
.hero.full-bleed h1{color:#fff;font-size:clamp(1.75rem,4vw,3rem);line-height:1.15;margin:0 0 1rem}
.hero.full-bleed p,.hero.full-bleed .hero-lead{color:#D5DFEB;font-size:1.05rem;line-height:1.6;max-width:44em}
.hero-strip{background:rgba(255,255,255,.07);border-top:1px solid rgba(255,255,255,.14)}
.hero-strip .wrap,.fp-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0;max-width:var(--fp-max);margin:0 auto;padding:0 1.25rem}
.hero-strip div,.fp-strip>div{padding:1.25rem 1.25rem 1.25rem 0;border-right:1px solid rgba(255,255,255,.12)}
.hero-strip div:last-child,.fp-strip>div:last-child{border-right:0}
.fp-section{padding:var(--fp-s-8) 1.25rem;background:#fff}
.fp-section.alt{background:var(--fp-bg)}
.fp-wrap{max-width:var(--fp-max);margin:0 auto}
.fp-section h2{font-size:clamp(1.35rem,2.5vw,1.85rem);margin:0 0 1rem;color:var(--fp-ink)}
.fp-section .lead{color:var(--fp-muted);font-size:1.05rem;line-height:1.65;max-width:48em;margin:0 0 1.75rem}
.fp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem}
.fp-card{background:#fff;border:1px solid var(--fp-line);border-radius:10px;overflow:hidden;box-shadow:0 1px 2px rgba(11,18,32,.04)}
.fp-card img{width:100%;height:180px;object-fit:cover;display:block;background:#e8eef5}
.fp-card .body{padding:1rem 1.05rem 1.2rem}
.fp-card h3{margin:0 0 .4rem;font-size:1rem;color:var(--fp-ink)}
.fp-card p{margin:0;color:var(--fp-muted);font-size:.92rem;line-height:1.5}
.fp-split{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center}
.fp-split img{width:100%;border-radius:12px;object-fit:cover;max-height:420px}
.fp-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:1.5rem}
.fp-facts div{background:#fff;border:1px solid var(--fp-line);border-radius:10px;padding:1rem 1.1rem}
.fp-facts strong{display:block;font-size:1.35rem;color:var(--fp-blue);margin-bottom:.25rem}
.fp-cta{background:var(--fp-ink);color:#fff;padding:var(--fp-s-8) 1.25rem;text-align:center}
.fp-cta h2{color:#fff;margin:0 0 .75rem}
.fp-cta p{color:#D5DFEB;max-width:40em;margin:0 auto 1.25rem;line-height:1.6}
.fp-btn{display:inline-block;background:var(--fp-blue);color:#fff;padding:.85rem 1.35rem;border-radius:8px;text-decoration:none;font-weight:600}
@media (max-width:860px){
  .fp-split{grid-template-columns:1fr}
  .hero-strip .wrap,.fp-strip{grid-template-columns:1fr 1fr}
  .hero.full-bleed{min-height:60vh}
}
@media (max-width:560px){
  .hero-strip .wrap,.fp-strip{grid-template-columns:1fr}
}


/* fail-patch pass2 densify */
.fp-section{padding:4.5rem 1.25rem}.fp-wrap{max-width:1160px;margin:0 auto}
.fp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem}
.fp-card{border:1px solid #d7dee7;border-radius:10px;overflow:hidden;background:#fff}
.fp-card img{width:100%;height:180px;object-fit:cover;display:block}
.fp-card .body{padding:1rem}.fp-card h3{margin:0 0 .35rem;font-size:1rem}
.fp-card p{margin:0;color:#5b6b7c;font-size:.92rem;line-height:1.5}
.fp-split{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center}
.fp-split img{width:100%;border-radius:12px;object-fit:cover;max-height:420px}
.fp-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:1.25rem}
.fp-facts div{border:1px solid #d7dee7;border-radius:10px;padding:1rem;background:#fff}
.fp-facts strong{display:block;font-size:1.25rem;color:#1e5aa8;margin-bottom:.2rem}
.fp-cta{background:#0b1220;color:#fff;text-align:center;padding:4rem 1.25rem}
.fp-cta h2{color:#fff;margin:0 0 .75rem}.fp-cta p{color:#d5dfeb;max-width:40em;margin:0 auto 1.25rem}
.fp-btn{display:inline-block;background:#1e5aa8;color:#fff;padding:.85rem 1.35rem;border-radius:8px;text-decoration:none;font-weight:600}
.full-bleed{min-height:100vh;background-size:cover;background-position:center}
@media(max-width:860px){.fp-split{grid-template-columns:1fr}}

/* fail-patch pass2 densify */
.fp-section{padding:4.5rem 1.25rem}.fp-wrap{max-width:1160px;margin:0 auto}
.fp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem}
.fp-card{border:1px solid #d7dee7;border-radius:10px;overflow:hidden;background:#fff}
.fp-card img{width:100%;height:180px;object-fit:cover;display:block}
.fp-card .body{padding:1rem}.fp-card h3{margin:0 0 .35rem;font-size:1rem}
.fp-card p{margin:0;color:#5b6b7c;font-size:.92rem;line-height:1.5}
.fp-split{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center}
.fp-split img{width:100%;border-radius:12px;object-fit:cover;max-height:420px}
.fp-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:1.25rem}
.fp-facts div{border:1px solid #d7dee7;border-radius:10px;padding:1rem;background:#fff}
.fp-facts strong{display:block;font-size:1.25rem;color:#1e5aa8;margin-bottom:.2rem}
.fp-cta{background:#0b1220;color:#fff;text-align:center;padding:4rem 1.25rem}
.fp-cta h2{color:#fff;margin:0 0 .75rem}.fp-cta p{color:#d5dfeb;max-width:40em;margin:0 auto 1.25rem}
.fp-btn{display:inline-block;background:#1e5aa8;color:#fff;padding:.85rem 1.35rem;border-radius:8px;text-decoration:none;font-weight:600}
.full-bleed{min-height:100vh;background-size:cover;background-position:center}
@media(max-width:860px){.fp-split{grid-template-columns:1fr}}

/* fail-patch pass2 densify */
.fp-section{padding:4.5rem 1.25rem}.fp-wrap{max-width:1160px;margin:0 auto}
.fp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem}
.fp-card{border:1px solid #d7dee7;border-radius:10px;overflow:hidden;background:#fff}
.fp-card img{width:100%;height:180px;object-fit:cover;display:block}
.fp-card .body{padding:1rem}.fp-card h3{margin:0 0 .35rem;font-size:1rem}
.fp-card p{margin:0;color:#5b6b7c;font-size:.92rem;line-height:1.5}
.fp-split{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center}
.fp-split img{width:100%;border-radius:12px;object-fit:cover;max-height:420px}
.fp-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:1.25rem}
.fp-facts div{border:1px solid #d7dee7;border-radius:10px;padding:1rem;background:#fff}
.fp-facts strong{display:block;font-size:1.25rem;color:#1e5aa8;margin-bottom:.2rem}
.fp-cta{background:#0b1220;color:#fff;text-align:center;padding:4rem 1.25rem}
.fp-cta h2{color:#fff;margin:0 0 .75rem}.fp-cta p{color:#d5dfeb;max-width:40em;margin:0 auto 1.25rem}
.fp-btn{display:inline-block;background:#1e5aa8;color:#fff;padding:.85rem 1.35rem;border-radius:8px;text-decoration:none;font-weight:600}
.full-bleed{min-height:100vh;background-size:cover;background-position:center}
@media(max-width:860px){.fp-split{grid-template-columns:1fr}}
