@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz,wght@6..96,400;6..96,500&family=Cormorant+Garamond:ital,wght@0,400;0,500;1,400&family=Montserrat:wght@400;500;600&display=swap');

:root{--black:#050505;--panel:#0b0a09;--ivory:#f1ece2;--muted:#b8b0a4;--gold:#c99a52;--gold-light:#e1bc7e;--red:#8d1111;--line:rgba(201,154,82,.42);--display:'Bodoni Moda',Didot,serif;--serif:'Cormorant Garamond',Georgia,serif;--sans:Montserrat,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--ivory);font-family:var(--serif);font-size:19px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit}
img,svg{display:block}
.wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.site-header{height:88px;background:rgba(5,5,5,.98);border-bottom:1px solid rgba(201,154,82,.22);position:relative;z-index:30}
.nav{height:88px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;height:100%;margin-left:-3px}
.brand img{width:70px;height:70px;object-fit:contain;object-position:left center}
.links{display:flex;align-items:center;gap:31px;font:500 10px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase}
.links a{padding:15px 0 12px;border-bottom:1px solid transparent;transition:.2s}
.links a:hover,.links a.active{color:var(--gold-light);border-color:var(--gold)}
.menu{display:none;border:0;background:none;color:var(--ivory);font:500 10px var(--sans);letter-spacing:.18em;text-transform:uppercase;padding:10px 0}

h1,h2,h3{font-family:var(--display);font-weight:400;margin-top:0}
.kicker{margin:0 0 15px;color:var(--gold);font:500 10px/1.3 var(--sans);letter-spacing:.22em;text-transform:uppercase}
.editorial-section{padding:68px 0;border-bottom:1px solid var(--line)}
.editorial-section h2{font-size:clamp(45px,5vw,70px);line-height:.98;letter-spacing:-.03em;color:var(--gold-light);margin-bottom:0}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid var(--gold);font:600 9px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;transition:.2s}
.button:hover,.button-gold{background:var(--gold);color:#080706}
.button-gold:hover{background:var(--gold-light);border-color:var(--gold-light)}
.text-link{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:15px 0;color:var(--ivory);font:500 10px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase}
.text-link b{color:var(--gold);font-size:18px;font-weight:400}
.text-link:hover{color:var(--gold-light)}

.home-hero{height:610px;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.hero-image{position:absolute;inset:0;background:url('/assets/hero-original-v2.png') 58% 58%/cover no-repeat}
.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.97) 26%,rgba(5,5,5,.78) 43%,rgba(5,5,5,.18) 69%,rgba(5,5,5,.06) 100%)}
.hero-layout{height:100%;position:relative;display:flex;align-items:center}
.hero-copy{width:min(53%,610px);padding-top:4px}
.hero-copy .kicker{text-align:right;margin-bottom:18px}
.hero-copy h1{font-size:clamp(64px,6.7vw,98px);line-height:.84;letter-spacing:-.055em;text-transform:uppercase;margin:0;width:100%}
.hero-copy h1 span{display:block;text-align:right;white-space:nowrap}
.hero-copy h1 span:nth-child(odd){color:var(--gold-light)}
.hero-copy h1 span:nth-child(2){color:var(--ivory)}
.hero-intro{max-width:475px;margin:29px 0 0 auto;text-align:right;font-size:22px;font-style:italic;line-height:1.3;text-shadow:0 2px 15px #000}
.hero-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:27px}

.split-intro,.content-split,.learning-intro,.closing-grid,.community-grid,.contact-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:84px;align-items:start}
.large-copy,.prose{color:#d6d0c6;font-size:20px}
.large-copy p,.prose p{margin:0 0 18px}
.large-copy p:last-child,.prose p:last-child{margin-bottom:0}
.section-line{display:flex;align-items:center;gap:24px;margin-bottom:24px}
.section-line .kicker{margin:0;white-space:nowrap}
.section-line span{height:1px;background:var(--line);width:100%}
.route-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.route-grid>a{position:relative;min-height:185px;padding:20px 42px 18px 0}
.route-grid>a+ a{border-left:1px solid var(--line);padding-left:42px}
.route-grid h3{font-size:42px;line-height:1;margin:0 0 11px;color:var(--gold-light)}
.route-grid p{max-width:250px;margin:0;color:var(--muted)}
.route-grid b{position:absolute;bottom:8px;right:42px;color:var(--gold);font-size:25px;font-weight:400}
.route-grid>a:last-child b{right:0}
.ritual-banner{display:grid;grid-template-columns:150px 1fr auto;gap:32px;align-items:center;border:1px solid var(--line);padding:22px 28px;background:linear-gradient(110deg,rgba(201,154,82,.07),transparent 48%)}
.ritual-logo{height:104px;display:flex;align-items:center;border-right:1px solid var(--line);overflow:hidden}
.ritual-logo img{width:92px;height:92px;object-fit:contain;object-position:center}
.ritual-banner p{margin:0;color:#d3ccc0;max-width:530px}
.ritual-banner p strong{color:var(--gold-light);font-weight:500}
.closing-grid{align-items:center}
.closing-grid>div>p{font-size:21px;margin:0 0 14px;color:#d3ccc0}

.page-hero{height:430px;position:relative;display:flex;align-items:center;background-color:#090807;background-position:center;background-size:cover;border-bottom:1px solid var(--line);isolation:isolate}
.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.99) 0%,rgba(5,5,5,.88) 38%,rgba(5,5,5,.35) 70%,rgba(5,5,5,.2) 100%);z-index:-1}
.about-hero,.contact-hero{background-image:url('/assets/bg-about-fuzzy-v5.png');background-position:62% center}
.learn-hero{background-image:url('/assets/bg-learn-fuzzy-v5.png');background-position:60% center}
.events-hero{background-image:url('/assets/bg-events-fuzzy-v5.png');background-position:60% center}
.community-hero{background-image:url('/assets/bg-community-fuzzy-v5.png');background-position:60% center}
.page-hero-copy{padding-top:6px}
.page-hero-copy h1{font-size:clamp(62px,7.4vw,96px);line-height:.9;letter-spacing:-.045em;color:var(--gold-light);margin:0 0 22px;max-width:760px}
.page-hero-copy>p:last-child{margin:0;max-width:620px;font-size:22px;line-height:1.35;text-shadow:0 2px 14px #000}
.content-split h2,.learning-intro h2,.community-grid h2,.contact-grid h2{font-size:52px}
.value-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.value-grid article{min-height:190px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.value-grid h3{font-size:31px;line-height:1.05;color:var(--gold-light);margin:0 0 10px}
.value-grid p{margin:0;color:var(--muted)}
.learning-intro>div:last-child{font-size:21px;color:#d5cec3}
.learning-intro>div:last-child p{margin:4px 0 0}
.workshop-section{padding-top:0}
.workshop-list{border-top:1px solid var(--line)}
.workshop-list article{display:grid;grid-template-columns:170px 1fr;gap:35px;padding:25px 0;border-bottom:1px solid var(--line)}
.workshop-list article>span{padding-top:7px;color:var(--gold);font:500 9px/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase}
.workshop-list h3{font-size:31px;line-height:1.05;color:var(--gold-light);margin:0 0 7px}
.workshop-list p{margin:0;max-width:760px;color:var(--muted)}
.two-cards{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}
.two-cards article{padding:30px 34px;min-height:195px}
.two-cards article+article{border-left:1px solid var(--line)}
.two-cards h3,.event-grid h3{font-size:34px;line-height:1.05;margin:0 0 10px;color:var(--gold-light)}
.two-cards p:last-child,.event-grid article>p:last-child{color:var(--muted);margin-bottom:0}
.centered-action{margin-top:20px}.centered-action .text-link{max-width:350px;margin-left:auto}
.event-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.event-grid article{padding:30px 34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:205px}
.compact-community{padding:55px 0}
.community-grid{gap:70px}
.rule-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.rule-list li{display:grid;grid-template-columns:180px 1fr;gap:22px;padding:15px 0;border-bottom:1px solid var(--line)}
.rule-list span{color:var(--gold-light);font-family:var(--display);font-size:21px}
.rule-list p{margin:2px 0 0;color:var(--muted);font-size:17px}
.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:26px}
.contact-actions a{display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:13px;border:1px solid var(--line);padding:17px;min-width:0}
.contact-actions svg,.footer-actions svg{width:21px;height:21px;fill:none;stroke:var(--gold);stroke-width:1.4}
.contact-actions svg .fill,.footer-actions svg .fill{fill:var(--gold);stroke:none}
.contact-actions small{display:block;color:var(--gold);font:500 8px var(--sans);letter-spacing:.16em;text-transform:uppercase;margin-bottom:4px}
.contact-actions span{min-width:0;overflow-wrap:anywhere;font-family:var(--serif)}
.contact-actions b{color:var(--gold);font-weight:400}
.footer{padding:34px 0 22px;background:#070706}
.footer-main{display:grid;grid-template-columns:1fr auto;gap:42px;align-items:center;padding-bottom:25px;border-bottom:1px solid var(--line)}
.footer-wordmark{display:inline-flex;align-items:center;color:var(--ivory)}
.footer-wordmark span{font:500 18px/1 var(--display);letter-spacing:.2em}
.footer-actions{display:flex;gap:11px}
.footer-actions a{display:flex;min-width:84px;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);padding:10px 9px 9px;font:500 8px var(--sans);letter-spacing:.08em;text-transform:uppercase}
.footer-actions a:hover{border-color:var(--gold);color:var(--gold-light)}
.footer-actions svg{width:17px;height:17px}
.footer-bottom{display:flex;justify-content:space-between;padding-top:18px;color:#79736b;font:400 9px var(--sans);letter-spacing:.06em}

@media(max-width:800px){
  body{font-size:17px}.wrap{width:calc(100% - 36px)}
  .site-header,.nav{height:76px}.brand{margin-left:-2px}.brand img{width:61px;height:61px}.menu{display:flex;align-items:center;gap:9px}.menu i,.menu i:after{display:block;width:19px;height:1px;background:var(--gold);content:""}.menu i:after{transform:translateY(5px)}
  .links{display:none;position:absolute;top:76px;left:-18px;right:-18px;padding:12px 18px 18px;background:rgba(5,5,5,.985);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}.links.open{display:flex}.links a{padding:15px 2px;border-bottom:1px solid rgba(201,154,82,.18);font-size:10px}
  .home-hero{height:620px}.hero-image{background-position:67% 58%}.hero-image:after{background:linear-gradient(180deg,rgba(5,5,5,.12) 0%,rgba(5,5,5,.18) 35%,rgba(5,5,5,.88) 62%,#050505 87%),linear-gradient(90deg,rgba(5,5,5,.72),rgba(5,5,5,.05) 72%)}
  .hero-layout{align-items:flex-end}.hero-copy{width:100%;padding-bottom:42px}.hero-copy .kicker{text-align:left;margin-bottom:14px}.hero-copy h1{font-size:clamp(43px,13.2vw,59px);line-height:.86;width:min(100%,430px)}.hero-intro{margin:23px 0 0;text-align:left;font-size:19px;max-width:360px}.hero-actions{justify-content:flex-start;display:grid;grid-template-columns:1fr 1fr}.hero-actions .button{padding:0 12px}
  .editorial-section{padding:48px 0}.editorial-section h2{font-size:45px}
  .split-intro,.content-split,.learning-intro,.closing-grid,.community-grid,.contact-grid{grid-template-columns:1fr;gap:27px}.large-copy,.prose{font-size:18px}
  .route-grid{grid-template-columns:1fr}.route-grid>a,.route-grid>a+a{min-height:0;padding:22px 46px 23px 0;border-left:0;border-bottom:1px solid var(--line)}.route-grid>a+a{padding-left:0}.route-grid h3{font-size:35px}.route-grid b,.route-grid>a:last-child b{right:3px;bottom:25px}
  .ritual-banner{grid-template-columns:1fr;gap:16px;padding:23px}.ritual-logo{height:99px;border-right:0;border-bottom:1px solid var(--line);padding-bottom:12px}.ritual-logo img{width:76px;height:76px}.ritual-banner .button{width:100%}
  .page-hero{height:370px;background-position:65% center}.page-hero:before{background:linear-gradient(90deg,rgba(5,5,5,.94),rgba(5,5,5,.66) 70%,rgba(5,5,5,.28)),linear-gradient(0deg,rgba(5,5,5,.6),transparent 60%)}.page-hero-copy h1{font-size:clamp(50px,14vw,68px);max-width:100%;margin-bottom:18px}.page-hero-copy>p:last-child{font-size:19px;max-width:92%}
  .content-split h2,.learning-intro h2,.community-grid h2,.contact-grid h2{font-size:44px}.value-grid{grid-template-columns:1fr}.value-grid article{min-height:0;padding:24px}.value-grid h3{font-size:29px}
  .workshop-list article{grid-template-columns:1fr;gap:7px;padding:22px 0}.workshop-list article>span{padding:0}.workshop-list h3{font-size:29px}.two-cards{grid-template-columns:1fr}.two-cards article{min-height:0;padding:26px}.two-cards article+article{border-left:0;border-top:1px solid var(--line)}.centered-action .text-link{max-width:none}
  .event-grid{grid-template-columns:1fr}.event-grid article{min-height:0;padding:26px}.compact-community{padding:43px 0}.community-grid{gap:22px}.rule-list li{grid-template-columns:1fr;gap:2px;padding:13px 0}.rule-list p{font-size:16px}.contact-actions{grid-template-columns:1fr}
  .footer-main{grid-template-columns:1fr;gap:19px}.footer-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.footer-actions a{min-width:0;justify-content:center;padding:10px 5px}.footer-actions a span{display:block}.footer-bottom{gap:14px;line-height:1.4}
}

@media(min-width:601px) and (max-width:800px){
  .menu{display:none}
  .links{display:flex;position:static;padding:0;background:none;border:0;flex-direction:row;align-items:center;gap:14px}
  .links a{padding:12px 0 10px;border-bottom:1px solid transparent;font-size:8px;letter-spacing:.1em}
}

@media(max-width:430px){
  .home-hero{height:570px}.hero-copy h1{font-size:12.8vw}.hero-actions{grid-template-columns:1fr}.hero-intro{font-size:18px}.page-hero{height:350px}.page-hero-copy h1{font-size:13vw}.editorial-section{padding:43px 0}.editorial-section h2{font-size:40px}.contact-grid h2,.community-grid h2,.content-split h2,.learning-intro h2{font-size:39px}
}
