/* YB Elegance — shared styles for policy / confirmation pages */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --bg:#08070a; --bg2:#100e14; --bg3:#181520;
  --gold:#c9a462; --gold-lt:#e0be82; --gold-dk:#9a7840;
  --cream:#f2ece0; --text:#e8e2d4; --muted:#8b8071;
  --border:rgba(201,164,98,.18); --trans:.35s cubic-bezier(.4,0,.2,1);
}
html { -webkit-text-size-adjust:100%; }
body {
  background:var(--bg); color:var(--text);
  font-family:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-weight:300; font-size:16px; line-height:1.75;
}
img { display:block; max-width:100%; }
a { color:var(--gold); }
a:hover { color:var(--gold-lt); }
:focus-visible { outline:2px solid var(--gold); outline-offset:3px; }
.skip-link {
  position:absolute; left:-9999px; top:0; background:var(--gold); color:var(--bg);
  padding:.7rem 1.2rem; z-index:100; font-size:.8rem; letter-spacing:.1em;
}
.skip-link:focus { left:0; }
.wrap { max-width:820px; margin:0 auto; padding:0 5vw; }
header.site {
  padding:1.4rem 5vw; border-bottom:1px solid var(--border);
  display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap;
}
header.site a.brand { display:flex; align-items:center; gap:.6rem; text-decoration:none; }
header.site svg { height:42px; width:auto; }
.back-link {
  font-family:'Cinzel',Georgia,serif; font-size:.66rem; letter-spacing:.2em;
  text-transform:uppercase; text-decoration:none;
}
main { padding:3.5rem 0 4rem; }
h1 {
  font-family:'Cormorant Garamond',Georgia,serif; font-weight:300; line-height:1.15;
  font-size:clamp(2.2rem,5vw,3.2rem); color:var(--cream); margin-bottom:.6rem;
}
h2 {
  font-family:'Cormorant Garamond',Georgia,serif; font-weight:400; line-height:1.25;
  font-size:clamp(1.4rem,3vw,1.9rem); color:var(--cream); margin:2.4rem 0 .8rem;
}
h3 { font-family:'Cormorant Garamond',Georgia,serif; font-weight:400; font-size:1.25rem; color:var(--cream); margin:1.6rem 0 .5rem; }
.eyebrow {
  font-family:'Cinzel',Georgia,serif; font-size:.66rem; letter-spacing:.28em;
  text-transform:uppercase; color:var(--gold); display:block; margin-bottom:1rem;
}
.updated { font-size:.8rem; color:var(--muted); margin-bottom:2.5rem; }
p, li { color:var(--text); margin-bottom:1rem; }
p.lead { font-size:1.05rem; }
ul, ol { padding-left:1.3rem; margin-bottom:1.2rem; }
li { margin-bottom:.55rem; }
li::marker { color:var(--gold); }
.muted { color:var(--muted); }
.card {
  background:var(--bg2); border:1px solid var(--border);
  padding:1.8rem; margin:1.5rem 0;
}
.card h2, .card h3 { margin-top:0; }
.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:.6rem;
  padding:.85rem 2rem; font-family:'Cinzel',Georgia,serif; font-size:.72rem;
  letter-spacing:.18em; text-transform:uppercase;
  border:1px solid var(--gold); color:var(--gold); background:transparent;
  cursor:pointer; text-decoration:none; transition:var(--trans);
}
.btn:hover { background:var(--gold); color:var(--bg); }
.btn.solid { background:var(--gold); color:var(--bg); }
.btn.solid:hover { background:var(--gold-lt); color:var(--bg); }
table { width:100%; border-collapse:collapse; margin:1rem 0 1.5rem; font-size:.9rem; }
th, td { text-align:left; padding:.7rem .8rem; border:1px solid var(--border); vertical-align:top; }
th { color:var(--gold); font-family:'Cinzel',Georgia,serif; font-size:.65rem; letter-spacing:.15em; text-transform:uppercase; }
footer.site {
  border-top:1px solid var(--border); padding:2rem 5vw 3rem;
  font-size:.8rem; color:var(--muted); text-align:center;
}
footer.site a { margin:0 .5rem; white-space:nowrap; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}
