a{color:inherit}
/* Phone and small tablet layout. Desktop is untouched. */
.menu-toggle{display:none}
nav a.join-m{display:none}
@media (max-width:900px){
  header .wrap{height:72px;padding:0 16px}
  .logo{font-size:20px}.logo img{height:34px;width:34px}
  header nav,header .join{display:none}
  .menu-toggle{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;border:1px solid rgba(217,178,106,.6);background:rgba(30,20,38,.45);cursor:pointer}
  .menu-toggle span,.menu-toggle span:before,.menu-toggle span:after{display:block;width:18px;height:1.5px;background:#E8C592;position:relative;content:""}
  .menu-toggle span:before{position:absolute;top:-6px}.menu-toggle span:after{position:absolute;top:6px}
  header.open nav{display:flex;flex-direction:column;position:absolute;top:72px;left:16px;right:16px;gap:0;padding:10px 22px 18px;background:#1E1426;border:1px solid rgba(217,178,106,.45);border-radius:22px;box-shadow:0 20px 50px rgba(0,0,0,.45)}
  header.open nav a{font-size:19px;padding:12px 0;border-bottom:1px solid rgba(217,178,106,.15)}
  header.open nav a.join-m{display:block;color:#E8C592}
  .wrap{padding:0 16px}
  .label{font-size:13px;letter-spacing:.24em}
  .hero{min-height:620px;padding:110px 0 70px}
  .hero h1{font-size:46px}
  .hero p{font-size:18px}
  section.b,.cream,.night,.sky,.sanct{padding:76px 0}
  .found{padding:70px 0}
  .hd h2,.night h2,.sec h2,.sky h2,.letter h2,.films h2,.split h2{font-size:38px}
  .sanct h2,.meet h2{font-size:40px}
  .wonder blockquote{font-size:31px}
  .quote{font-size:32px}
  .grid.g3,.grid.g2,.two,.split,.films{grid-template-columns:1fr;gap:22px}
  .grid.g4,.tiles{grid-template-columns:1fr 1fr;gap:14px}
  .split .ph{order:0!important;aspect-ratio:4/3.4}
  .split{gap:30px}
  .gift{grid-template-columns:1fr;gap:24px;padding:22px;text-align:center}
  .gift .art{aspect-ratio:16/10}
  .gift h2{font-size:32px}
  .tile h3{font-size:22px}.tile p{font-size:14px}
  .tile .tx{padding:18px 12px 22px}
  .meet{min-height:0;padding:330px 0 60px;background-position:70% 0;background-size:auto 420px;background-repeat:no-repeat;background-color:#1E1426}
  .meet:before{background:linear-gradient(0deg,#1E1426 45%,rgba(30,20,38,0) 75%)}
  .mini a{width:150px;height:104px;font-size:19px}
  .form{flex-direction:column}
  .form input{flex:none;width:100%}
  .gift .btn{margin:0 auto}
  .card h3{font-size:27px}
  footer nav{flex-wrap:wrap;gap:16px;justify-content:center}
}
@media (max-width:420px){
  .grid.g4,.tiles{grid-template-columns:1fr}
  .tiles .tile .ph,.tile .ph{aspect-ratio:16/10}
  .hero h1{font-size:40px}
}
button.btn{border:0;font-family:inherit;cursor:pointer}
.film iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.split .sig{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:28px;color:#9A7B3C}
.card .ph[style*="cover-"],.way .ph[style*="cover-"]{aspect-ratio:16/9}
#calm .card .ph{aspect-ratio:16/9}
.yt-modal{position:fixed;inset:0;z-index:50;background:rgba(14,9,18,.92);display:none;align-items:center;justify-content:center;padding:16px}
.yt-modal.on{display:flex}
.yt-box{position:relative;width:min(1100px,100%)}
.yt-frame{position:relative;aspect-ratio:16/9;border-radius:20px;overflow:hidden;border:1px solid rgba(217,178,106,.55);box-shadow:0 0 40px rgba(232,197,146,.2);background:#000}
.yt-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt-x{position:absolute;top:-56px;right:0;width:46px;height:46px;border-radius:50%;border:1px solid #D9B26A;background:transparent;color:#F3E8CF;font-size:28px;line-height:1;cursor:pointer}
.thanks{font-family:'Cormorant Garamond',serif;font-size:26px;color:#3A2440;width:100%;text-align:center;padding:10px 0}
.prayer{max-width:640px;margin:0 auto;text-align:center}
.prayer p{font-family:'Cormorant Garamond',serif;font-size:24px;line-height:1.55;color:#3A2440;margin:0 0 16px}
.prayer .psig{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:30px;color:#9A7B3C;margin-top:36px}
@media (max-width:900px){.prayer p{font-size:21px}}
/* Calm reading: neurodivergent-friendly layer */
html{scroll-behavior:smooth}
body{letter-spacing:.005em}
p{max-width:62ch}
.center p,.c p,.lede,.hd p,.wonder p,.letter p,.prayer p{margin-left:auto;margin-right:auto}
.card p,.split p,.meet p,.way p{font-size:17px;line-height:1.75}
.lede{line-height:1.7}
.small{color:#5E5650}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #E8C592;outline-offset:3px;border-radius:999px}
.tile:focus-visible,.card a:focus-visible{border-radius:22px}
.skip{position:absolute;left:16px;top:-60px;z-index:60;background:#C6A15B;color:#1E1426;padding:12px 20px;border-radius:999px;font-weight:500}
.skip:focus{top:12px}
.btn{min-height:52px}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media (max-width:900px){.card p,.split p,.meet p,.way p,.lede{font-size:17px}.tile p{font-size:15px}}
.sanct .btns,.sanct>.wrap>a.btn{margin-top:34px}.sanct p{margin-bottom:34px}
.tracks{list-style:none;padding:0;max-width:640px;margin:0 auto}
.tracks li{display:flex;align-items:center;gap:18px;padding:14px 6px;border-bottom:1px solid rgba(217,178,106,.22)}
.tracks .tn{width:22px;color:#C6A15B;font-size:15px;text-align:right}
.tracks .tt{font-family:'Cormorant Garamond',serif;font-size:23px;color:#F3E8CF;line-height:1.3}
.tplay{flex:none;width:48px;height:48px;border-radius:50%;border:1.5px solid #E8C592;background:rgba(232,197,146,.08);cursor:pointer;display:flex;align-items:center;justify-content:center}
.tplay span{width:0;height:0;border-left:13px solid #E8C592;border-top:8px solid transparent;border-bottom:8px solid transparent;margin-left:4px}
.tplay.on{background:#C6A15B}.tplay.on span{border:0;width:12px;height:14px;margin:0;border-left:4px solid #1E1426;border-right:4px solid #1E1426}
.tracks li.on .tt{color:#E8C592}
@media (max-width:900px){.tracks .tt{font-size:20px}.tracks li{gap:14px}}

@media (min-width:901px) and (max-width:1180px){header nav{gap:18px;font-size:14px}.logo{font-size:19px}}
