:root { --black:#11100e; --charcoal:#171512; --panel:#1e1b17; --cream:#eee2c8; --muted:#a99e8a; --brass:#c49a55; --line:#c49a5533; --paper:#e8dcc5; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--charcoal); color:var(--cream); font-family:Arial,Helvetica,sans-serif; }
body::selection { background:var(--brass); color:var(--black); }
a { color:inherit; text-decoration:none; }
button, summary { font:inherit; }
.site { min-height:100vh; overflow:hidden; background:var(--charcoal); }
.shell { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.skipLink { position:fixed; top:-60px; left:20px; z-index:2000; background:var(--brass); color:#111; padding:12px 18px; }
.skipLink:focus { top:12px; }

.siteHeader { position:sticky; top:0; z-index:100; background:#11100ef2; backdrop-filter:blur(12px); border-bottom:1px solid var(--line); }
.navWrap { min-height:88px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brandLockup { display:flex; align-items:center; gap:13px; flex:none; }
.brandLockup>span { display:grid; line-height:1.05; }
.brandLockup b { font:400 19px Georgia,serif; letter-spacing:.02em; }
.brandLockup small { color:#bb9255; font-size:9px; letter-spacing:.34em; text-transform:uppercase; margin-top:6px; }
.coinCrop { position:relative; aspect-ratio:1; overflow:hidden; border-radius:50%; flex:none; }
.coinCrop img { height:100%; width:auto; max-width:none; position:absolute; top:0; }
.coinAcademy img { left:0; transform:translateX(-50%); }
.coinMotto img { left:0; }
.navCoin { width:56px; box-shadow:0 5px 12px #0007; }
.desktopNav { display:flex; align-items:center; gap:23px; color:#e8dcc3b8; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.desktopNav a:hover,.desktopNav a:focus-visible { color:var(--cream); }
.desktopNav .navCta { color:#17120d; background:var(--brass); padding:14px 16px; font-weight:900; }
.mobileNav { display:none; position:relative; }
.mobileNav summary { list-style:none; width:43px; height:43px; border:1px solid #c49a5566; display:grid; place-content:center; gap:5px; cursor:pointer; }
.mobileNav summary::-webkit-details-marker { display:none; }
.mobileNav summary span { width:20px; height:1px; background:var(--cream); }
.mobileNav nav { position:absolute; right:0; top:52px; min-width:230px; background:#12100e; border:1px solid var(--line); padding:12px; box-shadow:0 20px 50px #000a; display:grid; }
.mobileNav nav a { padding:13px 12px; text-transform:uppercase; font-size:10px; letter-spacing:.1em; border-bottom:1px solid var(--line); }

.kicker { color:var(--brass); font-size:10px; letter-spacing:.2em; text-transform:uppercase; display:flex; align-items:center; gap:10px; font-weight:bold; }
.kicker span { width:42px; height:1px; background:var(--brass); }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:15px 20px; text-transform:uppercase; letter-spacing:.08em; font-size:10px; font-weight:900; border:1px solid var(--brass); }
.button.primary { color:#18130e; background:var(--brass); }
.button span { padding-left:22px; font-size:15px; }
.button:hover { background:#d4ae70; }
.textButton { display:inline-block; border-bottom:1px solid #b28b51; padding-bottom:5px; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }

.homeHero { min-height:700px; display:grid; grid-template-columns:1.08fr .92fr; align-items:center; gap:48px; position:relative; }
.homeHero::before { content:""; position:absolute; inset:0 -100vw; opacity:.10; pointer-events:none; background-image:linear-gradient(90deg,transparent 49.8%,#b18b4f 50%,transparent 50.2%),radial-gradient(circle at 76% 48%,#bf8a3c55 0 2px,transparent 3px); background-size:124px 100%,22px 22px; }
.heroCopy { position:relative; z-index:1; }
.homeHero h1 { font:400 clamp(64px,8.4vw,118px)/.82 Georgia,"Times New Roman",serif; letter-spacing:-.065em; margin:26px 0 34px; }
.heroText { max-width:630px; color:#d4c7ad; font:20px/1.55 Georgia,serif; }
.heroActions { display:flex; align-items:center; gap:27px; margin-top:32px; }
.location { margin-top:42px; color:#9f937d; font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.sealStage { position:relative; min-height:560px; display:grid; place-items:center; }
.sealHalo { position:absolute; width:500px; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle,#c5954655,transparent 66%); filter:blur(10px); }
.sealStage::before,.sealStage::after { content:""; position:absolute; border:1px solid var(--line); border-radius:50%; width:520px; aspect-ratio:1; }
.sealStage::after { width:580px; opacity:.45; }
.heroCoin { width:min(440px,80vw); filter:drop-shadow(0 32px 26px #0009); z-index:1; }
.sealCaption { position:absolute; bottom:22px; color:#b99d70; font:italic 15px Georgia,serif; }
.proofStrip { border-block:1px solid var(--line); background:#0f0d0b; }
.proofGrid { display:grid; grid-template-columns:repeat(3,1fr); padding-block:24px; }
.proofGrid>span { letter-spacing:.2em; color:var(--brass); font-size:10px; border-right:1px solid var(--line); padding-left:28px; }
.proofGrid>span:first-child { padding-left:0; }.proofGrid>span:last-child{border:0;}
.proofGrid small { display:block; letter-spacing:0; color:#9f9583; text-transform:none; margin-top:5px; font-size:12px; }

.coursePath { padding:105px 0 120px; display:grid; grid-template-columns:.72fr 1.28fr; gap:65px; align-items:start; }
.sectionHeading h2,.bookSection h2 { font:400 clamp(44px,5vw,62px)/1.02 Georgia,serif; letter-spacing:-.045em; margin:22px 0; }
.sectionHeading>p:not(.kicker) { max-width:370px; color:var(--muted); font:16px/1.65 Georgia,serif; }
.sectionHeading .textButton { margin-top:18px; color:var(--brass); }
.stickyHeading { position:sticky; top:130px; }
.levelCards { display:grid; gap:12px; }
.levelCard { border:1px solid #b6965a3d; background:var(--panel); padding:30px; transition:transform .2s,border-color .2s; }
.levelCard:hover { transform:translateX(5px); border-color:#b6965a88; }
.cardMeta { display:flex; justify-content:space-between; color:#b68d4e; font-size:9px; letter-spacing:.16em; }
.cardMeta em { color:#918570; text-transform:uppercase; font-style:normal; }
.levelCard h3 { font:400 30px/1.05 Georgia,serif; margin:19px 0 11px; }
.levelCard p { color:var(--muted); font-size:14px; line-height:1.6; max-width:670px; }
.levelCard>a { display:inline-block; margin-top:15px; color:var(--brass); font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.levelCard>a span { padding-left:10px; }

.bookSection { background:var(--paper); color:#1d1813; padding:110px 0; }
.bookSection .kicker { color:#795827; }.bookSection .kicker span{background:#795827;}
.bookGrid { display:grid; grid-template-columns:.78fr 1.12fr; gap:90px; align-items:center; }
.reverseCoinStage { min-height:520px; display:grid; place-items:center; position:relative; }
.reverseCoinStage::before { content:""; position:absolute; width:470px; aspect-ratio:1; border:1px solid #4e331633; border-radius:50%; box-shadow:0 0 0 45px #6c4a1710,0 0 0 90px #6c4a1709; }
.reverseCoin { width:min(410px,80vw); filter:drop-shadow(0 28px 22px #4a2f1c55); transform:rotate(-4deg); }
.largeCopy { max-width:650px; color:#4f4538; font:19px/1.65 Georgia,serif; }
.learningList { margin-top:34px; border-top:1px solid #5b452736; }
.learningList>div { display:grid; grid-template-columns:50px 1fr; gap:20px; padding:20px 0; border-bottom:1px solid #5b452736; }
.learningList b { color:#8c6329; font:italic 18px Georgia,serif; }
.learningList span { color:#675c4d; font-size:13px; line-height:1.5; }.learningList strong{display:block;color:#1d1813;font:20px Georgia,serif;margin-bottom:5px;}
.quoteBand { background:#0f0d0b; padding:100px 0; text-align:center; }
.quoteBand p { margin:0 auto 35px; font:400 clamp(45px,7vw,84px)/1 Georgia,serif; letter-spacing:-.045em; }
.quoteBand em { color:var(--brass); }

.pageHero { min-height:480px; display:grid; align-items:center; border-bottom:1px solid var(--line); position:relative; overflow:hidden; }
.pageHero::before { content:""; position:absolute; inset:0; opacity:.10; background-image:radial-gradient(circle at 75% 45%,#bf8a3c 0 2px,transparent 3px); background-size:22px 22px; }
.pageHeroGrid { display:grid; grid-template-columns:1.2fr .45fr; gap:70px; align-items:center; position:relative; z-index:1; padding-block:70px; }
.pageHero h1 { font:400 clamp(58px,7.5vw,100px)/.88 Georgia,serif; letter-spacing:-.06em; margin:23px 0; max-width:850px; }
.pageHeroGrid>div>p:not(.kicker) { color:#c7baa2; font:19px/1.6 Georgia,serif; max-width:750px; }
.pageCoinWrap { display:grid; justify-items:center; gap:14px; color:#b79b6c; text-transform:uppercase; letter-spacing:.16em; font-size:9px; }
.pageCoin { width:240px; box-shadow:0 30px 50px #0009; }
.contentSection { padding:95px 0 110px; }
.contentSection.light { background:var(--paper); color:#1e1914; }
.contentSection.light .kicker { color:#795827; }.contentSection.light .kicker span{background:#795827;}
.splitContent { display:grid; grid-template-columns:.68fr 1.32fr; gap:75px; align-items:start; }
.contentHeading h2 { font:400 clamp(42px,5vw,60px)/1 Georgia,serif; letter-spacing:-.045em; margin:22px 0; }
.contentHeading>p:not(.kicker) { color:var(--muted); font:16px/1.65 Georgia,serif; }
.light .contentHeading>p:not(.kicker) { color:#6a5d4b; }
.infoPanel { border:1px solid var(--line); background:#1e1b17; padding:31px; }
.light .infoPanel { background:#f2e9d7; border-color:#553a1c33; }
.infoPanel h3 { font:400 28px Georgia,serif; margin:0 0 16px; }.infoPanel p{color:var(--muted);line-height:1.65;}.light .infoPanel p{color:#665a49;}
.statGrid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:25px; }
.statGrid div { border:1px solid var(--line); padding:20px; }.light .statGrid div{border-color:#553a1c33;}
.statGrid b { display:block; color:var(--brass); font:400 25px Georgia,serif; }.light .statGrid b{color:#775222;}.statGrid span{display:block;color:var(--muted);font-size:11px;margin-top:6px;}.light .statGrid span{color:#665a49;}
.topicGrid { display:grid; grid-template-columns:repeat(2,1fr); gap:13px; }
.topicCard { border:1px solid var(--line); background:#1e1b17; padding:27px; }
.light .topicCard { background:#f2e9d7; border-color:#553a1c33; }
.topicCard span { color:var(--brass); font-size:9px; letter-spacing:.16em; }.light .topicCard span{color:#805923;}
.topicCard h3 { font:400 24px/1.1 Georgia,serif; margin:13px 0 10px; }
.topicCard p { color:var(--muted); font-size:13px; line-height:1.6; }.light .topicCard p{color:#665a49;}
.timeline { display:grid; gap:0; counter-reset:item; }
.timeline article { display:grid; grid-template-columns:74px 1fr; gap:20px; border-top:1px solid var(--line); padding:23px 0; }
.timeline article:last-child { border-bottom:1px solid var(--line); }
.timeline article::before { counter-increment:item; content:"0" counter(item); color:var(--brass); font:italic 20px Georgia,serif; }
.timeline h3 { font:400 23px Georgia,serif; margin:0 0 5px; }.timeline p{color:var(--muted);margin:0;line-height:1.55;font-size:13px;}
.callout { border:1px solid var(--line); padding:36px; background:#100e0c; }
.callout h2 { font:400 clamp(36px,5vw,55px)/1 Georgia,serif; margin:0 0 15px; }.callout p{color:var(--muted);font:16px/1.6 Georgia,serif;max-width:760px;}
.callout .button { margin-top:15px; }

.courseList { display:grid; gap:18px; }
.courseWide { display:grid; grid-template-columns:95px 1fr .55fr; gap:30px; align-items:center; border:1px solid var(--line); background:var(--panel); padding:34px; }
.courseWide>span { color:var(--brass); font:italic 34px Georgia,serif; }
.courseWide h2 { font:400 34px Georgia,serif; margin:0 0 10px; }.courseWide p{color:var(--muted);line-height:1.6;}.courseWide ul{color:#b8ad99;font-size:12px;line-height:1.8;padding-left:18px;}.courseWide .button{justify-self:end;}
.notice { border-left:4px solid var(--brass); background:#201c17; padding:21px 25px; margin-bottom:30px; color:#c7baa4; font:15px/1.6 Georgia,serif; }

.faqList { max-width:900px; margin:0 auto; display:grid; gap:10px; }
.faqList details { border:1px solid var(--line); background:var(--panel); padding:0 24px; }
.faqList summary { cursor:pointer; list-style:none; padding:22px 35px 22px 0; font:400 20px Georgia,serif; position:relative; }
.faqList summary::-webkit-details-marker{display:none}.faqList summary::after{content:"+";position:absolute;right:0;color:var(--brass);font:25px Arial;}.faqList details[open] summary::after{content:"−";}
.faqList details p { color:var(--muted); line-height:1.7; padding:0 0 22px; margin:0; }
.contactGrid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.contactCard { border:1px solid var(--line); background:var(--panel); padding:34px; }
.contactCard h2 { font:400 35px Georgia,serif; margin:0 0 20px; }.contactCard h3{font:400 22px Georgia,serif;margin:28px 0 10px;}.contactCard p,.contactCard li{color:var(--muted);line-height:1.7;}.contactCard a{color:var(--brass);}.contactCard ul{padding-left:19px;}
.contactLine { display:grid; grid-template-columns:75px 1fr; gap:18px; padding:14px 0; border-top:1px solid var(--line); }.contactLine span{font-size:9px;letter-spacing:.14em;color:#9c8e77;text-transform:uppercase;}

.siteFooter { background:#0d0b09; border-top:1px solid var(--line); padding:75px 0 25px; }
.footerGrid { display:grid; grid-template-columns:1.4fr repeat(3,.65fr); gap:50px; }
.footerGrid>div { display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.footerGrid>div:first-child p { color:#8f8574; font:14px/1.6 Georgia,serif; max-width:300px; }
.footerGrid strong { color:var(--brass); text-transform:uppercase; letter-spacing:.14em; font-size:9px; margin-bottom:7px; }
.footerGrid a,.footerGrid address { color:#a89d8b; font-size:12px; line-height:1.6; font-style:normal; }.footerGrid a:hover{color:var(--cream);}
.footerBottom { border-top:1px solid var(--line); margin-top:50px; padding-top:23px; display:flex; justify-content:space-between; color:#71695c; font-size:9px; letter-spacing:.08em; text-transform:uppercase; }

@media (max-width:950px){
  .desktopNav{display:none}.mobileNav{display:block}
  .homeHero{grid-template-columns:1fr;padding:70px 0}.homeHero h1{font-size:82px}.sealStage{min-height:490px}.coursePath,.bookGrid,.splitContent{grid-template-columns:1fr}.stickyHeading{position:static}.proofGrid{grid-template-columns:1fr}.proofGrid>span{border-right:0;border-bottom:1px solid var(--line);padding:16px 0}.proofGrid>span:last-child{border-bottom:0}.bookGrid{gap:30px}.pageHeroGrid{grid-template-columns:1fr .35fr}.topicGrid{grid-template-columns:1fr}.courseWide{grid-template-columns:70px 1fr}.courseWide>.button{grid-column:2;justify-self:start}.footerGrid{grid-template-columns:1.2fr 1fr 1fr}.footerGrid>div:last-child{grid-column:2}.contactGrid{grid-template-columns:1fr}
}
@media (max-width:620px){
  .shell{width:min(100% - 28px,1180px)}.navWrap{min-height:76px}.navCoin{width:46px}.brandLockup b{font-size:15px}.brandLockup small{font-size:8px}
  .homeHero{padding:52px 0}.homeHero h1{font-size:54px}.heroText{font-size:17px}.heroActions{align-items:flex-start;flex-direction:column}.location{line-height:1.6}.sealStage{min-height:375px}.sealStage::before{width:340px}.sealStage::after{width:370px}.heroCoin{width:320px}.sealCaption{bottom:0}
  .coursePath,.contentSection{padding:70px 0}.sectionHeading h2,.bookSection h2{font-size:43px}.levelCard{padding:23px}.cardMeta{align-items:flex-start;gap:15px}.cardMeta em{text-align:right}.bookSection{padding:75px 0}.reverseCoinStage{min-height:390px}.reverseCoinStage::before{width:340px}.reverseCoin{width:310px}.quoteBand{padding:75px 0}.quoteBand p{font-size:44px}
  .pageHeroGrid{grid-template-columns:1fr;padding-block:55px}.pageHero h1{font-size:54px}.pageCoinWrap{display:none}.splitContent{gap:35px}.statGrid{grid-template-columns:1fr}.topicCard{padding:22px}.courseWide{grid-template-columns:1fr;padding:25px}.courseWide>.button{grid-column:1}.courseWide>span{font-size:27px}.footerGrid{grid-template-columns:1fr 1fr}.footerGrid>div:first-child{grid-column:1/3}.footerGrid>div:last-child{grid-column:auto}.footerBottom{align-items:flex-start;flex-direction:column;gap:10px}.contactCard{padding:25px}
}
