/* Shared styles for Contact / Terms / Privacy pages */
:root{
  --ink:#14100b; --ink-2:#0d0a07; --parchment:#efe4cc; --parchment-2:#d9c69f;
  --gold:#c9a24b; --gold-bright:#e2c072; --gold-deep:#8a6a2a;
  --blood:#8b1212; --blood-2:#a81818; --blood-dark:#5c0d0d;
  --serif:'EB Garamond',Georgia,serif; --display:'Cinzel',Georgia,serif;
}
*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{
  font-family:var(--serif); color:var(--parchment); background:var(--ink-2);
  line-height:1.75; font-size:1.08rem; -webkit-font-smoothing:antialiased;
}
a{ color:var(--gold-bright); }

/* header */
.bar{
  position:sticky; top:0; z-index:50;
  background:linear-gradient(180deg, rgba(10,7,4,.97), rgba(10,7,4,.85));
  border-bottom:1px solid rgba(201,162,75,.28); backdrop-filter:blur(6px);
}
.bar .inner{ max-width:1000px; margin:0 auto; padding:0 24px; height:64px;
  display:flex; align-items:center; justify-content:space-between; }
.brand{ font-family:var(--display); font-weight:700; letter-spacing:.16em;
  font-size:.86rem; text-transform:uppercase; color:var(--parchment); text-decoration:none; }
.brand b{ color:var(--blood-2); }
.back{ font-family:var(--display); font-size:.74rem; letter-spacing:.12em;
  text-transform:uppercase; color:var(--parchment-2); text-decoration:none;
  border:1px solid var(--gold-deep); padding:9px 16px; }
.back:hover{ color:var(--gold-bright); border-color:var(--gold-bright); }

/* page hero */
.page-head{ text-align:center; padding:60px 24px 30px;
  background:radial-gradient(ellipse at 50% 0%, rgba(90,55,20,.35), transparent 60%); }
.page-head .kicker{ font-family:var(--display); letter-spacing:.24em; text-transform:uppercase;
  font-size:.72rem; color:var(--blood-2); margin-bottom:14px; }
.page-head h1{ font-family:var(--display); font-weight:700; color:var(--gold-bright);
  font-size:clamp(2rem,5vw,3rem); letter-spacing:.03em; }
.page-head .updated{ margin-top:12px; color:var(--parchment-2); font-style:italic; font-size:.95rem; }

/* document panel */
.doc{ max-width:820px; margin:0 auto 70px; padding:44px 34px;
  background:linear-gradient(180deg,#efe4cc,#e2d1ac); color:var(--ink);
  border:1px solid rgba(138,106,42,.5); }
.doc h2{ font-family:var(--display); color:var(--ink); font-size:1.4rem; font-weight:700;
  letter-spacing:.02em; margin:34px 0 12px; padding-bottom:8px;
  border-bottom:1px solid rgba(138,106,42,.4); }
.doc h2:first-child{ margin-top:0; }
.doc h3{ font-family:var(--display); font-size:1.05rem; color:#3a2c17; margin:20px 0 8px; }
.doc p{ margin:0 0 16px; color:#2e2313; }
.doc ul{ margin:0 0 16px; padding-left:22px; }
.doc li{ margin:7px 0; color:#2e2313; }
.doc strong{ color:#5c1010; }
.doc a{ color:var(--blood-dark); }
.doc .note{ background:rgba(139,18,18,.07); border-left:3px solid var(--blood);
  padding:14px 18px; margin:0 0 20px; font-size:.98rem; color:#3a2414; }
.doc .placeholder{ color:#9a5a1a; font-style:italic; }

/* contact form */
.form-wrap{ max-width:640px; margin:0 auto 70px; padding:0 24px; }
.card{ background:linear-gradient(180deg,#1d160d,#12100b); border:1px solid var(--gold-deep);
  padding:36px 32px; box-shadow:0 20px 50px rgba(0,0,0,.5); }
label{ display:block; font-family:var(--display); font-size:.72rem; letter-spacing:.12em;
  text-transform:uppercase; color:var(--parchment-2); margin:0 0 7px; }
input, textarea{ width:100%; padding:13px 15px; margin-bottom:18px; font-family:var(--serif);
  font-size:1.02rem; color:var(--parchment); background:rgba(0,0,0,.35);
  border:1px solid var(--gold-deep); outline:none; transition:border-color .2s, box-shadow .2s; }
input:focus, textarea:focus{ border-color:var(--gold-bright); box-shadow:0 0 0 3px rgba(226,192,114,.15); }
input::placeholder, textarea::placeholder{ color:#8a7a5a; }
textarea{ resize:vertical; line-height:1.6; }
.btn{ width:100%; padding:15px; cursor:pointer; font-family:var(--display); font-weight:700;
  letter-spacing:.12em; text-transform:uppercase; font-size:.85rem; color:#f6e9cf;
  background:linear-gradient(180deg,var(--blood-2),var(--blood-dark));
  border:1px solid rgba(226,192,114,.45); transition:filter .2s, transform .2s; }
.btn:hover{ filter:brightness(1.08); transform:translateY(-1px); }
.hp{ position:absolute; left:-9999px; }  /* honeypot */
.flash{ padding:13px 16px; margin-bottom:20px; border:1px solid; }
.flash.ok{ background:rgba(30,120,30,.15); border-color:#3a8a3a; color:#cfeccf; }
.flash.err{ background:rgba(168,24,24,.15); border-color:var(--blood-2); color:#f0c9c9; }
.contact-direct{ text-align:center; color:var(--parchment-2); margin-top:22px; font-size:.95rem; }

/* footer */
footer{ background:#0a0705; border-top:1px solid rgba(201,162,75,.2); padding:34px 24px; text-align:center; }
footer .brand{ font-size:.9rem; }
footer p{ color:var(--parchment-2); font-size:.82rem; margin-top:10px; }
footer a{ color:var(--parchment-2); text-decoration:none; }
footer a:hover{ color:var(--gold-bright); }
