/* ==========================================================================
   Springfield Foam Lead Funnel — built on the Springfield Foam Experience
   tokens (--sf-*), with fallbacks so the form still works on theme pages.
   ========================================================================== */

.sfl-form-wrap,.sfl-page,.sfl-band,.sfl-postcard,.sfl-slide{
  --l-ink:var(--sf-ink,#080B10);--l-ink2:var(--sf-ink-2,#0E131B);--l-ink3:var(--sf-ink-3,#161D27);
  --l-paper:var(--sf-paper,#F7F4EE);--l-paper2:var(--sf-paper-2,#EFEAE1);--l-paper3:var(--sf-paper-3,#E3DCD0);
  --l-or:var(--sf-orange,#FF6A1A);--l-or2:var(--sf-orange-2,#FF8B4A);--l-orink:var(--sf-orange-ink,#8C3200);
  --l-mint:var(--sf-mint,#3ED8A0);--l-p1:var(--sf-p1,#10151C);--l-p2:var(--sf-p2,#3E4754);--l-p3:var(--sf-p3,#6B7684);
  --l-t2:var(--sf-t2,rgba(255,255,255,.72));--l-t3:var(--sf-t3,rgba(255,255,255,.5));
  --l-line:var(--sf-line,rgba(255,255,255,.10));--l-line2:var(--sf-line-2,rgba(255,255,255,.18));
  --l-display:var(--sf-display,"Archivo",system-ui,sans-serif);--l-body:var(--sf-body,"Inter",system-ui,sans-serif);
  --l-mono:var(--sf-mono,"JetBrains Mono",ui-monospace,monospace);
  --l-ease:var(--sf-ease-out,cubic-bezier(.16,1,.3,1));
  --l-shadow:var(--sf-shadow-lg,0 2px 4px rgba(8,11,16,.08),0 30px 70px -30px rgba(8,11,16,.45));
}
.sfl-form-wrap *,.sfl-form-wrap *::before,.sfl-form-wrap *::after,
.sfl-page *,.sfl-band *,.sfl-postcard *,.sfl-slide *{box-sizing:border-box}

/* --------------------------------------------------------------- hero -- */
.sfl-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--l-ink);color:#fff;
  padding:clamp(112px,12vw,156px) 0 clamp(56px,7vw,96px)}
.sfl-hero-glow{position:absolute;z-index:-1;pointer-events:none;inset:0;
  background:radial-gradient(48% 70% at 88% 18%,rgba(255,106,26,.26),transparent 62%),
             radial-gradient(40% 60% at 4% 100%,rgba(47,139,255,.16),transparent 64%)}
.sfl-hero .sfx-wrap{position:relative;z-index:2}
.sfl-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);grid-template-areas:"copy form" "more form" ". form";
  grid-template-rows:auto auto 1fr;column-gap:clamp(32px,5vw,72px);align-items:start}
.sfl-hero-copy{grid-area:copy;padding-top:clamp(0px,1.5vw,18px)}
.sfl-hero-more{grid-area:more}
.sfl-hero-form{grid-area:form}
.sfl-hero .sfx-kicker{color:var(--l-or2)}
.sfl-h1{font-family:var(--l-display);font-weight:900;letter-spacing:-.04em;line-height:.98;
  font-size:clamp(2.6rem,5.6vw,4.5rem);margin:1rem 0 0;color:#fff;max-width:13ch;text-wrap:balance}
.sfl-h1 em,.sfl-band h2 em,.sfl-tease h2 em{font-style:normal;color:var(--l-or)}
.sfl-hero .sfx-lead{margin-top:1.3rem;max-width:52ch;color:var(--l-t2)}
ul.sfl-checks{list-style:none;padding:0;margin:1.6rem 0 0;display:grid;gap:11px}
.sfl-checks li{display:flex;gap:11px;align-items:flex-start;color:var(--l-t2);font-size:.98rem;line-height:1.5}
.sfl-checks .sfx-i{width:20px;height:20px;color:var(--l-mint);flex:none;margin-top:2px}
.sfl-hero-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:1.9rem}
.sfl-hero-meta a,.sfl-hero-meta span{display:inline-flex;align-items:center;gap:.5em;font-size:.92rem;color:var(--l-t2);font-weight:600}
.sfl-hero-meta a:hover{color:#fff}
.sfl-hero-meta .sfx-i{width:18px;height:18px;color:var(--l-or2)}

/* --------------------------------------------------------------- card -- */
.sfl-card{position:relative;background:#fff;color:var(--l-p1);border-radius:var(--sf-r-xl,32px);
  padding:clamp(22px,3vw,34px);box-shadow:0 0 0 1px rgba(255,255,255,.06),var(--l-shadow)}
.sfl-hero .sfl-card{box-shadow:0 0 0 1px rgba(255,255,255,.08),0 40px 90px -40px rgba(0,0,0,.9)}

/* --------------------------------------------------------------- form -- */
.sfl-form-wrap{font-family:var(--l-body);color:var(--l-p1);scroll-margin-top:110px}
.sfl-form{margin:0}
.sfl-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.sfl-prog{display:none;margin-bottom:6px}
.sfl-js .sfl-prog{display:block}
.sfl-prog-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.sfl-prog-lbl{font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--l-orink)}
.sfl-prog-lbl b{font-weight:800}
.sfl-prog-time{display:inline-flex;align-items:center;gap:.4em;font-size:.78rem;color:var(--l-p3);font-weight:600}
.sfl-prog-time .sfx-i{width:15px;height:15px}
.sfl-prog-bar{height:6px;border-radius:99px;background:var(--l-paper2);margin-top:10px;overflow:hidden}
.sfl-prog-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--l-or),var(--l-or2));transition:width .6s var(--l-ease)}

.sfl-step{border:0;margin:0;padding:0;min-width:0}
.sfl-step+.sfl-step{margin-top:28px;padding-top:24px;border-top:1px solid var(--l-paper3)}
.sfl-js .sfl-step{display:none;margin-top:0;padding-top:0;border-top:0}
.sfl-js .sfl-step[data-on="1"]{display:block;animation:sflIn .45s var(--l-ease) both}
.sfl-js .sfl-step[data-on="1"][data-dir="back"]{animation-name:sflInBack}
@keyframes sflIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
@keyframes sflInBack{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:none}}
.sfl-step-t{display:block;float:none;width:100%;padding:0;margin:18px 0 0;font-family:var(--l-display);font-weight:800;
  font-size:clamp(1.3rem,2.2vw,1.6rem);letter-spacing:-.025em;line-height:1.15;color:var(--l-p1)}
p.sfl-step-s{margin:.45rem 0 0;font-size:.92rem;line-height:1.5;color:var(--l-p2)}
.sfl-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px;margin-top:20px}
.sfl-field{grid-column:1/-1;min-width:0}
.sfl-field[data-key="phone"],.sfl-field[data-key="email"],
#sfl-business .sfl-field[data-key="name"],#sfl-business .sfl-field[data-key="company"]{grid-column:auto}
.sfl-lbl{display:block;font-size:.84rem;font-weight:700;color:var(--l-p1);margin:0 0 8px;letter-spacing:-.005em}
.sfl-lbl span{font-weight:500;color:var(--l-p3);margin-left:.25em}

/* visually hidden native inputs, still focusable */
.sfl-tile input,.sfl-chip input,.sfl-check input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}

/* tiles */
.sfl-tiles{display:grid;grid-template-columns:1fr;gap:9px}
.sfl-f-tiles.is-compact .sfl-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
.sfl-tile{position:relative;display:block;cursor:pointer;margin:0}
.sfl-tile-in{display:flex;align-items:center;gap:13px;padding:13px 14px;border-radius:14px;background:var(--l-paper);
  box-shadow:inset 0 0 0 1.5px var(--l-paper3);transition:background .22s,box-shadow .22s,transform .22s var(--l-ease);min-height:58px}
.sfl-tile:hover .sfl-tile-in{box-shadow:inset 0 0 0 1.5px rgba(16,21,28,.28)}
.sfl-tile-ic{flex:none;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--l-orink);transition:.22s}
.sfl-tile-ic .sfx-i{width:20px;height:20px}
.sfl-tile-tx{display:block;min-width:0}
.sfl-tile-tx b{display:block;font-size:.95rem;font-weight:700;line-height:1.25;letter-spacing:-.01em}
.sfl-tile-tx small{display:block;font-size:.8rem;line-height:1.38;color:var(--l-p3);margin-top:3px}
.sfl-tile-ck{margin-left:auto;flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;
  background:var(--l-or);color:#fff;opacity:0;transform:scale(.6);transition:.25s var(--l-ease)}
.sfl-tile-ck .sfx-i{width:15px;height:15px;stroke-width:2.4}
.sfl-tile input:checked+.sfl-tile-in{background:var(--l-ink);color:#fff;box-shadow:inset 0 0 0 2px var(--l-or)}
.sfl-tile input:checked+.sfl-tile-in .sfl-tile-ic{background:var(--l-or);color:#fff}
.sfl-tile input:checked+.sfl-tile-in small{color:var(--l-t2)}
.sfl-tile input:checked+.sfl-tile-in .sfl-tile-ck{opacity:1;transform:none}
.sfl-tile input:focus-visible+.sfl-tile-in{outline:2px solid var(--l-or);outline-offset:3px}
.sfl-f-tiles.is-compact .sfl-tile-in{padding:11px 12px;gap:10px;min-height:56px}
.sfl-f-tiles.is-compact .sfl-tile-ic{width:32px;height:32px}
.sfl-f-tiles.is-compact .sfl-tile-ic .sfx-i{width:17px;height:17px}
.sfl-f-tiles.is-compact .sfl-tile-tx b{font-size:.88rem}
.sfl-f-tiles.is-compact .sfl-tile-ck{display:none}

/* chips */
.sfl-chipset{display:flex;flex-wrap:wrap;gap:8px}
.sfl-chip{position:relative;cursor:pointer;margin:0}
.sfl-chip span{display:inline-flex;align-items:center;padding:.6em 1.02em;border-radius:99px;font-size:.86rem;font-weight:600;line-height:1.2;
  background:var(--l-paper2);color:var(--l-p2);box-shadow:inset 0 0 0 1.5px transparent;transition:.2s}
.sfl-chip:hover span{box-shadow:inset 0 0 0 1.5px rgba(16,21,28,.2)}
.sfl-chip input:checked+span{background:var(--l-ink);color:#fff}
.sfl-chip input:focus-visible+span{outline:2px solid var(--l-or);outline-offset:2px}

/* checkbox */
.sfl-check{position:relative;display:flex;align-items:center;gap:11px;cursor:pointer;font-size:.92rem;font-weight:600;color:var(--l-p1);margin:0}
.sfl-check-box{flex:none;width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:#fff;
  box-shadow:inset 0 0 0 1.5px var(--l-paper3);color:transparent;transition:.2s}
.sfl-check-box .sfx-i{width:15px;height:15px;stroke-width:2.4}
.sfl-check input:checked+.sfl-check-box{background:var(--l-or);box-shadow:none;color:#fff}
.sfl-check input:focus-visible+.sfl-check-box{outline:2px solid var(--l-or);outline-offset:2px}

/* text inputs */
.sfl-form input[type="text"],.sfl-form input[type="tel"],.sfl-form input[type="email"],.sfl-form textarea{
  display:block;width:100%;height:50px;padding:0 16px;margin:0;border-radius:12px;border:1.5px solid var(--l-paper3);
  background:#fff;color:var(--l-p1);font:500 1rem/1.3 var(--l-body);box-shadow:none;outline:none;
  transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.sfl-form textarea{height:auto;min-height:92px;padding:12px 16px;resize:vertical;line-height:1.5}
.sfl-form input::placeholder,.sfl-form textarea::placeholder{color:#9AA3AE;opacity:1}
.sfl-form input:focus,.sfl-form textarea:focus{border-color:var(--l-or);box-shadow:0 0 0 4px rgba(255,106,26,.16)}

/* errors */
p.sfl-err{margin:7px 0 0;font-size:.82rem;font-weight:600;color:#C2410C;line-height:1.4}
.sfl-field.is-bad input[type="text"],.sfl-field.is-bad input[type="tel"],.sfl-field.is-bad input[type="email"]{border-color:#E8590C}
.sfl-field.is-bad .sfl-tile-in{box-shadow:inset 0 0 0 1.5px rgba(232,89,12,.55)}
.sfl-field.is-bad{animation:sflShake .4s}
@keyframes sflShake{20%,60%{transform:translateX(-4px)}40%,80%{transform:translateX(4px)}}
.sfl-alert,.sfl-err-global{margin:14px 0 0;padding:11px 14px;border-radius:12px;background:#FFF1EA;color:#8C3200;font-size:.88rem;font-weight:600;line-height:1.45}
.sfl-err-global a{color:inherit;text-decoration:underline}

/* nav */
.sfl-nav{display:flex;align-items:center;gap:10px;margin-top:24px}
.sfl-nav .sfx-btn{margin-left:auto;cursor:pointer;border:0;font-family:var(--l-body)}
.sfl-form-wrap:not(.sfl-js) .sfl-next,.sfl-form-wrap:not(.sfl-js) .sfl-back{display:none}
button.sfl-back{display:inline-flex;align-items:center;gap:.45em;padding:.6em .2em;background:none;border:0;cursor:pointer;
  font:600 .92rem var(--l-body);color:var(--l-p2)}
.sfl-back:hover{color:var(--l-p1)}
.sfl-back .sfx-i{width:17px;height:17px}
.sfl-submit.is-busy{pointer-events:none;opacity:.78}
.sfl-submit.is-busy .sfx-i{animation:sflSpin 1s linear infinite}
@keyframes sflSpin{to{transform:rotate(360deg)}}
p.sfl-consent{margin:16px 0 0;font-size:.76rem;line-height:1.55;color:var(--l-p3)}

/* fallback .sfx-btn when the SFX stylesheet is not on the page */
.sfl-form-wrap .sfx-btn,.sfl-postcard .sfx-btn,.sfl-slide .sfx-btn{display:inline-flex;align-items:center;gap:.6em;padding:.92em 1.5em;border-radius:100px;
  font-weight:700;font-size:.97rem;letter-spacing:-.01em;background:var(--l-or);color:#fff;text-decoration:none;line-height:1.2}
.sfl-form-wrap .sfx-btn .sfx-i,.sfl-postcard .sfx-btn .sfx-i,.sfl-slide .sfx-btn .sfx-i{width:1.1em;height:1.1em}
.sfl-postcard .sfx-btn.is-sm,.sfl-slide .sfx-btn.is-sm{padding:.66em 1.1em;font-size:.88rem}
.sfl-slide .sfx-btn.is-block{display:flex;justify-content:center;width:100%}
.sfl-form-wrap .sfx-i,.sfl-page .sfx-i,.sfl-band .sfx-i,.sfl-postcard .sfx-i,.sfl-slide .sfx-i{width:1.1em;height:1.1em;flex:none}

/* done */
.sfl-done{outline:none;animation:sflPop .6s var(--l-ease) both}
.sfl-done[hidden]{display:none}
@keyframes sflPop{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.sfl-done-ic{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--l-mint);color:var(--l-ink);
  box-shadow:0 0 0 8px rgba(62,216,160,.16)}
.sfl-done-ic .sfx-i{width:28px;height:28px;stroke-width:2.4}
.sfl-done h3{font-family:var(--l-display);font-weight:800;font-size:clamp(1.4rem,2.4vw,1.75rem);letter-spacing:-.025em;line-height:1.15;margin:20px 0 10px;color:var(--l-p1)}
.sfl-done p{font-size:.96rem;line-height:1.55;color:var(--l-p2);margin:0 0 14px}
ul.sfl-done-links{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:8px}
.sfl-done-links a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-radius:12px;
  background:var(--l-paper);font-weight:600;font-size:.93rem;color:var(--l-p1);text-decoration:none;transition:.2s;line-height:1.35}
.sfl-done-links a:hover{background:var(--l-paper2)}
.sfl-done-links .sfx-i{color:var(--l-or);width:18px;height:18px}
p.sfl-done-call{font-size:.9rem}
.sfl-done-call a{color:var(--l-orink);font-weight:700}

/* ---------------------------------------------------- page sections -- */
.sfl-area{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(30px,5vw,64px);align-items:center}
.sfl-area-card{background:#fff;border-radius:var(--sf-r-xl,32px);padding:clamp(22px,3vw,32px);box-shadow:var(--l-shadow)}
.sfl-area-row{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--l-paper3)}
.sfl-area-row:first-child{padding-top:0}
.sfl-area-row .sfx-i{width:22px;height:22px;color:var(--l-or);margin-top:3px}
.sfl-area-row b{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--l-p3);font-weight:700}
.sfl-area-row a,.sfl-area-row span{font-size:1.02rem;font-weight:600;color:var(--l-p1)}
.sfl-area-card .sfx-btn{margin-top:20px}

.sfl-tease,.sfl-band{position:relative;overflow:hidden}
.sfl-band-glow{position:absolute;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(60% 120% at 92% 0%,rgba(255,106,26,.24),transparent 60%),radial-gradient(50% 90% at 0% 100%,rgba(47,139,255,.14),transparent 62%)}
.sfl-tease-in,.sfl-band-in{position:relative;z-index:2}
.sfl-tease-in{display:flex;justify-content:space-between;align-items:center;gap:28px 48px;flex-wrap:wrap}
.sfl-tease-in>div{max-width:640px}
.sfl-tease-in .sfx-d2 em{font-style:normal;color:var(--l-or)}
.sfl-band-in{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(30px,5vw,72px);align-items:center}
.sfl-band .sfx-d2{margin-top:.7rem;max-width:14ch}
.sfl-band .sfx-lead{margin-top:1.1rem;max-width:48ch}
ul.sfl-band-list{list-style:none;padding:0;margin:0;display:grid;gap:1px;background:var(--l-line);border-radius:18px;overflow:hidden;border:1px solid var(--l-line)}
.sfl-band-list li{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;background:rgba(14,19,27,.92)}
.sfl-band-list .sfx-i{width:24px;height:24px;color:var(--l-or);margin-top:2px}
.sfl-band-list b{display:block;color:#fff;font-size:.98rem;font-weight:700;letter-spacing:-.01em}
.sfl-band-list span{display:block;color:var(--l-t3);font-size:.86rem;line-height:1.45}
.sfl-band-list span b{margin-bottom:2px}
.sfl-band-act{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}

/* who-this-is-for */
.sfl-paths{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.sfl-path{display:flex;flex-direction:column;align-items:flex-start;background:#fff;border-radius:22px;padding:26px 24px;
  box-shadow:0 1px 2px rgba(8,11,16,.06),0 14px 34px -22px rgba(8,11,16,.35);transition:transform .35s var(--l-ease),box-shadow .35s}
.sfl-path:hover{transform:translateY(-3px);box-shadow:0 1px 2px rgba(8,11,16,.06),0 24px 50px -26px rgba(8,11,16,.45)}
.sfl-path-ic{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--l-paper2);color:var(--l-orink)}
.sfl-path-ic .sfx-i{width:23px;height:23px}
.sfl-path h3{font-size:1.18rem;margin:18px 0 8px;line-height:1.2}
.sfl-path p{font-size:.92rem;line-height:1.58;color:var(--l-p2);margin:0 0 12px}
.sfl-path .sfl-path-fit{display:flex;gap:8px;font-size:.86rem;font-weight:600;color:var(--l-p1);margin-bottom:18px}
.sfl-path-fit .sfx-i{width:17px;height:17px;color:var(--l-orink);margin-top:2px}
.sfl-path .sfx-btn{margin-top:auto}

/* program kit */
.sfl-kit{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--l-line);border:1px solid var(--l-line);border-radius:24px;overflow:hidden}
.sfl-kit-c{position:relative;background:var(--l-ink2);padding:30px 26px 28px;display:flex;flex-direction:column}
.sfl-kit-n{font-family:var(--l-mono);font-size:.8rem;font-weight:700;color:var(--l-or2);letter-spacing:.06em}
.sfl-kit-c>.sfx-i{display:block;width:32px;height:32px;color:var(--l-or);margin-top:20px}
.sfl-kit-c h3{color:#fff;font-size:1.28rem;margin:14px 0 8px}
.sfl-kit-c p{color:var(--l-t2);font-size:.93rem;line-height:1.6;margin:0 0 18px}
.sfl-kit-link{margin-top:auto;display:inline-flex;align-items:center;gap:.45em;font-size:.9rem;font-weight:700;color:var(--l-or2)!important}
.sfl-kit-link .sfx-i{transition:transform .3s var(--l-ease)}
.sfl-kit-link:hover .sfx-i{transform:translateX(3px)}

/* calculator */
.sfl-calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-radius:var(--sf-r-xl,32px);overflow:hidden;box-shadow:var(--l-shadow);background:#fff}
.sfl-calc-in{padding:clamp(26px,3.6vw,44px)}
.sfl-calc-row{display:block;margin:0 0 24px}
.sfl-calc-row:last-child{margin-bottom:0}
.sfl-calc-l{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:.9rem;font-weight:600;color:var(--l-p2);margin-bottom:10px}
.sfl-calc-l b{font-family:var(--l-display);font-weight:800;font-size:1.06rem;color:var(--l-p1);letter-spacing:-.02em;white-space:nowrap}
.sfl-calc input[type="range"]{width:100%;margin:0;accent-color:var(--l-or);height:26px;cursor:pointer}
.sfl-seg{display:inline-flex;background:var(--l-paper2);border-radius:99px;padding:4px;gap:2px}
.sfl-seg button{padding:.55em 1.15em;border-radius:99px;font:600 .88rem var(--l-body);color:var(--l-p2);background:none;border:0;cursor:pointer;transition:.2s}
.sfl-seg button[aria-checked="true"]{background:var(--l-ink);color:#fff}
.sfl-calc-out{position:relative;overflow:hidden;background:var(--l-ink);color:#fff;padding:clamp(26px,3.6vw,44px)}
.sfl-calc-out::before{content:"";position:absolute;width:440px;aspect-ratio:1;border-radius:50%;right:-30%;top:-28%;
  background:radial-gradient(circle,rgba(255,106,26,.3),transparent 65%);filter:blur(30px);pointer-events:none}
.sfl-calc-out>*{position:relative;z-index:1}
.sfl-calc-k{display:block;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--l-t3);font-weight:700}
.sfl-calc-big{font-family:var(--l-display);font-weight:900;font-size:clamp(2.6rem,5.2vw,3.8rem);letter-spacing:-.045em;line-height:1;margin-top:12px;color:#fff;font-variant-numeric:tabular-nums}
.sfl-calc-sub{display:block;color:var(--l-t2);margin-top:6px;font-size:.95rem}
.sfl-calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--l-line);border-radius:14px;overflow:hidden;margin:26px 0 18px}
.sfl-calc-grid div{background:var(--l-ink);padding:14px 16px}
.sfl-calc-grid span{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--l-t3);font-weight:700}
.sfl-calc-grid b{display:block;font-family:var(--l-display);font-size:1.28rem;font-weight:800;letter-spacing:-.03em;color:#fff;margin-top:5px;font-variant-numeric:tabular-nums}
.sfl-calc-disc{font-size:.78rem!important;line-height:1.6;color:var(--l-t3)!important;margin:0 0 20px!important}

/* ------------------------------------------------- post placements -- */
.sfl-postcard{position:relative;overflow:hidden;isolation:isolate;margin:2.6rem 0 .6rem;padding:clamp(24px,3vw,32px);
  border-radius:var(--sf-r-l,22px);background:var(--l-ink);color:#fff;font-family:var(--l-body)}
.sfl-postcard-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(70% 120% at 100% 0%,rgba(255,106,26,.3),transparent 60%)}
.sfl-postcard .sfl-postcard-k{display:flex;align-items:center;gap:.55em;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--l-or2)}
.sfl-postcard-k i{width:22px;height:2px;background:currentColor;border-radius:2px;display:block;opacity:.8}
.sfl-postcard .sfl-postcard-t{font-family:var(--l-display);font-weight:800;font-size:clamp(1.3rem,2.4vw,1.6rem);letter-spacing:-.025em;line-height:1.15;color:#fff;margin:.7rem 0 .55rem;max-width:24ch}
.sfl-postcard .sfl-postcard-p{color:var(--l-t2);font-size:.97rem;line-height:1.6;margin:0 0 1.2rem;max-width:60ch}
.sfl-postcard-a{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}
.sfl-postcard-n{display:inline-flex;align-items:center;gap:.45em;font-size:.84rem;color:var(--l-t3)}
.sfl-postcard-n .sfx-i{color:var(--l-mint)}
.sfl-postcard a.sfx-btn{color:#fff;background-image:none}

.sfl-slide{position:fixed;left:24px;bottom:24px;z-index:75;width:340px;max-width:calc(100vw - 48px);padding:22px 22px 20px;border-radius:20px;
  background:var(--l-ink);color:#fff;font-family:var(--l-body);box-shadow:0 0 0 1px var(--l-line2),0 30px 70px -20px rgba(0,0,0,.75);
  opacity:0;transform:translateY(24px);transition:opacity .45s var(--l-ease),transform .45s var(--l-ease)}
.sfl-slide[data-on="1"]{opacity:1;transform:none}
button.sfl-slide-x{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  background:none;border:0;color:var(--l-t3);cursor:pointer}
.sfl-slide-x:hover{color:#fff;background:rgba(255,255,255,.08)}
.sfl-slide-k{display:inline-flex;align-items:center;gap:.45em;font-size:.7rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--l-or2)}
p.sfl-slide-t{font-family:var(--l-display);font-weight:800;font-size:1.2rem;letter-spacing:-.02em;line-height:1.2;margin:.6rem 0 .4rem;color:#fff;padding-right:20px}
p.sfl-slide-p{font-size:.88rem;line-height:1.5;color:var(--l-t2);margin:0 0 15px}

/* ---------------------------------------------------------- responsive -- */
@media (max-width:1100px){
  .sfl-paths,.sfl-kit{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1020px){
  .sfl-hero-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "form" "more";grid-template-rows:auto;row-gap:28px}
  .sfl-hero-form{max-width:640px}
  .sfl-h1{max-width:16ch}
}
@media (max-width:900px){
  .sfl-area,.sfl-band-in,.sfl-calc{grid-template-columns:minmax(0,1fr)}
  .sfl-slide{display:none!important}
}
@media (max-width:640px){
  .sfl-paths,.sfl-kit{grid-template-columns:minmax(0,1fr)}
  .sfl-hero{padding-top:96px}
  .sfl-checks li{font-size:.94rem}
  .sfl-card{border-radius:24px;padding:20px 18px}
  .sfl-fields{grid-template-columns:minmax(0,1fr)}
  .sfl-field[data-key="phone"],.sfl-field[data-key="email"],
  #sfl-business .sfl-field[data-key="name"],#sfl-business .sfl-field[data-key="company"]{grid-column:1/-1}
  .sfl-nav .sfx-btn{padding:.9em 1.2em}
  .sfl-calc-grid{grid-template-columns:1fr 1fr}
  .sfl-tease-in .sfx-btn,.sfl-band-act .sfx-btn{width:100%;justify-content:center}
}
@media (max-width:380px){
  .sfl-f-tiles.is-compact .sfl-tiles{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){
  .sfl-js .sfl-step[data-on="1"],.sfl-done,.sfl-field.is-bad{animation:none}
  .sfl-slide,.sfl-tile-in,.sfl-path{transition:none}
}

/* SFX sets `.sfx a{color:inherit}` which beats `.sfx-btn{color:#fff}`; keep filled buttons white */
.sfx a.sfx-btn:not(.is-ghost),.sfl-form-wrap button.sfx-btn{color:#fff}
.sfl-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
