/* Night v2 — Remove Mugshot Pro handoff design applied to the rd1-2 reputation templates.
   Tokens, type scale, buttons and hero follow the spec (data-palette="night"). Redesign by unslop @heydamir (CC BY 4.0). */
:root,:root[data-palette="night"]{
  --bg:#11100e;--card:#1a1916;--raised:#24221e;--sunk:#2e2b27;
  --text:#efe9de;--text2:#aaa398;--muted:#8a847a;
  --line:rgba(239,233,222,.09);--line2:rgba(239,233,222,.16);--line3:rgba(239,233,222,.3);
  --accent:#d9a441;--accent-hover:#e6b75e;--accent-soft:rgba(217,164,65,.14);--on-accent:#1b1407;
  --neg:#e5484d;--ink:#efe9de;--dot-rgb:239,233,222;--nav-bg:rgba(17,16,14,.88);
  --panel:#080706;--panel-text:#efe9de;--panel-text2:#aaa398;--panel-muted:#7f796f;
  --link:#a9c1de;--btn-dark:#efe9de;--btn-dark-hover:#ffffff;--on-dark:#11100e;--placeholder:#6f685e;
  --ease:cubic-bezier(.22,1,.36,1);
  --sans:"Instrument Sans",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  /* legacy rd1-2 variable names, remapped so any inline use stays on palette */
  --p:#d9a441;--t:#d9a441;--a:#d9a441;--g:#d9a441;--navy:#1a1916;--r:16px;--sh:none;
  color-scheme:dark}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth;scroll-padding-top:84px;accent-color:#d9a441}
body{margin:0;background:var(--bg);color:var(--text);font:400 15px/22px var(--sans);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
body[data-night-version]{background:var(--bg)!important;color:var(--text)!important}
a{color:inherit;text-decoration:none}a:hover{color:inherit}
p{text-wrap:pretty}h1,h2{text-wrap:balance}
::selection{background:#d9a441;color:#11100e}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--accent);color:var(--on-accent);padding:12px 16px;border-radius:10px;font-weight:600}.skip:focus{top:12px;color:var(--on-accent)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
[hidden]{display:none!important}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px}.narrow{max-width:760px}
h1,h2,h3{color:var(--text);margin:0;line-height:1.1}
/* buttons: 10px radius, 15px, weight 500 */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;height:auto;padding:0 20px;border-radius:10px;font:500 15px/1.15 var(--sans);border:0;cursor:pointer;text-align:center;white-space:normal;transition:background-color .15s var(--ease),transform .15s var(--ease),border-color .15s var(--ease),box-shadow .15s var(--ease)}
.btn:active{transform:scale(.98)}
.btn svg{width:16px;height:16px;flex:none}
.btn-p{background:var(--accent);color:var(--on-accent);box-shadow:none}.btn-p:hover{background:var(--accent-hover);color:var(--on-accent);filter:none}
.btn-g{background:var(--card);color:var(--text);box-shadow:inset 0 0 0 1px var(--line2)}.btn-g:hover{background:var(--raised);color:var(--text)}
.btn-sm{min-height:36px;padding:0 16px;font-size:14px;border-radius:8px}
.btn small{font-size:12px;opacity:.75;font-weight:400}
.btn[disabled],.btn[aria-disabled="true"]{background:var(--sunk);color:var(--muted);box-shadow:none;cursor:not-allowed;transform:none;opacity:.75}
/* nav */
.hd{position:sticky;top:0;z-index:50;background:var(--nav-bg);backdrop-filter:saturate(1.2) blur(8px);-webkit-backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--line);box-shadow:none}
.hd .wrap{display:flex;align-items:center;min-height:64px;gap:32px}
.logo{display:flex;align-items:center;gap:10px;font:600 17px/1 var(--sans);letter-spacing:-.01em;color:var(--text);white-space:nowrap;min-height:44px}
.logo::before{content:"";display:inline-block;width:18px;height:8px;border-radius:1px;background:var(--text);flex:none}
.nav{display:flex;gap:24px;margin-left:0;font-size:14px}
.nav a{color:var(--text2);padding:10px 0;min-height:44px;display:inline-flex;align-items:center;font-weight:400;font-size:14px;border-radius:0;white-space:nowrap}.nav a:hover{background:none;color:var(--text)}
.hd-call{margin-left:auto;display:inline-flex;align-items:center;gap:8px;color:var(--text2);font-weight:400;font-size:14px;min-height:44px;padding:0;white-space:nowrap}.hd-call:hover{color:var(--text)}.hd-call svg{width:16px;height:16px}.hd-call small{font-size:12px;color:var(--muted)}
.hd .book{white-space:nowrap}
.menu-toggle{display:none;align-items:center;gap:8px;min-height:44px;margin-left:auto;background:none;border:1px solid var(--line2);border-radius:8px;color:var(--text);padding:8px 12px;font:500 14px var(--sans);cursor:pointer}.menu-toggle svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.5;fill:none}
/* hero */
.hero{position:relative;padding:128px 0 152px;overflow:hidden;text-align:left;background:var(--bg);border:0}
.hero .wrap{position:relative;z-index:1}
.hero-copy{max-width:600px}
.hero .pill,.pill{display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:0;color:var(--text2);font:400 14px/1.4 var(--sans);margin-bottom:20px}
.pill b{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:none;display:inline-block}
.hero h1{font:400 88px/.98 var(--serif);letter-spacing:-.035em;max-width:7.4em;margin:0;color:var(--text)}
.hero .sub,.sub{font-size:19px;line-height:30px;color:var(--text2);max-width:34rem;margin:24px 0 0;text-align:left}
.ctas{display:flex;align-items:center;gap:12px 20px;margin-top:32px;flex-wrap:wrap;justify-content:flex-start}
.hero .ctas .btn-g{background:var(--card)}
.note{font-size:14px;color:var(--muted);margin:12px 0 0}
.trust{display:flex;flex-wrap:wrap;gap:8px 24px;margin:32px 0 0;padding:24px 0 0;border-top:1px solid var(--line);font-size:14px;color:var(--text2);list-style:none;justify-content:flex-start;font-weight:400}
.trust li{display:flex;align-items:center;gap:8px}.trust svg{width:16px;height:16px;color:var(--accent);flex:none}
.hero-art{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0}
.grad{color:var(--accent);background:none;-webkit-text-fill-color:currentColor}
/* sections (rd1 templates set inline padding-top:0 on stacked sections; the spec rhythm wins) */
section{padding:112px 0;border-top:1px solid var(--line)}
[data-night-page="home"] section[style*="padding-top:0"]{padding-top:112px!important}
.hero-long h1{font-size:clamp(38px,4.8vw,64px);line-height:1.04;max-width:13em}.hero-long .hero-copy{max-width:640px}
section.hero{border-top:0}
main>section:first-child{border-top:0}
.sh{text-align:left;max-width:none;margin:0 0 48px}
.sh h2,.sh #chk-h,h2{font:400 44px/1.1 var(--serif);letter-spacing:-.02em;max-width:16em;color:var(--text)}
.sh p{font-size:18px;line-height:28px;color:var(--text2);max-width:36rem;margin:20px 0 0}
.sh .pill{margin:0 0 16px}
.prose p,.prose{color:var(--text2);font-size:16px;line-height:26px;max-width:40rem}
.foot-note{text-align:left;color:var(--muted);font-size:13px;margin:16px 0 0;max-width:40rem}
/* cards, steps, options */
.grid3,.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tiers{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.card,.tier,.step,.seelist li,.quote,.comp,.proof{background:var(--card);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);padding:28px;color:var(--text2)}
.card p,.tier p,.step p{margin:0 0 8px;color:var(--text2);font-size:15px;line-height:24px}
.card h3,.tier h3,.step h3{font:500 20px/28px var(--sans);letter-spacing:-.01em;color:var(--text);margin:14px 0 8px}
.card .how{color:var(--text2)}.card .how b,.card .prob{color:var(--text)}.card .prob{font-weight:400;margin-bottom:12px}
.ico{width:44px;height:44px;border-radius:10px;background:var(--accent-soft);color:var(--accent);border:0;display:grid;place-items:center}.ico svg{width:20px;height:20px}
.tier.mid,.tier.opt.mid{box-shadow:0 0 0 1px var(--accent)}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-top:0}
.step{background:none;box-shadow:none;border-radius:0;border-top:1px solid var(--line2);padding:28px 0 0;position:relative}
.step::before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:var(--muted)}.step:first-child::before{background:var(--accent)}
.step .n{width:auto;height:auto;border:0;background:none;color:var(--muted);font:400 13px var(--sans);display:block;margin-bottom:8px}
.step h3{margin:0 0 8px;font-size:17px;line-height:24px}
.seelist{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 24px;list-style:none;padding:0;margin:0}.seelist li{display:flex;gap:10px;align-items:flex-start;padding:16px 20px}.seelist svg{width:20px;height:20px;color:var(--accent);flex:none}
.tiers-cta{display:none;justify-content:flex-start;margin-top:24px}
.quote blockquote{margin:0 0 16px;color:var(--text)}.quote figcaption{color:var(--text);font-weight:500}
.proof{display:flex;gap:14px;align-items:center;padding:20px 24px;margin:0 0 24px}.proof q{color:var(--text);font-weight:500}.proof span{color:var(--muted);font-size:14px}
/* faq */
.faq{list-style:none;border-top:1px solid var(--line2);max-width:none;margin:0}
.faq details{background:none;border:0;border-bottom:1px solid var(--line);border-radius:0;margin:0}.faq details[open]{background:none}
.faq summary{list-style:none;cursor:pointer;display:block;position:relative;padding:20px 40px 20px 0;font:500 17px/24px var(--sans);color:var(--text);min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:18px;font:400 24px/1 var(--sans);color:var(--muted);transition:transform .2s var(--ease)}
.faq details[open] summary::after{content:"+";transform:rotate(45deg)}
.faq details p{margin:0;padding:0 48px 24px 0;color:var(--text2);font-size:16px;line-height:26px;max-width:40rem}
/* events */
.evs{display:grid;gap:12px;max-width:none;margin:0}
.ev{display:flex;gap:18px;align-items:flex-start;background:var(--card);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);padding:20px 24px}
.date{flex:none;width:64px;text-align:center;border-radius:10px;background:var(--accent-soft);color:var(--text);padding:8px 0}
.date small{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--accent);text-transform:uppercase}.date b{display:block;font:400 26px/1.1 var(--serif);color:var(--text)}
.ev h3{font:500 17px/24px var(--sans);margin:0 0 4px}.ev h3 a{color:var(--text);display:inline-block;padding:13px 0;margin:-13px 0}.ev h3 a:hover{text-decoration:underline;text-underline-offset:3px}
.ev .m{margin:0;color:var(--text2);font-size:14px;line-height:22px}.ev .m b{color:var(--text);font-weight:500}.ev .m a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.ev .acts{display:flex;flex-wrap:wrap;gap:0 16px;margin-top:8px;font-size:14px}.ev .acts a{min-height:44px;display:inline-flex;align-items:center;font-weight:500;color:var(--link);text-decoration:underline;text-decoration-color:var(--line2);text-underline-offset:3px}
.tag{display:inline-block;font-size:12px;line-height:20px;padding:0 8px;border-radius:6px;background:var(--raised);color:var(--text2);margin-left:6px;vertical-align:middle;font-weight:400;border:0}
.more{text-align:left;margin-top:20px}
.filt{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;max-width:none;margin:0 0 10px}.cnt{margin:0 0 18px;color:var(--muted);font-size:14px;max-width:none}
.st h2{max-width:none;margin:28px 0 12px;font:500 22px var(--serif)}
.gt,.card.gt{display:flex;gap:24px;align-items:center;justify-content:space-between;max-width:none;margin:0}
.gt h3{font:400 26px/1.3 var(--serif);letter-spacing:-.01em;margin:4px 0}.gt .btn{white-space:nowrap}
/* band: final contact section */
.band{background:var(--card);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);color:var(--text2);text-align:left;max-width:none;margin:0 auto;padding:56px 48px}
.band h2{font:400 44px/1.1 var(--serif);letter-spacing:-.02em;color:var(--text);margin:0 0 16px;max-width:12em}
.band p{color:var(--text2);margin:0 0 8px;font-size:18px;line-height:28px;max-width:34rem}
.band .ctas{margin-top:28px}.band .btn-g{background:var(--bg)}
.band.has-cmb{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:center}
.band.has-cmb .band-copy{min-width:0}
.hd .btn-p{box-shadow:none}
/* forms */
label{display:block;font:500 13px/18px var(--sans);color:var(--text2);margin:0 0 6px}
input,select,textarea{width:100%;min-height:44px;height:44px;border-radius:8px;border:1px solid var(--line2);background:var(--card);padding:0 12px;font:400 15px var(--sans);color:var(--text);transition:border-color .15s var(--ease)}
input:hover,select:hover,textarea:hover{border-color:var(--line3)}input::placeholder{color:var(--placeholder)}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
select{color-scheme:dark}
input[type=checkbox]{width:18px;height:18px;min-height:0;padding:0;margin:3px 0 0;flex:none;accent-color:var(--accent)}
.sit,.cmb{background:var(--bg);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);padding:28px;margin:0 0 24px;max-width:none;color:var(--text2)}
.band .cmb{background:var(--bg);margin:0}
.sit h2,.cmb h3{font:400 28px/1.15 var(--serif);letter-spacing:-.02em;color:var(--text);margin:0 0 8px;max-width:none}
.sit p,.cmb>p{margin:0 0 16px;color:var(--text2);font-size:15px;line-height:24px}
.sit .f,.lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.lead-grid>div{min-width:0}
.sit .f .fn,.lead-grid .full{grid-column:1/-1}
.sit .b,.lead-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
.lead-actions .btn{width:100%}
.sit .ok,.lead-msg{margin:12px 0 0;font-size:14px;line-height:22px;color:var(--text2)}
.lead-msg.err{color:#ff8a8e}.lead-msg.good{color:var(--accent)}
.consent{display:flex;gap:10px;align-items:flex-start;margin:20px 0 0;font-size:13px;line-height:20px;color:var(--text2)}
.consent label{display:block;font:400 13px/20px var(--sans);color:var(--text2);margin:0}
.consent a{color:var(--text);text-decoration:underline;text-decoration-color:var(--line3);text-underline-offset:3px}
.req{color:var(--accent);margin-left:2px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
/* disabled-submit hint: wrapper shows it on hover, keyboard focus and tap (a disabled button fires no events).
   The hint sits IN FLOW directly below the button (inside the wrapper) so it can never cover the consent text. */
.submit-wrap{position:relative;display:inline-block;max-width:100%;vertical-align:top}
.lead-actions .submit-wrap{display:block;width:100%}
.submit-wrap .btn[disabled]{pointer-events:none}
.submit-wrap.needs{cursor:not-allowed}
.submit-wrap:not(.needs) .submit-hint{display:none}
.submit-hint{display:block;width:max-content;max-width:100%;max-height:0;overflow:hidden;margin:0;padding:0 12px;background:var(--raised);color:var(--text);box-shadow:none;border-radius:8px;font:500 13px/18px var(--sans);white-space:normal;pointer-events:none;opacity:0;visibility:hidden}
.submit-wrap.needs:hover .submit-hint,.submit-wrap.needs:focus .submit-hint,.submit-wrap.needs:focus-within .submit-hint,.submit-wrap.needs.show .submit-hint{max-height:64px;margin-top:8px;padding:8px 12px;opacity:1;visibility:visible;box-shadow:0 0 0 1px var(--line3)}
.submit-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:10px}
.sit .b{align-items:flex-start}
.lead-msg[data-state=hint]{color:var(--text2)}
/* company lookup / platform explainers */
.chk{display:grid;grid-template-columns:1fr 1.4fr;gap:24px;max-width:none;margin:0;align-items:start}
.cs,.vfs{background:var(--card);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);padding:28px}
.cs h2{font:400 28px/1.15 var(--serif);margin:0 0 12px;max-width:none}.vfs h3{font:500 20px/28px var(--sans);margin:0 0 6px}
.cs label{font:500 13px var(--sans);color:var(--text2)}.cs input{height:44px}.cs-b{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.cs-b .btn{padding:0 6px;min-height:44px}.cs-n{font-size:13px;color:var(--muted);margin:10px 0 0}
.vf-i{color:var(--text2);margin:0 0 8px;font-size:15px}.vf{border-top:1px solid var(--line)}.vf[open]{background:none}
.vf summary{cursor:pointer;font-weight:500;color:var(--text);min-height:44px;display:flex;align-items:center;justify-content:space-between;list-style:none}.vf summary::-webkit-details-marker{display:none}.vf summary::after{content:'+';font-size:20px;color:var(--muted);margin-left:12px}.vf[open] summary::after{content:'\2212'}
.vf p{margin:0 0 8px;color:var(--text2);font-size:15px}.vf p.src{font-size:13px;color:var(--muted)}.vf a,.src a{color:var(--link);text-decoration:underline;text-underline-offset:3px;display:inline-block;padding:12px 0;margin:-12px 0}
/* articles, legal, inner-page headers */
.crumb{font-size:13px;color:var(--muted);margin:24px 0 12px}.crumb a{color:var(--text2);min-height:24px;display:inline-block;min-width:44px;padding:12px 0;margin:-12px 0}.crumb a:hover{color:var(--text)}
.art{background:var(--card);border:0;border-radius:16px;box-shadow:0 0 0 1px var(--line);padding:40px;color:var(--text2)}
.art h1{font:400 clamp(34px,4vw,52px)/1.08 var(--serif);letter-spacing:-.03em;margin:8px 0 16px;color:var(--text)}
.art h2{font:400 28px/1.2 var(--serif);letter-spacing:-.02em;margin:36px 0 10px;max-width:none}
.art p,.art li{color:var(--text2);font-size:16px;line-height:26px}.art b,.art strong{color:var(--text);font-weight:500}
.art a{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.art blockquote{border-left:2px solid var(--accent);background:var(--raised);color:var(--text);margin:20px 0;padding:14px 20px;border-radius:0 8px 8px 0}
a.solo{display:inline-block;min-width:44px;padding:12px 0;margin:-12px 0;color:var(--text)}
[data-night-page]:not([data-night-page="home"]) .hero{padding:72px 0 48px}
[data-night-page]:not([data-night-page="home"]) .hero h1{font-size:clamp(36px,5vw,64px);max-width:16em}
[data-night-page="event-list"] section,[data-night-page="event-detail"] section{border-top:0;padding:0 0 64px}
/* footer */
.ft{padding:48px 0 64px;font-size:14px;color:var(--text2);border-top:1px solid var(--line);background:var(--bg)}
.ft .logo{color:var(--text)}
.ft .row{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:flex-start;padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:24px}
.ft p{font-size:13px;line-height:20px;color:var(--muted);max-width:52rem;margin:8px 0 0}.ft .row p{color:var(--text2);font-size:14px}
.ft a{color:var(--text2);font-weight:400}.ft a:hover{color:var(--text)}
.ft .ph{font-size:15px;font-weight:500;color:var(--text);min-height:44px;display:inline-flex;align-items:center}
.ft small{color:var(--muted)}
.ft details{margin-top:16px}.ft summary{cursor:pointer;font-weight:500;color:var(--text);min-height:44px;display:flex;align-items:center}
.ft ul{list-style:none;padding:0;margin:6px 0 0;display:flex;flex-wrap:wrap;gap:0 18px}.ft ul a{min-height:44px;display:inline-flex;align-items:center}
@media(min-width:761px){.ft{padding-bottom:96px}}
/* mobile sticky Call + Book bar (existing behaviour, restyled) */
.mbar{display:none}
.calendly-badge-widget{right:22px!important;bottom:22px!important}.calendly-badge-content{background:var(--accent)!important;color:var(--on-accent)!important;border-radius:10px!important;box-shadow:none!important;font:500 14px var(--sans)!important}
/* entrance */
@media(prefers-reduced-motion:no-preference){.hero-copy{animation:rise .5s var(--ease) both}@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(forced-colors:active){.btn,.card,.menu-toggle{border:1px solid ButtonText}}
@media(max-width:1180px){.nav{gap:18px}}
@media(max-width:1040px){.hero h1{font-size:68px}.band.has-cmb{gap:40px}}
@media(max-width:900px){
  .hd .wrap{position:relative;gap:12px}
  .nav{display:none}.menu-toggle{display:flex}
  .nav.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:var(--card);padding:8px 32px 16px;z-index:20;border-bottom:1px solid var(--line2)}.nav.open a{min-height:48px;font-size:16px;color:var(--text)}
  .hd-call{margin-left:auto;order:2}.menu-toggle{margin-left:0;order:3}.hd .book{order:4}
  .band.has-cmb{grid-template-columns:1fr;gap:32px}.chk{grid-template-columns:1fr}
}
@media(max-width:860px){
  .wrap{padding:0 20px}
  .hero{padding:56px 0 0}
  .hero .wrap{padding-bottom:8px}
  .hero-art{position:relative;inset:auto;height:420px;margin-top:24px}
  .hero h1{font-size:42px;line-height:1.06}.hero .sub,.sub{font-size:17px;line-height:27px}
  section{padding:72px 0}[data-night-page="home"] section[style*="padding-top:0"]{padding-top:72px!important}.hero-long h1{font-size:34px;line-height:1.1}
  .sh h2,h2,.band h2{font-size:32px}
  .sh{margin-bottom:32px}.sh p{font-size:16px;line-height:26px}
  .grid3,.seelist,.filt{grid-template-columns:1fr}
  .card,.tier,.seelist li{padding:22px}
  .steps{grid-template-columns:1fr 1fr;gap:32px 20px}
  .gt,.card.gt{flex-direction:column;align-items:flex-start;gap:16px}
  .gt h3{font-size:22px}
  .band{padding:32px 20px}.band .btn{width:100%}
  .sit,.cmb,.art{padding:22px 18px}
  .sit .f,.lead-grid{grid-template-columns:1fr}
  .ev{padding:16px;gap:12px}.date{width:54px}
  .ft{padding-bottom:112px}.ft .row{flex-direction:column}
}
@media(max-width:760px){
  .hd .wrap{min-height:60px}.hd .book,.hd-call .num{display:none}
  .hd-call{padding:0 12px;border:1px solid var(--line2);border-radius:8px;min-height:44px;background:var(--card);color:var(--text);box-shadow:none}
  .hd-call small{color:var(--text2)}.hd-call svg{color:var(--accent)}
  .ctas .btn{width:100%}.hero .ctas{align-items:stretch}
  .tiers-cta{display:flex}
  .mbar{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:60;gap:8px;padding:8px;background:var(--card);border-radius:14px;box-shadow:0 0 0 1px var(--line),0 8px 24px rgba(0,0,0,.45);transform:translateY(130%);transition:transform .25s ease;visibility:hidden}
  .mbar.on{transform:none;visibility:visible}
  .mbar .btn{flex:1;min-height:44px;font-size:14px;padding:0 8px}
  .calendly-badge-widget{display:none!important}
  html{scroll-padding-bottom:100px}
  form :is(input,select,textarea,button){font-size:16px;scroll-margin-top:110px;scroll-margin-bottom:120px}form{scroll-margin-block:110px}
  .cs-b{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:420px){.steps{grid-template-columns:1fr}}
/* Independent form-safety veto: site.js may toggle .on; this wins while any form is visible/focused. */
@media(max-width:760px){body.night-form-active .mbar,body.night-form-active .mbar.on{display:none!important;visibility:hidden!important;transform:translateY(110%)!important}}
/* Phones: the header never squeezes the brand. rd1-2 style.css (loaded first) sets a white pill at <=520px; these rules own the Night look.
   Below 480px the call pill becomes an icon-only gold-on-dark tel: link (aria-label carries the number) and the menu button an icon, so the full brand name fits (it wraps instead of clipping). */
@media(max-width:480px){
  .hd .wrap{gap:8px}
  .hd .logo{flex:1 1 auto;min-width:0;white-space:normal;line-height:1.15;font-size:16px;overflow-wrap:anywhere}
  .hd-call{flex:none;margin-left:0;width:44px;padding:0;justify-content:center;gap:0;background:var(--card);border:1px solid var(--line2);border-radius:8px;color:var(--accent)}
  .hd-call svg{width:20px;height:20px;color:var(--accent)}
  .hd-call span,.hd-call small{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .menu-toggle{flex:none;width:44px;padding:0;justify-content:center;gap:0}
  .menu-toggle span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .menu-toggle svg{width:22px;height:22px}
  .hd .btn-sm{padding:0 12px}
}
