/* stories - only what this page adds on top of theme.css */

.mvmt.m4{background:linear-gradient(155deg,var(--teal-deep),var(--space-2))}
#principles .mvmt p{font-family:var(--disp);font-size:clamp(16px,4vw,19px);line-height:1.5;color:#fff;margin-top:0}
.principles{list-style:none;margin:clamp(34px,6vw,46px) auto 0;padding:0;max-width:780px;
  display:flex;flex-direction:column;gap:14px}
.member.pend .av{background:radial-gradient(120% 120% at 50% 22%,color-mix(in srgb, var(--gold) 10%, var(--paper)),var(--paper-2));color:var(--gold-dim)}
@media(min-width:720px){
  .stats{grid-template-columns:repeat(4,1fr)}
  .movements{grid-template-columns:repeat(2,1fr);gap:20px}
  .qgrid{grid-template-columns:repeat(2,1fr)}
  .gallery{grid-template-columns:repeat(4,1fr);gap:20px;align-items:start;margin-bottom:36px}
  .gallery figure:nth-child(even){--sy:36px}
  .pcard .go{margin-top:18px;padding:0}
  .hero .actions{flex-direction:row;max-width:none;justify-content:flex-start}
  .field{flex-direction:row}
  .field .btn{flex:none}
  .book{grid-template-columns:.7fr 1.3fr}
  .guide{grid-template-columns:.8fr 1.2fr}
  .footer-top{grid-template-columns:1.6fr 1fr 1fr}
  .footer-bottom{flex-direction:row;justify-content:space-between;align-items:center}
}
.vgwrap{padding-top:clamp(30px,5vw,44px)}
.vgrid{display:grid;grid-template-columns:1fr;gap:clamp(16px,2.4vw,22px);
  margin-top:clamp(24px,4vw,34px)}
@media(min-width:660px){ .vgrid{grid-template-columns:repeat(2,1fr)} }
@media(min-width:1020px){ .vgrid{grid-template-columns:repeat(3,1fr)} }
.vcard{background:#fff;border:1px solid var(--line-l);border-radius:7px;overflow:hidden;
  display:flex;flex-direction:column;
  box-shadow:0 12px 30px color-mix(in srgb,var(--ink) 5%,transparent);
  transition:transform .35s ease,box-shadow .35s ease}
.vcard:hover{transform:translateY(-3px);box-shadow:0 20px 44px color-mix(in srgb,var(--ink) 9%,transparent)}
.vthumb{position:relative;display:block;aspect-ratio:16/9;background:var(--space-2);overflow:hidden}
.vthumb img{width:100%;height:100%;object-fit:cover;display:block}
.vthumb::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 52%,color-mix(in srgb,var(--space) 40%,transparent))}
.vplaybtn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:54px;height:54px;min-width:44px;min-height:44px;border-radius:50%;z-index:2;
  border:2px solid var(--gold-soft);display:grid;place-items:center;
  background:color-mix(in srgb,var(--space) 34%,transparent);
  transition:background .3s ease,transform .3s ease}
.vthumb:hover .vplaybtn{background:color-mix(in srgb,var(--space) 55%,transparent);transform:translate(-50%,-50%) scale(1.06)}
.vplaybtn i{display:block;width:0;height:0;margin-left:4px;
  border-top:9px solid transparent;border-bottom:9px solid transparent;border-left:15px solid var(--gold-soft)}
.vbody{padding:clamp(17px,2.6vw,22px);display:flex;flex-direction:column;flex:1}
.vcat{font:600 8.5px/1 var(--sans);letter-spacing:.19em;text-transform:uppercase;color:var(--gold-dim)}
.vcard h3{font-family:var(--disp);font-size:clamp(16.5px,2.5vw,18.5px);color:var(--ink);
  line-height:1.35;margin-top:11px}
.vcard p{color:var(--ink-soft);font-size:13.5px;line-height:1.68;margin-top:10px}
.vthumb{cursor:pointer;width:100%;padding:0;border:0;text-align:left}
.vwatch{margin-top:auto;padding:15px 0 0;display:inline-flex;align-items:center;gap:7px;min-height:44px;
  align-self:flex-start;background:none;border:0;cursor:pointer;
  font:600 9.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--teal-deep);
  transition:gap .25s,color .25s}
.vcard:hover .vwatch{gap:12px;color:var(--gold-dim)}
.vthumb:focus-visible,.vwatch:focus-visible{outline:2px solid var(--teal-deep);outline-offset:3px}
.stfull{display:none}
.stmodal{position:fixed;inset:0;z-index:200;display:none;padding:0}
.stmodal.on{display:block}
.stmodal .stveil{position:absolute;inset:0;background:color-mix(in srgb,var(--space) 76%,transparent);
  backdrop-filter:blur(4px)}
.stbox{position:relative;background:var(--paper);margin:0 auto;height:100%;width:100%;
  max-width:760px;overflow-y:auto;-webkit-overflow-scrolling:touch}
@media(min-width:800px){
  .stbox{height:auto;max-height:88vh;margin:6vh auto;border-radius:9px;
    box-shadow:0 40px 90px color-mix(in srgb,var(--space) 46%,transparent)}
}
.stbar-x{position:sticky;top:0;z-index:4;display:flex;justify-content:flex-end;
  padding:8px 8px 8px 0;background:var(--paper);border-bottom:1px solid var(--line-l)}
.stclose{width:44px;height:44px;border-radius:50%;border:1px solid var(--line-l);cursor:pointer;
  background:#fff;color:var(--ink);font-size:20px;line-height:1;
  display:grid;place-items:center;transition:background .25s,border-color .25s}
.stclose:hover{background:#fff;border-color:var(--teal-deep);color:var(--teal-deep)}
.stvid{position:relative;aspect-ratio:16/9;background:var(--space-2)}
.stvid iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.stbody{padding:clamp(22px,5vw,38px)}
.stbody .vcat{color:var(--gold-dim)}
.sfhead{font-family:var(--disp);font-size:clamp(22px,5vw,31px);line-height:1.22;color:var(--ink);
  margin-top:12px}
.sfwho{font:600 10px/1.5 var(--sans);letter-spacing:.17em;text-transform:uppercase;
  color:var(--teal-deep);margin-top:14px}
.stbody p{color:var(--ink-soft);font-size:15.5px;line-height:1.82;margin-top:18px}
.stbody p em{font-style:normal;color:var(--ink);
  box-shadow:inset 0 -0.55em 0 color-mix(in srgb,var(--gold-soft) 26%,transparent)}
.sfquote{margin-top:26px;padding:20px 0 0;border-top:1px solid var(--line-l);
  font-family:var(--disp);font-size:clamp(18px,4vw,23px);line-height:1.4;color:var(--ink)}
.sfquote::before{content:"\201C"}
.sfquote::after{content:"\201D"}
.sfnote{font-size:11.5px;line-height:1.7;color:var(--ink-soft);opacity:.8;margin-top:24px}
.stcta{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;
  padding-top:22px;border-top:1px solid var(--line-l)}
body.stlock{overflow:hidden}
.vnote{font-size:12px;color:var(--ink-soft);opacity:.85;margin-top:clamp(22px,3.6vw,30px);
  max-width:70ch;line-height:1.7}
.pband{position:relative;min-height:clamp(300px,46vh,440px);display:flex;align-items:flex-end;overflow:hidden}
@media(min-width:900px){ .pband{min-height:clamp(460px,60vh,660px)} }
.pband>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;filter:var(--warm-img)}
.pband::after{content:"";position:absolute;inset:0;z-index:1;background:
  linear-gradient(180deg,transparent 34%,color-mix(in srgb,var(--scrim) 84%,transparent) 100%)}
.pband .wrap{position:relative;z-index:2;padding-bottom:clamp(26px,4vw,38px);padding-top:clamp(40px,7vw,60px)}
.pband .pcap{font:600 9.5px/1.5 var(--sans);letter-spacing:.2em;text-transform:uppercase;
  color:color-mix(in srgb,#fff 82%,transparent)}
.pband .pline{font-family:var(--disp);font-weight:400;font-size:clamp(21px,4.8vw,30px);
  color:#fff;margin-top:10px;max-width:22ch;line-height:1.22;
  text-shadow:0 2px 30px color-mix(in srgb,var(--space) 66%,transparent)}
section[id]{scroll-margin-top:76px}
.sthero{position:relative;overflow:hidden;padding:clamp(96px,13vh,124px) 0 clamp(38px,6vw,52px);
  background:radial-gradient(120% 92% at 50% 24%, var(--navy-2) 0%, var(--space) 66%);text-align:center}
.sthero .eyebrow{color:var(--gold)}
.sthero h1{font-size:clamp(34px,8.6vw,58px);line-height:1.04;color:#fff;margin-top:14px}
.sthero p{font-size:clamp(16px,4vw,18px);line-height:1.62;color:var(--fog);margin:18px auto 0;max-width:46ch}
.stcount{display:inline-flex;align-items:center;gap:10px;margin-top:22px;
  font:600 9.5px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--fog-dim)}
.stcount i{width:7px;height:7px;border-radius:50%;background:var(--teal);flex:none;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--teal) 16%,transparent)}
.stbar{position:sticky;top:64px;z-index:60;background:color-mix(in srgb,var(--paper) 94%,transparent);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--line-l);padding:13px 0}
.stchips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.stchips::-webkit-scrollbar{display:none}
.stchip{flex:none;cursor:pointer;background:none;border:1px solid var(--line-l);border-radius:30px;
  padding:12px 16px;min-height:44px;font:600 10px/1 var(--sans);letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-soft);transition:all .28s}
.stchip:hover{border-color:color-mix(in srgb,var(--teal-deep) 45%,transparent);color:var(--teal-deep)}
.stchip.on{background:var(--navy);border-color:var(--navy);color:#fff}
.stlib{display:grid;grid-template-columns:1fr;gap:16px;align-items:start;margin-top:clamp(26px,5vw,34px)}
.stcard{background:#fff;border:1px solid var(--line-l);
  border-left:2px solid color-mix(in srgb,var(--teal-deep) 46%,transparent);border-radius:3px;
  padding:24px 22px 20px;transition:border-color .3s,box-shadow .3s}
.stcard:hover{box-shadow:0 20px 46px color-mix(in srgb,var(--ink) 8%,transparent);
  border-left-color:var(--gold-dim)}
.stcard blockquote{margin:0;font-family:var(--disp);font-size:16.5px;line-height:1.55;color:var(--ink)}
.stcard .stnote{margin:0;font-size:14.5px;line-height:1.7;color:var(--ink-soft)}
.stcard .att{display:flex;align-items:center;gap:12px;margin-top:17px}
.stcard .init{flex:none;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;font-family:var(--disp);font-size:15px;color:var(--teal-deep);
  background:color-mix(in srgb,var(--teal) 11%,transparent);
  border:1px solid color-mix(in srgb,var(--teal) 30%,transparent)}
.stcard .nm{font-weight:600;font-size:12.5px;letter-spacing:.04em;color:var(--ink)}
.stcard .mt{font:600 8.5px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-soft);margin-top:3px}
.stgroup{margin-top:clamp(34px,6vw,50px)}
.stvid{position:relative;aspect-ratio:16/9;border-radius:3px;overflow:hidden;
  margin:0 0 16px;background:var(--navy-2)}
.stvid img{width:100%;height:100%;object-fit:cover;display:block}
.stvid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vplay.sm{width:52px;height:52px;font-size:15px}
.stprompt{margin:14px auto 0;max-width:46ch;font:600 11px/1.5 var(--sans);
  letter-spacing:.14em;text-transform:uppercase;color:var(--teal-deep)}
.gmore{display:inline-block;margin-top:10px;font:600 10.5px/1 var(--sans);
  letter-spacing:.16em;text-transform:uppercase;color:var(--teal-deep);
  border-bottom:1px solid color-mix(in srgb,var(--teal-deep) 40%,transparent);
  padding-bottom:3px;text-decoration:none}
.gmore:hover{color:var(--gold-dim);border-bottom-color:var(--gold-dim)}
.ghead{display:grid;grid-template-columns:1fr;gap:12px;align-items:end;
  padding-bottom:16px;border-bottom:1px solid var(--line-l)}
.ghead h2{font-family:var(--disp);font-weight:400;font-size:clamp(24px,5.6vw,32px);
  color:var(--ink);margin:0}
.ghead .gd{font-size:11px;line-height:1.62;color:var(--ink-soft);opacity:.8;margin:0}
@media(min-width:900px){
  .ghead{grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);gap:clamp(28px,4vw,56px)}
}
.stempty{display:none;text-align:center;padding:60px 0;color:var(--ink-soft)}
@media(min-width:700px){ .stlib{grid-template-columns:repeat(2,1fr)} }
@media(min-width:1080px){ .stlib{grid-template-columns:repeat(3,1fr)} }
.stlib.few{grid-template-columns:1fr !important;max-width:820px}
.stlib.few .stcard{border-left-width:3px;padding:30px 30px 26px}
.stlib.few .stcard blockquote{font-size:clamp(19px,3.2vw,25px);line-height:1.45}

/* added stories, 9 Sep */
.xlead{display:grid;grid-template-columns:1fr;gap:clamp(20px,3.4vw,30px);
  margin-top:clamp(28px,5vw,40px);align-items:center}
.xlead .stvid{margin:0}
.xcopy blockquote{margin:0;font-family:var(--disp);font-size:clamp(17px,2.9vw,21px);
  line-height:1.55;color:var(--ink)}
.xcopy .att{display:flex;align-items:center;gap:12px;margin-top:18px}
.xcopy .nm{font-weight:600;font-size:13.5px;letter-spacing:.04em;color:var(--ink)}
.xcopy .mt{font:600 9px/1.4 var(--sans);letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink-soft);margin-top:4px}
.xrow{display:grid;grid-template-columns:1fr;gap:16px;margin-top:clamp(24px,4vw,34px)}
.xcard{background:#fff;border:1px solid var(--line-l);border-radius:7px;overflow:hidden;
  display:flex;flex-direction:column}
.xcard .stvid{margin:0;border-radius:0;border-left:0;border-right:0;border-top:0}
.xcard .xin{padding:20px 20px 18px;display:flex;flex-direction:column;flex:1}
.xcard blockquote{margin:0;font-family:var(--disp);font-size:16px;line-height:1.55;color:var(--ink);flex:1}
.xcard .stnote{margin:0;font-size:14px;line-height:1.7;color:var(--ink-soft);flex:1}
.xcard .xlink{display:inline-flex;align-items:center;gap:7px;margin-top:14px;min-height:44px;
  font:600 9.5px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--teal-deep);
  border-bottom:1px solid color-mix(in srgb,var(--teal-deep) 32%,transparent);
  padding-bottom:5px;align-self:flex-start;transition:gap .25s,color .25s,border-color .25s}
.xcard .xlink:hover{gap:12px;color:var(--ink);border-color:var(--gold)}
.xcard .att{display:flex;align-items:center;gap:12px;margin-top:17px}
.xcard .att img{width:38px;height:38px;border-radius:50%;object-fit:cover;flex:none;
  border:1px solid color-mix(in srgb,var(--gold) 45%,transparent)}
.xcard .nm{font-weight:600;font-size:12.5px;letter-spacing:.04em;color:var(--ink)}
.xcard .mt{font:600 8.5px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-soft);margin-top:3px}
@media(min-width:820px){
  .xlead{grid-template-columns:1.05fr .95fr;gap:clamp(28px,3.6vw,44px)}
  .xrow{grid-template-columns:repeat(3,1fr)}
}
.stcarousel{position:relative;margin-top:clamp(26px,5vw,34px)}
.strack{display:flex;gap:16px;align-items:stretch;
  overflow-x:auto;overscroll-behavior-x:contain;
  scroll-snap-type:x mandatory;scroll-behavior:smooth;
  padding:2px 2px 8px;margin:-2px -2px 0;scrollbar-width:none}
.strack::-webkit-scrollbar{display:none}
.strack > .stcard{flex:0 0 86%;scroll-snap-align:start;margin:0;
  display:flex;flex-direction:column}
.strack > .stcard blockquote,.strack > .stcard .stnote{flex:1}
.stnav{display:flex;gap:8px;justify-content:flex-end;margin-top:14px}
.stnav button{width:44px;height:44px;border-radius:50%;cursor:pointer;
  background:none;border:1px solid var(--line-l);color:var(--ink-soft);
  display:flex;align-items:center;justify-content:center;font-size:15px;
  transition:border-color .25s,color .25s,background .25s}
.stnav button:hover:not([disabled]){border-color:var(--teal-deep);color:var(--teal-deep)}
.stnav button[disabled]{opacity:.32;cursor:default}
.stnav button:focus-visible{outline:2px solid var(--teal-deep);outline-offset:2px}
@media(min-width:640px){ .strack > .stcard{flex-basis:calc((100% - 16px)/2)} }
@media(min-width:980px){ .strack > .stcard{flex-basis:calc((100% - 32px)/3)} }
@media(prefers-reduced-motion:reduce){ .strack{scroll-behavior:auto} }
