/* BIBLERAPS GILDED: the ONE look for every page (REBUILD-BRIEF.md, 2026-10-15).
   Gaudy gold, red velvet, black lacquer, tent-revival fire. Load after fonts.css + base.css, last.
   Every word is real HTML text; images never carry lettering. */
:root{
 --g1:#fff7cf;--g2:#f6d36b;--g3:#c8922a;--g4:#7d4f0d;--g5:#ffe9a0;
 --gold:#d9a83c;--goldtxt:#f3cf6a;--velvet:#4a0610;--velvet2:#2a0308;--lacq:#0d0806;--ink:#140b05;--cream:#fff4d8;--fire:#ff6a00;
 --metal:linear-gradient(180deg,var(--g1) 0%,var(--g2) 24%,var(--g3) 49%,var(--g4) 51%,var(--g3) 64%,var(--g2) 82%,var(--g5) 100%);
 --metal-h:linear-gradient(90deg,var(--g4),var(--g3) 18%,var(--g1) 50%,var(--g3) 82%,var(--g4));
 --cinzel:'Cinzel Decorative','Cormorant Garamond',Georgia,serif;--display:'Anton','Impact','Arial Narrow Bold',sans-serif;
 --serif:'Cormorant Garamond',Georgia,serif;--sans:'Inter','Helvetica Neue',Arial,sans-serif;--vcr:'VT323','Courier New',monospace;--script:'Lobster','Brush Script MT',cursive}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:hidden}
img{max-width:100%;display:block}
button{font:inherit;cursor:pointer}
a{color:var(--goldtxt)}

/* ---- the room: red velvet damask, every page ---- */
body.gilt{min-height:100vh;color:var(--cream);font:17px/1.55 var(--sans);overflow-x:hidden;
 background-color:var(--velvet2);
 background-image:
  radial-gradient(ellipse at 50% -10%,rgba(255,190,80,.22),transparent 55%),
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 120 120'%3E%3Cg fill='none' stroke='%23d9a83c' stroke-opacity='.10' stroke-width='1.4'%3E%3Cpath d='M60 6c10 18 30 20 30 40s-20 22-30 40c-10-18-30-20-30-40S50 24 60 6z'/%3E%3Ccircle cx='60' cy='46' r='6'/%3E%3Cpath d='M0 60c12-8 18-8 30 0M90 60c12-8 18-8 30 0M60 96c-6 10-6 14 0 24'/%3E%3C/g%3E%3C/svg%3E"),
  linear-gradient(180deg,var(--velvet) 0%,var(--velvet2) 60%,#140104 100%);
 background-attachment:fixed,auto,fixed}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.narrow{max-width:820px;margin:0 auto;padding:0 20px}

/* ---- gilded type ---- */
.gt{background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
 filter:drop-shadow(0 2px 0 #3a1d02) drop-shadow(0 6px 10px rgba(0,0,0,.6))}
h1.big,.h1{font:900 clamp(44px,8.5vw,112px)/.92 var(--cinzel);letter-spacing:-.01em;text-transform:uppercase}
h2.h2,.h2{font:900 clamp(32px,5.4vw,66px)/1 var(--cinzel);text-align:center;margin-bottom:12px;text-transform:uppercase}
.h3{font:700 clamp(22px,2.6vw,30px)/1.1 var(--cinzel);color:var(--goldtxt)}
.kick{font:600 13px/1.3 var(--sans);letter-spacing:.32em;text-transform:uppercase;color:var(--g2);margin-bottom:10px}
.kick.c{text-align:center}
.lead{max-width:760px;margin:0 auto 34px;text-align:center;font:500 clamp(18px,2vw,22px)/1.45 var(--serif);color:#f2dfb9}
.punch{font:400 clamp(26px,4vw,44px)/1 var(--display);text-transform:uppercase;color:#ffe600;-webkit-text-stroke:1.5px #000;
 text-shadow:3px 3px 0 #000,0 0 18px rgba(255,200,0,.45);letter-spacing:.02em}
.vcr{font-family:var(--vcr)}
.small{font-size:13px;opacity:.8}

/* ---- sections + dividers ---- */
.sec{padding:76px 0;position:relative}
.sec.lacq{background:linear-gradient(180deg,#120905,#070403);box-shadow:inset 0 1px 0 rgba(217,168,60,.5),inset 0 -1px 0 rgba(217,168,60,.5)}
.sec.cream{background:#fbf1d8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cpath d='M40 4c6 12 20 14 20 26S46 44 40 56C34 44 20 42 20 30S34 16 40 4z' fill='none' stroke='%23b8862b' stroke-opacity='.13'/%3E%3C/svg%3E");color:var(--ink)}
.sec.cream .lead{color:#5a3d16}.sec.cream .kick{color:#9a6a12}
.sec.cream .h3{color:#7d4f0d}
.rule{height:14px;border:0;margin:0;background:var(--metal-h);box-shadow:0 2px 0 #3a1d02,0 -1px 0 #fff3b0 inset;position:relative}
.rule::after{content:"\271D";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--velvet2);color:var(--g2);
 border:2px solid var(--gold);border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:20px}

/* ---- fire band (Leap of Faith): sits on the bottom edge of a hero or section ---- */
.fire{position:absolute;left:0;right:0;bottom:0;height:120px;pointer-events:none;overflow:hidden;z-index:1;mix-blend-mode:screen}
.fire::before,.fire::after{content:"";position:absolute;inset:-40px -10% 0;background:
 radial-gradient(28px 70px at 4% 100%,#fff2a8,#ff9a00 40%,rgba(255,60,0,.0) 70%),radial-gradient(34px 90px at 12% 100%,#ffe27a,#ff6a00 45%,transparent 72%),
 radial-gradient(26px 64px at 20% 100%,#fff2a8,#ff8a00 40%,transparent 70%),radial-gradient(40px 100px at 29% 100%,#ffd36a,#ff4d00 45%,transparent 72%),
 radial-gradient(30px 76px at 38% 100%,#fff2a8,#ff9a00 40%,transparent 70%),radial-gradient(36px 96px at 47% 100%,#ffe27a,#ff5a00 45%,transparent 72%),
 radial-gradient(28px 70px at 56% 100%,#fff2a8,#ff8a00 40%,transparent 70%),radial-gradient(42px 104px at 65% 100%,#ffd36a,#ff4d00 45%,transparent 72%),
 radial-gradient(30px 72px at 74% 100%,#fff2a8,#ff9a00 40%,transparent 70%),radial-gradient(36px 94px at 83% 100%,#ffe27a,#ff6a00 45%,transparent 72%),
 radial-gradient(28px 70px at 92% 100%,#fff2a8,#ff8a00 40%,transparent 70%),radial-gradient(34px 88px at 99% 100%,#ffd36a,#ff4d00 45%,transparent 72%);
 animation:flick 1.4s ease-in-out infinite alternate;transform-origin:bottom}
.fire::after{left:-14%;right:-4%;opacity:.75;animation-duration:1.05s;animation-delay:-.4s;filter:blur(2px)}
@keyframes flick{0%{transform:scaleY(.82) translateX(0)}35%{transform:scaleY(1.08) translateX(-6px)}70%{transform:scaleY(.92) translateX(5px)}100%{transform:scaleY(1.15) translateX(-2px)}}
@media (prefers-reduced-motion:reduce){.fire::before,.fire::after,.crawl ol{animation:none!important}}

/* ---- hero: photo + gold lettering in HTML over it ---- */
.hero{position:relative;min-height:min(78vh,760px);display:flex;align-items:flex-end;background:#000 center/cover no-repeat;overflow:hidden;border-bottom:6px solid var(--gold)}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,2,4,.15) 0%,rgba(20,2,4,.35) 45%,rgba(20,2,4,.92) 100%),radial-gradient(ellipse at 50% 120%,rgba(255,110,0,.35),transparent 60%)}
.hero .wrap{position:relative;z-index:2;padding-bottom:64px;width:100%}
.hero p.sub{font:500 clamp(19px,2.4vw,26px)/1.35 var(--serif);max-width:760px;color:#fff1cf;margin:6px 0 24px;text-shadow:0 2px 8px #000}

/* ---- gold frames for every photo ---- */
.gf{position:relative;padding:10px;background:var(--metal);box-shadow:0 0 0 2px #3a1d02,0 18px 40px rgba(0,0,0,.55),inset 0 0 0 2px rgba(255,247,207,.6);border-radius:4px}
.gf>img,.gf>video{width:100%;height:100%;object-fit:cover;box-shadow:inset 0 0 0 2px #3a1d02;border:2px solid #3a1d02;background:#000}
.gf::before,.gf::after{content:"\2726";position:absolute;color:#fff7cf;font-size:18px;text-shadow:0 1px 0 #3a1d02;line-height:1}
.gf::before{left:-2px;top:-4px}.gf::after{right:-2px;bottom:-5px}
.gf.r{border-radius:50%;padding:7px}.gf.r>img{border-radius:50%;aspect-ratio:1}
.cap{font:italic 500 16px/1.4 var(--serif);color:#e9cf9a;margin-top:10px;text-align:center}
.sec.cream .cap{color:#6b4a1c}

/* ---- buttons: gold bar, red velvet, black lacquer ---- */
.bbtn{display:inline-block;font:400 clamp(19px,2.6vw,25px)/1.05 var(--display);text-transform:uppercase;letter-spacing:.03em;
 padding:15px 26px;border:2px solid #3a1d02;border-radius:12px;background:var(--metal);color:#3b0008;text-decoration:none;text-align:center;
 box-shadow:0 5px 0 #5c3507,0 10px 22px rgba(0,0,0,.45),inset 0 1px 0 #fff;text-shadow:0 1px 0 rgba(255,255,255,.5);cursor:pointer;transition:transform .08s,filter .15s}
.bbtn:hover{filter:brightness(1.1) saturate(1.1);transform:translateY(-2px)}
.bbtn:active{transform:translateY(3px);box-shadow:0 2px 0 #5c3507}
.bbtn.r{background:linear-gradient(180deg,#ff5a4a,#d4140f 48%,#8d0606 52%,#c5170f);color:#fff;border-color:var(--g2);text-shadow:0 2px 0 #000;box-shadow:0 5px 0 #4a0303,0 10px 22px rgba(0,0,0,.45),inset 0 1px 0 #ffb0a0}
.bbtn.k{background:linear-gradient(#211510,#050302);color:var(--goldtxt);border-color:var(--gold);text-shadow:none;box-shadow:0 5px 0 #000,0 10px 22px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,220,140,.25)}
.bbtn.y,.bbtn.g{background:var(--metal);color:#3b0008}
.bbtn small{display:block;font:500 12px/1.3 var(--sans);text-transform:none;letter-spacing:0;opacity:.85;margin-top:4px;text-shadow:none}
.bbtn.sm{font-size:18px;padding:10px 16px}
.row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;align-items:center}
.row.l{justify-content:flex-start}

/* ---- cards: black lacquer with a gold hairline ---- */
.grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.card{display:flex;flex-direction:column;background:linear-gradient(180deg,#1b0f09,#0a0503);border:2px solid var(--gold);border-radius:8px;overflow:hidden;
 box-shadow:0 14px 34px rgba(0,0,0,.5),inset 0 0 0 4px #0a0503,inset 0 0 0 5px rgba(217,168,60,.45);color:var(--cream);text-decoration:none;transition:transform .15s}
a.card:hover,button.card:hover{transform:translateY(-4px)}
.card>img,.card .pic{width:100%;aspect-ratio:4/3;object-fit:cover;border-bottom:2px solid var(--gold);background:#000 center/cover;position:relative}
.card .in{padding:18px 18px 20px;display:flex;flex-direction:column;gap:6px;flex:1}
.card h3{font:700 22px/1.12 var(--cinzel);color:var(--goldtxt)}
.card p{font-size:15px;color:#e8d6b0}
.card .go{margin-top:auto;padding-top:10px;font:400 18px var(--display);letter-spacing:.04em;text-transform:uppercase;color:#ffe600}
.card .pr{font:400 30px/1 var(--display);color:#ffe600;-webkit-text-stroke:1px #000;text-shadow:2px 2px 0 #000}
.card .cat{font:600 11px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--g2)}
.card .rv{font:italic 15px/1.35 var(--serif);color:#d9c08c}
.stk{position:absolute;top:12px;left:12px;z-index:2;background:linear-gradient(#ff3b2f,#a30a05);color:#fff;font:400 16px/1 var(--display);letter-spacing:.04em;
 padding:6px 10px;border:2px solid var(--g2);transform:rotate(-5deg);box-shadow:2px 3px 0 #000;text-transform:uppercase}
.burst{display:inline-grid;place-items:center;width:120px;height:120px;background:#ffe600;color:#c00;font:400 20px/1 var(--display);text-align:center;text-transform:uppercase;
 clip-path:polygon(50% 0,61% 13%,77% 6%,78% 23%,95% 23%,88% 39%,100% 50%,88% 61%,95% 77%,78% 77%,77% 94%,61% 87%,50% 100%,39% 87%,23% 94%,22% 77%,5% 77%,12% 61%,0 50%,12% 39%,5% 23%,22% 23%,23% 6%,39% 13%);transform:rotate(-12deg);padding:18px}

/* ---- top bars: crawl ticker + nav (nav markup comes from shared.js) ---- */
.ticker{background:linear-gradient(#b30d06,#6e0503);color:#ffe600;font:400 17px/1 var(--display);letter-spacing:.06em;white-space:nowrap;overflow:hidden;
 border-bottom:2px solid var(--gold);padding:9px 0;text-transform:uppercase}
.ticker>div{display:inline-block;padding-left:100%;animation:tick 48s linear infinite}
@keyframes tick{to{transform:translateX(-100%)}}
#brnav{background:linear-gradient(#1c0206,#0c0103);border-bottom:3px solid var(--gold);position:sticky;top:0;z-index:960;box-shadow:0 6px 18px rgba(0,0,0,.5)}
#brnav .in{max-width:1240px;margin:0 auto;padding:8px 10px;display:flex;flex-wrap:wrap;gap:7px;justify-content:center}
#brnav a{font:400 16px/1.1 var(--display);text-transform:uppercase;letter-spacing:.04em;text-decoration:none;padding:9px 13px;border:1.5px solid #5c3507;border-radius:9px;
 background:var(--metal);color:#3b0008;box-shadow:0 3px 0 #5c3507;white-space:nowrap;text-shadow:0 1px 0 rgba(255,255,255,.45)}
#brnav a:hover{filter:brightness(1.12);transform:translateY(-1px)}
#brnav a.red{background:linear-gradient(180deg,#ff5a4a,#d4140f 48%,#8d0606 52%,#c5170f);color:#fff;border-color:var(--g2);text-shadow:0 1px 0 #000}
#brnav a.dark{background:#130905;color:var(--goldtxt);border-color:var(--gold);text-shadow:none}
#brnav a.on{outline:2px solid #fff7cf;outline-offset:2px}
@media(max-width:760px){#brnav{position:relative}#brnav .in{display:grid;grid-template-columns:1fr 1fr;gap:6px}#brnav a{font-size:15px;white-space:normal;text-align:center;padding:9px 6px}}

/* ---- footer ---- */
.brfoot{background:#070201;color:#b89a6a;border-top:4px solid var(--gold);padding:34px 16px 70px;text-align:center;font:13px/1.6 var(--sans)}
.brfoot .in{max-width:900px;margin:0 auto}
.brfoot nav{display:flex;justify-content:center;gap:24px;margin-bottom:10px}
.brfoot nav a{color:var(--goldtxt);font-weight:600;text-decoration:none;font-size:15px;letter-spacing:.08em;text-transform:uppercase}
.brfoot nav a:hover{text-decoration:underline}
.brfoot .seal{font:900 22px var(--cinzel);margin-bottom:8px}

/* ---- modal + forms in the gilded style ---- */
#brmodal{position:fixed;inset:0;background:rgba(10,2,2,.82);display:none;align-items:center;justify-content:center;z-index:1000;padding:14px}
#brmodal.on{display:flex}
#brmodal .box{background:#fbf1d8;color:var(--ink);max-width:580px;width:100%;max-height:92vh;overflow:auto;border:0;border-radius:6px;padding:28px 26px 24px;position:relative;font-family:var(--sans);
 box-shadow:0 0 0 8px #c8922a,0 0 0 10px #3a1d02,0 30px 80px rgba(0,0,0,.6)}
#brmodal h3{font:900 30px/1.05 var(--cinzel);text-transform:uppercase;color:#6e0503;margin-bottom:10px}
#brmodal p{margin:8px 0;font-size:16px;line-height:1.5}
#brmodal .x{position:absolute;right:10px;top:4px;background:none;border:0;font-size:34px;line-height:1;color:#6e0503}
#brmodal .bbtn{font-size:21px}
#brmodal input,.form input,.form textarea,.form select{width:100%;font:16px var(--sans);padding:12px;border:2px solid #8a5a12;border-radius:6px;margin:6px 0;background:#fffaf0;color:#111}
.form{max-width:560px;margin:0 auto}
.form textarea{min-height:110px;resize:vertical}
.form .res{font-weight:700;margin-top:8px;min-height:1.3em}
.form .res.ok{color:#0a7a2a}.form .res.bad{color:#d21}
.lacq .form .res.ok,.gilt>.sec:not(.cream) .form .res.ok{color:#7dff9a}
.panel{background:linear-gradient(180deg,#1b0f09,#0a0503);border:2px solid var(--gold);border-radius:10px;padding:26px;box-shadow:inset 0 0 0 5px #0a0503,inset 0 0 0 6px rgba(217,168,60,.4),0 18px 40px rgba(0,0,0,.5)}
.panel h3{font:900 26px/1.05 var(--cinzel);color:var(--goldtxt);text-transform:uppercase;margin-bottom:6px}

/* ---- price ladder (homepage, gift shop, church) ---- */
.ladder{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;align-items:stretch}
.rung{position:relative;display:flex;flex-direction:column;gap:8px;text-align:center;padding:22px 14px 18px;border-radius:10px;border:2px solid var(--gold);
 background:linear-gradient(180deg,#1d100a,#0a0503);box-shadow:inset 0 0 0 4px #0a0503,inset 0 0 0 5px rgba(217,168,60,.35)}
.rung .t{font:400 13px/1 var(--sans);font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--g2)}
.rung .p{font:400 clamp(34px,4vw,52px)/1 var(--display);color:#ffe600;-webkit-text-stroke:1.5px #000;text-shadow:3px 3px 0 #000}
.rung h3{font:700 20px/1.1 var(--cinzel);color:#fff1cf}
.rung ul{list-style:none;font-size:14px;color:#e5d2a8;text-align:left;display:grid;gap:5px;margin:4px 0 8px}
.rung li::before{content:"\2726 ";color:var(--g2)}
.rung .bbtn{margin-top:auto;font-size:19px;padding:12px 10px}
.rung.best{transform:scale(1.06);z-index:2;background:linear-gradient(180deg,#5a0711,#24030a);border:3px solid var(--g2);box-shadow:0 0 0 3px #3a1d02,0 0 40px rgba(255,190,60,.45),inset 0 0 0 5px #24030a,inset 0 0 0 6px rgba(255,220,120,.5)}
.rung.best .flag{position:absolute;top:-16px;left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--metal);color:#6e0503;font:400 16px/1 var(--display);padding:7px 14px;border-radius:30px;border:2px solid #3a1d02;letter-spacing:.06em}

/* ---- news / feed cards (shared.js feed()) ---- */
.feed{display:grid;gap:14px}
.news{display:grid;grid-template-columns:150px 1fr;gap:16px;background:#fbf1d8;color:#1a0f06;border-left:8px solid #b30d06;padding:14px;border-radius:4px;box-shadow:0 8px 20px rgba(0,0,0,.35)}
.news img{width:150px;height:110px;object-fit:cover;border:2px solid var(--gold)}
.news .k{font:700 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#b30d06}
.news h3{font:700 20px/1.2 var(--serif);margin:3px 0 6px}
.news p{font-size:15px;color:#4a3518;margin:0}
.news .d{font-size:12px;color:#8a7350;margin-top:6px}
.news.noimg{grid-template-columns:1fr}

/* ---- misc ---- */
.redacted{background:#000;color:#000;user-select:none}
.pic.redacted{background:repeating-linear-gradient(0deg,#000 0 18px,#222 18px 22px)!important}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.badge{display:inline-block;font:700 11px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;padding:6px 10px;border-radius:30px;background:var(--metal);color:#3b0008;border:1px solid #3a1d02}
.quote{font:italic 500 21px/1.45 var(--serif);color:#fff1cf;border-left:4px solid var(--gold);padding-left:16px;margin:12px 0}
.sec.cream .quote{color:#3a240c}
.hide{display:none!important}

@media(max-width:980px){.ladder{grid-template-columns:1fr 1fr}.rung.best{transform:none;grid-column:1/-1}.grid4{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.grid2,.grid3{grid-template-columns:1fr}.sec{padding:56px 0}.hero{min-height:70vh}}
@media(max-width:520px){.ladder{grid-template-columns:1fr}.grid4{grid-template-columns:1fr 1fr;gap:12px}.news{grid-template-columns:1fr}.news img{width:100%;height:auto}}

/* ---- page helpers (candle, Layer 2, phone) ---- */
.ptitle{font:900 clamp(40px,7.5vw,96px)/.95 var(--cinzel);text-transform:uppercase;text-align:center;padding:40px 10px 6px}
.psub{text-align:center;font:500 clamp(18px,2.4vw,24px)/1.35 var(--serif);color:#f2dfb9;margin-bottom:24px;padding:0 12px}
#gate{position:fixed;inset:0;z-index:990;background:rgba(20,2,4,.95);display:none;align-items:center;justify-content:center;padding:16px;overflow:auto}
body.locked #gate{display:flex}
body.locked .lockme{filter:blur(14px);pointer-events:none;user-select:none;max-height:120vh;overflow:hidden}
#gate .box{max-width:560px;width:100%;background:#fbf1d8;color:var(--ink);padding:28px;text-align:center;border-radius:6px;box-shadow:0 0 0 8px #c8922a,0 0 0 10px #3a1d02,0 0 80px rgba(255,180,60,.35)}
#gate h2{font:900 clamp(28px,5vw,40px)/1.05 var(--cinzel);color:#6e0503;margin-bottom:10px;text-transform:uppercase}
#gate p{margin:8px 0;line-height:1.45;color:#3a240c}
#gate h2{background:none!important;-webkit-text-fill-color:#6e0503!important;color:#6e0503!important;border:0!important;padding:0!important;margin-top:0!important}
#gate input{width:100%;font:22px var(--vcr),monospace;text-transform:uppercase;letter-spacing:3px;text-align:center;padding:10px;border:2px solid #8a5a12;border-radius:6px;margin:8px 0}
#gate .err{color:#b30d06;font-weight:700;min-height:1.3em}
.l2 h2{font:900 clamp(28px,4.4vw,48px)/1.05 var(--cinzel);margin:60px 0 12px;padding-top:24px;border-top:2px solid var(--gold);
 background:var(--metal);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.l2 p{color:#f2dfb9;margin:8px 0}
.stamp{display:inline-block;border:3px solid #ff5a4a;color:#ff5a4a;font:400 18px/1 var(--display);padding:5px 10px;transform:rotate(-3deg);margin-bottom:10px;letter-spacing:.1em;text-transform:uppercase}
.file{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;align-items:start;margin:20px 0;padding:22px;border:2px solid var(--gold);border-radius:10px;background:linear-gradient(180deg,#1b0f09,#0a0503)}
.file img{width:100%;border:3px solid var(--g3);box-shadow:0 0 0 2px #3a1d02}
.bar{background:#000;color:#000;padding:0 4px;border-radius:2px}
.layerbtn{display:block;margin:30px auto;max-width:560px}
@media(max-width:820px){.file{grid-template-columns:1fr}}

/* ---- legal pages (tools/legal.py) ---- */
.legaldoc{max-width:780px;margin:40px auto 70px;padding:44px 34px;font-size:17px;line-height:1.65;background:#fbf1d8;color:var(--ink);border-radius:6px;box-shadow:0 0 0 8px #c8922a,0 0 0 10px #3a1d02,0 30px 60px rgba(0,0,0,.5)}
.legaldoc h1{font:900 clamp(32px,5vw,46px)/1.1 var(--cinzel);color:#6e0503;margin-bottom:6px}
.legaldoc h1+p em{font:400 13px var(--sans);color:#6b4a1c;font-style:normal}
.legaldoc h2{font:700 24px/1.2 var(--cinzel);color:#6e0503;margin:34px 0 8px;padding-top:16px;border-top:1px solid #d9c08c}
.legaldoc p,.legaldoc li{margin:8px 0}.legaldoc ul{padding-left:22px}
.legaldoc a{color:#6e0503}
.legaldoc table{border-collapse:collapse;width:100%;margin:14px 0;font-size:15px}
.legaldoc th,.legaldoc td{border-bottom:1px solid #d9c08c;padding:10px 8px;text-align:left;vertical-align:top}
.legaldoc code{font:13px 'IBM Plex Mono',monospace;background:#fff4dc;padding:1px 5px}
@media(max-width:600px){.legaldoc{margin:20px 10px 50px;padding:28px 18px}}
