@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,600;0,700;1,600&family=Hanken+Grotesk:wght@400;500;600;700&family=Cinzel:wght@600;700&family=IBM+Plex+Mono:wght@500&display=swap');
:root{ --ink:#1A1A1A; --bronze:#30220A; --gold:#B09E80; --gold6:#998769; --gold1:#F0EADD; --ivory:#FAF8F4; --text:#4D473C; --muted:#8C8270; --line:#E8E2D6; }
*{ box-sizing:border-box; margin:0; }
body{ font-family:'Hanken Grotesk',system-ui,sans-serif; color:var(--text); background:var(--ivory); line-height:1.65; -webkit-font-smoothing:antialiased; }
h1,h2,h3{ font-family:'Cormorant Garamond',Georgia,serif; font-weight:600; color:var(--ink); line-height:1.12; letter-spacing:-.01em; }
a{ color:var(--gold6); text-decoration:none; } a:hover{ color:var(--bronze); }
.fs-wrap{ max-width:820px; margin:0 auto; padding:0 24px; }
.fs-hdr{ position:sticky; top:0; z-index:10; background:rgba(250,248,244,.92); backdrop-filter:blur(8px); border-bottom:1px solid var(--line); }
.fs-hdr .fs-wrap{ max-width:1180px; height:66px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.fs-wm{ font-family:'Cinzel',serif; font-weight:600; font-size:20px; color:var(--ink); }
.fs-wm .b{ color:var(--bronze); } .fs-wm .p{ color:var(--gold); }
.fs-hdr nav{ display:flex; gap:22px; } .fs-hdr nav a{ font-size:14px; font-weight:600; color:var(--text); } .fs-hdr nav a:hover{ color:var(--ink); }
.fs-main{ padding:48px 24px 72px; }
.fs-back{ display:inline-flex; align-items:center; gap:6px; font-size:14.5px; font-weight:700; color:var(--bronze); background:var(--gold1); border:1px solid var(--line); border-radius:999px; padding:9px 18px; margin-bottom:26px; }
.fs-back:hover{ background:var(--gold); color:var(--ink); }
.fs-art h1{ font-size:clamp(30px,5vw,42px); margin:6px 0 10px; }
.fs-art h2{ font-size:26px; margin:30px 0 8px; } .fs-art h3{ font-size:20px; margin:22px 0 6px; }
.fs-art p{ margin:12px 0; font-size:17px; } .fs-art ul,.fs-art ol{ margin:12px 0 12px 22px; } .fs-art li{ margin:6px 0; font-size:17px; }
.fs-table{ width:100%; border-collapse:collapse; margin:18px 0; font-size:15.5px; }
.fs-table th,.fs-table td{ border:1px solid var(--line); padding:9px 13px; text-align:left; }
.fs-table th{ background:var(--gold1); color:var(--bronze); font-weight:700; }
.fs-table td{ font-variant-numeric:tabular-nums; }
.fs-img{ display:block; max-width:100%; height:auto; border-radius:14px; border:1px solid var(--line); margin:18px 0; }
.fs-video{ display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-radius:14px; border:1px solid var(--line); margin:18px 0; background:var(--gold1); }
.fs-cover{ margin:0 0 24px; }
.fs-cover-media{ display:block; width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:16px; border:1px solid var(--line); background:var(--gold1); }
.fs-card-cover{ display:block; width:calc(100% + 44px); margin:-22px -22px 14px -22px; aspect-ratio:16/9; object-fit:cover; background:var(--gold1); }
.fs-meta{ font-family:'IBM Plex Mono',monospace; font-size:12.5px; color:var(--muted); margin-bottom:8px; }
.fs-tags{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px; }
.fs-tag{ font-size:11px; font-weight:700; color:var(--bronze); background:var(--gold1); border-radius:999px; padding:3px 10px; }
a.fs-tag:hover{ background:var(--gold); color:var(--ink); }
.fs-draft{ background:#FBE9E4; border:1px solid #E7B9A8; color:#A23B2C; font-weight:600; font-size:13.5px; border-radius:10px; padding:12px 14px; margin-bottom:18px; }
.fs-related{ margin-top:46px; padding-top:28px; border-top:1px solid var(--line); }
.fs-related h3{ font-size:22px; margin-bottom:16px; }
.fs-cta{ margin-top:40px; background:linear-gradient(120deg,var(--bronze),var(--ink)); color:#fff; border-radius:18px; padding:28px 30px; }
.fs-cta h3{ color:#fff; font-size:24px; margin-bottom:6px; } .fs-cta p{ color:#D8CEBF; margin-bottom:16px; font-size:15px; }
.fs-btn{ display:inline-block; background:var(--gold); color:var(--ink); font-weight:600; border-radius:8px; padding:11px 22px; } .fs-btn:hover{ background:var(--gold6); color:#fff; }
.fs-cta-btns{ display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.fs-btn-wa{ background:#25D366; color:#fff; display:inline-flex; align-items:center; gap:7px; } .fs-btn-wa:hover{ background:#1EBE5A; color:#fff; } .fs-btn-wa svg{ width:18px; height:18px; }
.fs-head{ text-align:center; max-width:640px; margin:0 auto 10px; } .fs-eyebrow{ font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.14em; color:var(--gold6); font-weight:600; font-size:12.5px; }
.fs-head h1{ font-size:clamp(30px,5vw,44px); margin:10px 0; } .fs-head p{ font-size:16.5px; color:var(--muted); }
.fs-search{ position:relative; width:100%; margin:28px 0 14px; display:flex; align-items:center; }
.fs-search svg{ position:absolute; left:20px; width:20px; height:20px; color:var(--gold6); pointer-events:none; }
.fs-search input{ width:100%; font-family:'Hanken Grotesk',sans-serif; font-size:17px; color:var(--ink); background:#fff; border:1.5px solid var(--line); border-radius:14px; padding:16px 20px 16px 52px; outline:none; transition:border-color .15s,box-shadow .15s; }
.fs-search input:focus{ border-color:var(--gold); box-shadow:0 0 0 3px var(--gold1); }
.fs-nores{ text-align:center; color:var(--muted); margin:34px auto; max-width:460px; } .fs-nores a{ color:var(--gold6); font-weight:600; }
.fs-filters{ display:flex; gap:8px; flex-wrap:wrap; justify-content:center; margin:14px 0 30px; }
.fs-fil{ font-family:inherit; font-size:13px; font-weight:600; border:1.5px solid var(--line); background:#fff; color:var(--text); border-radius:999px; padding:7px 16px; cursor:pointer; text-decoration:none; }
.fs-fil:hover{ color:var(--text); border-color:var(--gold); } .fs-fil.on{ background:var(--ink); color:#fff; border-color:var(--ink); }
.fs-grid{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
@media(max-width:640px){ .fs-grid{ grid-template-columns:1fr; } }
.fs-card{ display:block; background:#fff; border:1px solid var(--line); border-radius:14px; padding:22px; box-shadow:0 1px 2px rgba(32,28,20,.05); overflow:hidden; }
.fs-card:hover{ border-color:var(--gold); } .fs-card h2{ font-size:22px; margin:4px 0 6px; color:var(--ink); } .fs-card p{ font-size:14px; color:var(--muted); } .fs-card .fs-date{ display:block; margin-top:12px; font-family:'IBM Plex Mono',monospace; font-size:11.5px; color:var(--muted); }
.fs-empty{ text-align:center; color:var(--muted); padding:30px 0; }
.fs-ft{ background:#141210; color:#8C8270; padding:28px 0; font-size:12.5px; } .fs-ft a{ color:#B3A892; }
