/* ==========================================================
   ARTISTRY v7: modest and professional.
   Less decoration, calmer motion, quieter buttons. Same artistic bones.
   ========================================================== */

/* --- no ambient effects --- */
.cursor-glow,.noise,.spotlight-ribbon,.bcd-ribbon-bg{display:none!important}

/* --- buttons: solid, square-ish, no glow or pulse --- */
.nav-cta,.book-big,.book-float,.calendar-cta-button,.button.btn-ember,.ht-hero-cta .button.btn-ember{
  background:#6a56d4!important;background-image:none!important;color:#fff!important;border:0!important;border-radius:4px!important;
  box-shadow:none!important;animation:none!important;filter:none!important;transition:background .25s ease!important}
.nav-cta:hover,.book-big:hover,.book-float:hover,.calendar-cta-button:hover,.button.btn-ember:hover{
  background:#7f6de6!important;color:#fff!important;transform:none!important;filter:none!important;box-shadow:none!important}
.book-big:after,.nav-cta:after{display:none!important}
.book-big span,.button span,.button:hover span,.book-big:hover span{transform:none!important;transition:none!important}
.nav-cta{padding:12px 20px!important;font-size:12px!important;letter-spacing:.12em!important}
.book-big{min-height:54px;padding:0 28px;font-size:13px;letter-spacing:.12em;gap:12px}
.book-big svg{width:18px;height:18px}
.ht-hero-cta .button.btn-ember{min-height:54px;padding:0 26px}
.book-float{height:48px;padding:0 20px;font-size:11.5px;letter-spacing:.12em}
.btn-ghost-ember,.button.btn-ghost-ember{border-radius:4px;box-shadow:none}
.button{border-radius:4px}

/* --- no hover lifts, tilts or zooms --- */
.hub-now:hover,.goal:hover,.spot-poster:hover,.bcd-photo:hover,.ht-set-grid figure:hover,.frow:hover,.brand:hover .brand-mark,.brand:hover .brand-logo{transform:none!important}
.bcd-photo{transform:none!important}
.spot-poster:hover img,.bts-item:hover img,.ht-grid figure:hover img,.project-card-video:hover .play-badge svg{transform:none!important}
.ht-grid figure:hover img,.ht-stills-grid figure:hover img{filter:none}
.door img{transform:none!important;transition:opacity .4s,filter .4s}
.door:hover img,.door:focus-visible img{transform:none!important;opacity:.7;filter:grayscale(.3)}
.door i{transform:none;transition:opacity .3s}
.spot-poster:hover{box-shadow:0 0 0 1px var(--ember)}
.goal:hover{box-shadow:none}

/* --- stillness where it was theatrical --- */
.ht-title{animation:none!important;text-shadow:none!important}
.live-dot,.ht-dot,.ht-kicker .live-dot{animation:none!important;box-shadow:none!important}
.ht-scroll{display:none}
#embers{opacity:.4}
.ht-fog{opacity:.5}
.reveal{transform:translateY(10px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{transform:none}

/* --- hub hero: smaller wordmark, flat ground --- */
.hub-hero{min-height:auto;justify-content:flex-start;gap:clamp(22px,3vw,36px);padding:clamp(56px,8vw,110px) 4vw clamp(40px,5vw,70px);
  background:#08070d}
.hub-word{font-weight:500;letter-spacing:-.05em;line-height:.85}
.hub-line{font-size:clamp(1.5rem,2.6vw,2.4rem);max-width:26ch}
.hub-sub{border-top-color:rgba(179,166,255,.18)}
.sub-head h1{font-weight:500;font-size:clamp(2.6rem,6.4vw,6rem);letter-spacing:-.045em;line-height:.95}

/* --- doors: quieter tiles --- */
.hub-doors{background:rgba(179,166,255,.14);border-color:rgba(179,166,255,.14)}
.door{aspect-ratio:3/4}
.door h2{font-weight:500;font-size:clamp(1.6rem,2.4vw,2.4rem);letter-spacing:-.03em}
.door img{opacity:.38}
.door p{font-size:14px}

/* --- now showing strip --- */
.hub-now{border-color:rgba(179,166,255,.18);background:#0c0b14}

/* --- section type: lighter weights, calmer sizes --- */
.what-head h1,.what-head h2{font-size:clamp(2.3rem,4.6vw,4.2rem)}
.start-head h2{font-size:clamp(2.2rem,4.4vw,4rem)}
.ht-set-head h2{font-size:clamp(2.2rem,4.4vw,4rem)}
.ht-film-head h2{font-size:clamp(2.4rem,4.6vw,4.4rem)}

/* --- glows off --- */
.start,.what,.ht-film,.ht-set,.ht-stills{background-image:none}
.start-panel,.what-stage,.start-opts button.on{box-shadow:none}

/* --- new: Hidden Truth stills --- */
.ht-stills{padding:clamp(60px,8vw,110px) 4vw;background:#08070d;border-top:1px solid rgba(179,166,255,.12)}
.ht-stills .ht-set-head{max-width:1360px;margin-left:auto;margin-right:auto}
.ht-stills .eyebrow{color:var(--ember)}
.ht-stills-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(8px,1vw,14px);max-width:1360px;margin:0 auto}
.ht-stills-grid figure{position:relative;margin:0;overflow:hidden;background:#050409;border:1px solid rgba(255,255,255,.06);cursor:zoom-in;min-width:0}
.ht-stills-grid img{display:block;width:100%;height:100%;object-fit:cover;max-width:100%}
.ht-stills-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 12px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#d9d3ea;
  background:linear-gradient(transparent,rgba(5,4,9,.78));opacity:0;transition:opacity .3s}
.ht-stills-grid figure:hover figcaption,.ht-stills-grid figure:focus-visible figcaption{opacity:1}
.ht-stills-grid .g-wide{grid-column:1/-1;aspect-ratio:2.39/1}
.ht-stills-grid .g-a{grid-column:span 7;aspect-ratio:1.45/1}
.ht-stills-grid .g-b{grid-column:span 5}
.ht-stills-grid .g-c{grid-column:span 6;aspect-ratio:1.6/1}
.ht-stills-grid .g-d{grid-column:span 6;aspect-ratio:1.6/1}
.ht-stills-grid .g-b{aspect-ratio:auto}
.ht-stills-grid .g-a,.ht-stills-grid .g-b{height:auto}
@media(max-width:760px){
  .ht-stills-grid .g-a,.ht-stills-grid .g-b,.ht-stills-grid .g-c,.ht-stills-grid .g-d{grid-column:1/-1;aspect-ratio:16/10}
  .ht-stills-grid .g-wide{aspect-ratio:2/1}
  .ht-stills-grid figcaption{opacity:1}
}

/* --- gatherings: text-only feature --- */
.event-feature--text{grid-template-columns:1fr!important;padding-top:70px;padding-bottom:70px}
.event-feature--text .event-copy{max-width:680px}
@media(max-width:760px){
  .hub-hero{padding-top:48px}
  .door{aspect-ratio:4/3}
}
@media(prefers-reduced-motion:reduce){.reveal{transform:none;transition:none}}

/* --- gatherings + support pages: same calmer scale --- */
.page-hero{background-image:none!important}
.page-hero h1{font-size:clamp(2.6rem,6vw,5.4rem)!important;line-height:1!important;letter-spacing:-.035em}
.page-hero h1 em{font-style:italic}
.page-intro{font-size:clamp(1.1rem,1.5vw,1.4rem)!important;line-height:1.55!important}
.event-copy h2{font-size:clamp(2rem,3.6vw,3.2rem)!important;line-height:1.05}
.festival-banner{background-image:none!important;background-color:#0b0a14}
.festival-banner h2{font-size:clamp(2rem,3.8vw,3.4rem)!important}

/* --- hub doors: line icons instead of photos --- */
.door{aspect-ratio:1/1;background:#0b0a14;gap:8px}
.door:after{display:none}
.door-ico{width:clamp(52px,5.2vw,76px);height:auto;color:var(--ember-hi);margin-bottom:clamp(14px,2vw,28px);opacity:.9;transition:color .3s,transform .3s}
.door:hover{background:#110f1d}
.door:hover .door-ico{color:#fff}
@media(max-width:760px){.door{aspect-ratio:auto;min-height:190px}.door-ico{width:46px}}
.door{justify-content:flex-start;padding-top:clamp(64px,7vw,100px)}
.door-ico{width:clamp(60px,6vw,88px);margin-bottom:clamp(18px,2.4vw,32px)}
@media(max-width:760px){.door{padding-top:56px}}
.what-ico{display:flex;align-items:center;justify-content:center;background:#0b0a14;border:1px solid rgba(179,166,255,.14);aspect-ratio:16/10}
.what-ico-svg{width:clamp(72px,9vw,110px);height:auto;color:var(--ember-hi)}

/* ==========================================================
   v8: glowing Book a meeting, "What is Artistry?" bubble, mission page
   ========================================================== */

/* --- Book a meeting: a soft, breathing glow --- */
.nav-cta,.book-big,.book-float,.calendar-cta-button{
  background:#7360e0!important;
  box-shadow:0 0 0 1px rgba(196,184,255,.45),0 0 18px rgba(143,124,240,.55),0 0 46px rgba(143,124,240,.32)!important;
  animation:bookGlow 3.6s ease-in-out infinite!important}
.nav-cta:hover,.book-big:hover,.book-float:hover,.calendar-cta-button:hover{
  background:#8875f0!important;
  box-shadow:0 0 0 1px rgba(214,206,255,.7),0 0 26px rgba(160,142,255,.85),0 0 70px rgba(143,124,240,.5)!important;animation:none!important}
@keyframes bookGlow{
  0%,100%{box-shadow:0 0 0 1px rgba(196,184,255,.4),0 0 14px rgba(143,124,240,.45),0 0 36px rgba(143,124,240,.25)}
  50%{box-shadow:0 0 0 1px rgba(214,206,255,.6),0 0 24px rgba(160,142,255,.75),0 0 64px rgba(143,124,240,.45)}}
@media(prefers-reduced-motion:reduce){.nav-cta,.book-big,.book-float,.calendar-cta-button{animation:none!important}}

/* --- speech bubble --- */
.ask-bubble{position:absolute;right:clamp(16px,6vw,110px);top:clamp(96px,11vw,170px);z-index:2;display:inline-flex;align-items:center;gap:12px;
  padding:16px 22px 16px 24px;border-radius:22px;background:#f2ebe0;color:#14111f;
  font-family:var(--serif);font-style:italic;font-weight:400;font-size:clamp(1.15rem,1.7vw,1.5rem);letter-spacing:-.01em;line-height:1;
  box-shadow:0 18px 40px -18px rgba(0,0,0,.8);transition:background .25s ease,transform .25s ease}
.ask-bubble:after{content:"";position:absolute;left:30px;bottom:-11px;width:22px;height:22px;background:inherit;border-radius:0 0 6px 0;transform:skewX(28deg) rotate(45deg);clip-path:polygon(100% 0,100% 100%,0 100%)}
.ask-bubble span{font-family:var(--grot);font-style:normal;font-size:.8em;color:#5a45b3;transition:transform .25s ease}
.ask-bubble:hover{background:#fff}
.ask-bubble:hover span{transform:translateX(4px)}
.ask-bubble:focus-visible{outline:2px solid var(--ember-hi);outline-offset:4px}
@media(max-width:900px){
  .ask-bubble{position:relative;right:auto;top:auto;align-self:flex-start;margin-top:4px}
  .ask-bubble:after{bottom:auto;top:-11px;left:26px;transform:skewX(-28deg) rotate(45deg);clip-path:polygon(0 0,100% 0,0 100%);border-radius:6px 0 0 0}
}

/* --- mission page --- */
.mission-hero{padding-top:clamp(90px,12vw,170px);padding-bottom:clamp(40px,6vw,80px);border-bottom:1px solid rgba(179,166,255,.14)}
.mission-hero .eyebrow{color:var(--ember-hi)}
.mission-hero h1{margin:.25em 0 0;max-width:14ch;font-family:var(--serif);font-weight:350;font-size:clamp(2.8rem,7.2vw,6.6rem);line-height:.98;letter-spacing:-.035em;color:var(--cream);text-wrap:balance}
.mission-hero h1 em{color:var(--ember-hi)}
.mission-lede{margin:clamp(24px,3vw,40px) 0 0;max-width:34ch;font-family:var(--serif);font-weight:300;font-size:clamp(1.3rem,2.1vw,1.9rem);line-height:1.35;color:#d9d2e6}
.mission-block{display:grid;grid-template-columns:minmax(80px,1fr) 3fr;gap:clamp(20px,4vw,64px);padding-top:clamp(56px,7vw,100px);padding-bottom:clamp(56px,7vw,100px);border-bottom:1px solid rgba(179,166,255,.1)}
.mission-n{margin:0;font-family:var(--grot);font-size:12px;letter-spacing:.24em;color:var(--ember-hi);padding-top:.9em}
.mission-body{min-width:0;max-width:720px}
.mission-body h2{margin:0 0 .7em;font-family:var(--serif);font-weight:350;font-size:clamp(2rem,3.6vw,3.2rem);line-height:1.04;letter-spacing:-.025em;color:var(--cream);text-wrap:balance}
.mission-body p{margin:0 0 1.1em;font-size:clamp(1.02rem,1.25vw,1.15rem);line-height:1.75;color:#c6bfd6;max-width:62ch}
.mission-films{list-style:none;margin:0;padding:0;border-top:1px solid rgba(179,166,255,.16)}
.mission-films a{display:grid;grid-template-columns:1fr auto;gap:6px 24px;padding:22px 0;border-bottom:1px solid rgba(179,166,255,.16)}
.mission-films b{font-family:var(--serif);font-weight:400;font-size:clamp(1.3rem,2vw,1.7rem);color:var(--cream)}
.mission-films span{grid-column:1;color:#b7afc9;line-height:1.6;max-width:56ch}
.mission-films i{grid-column:2;grid-row:1/3;align-self:center;font-style:normal;color:var(--ember-hi);transition:transform .25s ease}
.mission-films a:hover b{color:#fff}
.mission-films a:hover i{transform:translateX(4px)}
.mission-rules{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(179,166,255,.14);border:1px solid rgba(179,166,255,.14)}
.mission-rules li{display:flex;flex-direction:column;gap:8px;padding:clamp(20px,2.4vw,32px);background:#0a0912}
.mission-rules b{font-family:var(--serif);font-weight:400;font-size:clamp(1.2rem,1.7vw,1.5rem);color:var(--cream)}
.mission-rules span{color:#b7afc9;line-height:1.6}
.mission-close{padding-top:clamp(80px,10vw,150px);padding-bottom:clamp(80px,10vw,150px);text-align:left}
.mission-quote{margin:0 0 clamp(40px,5vw,70px);font-family:var(--serif);font-weight:300;font-size:clamp(2.2rem,5.4vw,5rem);line-height:1.02;letter-spacing:-.03em;color:var(--cream)}
.mission-quote em{color:var(--ember-hi)}
.mission-close h2{margin:0 0 .4em;font-family:var(--grot);font-weight:500;font-size:clamp(1.3rem,2vw,1.7rem);color:var(--cream)}
.mission-close>p{margin:0 0 28px;color:#c6bfd6;line-height:1.7;max-width:52ch}
@media(max-width:760px){
  .mission-block{grid-template-columns:1fr;gap:8px}
  .mission-n{padding-top:0}
  .mission-rules{grid-template-columns:1fr}
}
@media(min-width:901px){
  .ask-bubble:after{left:-13px;bottom:10px;top:auto;width:22px;height:20px;transform:none;border-radius:0;clip-path:polygon(100% 0,100% 72%,0 100%)}
}
.mission-quote em{display:inline;font-size:1em;line-height:inherit}
.mission-quote{line-height:1.08}
