@font-face {
  font-family: "Cormorant Garamond";
  font-style: normal;
  font-weight: 400 600;
  font-display: block;
  src: url("/fonts/cormorant-garamond-latin.woff2") format("woff2");
}
@font-face {
  font-family: "Cormorant Garamond";
  font-style: italic;
  font-weight: 500 600;
  font-display: block;
  src: url("/fonts/cormorant-garamond-italic-latin.woff2") format("woff2");
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500 600;
  font-display: block;
  src: url("/fonts/montserrat-latin.woff2") format("woff2");
}

:root{
  --ivory:#f7f2e8;
  --stone:#eee5d4;
  --navy:#0d293b;
  --navy-deep:#071b27;
  --oxblood:#7d2633;
  --gold:#b8863c;
  --gold-light:#d5b16f;
  --ink:#263746;
  --rule:#d4b985;
  --max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:"Cormorant Garamond",Georgia,serif;font-size:21px;line-height:1.62}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}
.site-header{position:sticky;top:0;z-index:50;height:82px;background:rgba(247,242,232,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule);display:flex;align-items:center;padding:0 clamp(22px,4vw,64px)}
.brand{display:inline-flex;align-items:center;gap:16px;text-decoration:none;color:var(--navy)}
.brand img{width:50px;height:50px;object-fit:contain}
.brand span{font-family:"Cormorant Garamond",Georgia,serif;font-size:25px;font-weight:600;text-transform:uppercase;letter-spacing:.13em}
.hero{position:relative;min-height:840px;background:var(--ivory);overflow:hidden}
.hero-image{position:absolute;inset:0;background:url('/assets/hero-doorway.webp') center/cover no-repeat}
.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,27,39,.55) 0%,rgba(7,27,39,.12) 45%,rgba(247,242,232,.06) 100%)}
.hero-card{position:relative;z-index:2;width:min(650px,52vw);margin-left:clamp(40px,7vw,120px);top:84px;padding:52px 56px 48px;background:rgba(247,242,232,.94);border:1px solid rgba(184,134,60,.52);box-shadow:0 22px 70px rgba(0,0,0,.16)}
.eyebrow{font-family:Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:.24em;font-size:14px;font-weight:600;color:var(--gold);margin:0 0 18px}
h1,h2{font-family:"Cormorant Garamond",Georgia,serif;color:var(--navy);text-transform:uppercase;font-weight:500;letter-spacing:.025em;line-height:.98;margin:0}
h1{font-size:clamp(76px,8vw,126px)}
h2{font-size:clamp(58px,6.2vw,92px)}
.hero-subtitle{color:var(--oxblood);font-size:34px;line-height:1.2;margin:30px 0}
.hero-card>p:not(.eyebrow):not(.hero-subtitle){font-size:20px;line-height:1.5}
.hero-closing{font-size:27px!important;color:var(--navy);text-align:center;margin:34px 0 0!important}
.section{padding:110px clamp(28px,5vw,80px)}
.light{background:var(--ivory)}
.stone{background:var(--stone)}
.navy{background:var(--navy-deep);color:#f4efe6}
.navy h2{color:#fff}
.navy a{color:inherit}
.section-head{margin-bottom:50px}
.centered{text-align:center}
.narrow{width:min(920px,100%);margin:0 auto}
.split{width:min(var(--max),100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:70px;align-items:start}
.copy p,.narrow p{margin:0 0 29px}
.lead{font-size:30px;line-height:1.48}
.framed-image{margin:0;padding:12px;border:1px solid var(--rule);background:#fbf7ef;box-shadow:0 12px 35px rgba(46,38,28,.08)}
.framed-image img{width:100%}
.natural-law .framed-image{position:sticky;top:116px}
.axiom{margin:0 0 46px;padding:25px 0 28px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);color:var(--navy);font-size:35px;line-height:1.25}
.axiom cite{display:block;margin-top:10px;font-size:19px;color:var(--gold);font-style:italic}
.statement{font-size:42px!important;line-height:1.35!important;font-style:italic;font-weight:600;margin:46px 0!important}
.oxblood{color:var(--oxblood)}
.gold{color:var(--gold-light)}
.laws-layout{width:min(1320px,100%);margin:0 auto;display:grid;grid-template-columns:280px minmax(0,780px);justify-content:center;gap:70px;align-items:start}
.law-rail{position:sticky;top:110px;display:grid;gap:10px}
.law-rail div{background:#f8f3e9;border:1px solid #d8c29a;padding:14px 15px;color:var(--navy);display:grid;grid-template-columns:38px 1fr;gap:8px;align-items:center}
.law-rail span{font-family:Montserrat,Arial,sans-serif;font-size:11px;letter-spacing:.12em;color:var(--gold)}
.law-rail b{font-size:15px;line-height:1.15;font-weight:600}
.plant{margin:40px 0 48px;padding:11px;border:1px solid var(--rule);background:#fbf7ef}
.plant img{width:100%}
.western .section-head{margin-bottom:45px}
.western p{color:#f2ede4}
.western .lead{font-size:29px}
.book-split{align-items:center}
.book-photo img{aspect-ratio:4/3;object-fit:cover}
.practice .narrow{width:min(860px,100%)}
.society-grid{width:min(var(--max),100%);margin:0 auto 60px;display:grid;grid-template-columns:320px 1fr;gap:70px;align-items:center}
.society-mark img{width:260px;margin:auto}
.membership-grid{width:min(var(--max),100%);margin:0 auto 70px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.membership-grid article{background:#fbf7ef;border:1px solid #d7c29b;padding:34px 34px 30px;min-height:245px}
.membership-grid h3{font-size:34px;color:var(--oxblood);margin:0 0 25px;font-weight:600}
.society-close{width:min(900px,100%)}
.mark-split{align-items:center}
.coin-large img{width:min(420px,80%);margin:auto}
.great-work .mission{font-size:42px;line-height:1.45;color:#ead2a1;margin:55px 0}
.installation{width:min(1180px,calc(100% - 56px));margin:70px auto 0;padding:10px;border:1px solid var(--gold);background:var(--ivory)}
.installation img{width:100%}
.final-line{text-align:center;margin-top:65px!important}
.statue-closing{background:var(--navy-deep);padding:0}
.statue-closing img{width:100%;max-height:980px;object-fit:cover;object-position:center}
.site-footer{background:#061722;color:#e7ded0;text-align:center;padding:75px 24px 55px;border-top:1px solid rgba(212,185,133,.45)}
.coin-row{display:flex;justify-content:center;gap:42px;margin-bottom:35px;flex-wrap:wrap}
.coin-row img{width:125px;height:125px;object-fit:contain}
.footer-name{text-transform:uppercase;font-family:Montserrat,Arial,sans-serif;letter-spacing:.18em;font-size:13px;color:var(--gold-light)}
.site-footer p{margin:13px auto;max-width:900px}
.legal{font-size:15px;line-height:1.5;color:#bfb7aa}
.copyright{font-size:14px;color:#8e887f}
@media (max-width:900px){
  body{font-size:20px}
  .site-header{height:72px;padding:0 24px}
  .brand img{width:44px;height:44px}.brand span{font-size:21px}
  .hero{min-height:auto;padding-top:0}
  .hero-image{position:relative;height:58vw;min-height:360px;background-position:center}
  .hero-image:after{background:linear-gradient(to bottom,rgba(7,27,39,.05),rgba(7,27,39,.2))}
  .hero-card{width:100%;margin:0;top:auto;padding:58px 38px 64px;border-width:1px 0 0;box-shadow:none;text-align:center;background:var(--ivory)}
  h1{font-size:84px;line-height:1.02}
  h2{font-size:58px;line-height:1.02}
  .hero-subtitle{font-size:31px}
  .hero-card>p:not(.eyebrow):not(.hero-subtitle){font-size:23px;line-height:1.5}
  .section{padding:92px 36px}
  .split,.society-grid,.membership-grid{grid-template-columns:1fr;gap:48px}
  .natural-law .framed-image{position:static;order:0}
  .image-first .copy{order:1}
  .laws-layout{display:block}
  .law-rail{display:none}
  .laws-copy{max-width:760px;margin:auto}
  .membership-grid article{min-height:auto}
  .society-mark img{width:230px}
  .coin-large{order:-1}.coin-large img{width:260px}
  .desktop-only{display:none}
}
@media (max-width:560px){
  body{font-size:19px;line-height:1.58}
  .site-header{height:68px;padding:0 18px}.brand{gap:12px}.brand img{width:42px;height:42px}.brand span{font-size:18px;letter-spacing:.11em}
  .hero-image{height:66vw;min-height:300px;background-position:center}
  .hero-card{padding:48px 28px 56px}
  h1{font-size:65px}
  h2{font-size:47px}
  .eyebrow{font-size:12px;letter-spacing:.2em}
  .hero-subtitle{font-size:27px}
  .hero-card>p:not(.eyebrow):not(.hero-subtitle){font-size:20px}
  .section{padding:78px 28px}
  .lead{font-size:26px}
  .statement{font-size:34px!important}
  .axiom{font-size:31px}
  .membership-grid h3{font-size:31px}
  .membership-grid article{padding:28px 26px}
  .great-work .mission{font-size:34px}
  .installation{width:calc(100% - 28px);margin-top:50px}
  .coin-row{gap:20px}.coin-row img{width:88px;height:88px}
}


/* 2026-08-28 polish pass */
body{font-size:20px;line-height:1.58}
.site-header{height:76px}
.hero{min-height:920px;display:flex;align-items:center;padding:64px 0}
.hero-card{top:auto;margin-top:0;padding:48px 52px 44px;max-height:none}
h1{font-size:clamp(72px,7vw,108px);line-height:.94}
h2{font-size:clamp(52px,5.2vw,78px);line-height:1}
.hero-subtitle{font-size:clamp(27px,2.4vw,34px);line-height:1.22;margin:26px 0}
.hero-card>p:not(.eyebrow):not(.hero-subtitle){font-size:19px;line-height:1.5;margin:0 0 18px}
.hero-closing{font-size:25px!important;margin-top:28px!important}
.section{padding-top:96px;padding-bottom:96px}
.section-head{margin-bottom:42px}
.lead{font-size:28px;line-height:1.46}
.copy p,.narrow p{margin-bottom:25px}
.statement{font-size:38px!important}
.section-subtitle{margin:20px auto 0;color:var(--oxblood);font-size:clamp(22px,2.2vw,31px);line-height:1.25;text-transform:uppercase;letter-spacing:.07em}
.foundational-installation{width:min(1320px,calc(100% - 56px));margin:44px auto 52px;padding:9px}
.foundational-copy{width:min(980px,100%);font-size:22px}
.book-feature{width:min(1080px,100%);margin:58px auto 0;display:grid;grid-template-columns:minmax(0,430px) minmax(0,1fr);gap:54px;align-items:center}
.book-feature .book-photo{margin:0}
.book-feature .book-copy{font-size:21px}
.great-work-grid{width:min(1320px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(360px,46%) minmax(0,1fr);gap:70px;align-items:start}
.great-work-statue{margin:0;position:sticky;top:108px;padding:8px;border:1px solid rgba(213,177,111,.65);background:#f4ead7}
.great-work-statue img{width:100%;height:auto}
.great-work-copy{padding-top:6px}
.great-work-copy p{margin:0 0 26px}
.great-work .mission{font-size:36px;line-height:1.4;margin:44px 0}
.great-work .final-line{text-align:left;margin-top:42px!important;margin-bottom:0!important}
@media (max-width:1100px){.hero{min-height:860px}.hero-card{width:min(620px,58vw);margin-left:clamp(30px,5vw,72px)}.great-work-grid{grid-template-columns:minmax(300px,42%) minmax(0,1fr);gap:46px}}
@media (max-width:900px){.hero{display:block;min-height:auto;padding:0}.hero-card{width:100%;margin:0;padding:54px 38px 60px}.book-feature{grid-template-columns:1fr;gap:34px}.book-feature .book-photo{width:min(540px,100%);margin:0 auto}.great-work-grid{grid-template-columns:1fr;gap:48px}.great-work-statue{position:static;width:min(620px,100%);margin:0 auto}.great-work-copy{padding-top:0}}
@media (max-width:560px){.hero-card{padding:46px 28px 52px}h1{font-size:62px}h2{font-size:44px}.hero-subtitle{font-size:26px}.hero-card>p:not(.eyebrow):not(.hero-subtitle){font-size:19px}.section{padding-top:72px;padding-bottom:72px}.foundational-installation{width:calc(100% - 24px);margin-top:34px;margin-bottom:40px;padding:5px}.foundational-copy{font-size:20px}.book-feature .book-copy{font-size:19px}.great-work .mission{font-size:31px}}

/* 2026-08-28 final Natural Law layout */
.natural-law-layout{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(360px,.88fr) minmax(460px,1.12fr);gap:64px;align-items:start}
.natural-law .framed-image{position:sticky;top:108px}
@media (max-width:980px){.natural-law-layout{grid-template-columns:1fr 1fr;gap:44px}.natural-law .framed-image{position:static}.natural-law-layout .copy{min-width:0}}
@media (max-width:700px){.natural-law-layout{display:block}.natural-law-layout .copy{margin-top:44px}}

/* 2026-08-28 mobile stabilization */
html,body{max-width:100%;overflow-x:hidden}
@media (max-width:760px){
  .site-header{position:sticky;height:66px;padding:0 18px}
  .brand{gap:11px;min-width:0}
  .brand img{width:40px;height:40px;flex:0 0 40px}
  .brand span{font-size:17px;letter-spacing:.105em;white-space:nowrap}
  .hero-image{height:64vw;min-height:285px;max-height:430px;background-position:42% center}
  .hero-card{padding:46px 26px 52px}
  .hero-card h1{font-size:clamp(56px,16vw,72px);line-height:.96;overflow-wrap:normal}
  .hero-subtitle{font-size:clamp(25px,6.8vw,30px);line-height:1.22;margin:24px 0 28px}
  .hero-card>p:not(.eyebrow):not(.hero-subtitle){font-size:19px;line-height:1.52;margin-bottom:20px}
  .hero-closing{font-size:24px!important;line-height:1.3!important;margin-top:30px!important}
  .section{padding:72px 26px}
  .section-head{margin-bottom:36px}
  h2{font-size:clamp(43px,12vw,56px);line-height:1.01}
  .eyebrow{font-size:11px;letter-spacing:.19em;line-height:1.45;margin-bottom:14px}
  .lead{font-size:25px;line-height:1.46}
  .copy p,.narrow p{margin-bottom:23px}
  .natural-law-layout .copy{margin-top:36px}
  .axiom{font-size:29px;line-height:1.25;padding:22px 0 24px;margin-bottom:36px}
  .axiom cite{font-size:17px}
  .plant{margin:32px 0 38px;padding:7px}
  .statement{font-size:31px!important;line-height:1.36!important;margin:38px 0!important}
  .western .lead{font-size:25px}
  .section-subtitle{font-size:21px;line-height:1.25;letter-spacing:.055em;margin-top:16px}
  .foundational-installation{width:100%;margin:32px auto 38px;padding:5px}
  .foundational-copy{font-size:19px}
  .book-feature{margin-top:42px;gap:28px}
  .book-feature .book-photo{width:100%}
  .book-feature .book-copy{font-size:19px}
  .practice .narrow{width:100%}
  .society-grid{gap:34px}
  .society-mark img{width:190px}
  .membership-grid{gap:16px;margin-bottom:52px}
  .membership-grid article{padding:26px 24px}
  .membership-grid h3{font-size:29px;margin-bottom:18px}
  .mark-split{gap:34px}
  .coin-large img{width:210px}
  .great-work-grid{gap:34px}
  .great-work-statue{width:100%}
  .great-work-copy p{margin-bottom:23px}
  .great-work .mission{font-size:30px;line-height:1.38;margin:34px 0}
  .great-work .final-line{font-size:30px!important;line-height:1.35!important;margin-top:32px!important}
  .site-footer{padding:58px 22px 46px}
  .coin-row{gap:18px;margin-bottom:30px}
  .coin-row img{width:82px;height:82px}
  .footer-name{font-size:11px;letter-spacing:.15em;line-height:1.5}
  .legal{font-size:13px;line-height:1.5}
}
@media (max-width:430px){
  .site-header{padding:0 14px}
  .brand img{width:36px;height:36px;flex-basis:36px}
  .brand span{font-size:15px;letter-spacing:.09em}
  .hero-image{height:69vw;min-height:260px;background-position:40% center}
  .hero-card{padding:42px 22px 48px}
  .hero-card h1{font-size:clamp(52px,15.5vw,64px)}
  .hero-subtitle{font-size:24px}
  .section{padding:64px 22px}
  h2{font-size:clamp(39px,11.5vw,48px)}
  .lead{font-size:23px}
  .axiom{font-size:27px}
  .statement{font-size:29px!important}
  .membership-grid article{padding:24px 22px}
  .coin-row img{width:74px;height:74px}
}
