/* Belfry v3 design system — shared look from /church-bots/ */
:root{--night:#0f1a1c;--night2:#14302d;--mint:#9fe0c4;--lime:#e2efb9;--amber:#f0b86e;--on-dark:#e8ece6;--on-dark-muted:#c9d3cc;--on-dark-fine:#9aa8a0;--g:linear-gradient(100deg,#9fe0c4,#e2efb9);--radius:18px}
.v3 h1,.v3 h2{font-family:Fraunces,Georgia,serif;font-weight:500;letter-spacing:-.03em;line-height:1.04}
.v3 h3{letter-spacing:-.02em}
.v3 :focus-visible{outline:3px solid var(--mint);outline-offset:4px}
.v3 .eyebrow{font-size:12px;letter-spacing:.16em;font-weight:700;color:var(--forest)}
/* Header */
.v3 .site-header{position:sticky;top:0;z-index:30;background:#0f1a1ce6;backdrop-filter:blur(10px);border-bottom:1px solid #ffffff14;color:#fff}
.v3 .site-header a,.v3 .brand-name,.v3 .brand-name span{color:#fff}
.v3 .brand img{filter:brightness(0) invert(1)}
.v3 .site-nav a{color:#e8ece6}.v3 .site-nav a:hover{color:var(--mint)}
.v3 .header-cta,.v3.home-page .header-cta{border:0;border-radius:40px;padding:8px 20px;background:var(--g);color:#10211f!important;font-weight:700}
.v3 .header-cta:hover,.v3.home-page .header-cta:hover{background:var(--g);box-shadow:0 10px 26px #9fe0c440}
.v3 .menu-button,.v3.home-page .menu-button{color:#fff;border-color:#ffffff40;background:transparent}
@media(max-width:900px){.v3 .site-nav.is-open,.v3.home-page .site-nav.is-open{background:var(--night);border:1px solid #ffffff22;border-radius:12px;padding:10px 18px}.v3 .site-nav a{border-top-color:#ffffff1a}.v3.home-page .site-header:has(.is-open){background:var(--night)}}
/* Glow + gradient text */
.v3-dark{position:relative;overflow:hidden;background:var(--night);color:var(--on-dark)}
.v3-dark>.wrap,.v3-dark>div:not(.v3-glow){position:relative;z-index:1}
.v3-glow{position:absolute;inset:-30% -10% auto;height:120%;pointer-events:none;background:radial-gradient(40% 50% at 20% 30%,#365752aa,transparent 70%),radial-gradient(35% 45% at 80% 20%,#f0b86e44,transparent 70%),radial-gradient(30% 40% at 60% 80%,#9fe0c455,transparent 70%);filter:blur(20px);animation:v3drift 14s ease-in-out infinite alternate}
@keyframes v3drift{to{transform:translate3d(-4%,6%,0) scale(1.08)}}
.v3 .grad,.v3 .hero h1 em{background:linear-gradient(100deg,#9fe0c4,#e2efb9 45%,#f0b86e);-webkit-background-clip:text;background-clip:text;color:transparent}
/* Buttons */
.v3 .button{border-radius:40px;min-height:50px;padding:0 26px;gap:12px;background:var(--g);color:#10211f;border:0;font-weight:700;transition:transform .2s var(--ease),box-shadow .2s}
.v3 .button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 30px #9fe0c440;background:var(--g);color:#10211f}
.v3 .button:disabled{opacity:.55}
.v3 .button.outline{background:transparent;color:var(--ink);border:1.5px solid currentColor}
.v3-dark .button.outline{color:#fff}
.v3 .small-button{border-radius:30px}
/* Home hero */
.v3 .hero{padding:clamp(70px,11vw,140px) 0 clamp(40px,6vw,70px)}
.v3 .hero h1{color:#fff;font-size:clamp(42px,7.2vw,92px)}
.v3 .hero h1 em{font-style:italic;font-weight:400}
.v3 .hero .eyebrow{color:var(--mint);font-size:12px}
.v3 .hero .intro{color:var(--on-dark-muted);font-size:clamp(17px,2vw,20px)}
.v3 .hero .url-entry{background:#ffffff10;border:1px solid #ffffff33;border-radius:44px;box-shadow:0 20px 50px #0006;padding:6px}
.v3 .hero .url-entry input{color:#fff;background:transparent}.v3 .hero .url-entry input::placeholder{color:#b9c6bf}
.v3 .hero .hero-note{color:var(--on-dark-fine)}
.v3 .hero .hero-promises{color:var(--on-dark);border:0;gap:8px;flex-wrap:wrap;justify-content:center}
.v3 .hero .hero-promises>span{padding:8px 14px;border-radius:30px;background:#ffffff12;border:1px solid #ffffff22;font-size:13px}
.v3 .hero .check{color:var(--mint)}
.v3 .hero .notice.error{color:#ffb4a2}
/* Sections + cards */
.v3 main>.section:not(.v3-dark),.v3 .built,.v3 .intake{background:var(--paper)}
.v3 .section h2,.v3 .built h2,.v3 .intake h2{font-size:clamp(32px,5vw,58px)}
.v3 .feature-list li,.v3 .built-card,.v3 .journey-demo,.v3 .intake form,.v3 .preview-buy .plan{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 20px 50px #16352c12}
.v3 .feature-list li{padding:20px;border-top:1px solid var(--line)}
.v3 .feature-list .check{display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:10px;background:var(--g);color:#10211f;font-weight:800}
.v3 .intake form{padding:clamp(20px,3vw,32px)}
.v3 .intake input,.v3 .intake textarea{border-radius:12px}
.v3 .built-card{padding:14px;overflow:hidden}
.v3 .built-meta a{color:var(--forest);font-weight:700}
.v3 .journey-steps button[aria-pressed=true] span{background:var(--g);color:#10211f;border-radius:20px}
/* Banner */
.v3 .bots-banner{background:var(--paper)}
.v3 .bots-banner a{border:1px solid #9fe0c455}
/* Pricing (dark) */
.v3 .pricing-section{padding:clamp(70px,10vw,120px) 0}
.v3 .pricing-section h2{color:#fff}.v3 .pricing-section .eyebrow{color:var(--mint)}
.v3 .pricing-section .pricing-head p{color:var(--on-dark-muted)}
.v3 .pricing-section .plan{background:#ffffff0d;border:1px solid #ffffff22;border-radius:22px;color:var(--on-dark)}
.v3 .pricing-section .plan h3,.v3 .pricing-section .plan-price{color:#fff}
.v3 .pricing-section .plan-price{font-family:Fraunces,serif}
.v3 .pricing-section .plan-price span,.v3 .pricing-section .plan-step{color:var(--on-dark-fine)}
.v3 .pricing-section .plan p{color:var(--on-dark-muted)}
.v3 .pricing-section .plan-featured{background:linear-gradient(160deg,#1f4a43,#14302d);border:1.5px solid var(--mint);box-shadow:0 30px 70px #9fe0c425}
.v3 .pricing-section .plan-featured .plan-step{color:var(--mint)}
.v3 .pricing-section .plan-note{color:var(--on-dark-fine)}
/* FAQ */
.v3 .faq-list details{border-top:1px solid var(--line);padding:20px 0}
.v3 .faq-list summary{font-weight:700;font-size:18px;cursor:pointer}
.v3 .faq-list details p{margin-top:10px;line-height:1.6}
/* Simple pages: dark band */
.v3 .simple-page{position:relative;overflow:hidden;background:var(--night);color:var(--on-dark);padding:clamp(80px,12vw,150px) 0;min-height:60vh}
.v3 .simple-page>.wrap{position:relative;z-index:1}
.v3 .simple-page h1{color:#fff;font-size:clamp(40px,6.5vw,78px)}
.v3 .simple-page .eyebrow{color:var(--mint)}
.v3 .simple-page p,.v3 .simple-page .lead,.v3 .simple-page li{color:var(--on-dark-muted)}
.v3 .simple-page a:not(.button){color:var(--mint)}
.v3 .simple-page h2,.v3 .simple-page h3{color:#fff}
.v3 .status-mark{background:var(--g);color:#10211f;border-radius:22px}
.v3 .simple-page .button.outline{color:#fff}
/* Preview page: keep stage light-on-dark */
.v3.preview-page .simple-page{min-height:0}
.v3 .preview-buy{background:var(--paper)}
.v3 .preview-buy p,.v3 .preview-buy li{color:var(--muted)}
.v3 .preview-buy h2,.v3 .preview-buy h3{color:var(--ink)}
/* Footer */
.v3 .site-footer{background:var(--night);color:var(--on-dark);border-top:1px solid #ffffff14}
.v3 .site-footer p,.v3 .site-footer a{color:var(--on-dark-muted)}.v3 .site-footer a:hover{color:var(--mint)}
/* Reveal (motion.js .reveal + .rv) */
.v3 .reveal{transition:opacity .7s var(--ease),transform .7s var(--ease)}
.v3 .reveal.pending{opacity:0;transform:translateY(26px)}
@media(prefers-reduced-motion:reduce){.v3-glow{animation:none}.v3 .reveal,.v3 .reveal.pending{opacity:1;transform:none;transition:none}.v3 .button{transition:none}}
.motion-paused .v3-glow{animation-play-state:paused}
/* Pop-up */
.dt-modal{background:var(--night,#0f1a1c);color:#e8ece6;border:1px solid #9fe0c455;border-radius:22px}
.dt-grid::before{content:"";position:absolute;inset:-30% -10% auto;height:120%;pointer-events:none;background:radial-gradient(40% 50% at 20% 30%,#365752aa,transparent 70%),radial-gradient(35% 45% at 80% 20%,#f0b86e33,transparent 70%);filter:blur(20px)}
.dt-grid{position:relative;overflow:hidden}.dt-grid>*{position:relative}
.dt-cover{background:#ffffff0a}
.dt-eyebrow{color:#9fe0c4}
#dt-title,.dt-done-h{color:#fff;font-family:Fraunces,Georgia,serif;font-weight:500;letter-spacing:-.02em}
.dt-proof,.dt-fine{color:#c9d3cc}.dt-fine a{color:#9fe0c4}
.dt-status{color:#9fe0c4}
.dt-input{background:#ffffff10;border:1px solid #ffffff33;color:#fff;border-radius:40px}.dt-input::placeholder{color:#b9c6bf}
.dt-cta{background:linear-gradient(100deg,#9fe0c4,#e2efb9);color:#10211f;border:0;border-radius:40px;font-weight:700}
.dt-later{color:#c9d3cc}
.dt-close{color:#fff;background:#ffffff14;border-radius:50%}
input[name=botcheck]{display:none!important}
@media(max-width:600px){.v3 .header-cta,.v3.home-page .header-cta{padding:7px 12px;gap:8px;font-size:12px}.v3 .header-inner{gap:12px}}
/* Case-study pages */
.v3 .case-page{position:relative;overflow:hidden;background:var(--night);color:var(--on-dark);padding:clamp(50px,7vw,80px) 0 clamp(70px,9vw,110px)}
.v3 .case-page>.v3-glow{height:60%}
.v3 .case-page>.wrap{position:relative;z-index:1}
.v3 .case-page h1,.v3 .case-page h2{color:#fff}
.v3 .case-page .eyebrow{color:var(--mint)}
.v3 .case-page p,.v3 .case-page figcaption{color:var(--on-dark-muted)}
.v3 .case-page .text-link{color:var(--mint)}
.v3 .case-status{padding:12px 16px;border-radius:14px;background:#ffffff0d;border:1px solid #ffffff22;font-size:13px}
.v3 .scroll-preview{border-radius:var(--radius);border-color:#ffffff22;box-shadow:0 30px 70px #0007}
.v3 .case-page .toggle-group{background:#ffffff0d;border:1px solid #ffffff22;border-radius:40px;padding:4px}
.v3 .case-page .toggle-group button{border-radius:30px;color:var(--on-dark-muted);background:transparent;border:0;min-height:40px}
.v3 .case-page .toggle-group button[aria-pressed=true]{background:var(--g);color:#10211f;font-weight:700}
.v3 .case-capture{background:#ffffff0a;border:1px solid #ffffff22;border-radius:22px}
.v3 .case-capture img{border-radius:10px;box-shadow:0 20px 50px #0007}
.v3 .case-next{border-top:0;padding:clamp(28px,4vw,44px);border-radius:22px;background:linear-gradient(160deg,#1f4a43,#14302d);border:1.5px solid #9fe0c455}
.v3 .case-page .button.outline{color:#fff}
.v3 .bframe video.bvid{display:block;width:100%;height:auto;aspect-ratio:1440/1000;object-fit:cover;object-position:top;background:#0f1a1c}

.plenary-call{padding:30px;border-radius:22px;background:linear-gradient(120deg,#e9f6ef,#f6f4e1);border:1px solid #dfe8e2;display:flex;flex-wrap:wrap;gap:16px 30px;align-items:center;justify-content:space-between}.plenary-call>div{max-width:640px}.plenary-call h3{font-size:24px;margin-top:6px}.plenary-call p:not(.eyebrow){margin-top:8px}
