/* Shared presentation for the pages rebuilt from the live site.
   One stylesheet rather than one per page, so the set stays consistent and a
   change to the language lands everywhere at once. Scoped to .eop-page. */

.eop-page{
  --gold:#F7B718; --goldm:#E4B84A; --goldp:#F8ECA8;
  --burg:#5A0A1E; --claret:#9B1535; --crimson:#C82D47; --accent:#BA0C2F;
  --ember:#380D0D;
  --ink:#394240; --bg:#FFFCF6; --surface:#FFFFFF; --parch:#FDF4E4;
  --ease:cubic-bezier(.22,1,.36,1);
  --wrap:1180px;
  background:var(--bg);
}

.eop-page .eop-wrap{
  width:100%; max-width:var(--wrap); margin-inline:auto;
  padding-inline:clamp(20px,5vw,48px);
}

/* --- type ---------------------------------------------------------------- */
.eop-page .eop-rubric{
  display:flex; align-items:center; gap:14px; margin:0 0 20px;
  font-family:"Barlow Condensed",sans-serif; font-weight:500; font-size:14px;
  letter-spacing:1.1px; text-transform:uppercase; color:var(--goldm);
}
.eop-page .eop-rubric::before{
  content:""; display:block; width:46px; height:1px; background:var(--gold); flex:none;
}

.eop-page .eop-h1{
  font-family:"Cormorant Garamond",serif; font-weight:700;
  font-size:clamp(42px,6vw,84px); line-height:1.04; margin:0; color:#FFFCF6;
}
.eop-page .eop-h2{
  font-family:"Cormorant Garamond",serif; font-weight:700;
  font-size:clamp(30px,3.8vw,52px); line-height:1.1; margin:0 0 20px; color:var(--burg);
}
.eop-page .eop-h3{
  font-family:"Cormorant Garamond",serif; font-weight:600;
  font-size:clamp(23px,2.4vw,32px); line-height:1.2; margin:0 0 12px; color:var(--burg);
}
.eop-page .eop-body{
  font-family:"EB Garamond",serif; font-size:19px; line-height:1.68; color:var(--ink);
  max-width:36em;
}
.eop-page .eop-body p{ margin:0 0 16px; }
.eop-page .eop-body p:last-child{ margin-bottom:0; }
.eop-page .eop-body strong{ color:var(--burg); font-weight:600; }
.eop-page .eop-lead{ font-size:22px; line-height:1.6; color:var(--burg); }
.eop-page .eop-body--light{ color:rgba(255,252,246,.86); }

/* --- hero ---------------------------------------------------------------- */
.eop-page .eop-hero{
  position:relative; overflow:hidden; isolation:isolate;
  background:
    radial-gradient(120% 90% at 12% 0%, rgba(200,45,71,.55) 0%, rgba(90,10,30,0) 62%),
    linear-gradient(152deg, var(--claret) 0%, var(--burg) 46%, var(--ember) 100%);
}
.eop-page .eop-hero::after{
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.11;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");
  mix-blend-mode:overlay;
}
.eop-page .eop-hero > *{ position:relative; z-index:1; }
.eop-page .eop-hero .eop-wrap{
  display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);
  gap:clamp(28px,4vw,64px); align-items:center;
  padding-block:clamp(62px,8vw,116px);
}
.eop-page .eop-hero--plain .eop-wrap{ grid-template-columns:minmax(0,1fr); }
.eop-page .eop-hero__sub{
  margin:22px 0 0; font-family:"EB Garamond",serif; font-size:20px; line-height:1.6;
  color:rgba(255,252,246,.84); max-width:34em;
}
.eop-page .eop-hero__figure img{
  display:block; width:100%; height:auto; border-radius:4px;
  box-shadow:0 30px 60px rgba(0,0,0,.42);
}

/* --- section rhythm ------------------------------------------------------ */
.eop-page .eop-sec{ padding-block:clamp(56px,7vw,104px); }
.eop-page .eop-sec--tint{ background:var(--parch); }
.eop-page .eop-sec--dark{
  background:linear-gradient(160deg, var(--burg) 0%, var(--ember) 100%);
}
.eop-page .eop-sec--dark .eop-h2{ color:#FFFCF6; }
.eop-page .eop-sec--dark .eop-body{ color:rgba(255,252,246,.84); }

/* --- ledger: a list of documents or links -------------------------------- */
.eop-page .eop-ledger{ list-style:none; margin:0; padding:0; max-width:820px; }
.eop-page .eop-ledger li{ margin:0; }
.eop-page .eop-ledger a,
.eop-page .eop-ledger .eop-ledger__dead{
  display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px;
  padding:20px 6px; border-bottom:1px solid rgba(90,10,30,.14);
  font-family:"EB Garamond",serif; font-size:19px; color:var(--ink);
  text-decoration:none;
  transition:color .4s var(--ease), border-color .4s var(--ease), padding-left .4s var(--ease);
}
.eop-page .eop-ledger a:hover{
  color:var(--accent); border-color:rgba(228,184,74,.7); padding-left:14px;
}
.eop-page .eop-ledger__mark{
  font-family:"Barlow Condensed",sans-serif; font-weight:500; font-size:12px;
  letter-spacing:1px; text-transform:uppercase; color:var(--goldm);
  border:1px solid rgba(228,184,74,.55); border-radius:999px; padding:4px 10px 3px;
}
.eop-page .eop-ledger__go{
  color:var(--goldm); font-size:20px; line-height:1;
  transform:translate3d(0,0,0); transition:transform .4s var(--ease);
}
.eop-page .eop-ledger a:hover .eop-ledger__go{ transform:translate3d(5px,0,0); }
.eop-page .eop-ledger .eop-ledger__dead{ color:rgba(57,66,64,.45); cursor:default; }
.eop-page .eop-ledger__note{
  font-family:"Barlow Condensed",sans-serif; font-size:12px; letter-spacing:.8px;
  text-transform:uppercase; color:rgba(57,66,64,.5);
}

/* --- plates: a bordered content card ------------------------------------- */
.eop-page .eop-plates{
  display:grid; gap:22px;
  grid-template-columns:repeat(auto-fit,minmax(268px,1fr));
  margin:0; padding:0; list-style:none;
}
.eop-page .eop-plate{
  position:relative; background:var(--surface);
  border:1px solid rgba(90,10,30,.12); border-radius:3px;
  padding:28px 26px 30px; overflow:hidden;
  transition:transform .5s var(--ease), box-shadow .5s var(--ease), border-color .5s var(--ease);
}
.eop-page .eop-plate::before{
  content:""; position:absolute; inset:0 auto 0 0; width:3px;
  background:linear-gradient(180deg,var(--gold),var(--claret));
  transform:scaleY(0); transform-origin:top center;
  transition:transform .6s var(--ease);
}
.eop-page .eop-plate:hover{
  transform:translate3d(0,-4px,0);
  box-shadow:0 24px 48px rgba(90,10,30,.13);
  border-color:rgba(228,184,74,.5);
}
.eop-page .eop-plate:hover::before{ transform:scaleY(1); }
.eop-page .eop-plate__rank{
  font-family:"Barlow Condensed",sans-serif; font-weight:600; font-size:13px;
  letter-spacing:1.2px; text-transform:uppercase; color:var(--goldm); margin:0 0 6px;
}
.eop-page .eop-plate__name{
  font-family:"Cormorant Garamond",serif; font-weight:600; font-size:25px;
  line-height:1.2; color:var(--burg); margin:0 0 8px;
}
.eop-page .eop-plate__body{
  font-family:"EB Garamond",serif; font-size:17px; line-height:1.6; color:var(--ink); margin:0;
}
.eop-page .eop-plate__price{
  font-family:"Cormorant Garamond",serif; font-weight:700; font-size:23px;
  color:var(--accent); margin:14px 0 0;
}

/* --- buttons ------------------------------------------------------------- */
.eop-page .eop-btn{
  --lift:0px;
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:15px 32px; border-radius:999px; border:1px solid transparent;
  font-family:"Barlow Condensed",sans-serif; font-weight:500; font-size:15px;
  letter-spacing:1.1px; text-transform:uppercase; text-decoration:none; cursor:pointer;
  transform:translate3d(0,var(--lift),0);
  transition:transform .45s var(--ease), background-color .45s var(--ease),
             color .45s var(--ease), border-color .45s var(--ease);
}
.eop-page .eop-btn--primary{ background:var(--accent); color:#FFFCF6; }
.eop-page .eop-btn--primary:hover{ --lift:-2px; background:var(--claret); }
.eop-page .eop-btn--ghost{ background:transparent; color:var(--burg); border-color:rgba(90,10,30,.4); }
.eop-page .eop-btn--ghost:hover{ --lift:-2px; border-color:var(--gold); color:var(--accent); }
.eop-page .eop-sec--dark .eop-btn--ghost{ color:#FFFCF6; border-color:rgba(228,184,74,.6); }
.eop-page .eop-sec--dark .eop-btn--ghost:hover{ color:var(--gold); border-color:var(--gold); }
.eop-page .eop-btn:focus-visible{ outline:2px solid var(--gold); outline-offset:3px; }
.eop-page .eop-cta{ display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }

/* --- ranks ledger (two facing columns) ----------------------------------- */
.eop-page .eop-facing{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:34px;
}
.eop-page .eop-ranks{ list-style:none; margin:14px 0 0; padding:0; }
.eop-page .eop-ranks li{
  display:flex; align-items:baseline; justify-content:space-between; gap:16px;
  padding:13px 0; border-bottom:1px solid rgba(90,10,30,.12);
  font-family:"EB Garamond",serif; font-size:18px; color:var(--ink);
}
.eop-page .eop-ranks b{
  font-family:"Barlow Condensed",sans-serif; font-weight:600; font-size:13px;
  letter-spacing:1.1px; color:var(--goldm); white-space:nowrap;
}

/* --- media --------------------------------------------------------------- */
.eop-page .eop-figure img{ display:block; width:100%; height:auto; border-radius:3px; }
.eop-page .eop-figure figcaption{
  margin-top:10px; font-family:"Barlow Condensed",sans-serif; font-size:13px;
  letter-spacing:.8px; text-transform:uppercase; color:rgba(57,66,64,.6);
}
.eop-page .eop-embed{
  position:relative; width:100%; aspect-ratio:16/10; border-radius:3px; overflow:hidden;
  border:1px solid rgba(90,10,30,.14); background:var(--parch);
}
.eop-page .eop-embed iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }

/* --- notice -------------------------------------------------------------- */
.eop-page .eop-notice{
  border-left:3px solid var(--gold); background:var(--parch);
  padding:20px 24px; border-radius:0 3px 3px 0;
  font-family:"EB Garamond",serif; font-size:18px; line-height:1.6; color:var(--ink);
  max-width:760px;
}
.eop-page .eop-notice strong{ color:var(--burg); }

/* --- mobile -------------------------------------------------------------- */
@media (max-width:900px){
  .eop-page .eop-hero .eop-wrap{ grid-template-columns:minmax(0,1fr); }
  .eop-page .eop-hero__figure{ order:-1; justify-self:center; width:min(72%,300px); margin-inline:auto; }
  .eop-page .eop-body{ font-size:18px; }
  .eop-page .eop-lead{ font-size:20px; }
  .eop-page .eop-cta .eop-btn{ width:100%; }
  .eop-page .eop-ledger a,
  .eop-page .eop-ledger .eop-ledger__dead{
    grid-template-columns:auto 1fr; gap:12px; padding:17px 4px;
  }
  .eop-page .eop-ledger__go{ display:none; }
  .eop-page .eop-embed{ aspect-ratio:3/4; }
}

@media (prefers-reduced-motion:reduce){
  .eop-page *{ transition:none !important; }
}
