/* ============================================================
   heresies.css — heresies's own styles, moved out of the <style>
   block that followed styles.css in heresies.html.
   Linked from the same place in the page, so the order is unchanged.
   ============================================================ */

:root{
--her-ink:#241a10;
--her-panel:#fbf8ef;
--her-panel-2:#f3ead8;
--her-line:#ddd0b4;
--her-gold:#9a7a2e;
--her-gold-dim:#7d6224;
--her-parchment:#241a10;
--her-tan:#241a10;
--her-muted:#655740;
--her-council:#657f96;
--her-error:#8e3d32;
}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
body{
background:radial-gradient(circle at 78% 6%,rgba(201,168,90,.08),transparent 36%),#f6f1e6;
color:var(--her-tan);
font-family:var(--body);
font-size:20px;
line-height:1.5;
}
.heresies-content a{color:var(--her-gold);text-decoration:none}
.heresies-content a:focus-visible{outline:2px solid var(--her-gold);outline-offset:3px}

/* ============ HERO ============ */
.hero{position:relative;overflow:hidden;max-width:none;margin:0;padding:66px 24px 48px;text-align:center;background:radial-gradient(ellipse at 50% 15%,rgba(201,168,90,.16),transparent 55%),linear-gradient(180deg,#26190e,#1a120b);border-bottom:1px solid rgba(201,168,90,.34)}
/* Raphael, Disputation of the Holy Sacrament (Stanza della Segnatura, 1510) */
.hero::before{content:"";position:absolute;inset:-2%;pointer-events:none;background:linear-gradient(180deg,rgba(26,18,11,.62) 0%,rgba(26,18,11,.78) 70%,rgba(26,18,11,.93) 100%),radial-gradient(ellipse at 50% 28%,rgba(201,168,90,.08),rgba(26,18,11,.34) 68%),url("/images/heresies-masthead.webp") center 20% / cover no-repeat;filter:saturate(.72) sepia(.12) contrast(1.08);transform:scale(1.025)}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(18,11,6,.54),transparent 25%,transparent 75%,rgba(18,11,6,.54)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E")}
.hero .hero-inner{position:relative;z-index:2;max-width:820px;margin:0 auto}
.hero .hero-emblem{display:block;width:auto;height:52px;margin:0 auto 25px;filter:drop-shadow(0 0 26px rgba(201,168,90,.44)) brightness(1.08)}
.hero h1{font-family:var(--display);font-size:clamp(28px,4.6vw,46px);font-weight:600;color:#f5ecd6;margin:15px 0 8px;letter-spacing:.05em;text-shadow:0 3px 24px rgba(0,0,0,.42)}
.hero .epigraph{margin:28px auto 0;max-width:640px;padding:18px 26px;border-top:1px solid rgba(201,168,90,.3);border-bottom:1px solid rgba(201,168,90,.3)}
.section + .section{border-top:1px solid rgba(221,208,180,.72)}
.section h3{font-family:var(--display);font-size:16px;font-weight:600;color:var(--gold-deep);letter-spacing:.16em;text-transform:uppercase;margin:38px 0 14px}
.section p:last-child{margin-bottom:0}
.rule{max-width:820px;margin:0 auto;padding:0 24px}
.rule hr{border:none;border-top:1px solid var(--her-line)}
.doctrine-intro{max-width:900px;margin:42px auto 8px;padding:34px 38px;background:linear-gradient(135deg,rgba(251,248,239,.94),rgba(243,234,216,.78));border:1px solid var(--her-line);box-shadow:0 18px 42px rgba(60,37,18,.08)}
.doctrine-intro p:last-child{margin-bottom:0}
blockquote{padding:16px 22px;border-left:2px solid var(--gold);background:rgba(251,248,239,.72);border-radius:0;margin:22px 0;color:var(--espresso);font-family:var(--head);font-size:23px;font-style:italic;line-height:1.32}
.mark{position:relative;background:linear-gradient(145deg,rgba(251,248,239,.92),rgba(243,234,216,.7));border:1px solid var(--her-line);border-radius:0;padding:24px 24px 22px;box-shadow:0 10px 26px rgba(60,37,18,.05)}
.mark::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--her-error)}
.mark h4{font-family:var(--display);color:var(--gold-deep);font-size:11px;font-weight:600;letter-spacing:.18em;line-height:1.25;text-transform:uppercase;margin-bottom:8px}
.mark p{font-size:18px;line-height:1.38;margin:0;color:var(--ink)}

/* ============ HERESY CHART (pure CSS, server-rendered) ============ */
.chart{background:radial-gradient(circle at 14% 8%,rgba(142,61,50,.12),transparent 34%),linear-gradient(180deg,#2b1d11,#17100a);border:1px solid rgba(201,168,90,.42);border-radius:2px;padding:30px 28px 22px;position:relative;overflow:hidden;box-shadow:0 22px 50px rgba(45,28,14,.18)}
.chart-scale{position:relative;height:22px;border-bottom:1px solid rgba(201,168,90,.32);margin:0 0 14px;font-size:10px;color:#cbbd9f;font-family:var(--display);letter-spacing:.17em;text-transform:uppercase}
.chart-rows{position:relative;padding-bottom:34px}
.chart-row{position:relative;height:26px;margin-bottom:5px}
.chart-bar{position:absolute;top:4px;height:18px;border-radius:9px;background:linear-gradient(90deg,#7a3532,var(--her-error));min-width:6px;opacity:.9}
.chart-name{position:absolute;top:3px;font-size:11px;font-weight:600;color:#f4ead4;font-family:var(--display);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;text-shadow:0 1px 2px #0f0a06}
.council-line{position:absolute;top:0;bottom:0;width:2px;background:var(--her-council);opacity:.8}
.council-label{position:absolute;transform:translateX(-50%);font-size:10px;color:#a9bdd0;font-family:var(--display);letter-spacing:.17em;text-transform:uppercase;background:#1d140c;padding:0 6px}
.chart-legend{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:18px;font-family:var(--display);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#cbbd9f}
.chart-legend .chip{display:inline-block;width:26px;height:10px;border-radius:5px;margin-right:7px;vertical-align:baseline}
@media (max-width:640px){.chart-name{font-size:11px}.chart{padding:20px 12px 14px}}
.pcard{position:relative;background:rgba(251,248,239,.86);border:1px solid var(--her-line);border-radius:0;padding:24px 26px 24px 30px;box-shadow:none;transition:border-color .2s,box-shadow .2s,transform .2s}
.pcard::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,var(--her-error),#6f2f29)}
.pcard .order{font-family:var(--display);font-size:11px;font-weight:600;color:var(--gold-deep);letter-spacing:.18em;line-height:1.25;text-transform:uppercase}
.pcard .years{font-size:11px;color:var(--muted);font-family:var(--display);font-weight:600;letter-spacing:.18em;line-height:1.4;text-transform:uppercase;margin-bottom:12px}
.pcard p{font-size:18px;line-height:1.38;color:var(--ink);margin-bottom:10px}
.pcard .error-line{color:var(--ink)}
.pcard .error-line strong{color:var(--her-error);font-family:var(--display);font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;display:block;margin-bottom:4px}
.pcard .answer-line strong{color:var(--gold-deep);font-family:var(--display);font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;display:block;margin-bottom:4px}
.pcard .ref{font-size:10px;color:var(--gold-deep);font-family:var(--display);font-weight:600;letter-spacing:.17em;line-height:1.45;text-transform:uppercase}

/* ============ SUMMARY TABLE ============ */
.types{width:100%;border-collapse:collapse;margin-top:20px;font-size:18px;background:rgba(251,248,239,.64);border:1px solid var(--her-line)}
.types th{font-family:var(--display);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep);text-align:left;padding:13px 14px;border-bottom:1px solid var(--her-line)}
.types td{padding:14px;border-bottom:1px solid var(--her-line);vertical-align:top;line-height:1.38;color:var(--ink)}
.types td:first-child{font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--her-error);white-space:nowrap}
.types tr:last-child td{border-bottom:none}
@media (max-width:640px){.types td:first-child{white-space:normal}}
.table-scroll{overflow-x:auto;margin-top:20px;border:1px solid var(--her-line);box-shadow:0 12px 30px rgba(60,37,18,.06)}
.table-scroll .types{min-width:760px;margin-top:0;border:0}
.doctrine-panel{max-width:900px;background:rgba(251,248,239,.72);border:1px solid var(--her-line);padding:38px 42px;margin-top:20px;margin-bottom:20px;box-shadow:0 18px 42px rgba(60,37,18,.07)}
.doctrine-panel blockquote{margin-top:30px;background:linear-gradient(135deg,#2b1d11,#17100a);border:1px solid rgba(201,168,90,.38);border-left:4px solid var(--her-error);color:#f5ecd6;padding:28px 30px;box-shadow:0 18px 38px rgba(45,28,14,.14)}
.doctrine-panel blockquote cite{color:var(--champagne)}
@media(max-width:700px){
.hero{padding:52px 24px 38px}
.hero::before{background-position:center 24%}
.doctrine-intro,.doctrine-panel{padding:28px 24px;margin-left:16px;margin-right:16px}
.gen-grid{grid-template-columns:1fr}
.pcard{padding:22px 22px 22px 26px}
.chart{min-width:760px}
.chart-scroll{overflow-x:auto;margin-left:-8px;margin-right:-8px;padding-bottom:8px}
}
.crosslinks a{display:block;background:rgba(251,248,239,.78);border:1px solid var(--her-line);border-radius:0;padding:16px 18px;color:var(--her-parchment);box-shadow:none;transition:border-color .2s,box-shadow .2s,transform .2s}
.crosslinks a:hover{border-color:var(--her-gold);box-shadow:0 8px 22px rgba(60,37,18,.08);text-decoration:none;transform:translateY(-2px)}
.crosslinks a .cl-desc{font-size:18px;color:var(--ink);margin-top:7px;line-height:1.38}

/* ── Single-element styles, once written inline on the page ──
   Each class carries what one style="" attribute said. They sit last in
   the page's cascade, as the attributes did; where a rule elsewhere
   matched the same element more specifically, the class is doubled so it
   still wins, exactly as the attribute won. */
.u-mt-16.u-mt-16{margin-top:16px;}
.u-c-her-parchment{color:var(--her-parchment);}
.u-maxw-820{max-width:820px;}
.u-heresies-4{left:5.9%;}
.u-heresies-5{left:17.6%;}
.u-heresies-6{left:29.4%;}
.u-heresies-7{left:41.2%;}
.u-heresies-8{left:52.9%;}
.u-heresies-9{left:64.7%;}
.u-heresies-10{left:76.5%;}
.u-heresies-11{left:88.2%;}
.u-heresies-12{left:32.4%;}
.u-heresies-13{left:38.9%;}
.u-heresies-14{left:44.8%;}
.u-heresies-15{left:47.2%;}
.u-heresies-16{left:59.2%;}
.u-heresies-17{left:74.2%;}
.u-heresies-18{left:86.7%;}
.u-heresies-19{left:4.7%;width:24.7%;}
.u-heresies-20{left:30.4%;}
.u-heresies-21{left:11.1%;width:18.4%;}
.u-heresies-22{left:2%;}
.u-heresies-23{left:12.5%;width:22.8%;}
.u-heresies-24{left:36.3%;}
.u-heresies-25{left:17.6%;width:9.4%;}
.u-heresies-26{left:28%;}
.u-heresies-27{left:30.7%;width:28.1%;}
.u-heresies-28{left:59.8%;}
.u-heresies-29{left:31.5%;width:33.2%;}
.u-heresies-30{left:11%;}
.u-heresies-31{left:36.5%;width:2.7%;}
.u-heresies-32{left:36.5%;width:7.1%;}
.u-heresies-33{left:44.6%;}
.u-heresies-34{left:41.8%;width:14.6%;}
.u-heresies-35{left:22%;}
.u-heresies-36{left:44.5%;width:26.1%;}
.u-heresies-37{left:20.5%;}
.u-heresies-38{left:46.8%;width:29.6%;}
.u-heresies-39{left:77.4%;}
.u-heresies-40{left:69.2%;width:5.1%;}
.u-heresies-41{left:44%;}
.u-mb-0{margin-bottom:0;}
.u-heresies-43{left:79.5%;width:13.8%;}
.u-heresies-44{left:56%;}
.u-heresies-45{left:32.4%;bottom:16px;}
.u-heresies-46{left:40.5%;bottom:0;}
.u-heresies-47{left:47.2%;bottom:16px;}
.u-heresies-48{left:59.2%;bottom:0;}
.u-heresies-49{left:74.2%;bottom:16px;}
.u-heresies-50{left:86.7%;bottom:0;}
.u-mt-22{margin-top:22px;}
.u-heresies-52{background:linear-gradient(90deg,#7a3532,var(--her-error));}
.u-bg-her-council{background:var(--her-council);}
.u-mt-14.u-mt-14{margin-top:14px;}
.u-fs-14-c-her-muted{font-size:14px;color:var(--her-muted);}
