/* Fix2Finish / Two Mountains marketing site — ported from design handoff v7 */

/* ---- Design tokens — the palette every F2F page (corporate, Convert, Track) builds from.
   See docs/design-rules.md for usage rules. ---- */
:root{
  /* Navy scale — brand ink & dark surfaces */
  --ink:#12314D;          /* primary text & navy UI (buttons, headings) */
  --navy:#0E2E49;         /* deep navy surfaces (hero, feature sections) */
  --navy-deep:#0A2338;    /* darkest strip (trust band) */
  --blue:#005080;         /* brand blue — the shared 'F2F' mark color in every product logo */
  --blue-hover:#003C63;   /* link hover */
  /* Gold — the accent. Use sparingly: CTAs, highlights, em on dark */
  --gold:#FFBA00;
  --gold-hover:#FFC933;
  --gold-soft:#FFD27A;    /* em text on dark green/navy */
  --green-soft:#46D08D;   /* Track accent on dark surfaces (tint of logo green) */
  --blue-soft:#8FD0FF;    /* Convert accent on dark surfaces (tint of logo blue) */
  --gold-ink:#9A6B00;     /* gold-toned small text on light gold bg */
  /* Green — offer surfaces only */
  --green:#008040;       /* F2F Track logo green — accents, borders, numbers */
  --green-surface:#0C6E41;/* deep forest for large green FILLS (keeps big bands premium) */
  --green-deep:#0A5132;
  --green-dark:#0A5132;   /* P2P heading green (greenHeading) */
  --green-card:#06371F;   /* P2P dark-green fills — pricing card, gradient mid */
  --green-result:#0C2E1C; /* P2P ROI result panel */
  --green-light:#F4F7F5;  /* P2P pale green section background */
  /* Text on light */
  --text-2:#44515F;       /* secondary body text */
  --text-3:#5E6B75;       /* muted/captions */
  /* Text & surfaces on dark */
  --mist-text:#BBD4EA;    /* light-blue body text on navy */
  /* Light surfaces */
  --mist-bg:#EEF3F8;      /* tinted section background */
  /* States */
  --error:#DC2626;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Open Sans',system-ui,sans-serif;color:var(--ink);background:#fff}h1,h2,h3,h4{margin:0;font-family:'Poppins',sans-serif;font-weight:700;letter-spacing:-.02em;line-height:1.05}h1 em,h2 em,h3 em{font-style:normal;font-weight:700;color:var(--blue)}img{max-width:100%;height:auto}
a{color:var(--blue);text-decoration:none}a:hover{color:var(--blue-hover)}
.wrap{max-width:1160px;margin:0 auto;padding:0 clamp(28px,6vw,72px)}.sec{scroll-margin-top:88px}
.mb{display:inline-flex;align-items:center;gap:9px;font-family:'Poppins';font-weight:600;font-size:17px;border-radius:9999px;padding:13px 26px;cursor:pointer;border:1.5px solid transparent;transition:background .16s,color .16s,transform .16s,box-shadow .16s;text-decoration:none}
.mb.navy{background:var(--ink);color:#ffffff}.mb.navy:hover{background:var(--navy);color:#fff;transform:translateY(-1px);box-shadow:0 10px 22px rgba(14,46,73,.24)}
.mb.gold{background:var(--gold);color:var(--ink)}.mb.gold:hover{background:var(--gold-hover);color:var(--ink);transform:translateY(-1px);box-shadow:0 10px 22px rgba(255,186,0,.34)}
.mb.ghost{background:#fff;color:var(--ink);border-color:#D3DEE8}.mb.ghost:hover{background:#F4F8FC;color:var(--ink);border-color:#B9CADA}
.mb.sm{font-size:15px;padding:9px 20px}
.arrowlink{display:inline-flex;align-items:center;gap:6px;font-family:'Poppins';font-weight:600;font-size:17px;color:var(--blue);border-bottom:2px solid var(--gold);padding-bottom:2px}.arrowlink:hover{color:var(--navy)}.arrowlink svg{transition:transform .18s}.arrowlink:hover svg{transform:translateX(3px)}
.eyebrow{display:inline-block;white-space:nowrap;font-family:'Poppins';font-weight:600;font-size:15px;letter-spacing:.02em;color:var(--navy);background:var(--gold);padding:3px 12px;border-radius:6px}.hero .eyebrow{background:rgba(255,255,255,.09);color:#fff;border:1px solid rgba(255,255,255,.16);padding:6px 15px;text-transform:uppercase;letter-spacing:.11em;font-size:12.5px}
.hd{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);box-shadow:0 1px 0 rgba(18,49,77,.09)}.hd-in{height:60px;display:flex;align-items:center;justify-content:space-between}.hd-logo img{height:34px;display:block;max-width:none}.nav{display:flex;align-items:center;gap:30px}.nav a{font-family:'Poppins';font-weight:600;font-size:16px;color:var(--ink)}.nav a:hover{color:var(--blue)}.hd-cta{display:flex;align-items:center;gap:16px}
.hero{background:linear-gradient(160deg,var(--navy),#123A5C)}.hero-in{padding-top:78px;padding-bottom:70px;display:grid;grid-template-columns:1.06fr .94fr;gap:52px;align-items:center}
.hero h1{font-size:clamp(44px,6.2vw,80px);color:#ffffff;margin-top:22px}.hero h1 em{color:#ffffff}
.hero .sub{font-size:clamp(18px,1.8vw,22px);line-height:1.5;color:#CFE0EE;max-width:490px;margin:24px 0 0;font-weight:500}
.hero-cta{margin-top:32px;display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.hero-cta .mb.navy{background:var(--gold);color:var(--ink)}.hero-cta .mb.navy:hover{background:var(--gold-hover);color:var(--ink)}
.hero-cta .arrowlink{color:#fff}.hero-cta .arrowlink:hover{color:var(--gold)}
.hero-note{margin-top:26px;font-family:'Poppins';font-weight:600;font-size:15px;color:var(--mist-text);display:flex;align-items:center;gap:9px}.hero-note svg{color:#7FE0B0}
.herophoto{border-radius:20px;overflow:hidden;box-shadow:0 30px 64px -28px rgba(18,49,77,.4);width:100%;height:420px;background:rgba(255,255,255,.08);color:#EAF2F9;filter:saturate(.68) brightness(.8) contrast(1.03)}
.herophoto img,.herophoto video{width:100%;height:100%;object-fit:cover;display:block}
.herophoto.herophoto--full{height:auto;filter:none}
.herophoto.herophoto--full img,.herophoto.herophoto--full video{height:auto;object-fit:contain}
.herophoto.placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.04))}
.herophoto.placeholder svg{opacity:.35}
.trust{background:var(--navy-deep);padding:64px 0}.trust-strip{position:relative;max-width:940px;margin:0 auto;padding:0;display:flex;align-items:center;justify-content:center;gap:0;flex-wrap:wrap}.ts-solo{display:flex;flex-direction:column;align-items:center;text-align:center}.ts-sub{font-family:'Poppins';font-weight:500;font-size:16px;color:#9FB6CB;margin-top:16px}
.ts-t{font-family:'Poppins';font-weight:600;font-size:clamp(22px,2.6vw,30px);line-height:1.3;color:#E7F0F8}.ts-t b{color:var(--gold)}.ts-n{font-family:'Poppins';font-weight:800;font-size:clamp(44px,5.2vw,68px);line-height:1;letter-spacing:-.03em;color:var(--gold)}
.offer{background:linear-gradient(165deg,var(--green-surface),var(--green-deep));padding:88px 0 96px}.offer-head{max-width:680px;margin:0 auto;text-align:center}.offer-head h2{font-size:clamp(32px,4.4vw,50px);margin:16px 0 0;color:#fff}.offer-head h2 em{color:var(--gold-soft)}.offer-head p{font-size:18px;line-height:1.5;color:#BFE6CF;margin:16px auto 0;max-width:560px;font-weight:500}.offer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:48px;max-width:760px;margin-inline:auto}.offer-card{display:flex;flex-direction:column;background:#fff;border:1px solid #E3ECF4;border-radius:16px;padding:26px 26px 24px;transition:transform .16s,box-shadow .16s,border-color .16s}.offer-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -24px rgba(18,49,77,.3);border-color:#C6D9E8}.offer-card{border-top:1px solid #E3ECF4}.offer-logo{height:44px;width:auto;display:block;margin-bottom:18px;object-fit:scale-down}.offer-desc{font-size:14.5px;line-height:1.5;color:var(--text-2);margin:9px 0 0;flex:1}.offer-go{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font-family:'Poppins';font-weight:700;font-size:14px;color:var(--blue)}.offer-card:hover .offer-go{color:var(--navy)}.offer-go svg{transition:transform .18s}.offer-card:hover .offer-go svg{transform:translateX(3px)}
.navdd{position:relative;display:flex;align-items:center}.navdd-t{display:inline-flex;align-items:center;gap:5px;cursor:pointer}.navdd-t svg{transition:transform .18s}.navdd:hover .navdd-t svg{transform:rotate(180deg)}.navdd-menu{position:absolute;top:100%;left:-14px;padding-top:14px;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .16s,transform .16s}.navdd:hover .navdd-menu,.navdd:focus-within .navdd-menu{opacity:1;visibility:visible;transform:translateY(0)}.navdd-menu-in{min-width:288px;background:#fff;border-radius:14px;padding:8px;box-shadow:0 18px 44px -18px rgba(18,49,77,.34),0 0 0 1px rgba(18,49,77,.07)}.navdd-menu a{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center;padding:12px 14px;border-radius:10px}.navdd-menu .ddic{grid-row:1/3;width:30px;height:30px}.navdd-menu a:hover{background:#F4F8FC}.navdd-menu a b{display:block;grid-column:2;font-family:'Poppins';font-weight:700;font-size:15.5px;color:var(--ink)}.navdd-menu a span{display:block;grid-column:2;font-family:'Open Sans';font-weight:400;font-size:13px;color:var(--text-3);margin-top:2px}
.pad{padding:100px 0}.sechead{max-width:760px}.sechead h2{font-size:clamp(34px,4.6vw,56px);margin:16px 0 0}.sechead p{font-size:19px;line-height:1.5;color:var(--text-2);margin:16px 0 0;max-width:600px;font-weight:500}
.sechead.center{text-align:center;max-width:none}
.sechead.center p{margin-left:auto;margin-right:auto;text-wrap:balance}
.probwrap{margin-top:52px;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.probc{border-radius:20px;padding:50px 44px 44px;position:relative;overflow:hidden;background:var(--navy);color:#fff;box-shadow:0 34px 66px -34px rgba(14,46,73,.55)}
.probc::before{content:"";position:absolute;top:0;left:0;right:0;height:8px;background:repeating-linear-gradient(-45deg,#E8624A 0 15px,var(--ink) 15px 30px)}
.probc .plabel{display:inline-flex;align-items:center;gap:10px;font-family:'Poppins';font-weight:700;font-size:17px;letter-spacing:.08em;text-transform:uppercase;color:#FF9B85}.probc .warn{width:22px;height:22px;flex-shrink:0}
.pbignum{font-family:'Poppins';font-weight:800;font-size:clamp(88px,12.5vw,148px);line-height:.78;letter-spacing:-.04em;margin:20px 0 0;color:var(--gold)}.pbignum small{font-size:.4em;font-weight:700;letter-spacing:-.01em}.pbignum .pre{font-size:.374em;letter-spacing:-.01em}
.pcap{font-family:'Poppins';font-weight:700;font-size:21px;line-height:1.2;margin:16px 0 0;color:#fff}
.pbody{font-size:16px;line-height:1.6;margin:16px 0 0;color:#AEC6DC}.pbody .hl{font-family:'Poppins';font-weight:700;color:#fff}
.feat{padding:96px 0;position:relative;overflow:hidden}.feat.cream{background:var(--mist-bg)}.feat.light{background:var(--mist-bg)}.feat.navy{background:var(--navy);color:#ffffff}
.feat-tex{position:absolute;inset:0;pointer-events:none;background-repeat:repeat;background-size:300px auto}
#recover .feat-tex{background-image:url('assets/tex-track.png');opacity:.045}
#convert .feat-tex{background-image:url('assets/tex-convert.png');opacity:.075}
.feat .wrap{position:relative;z-index:1}
.feat-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}.feat.rev .feat-grid{direction:rtl}.feat.rev .feat-grid>*{direction:ltr}
.feat-brand{display:flex;align-items:center;gap:14px;margin-bottom:2px}.feat-logo{display:inline-flex;background:#fff;border-radius:10px;padding:7px 12px;box-shadow:0 6px 16px -10px rgba(18,49,77,.28)}.feat-logo img{height:29px;width:auto;display:block}.feat-logo.dark{background:#1A4A70;box-shadow:0 6px 16px -10px rgba(3,14,24,.5)}
.feat-eye{font-family:'Poppins';font-weight:600;font-size:17px;line-height:1.3;color:var(--text-3);margin:14px 0 0}.feat.navy .feat-eye{color:#9FB6CB}.feat-eye em{font-style:normal;color:var(--blue)}.feat.navy .feat-eye em{color:var(--gold-soft)}
.feat-h{font-size:clamp(30px,3.8vw,46px);margin:12px 0 0;color:var(--ink)}.feat.navy .feat-h{color:#fff}.feat.navy .feat-h em.dim{color:#94ACC1}
.feat-body{font-size:17px;line-height:1.6;color:var(--text-2);margin:20px 0 0;max-width:520px;font-weight:500}.feat.navy .feat-body{color:#B7CBDC}
.feat-note{display:inline-flex;align-items:center;gap:8px;margin-top:24px;font-family:'Poppins';font-weight:700;font-size:14px;letter-spacing:.04em;text-transform:uppercase;color:#B57F00}.feat.navy .feat-note{color:var(--gold-soft)}.feat-note .dot{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(255,186,0,.24)}
.feat-cta{margin-top:16px;display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.feat.navy .mb.navy{background:var(--gold);color:var(--ink)}.feat.navy .mb.navy:hover{background:var(--gold-hover)}.feat.navy .arrowlink{color:#8FD0FF;border-color:var(--gold)}.feat.navy .arrowlink:hover{color:#fff}
.uicard{background:#ffffff;border-radius:18px;overflow:hidden;box-shadow:0 26px 56px -28px rgba(18,49,77,.34)}.feat.navy .uicard{box-shadow:0 30px 62px -26px rgba(3,14,24,.55)}
.trackvid video{display:block;width:100%;height:auto}
.ui-top{padding:15px 20px;background:var(--navy);display:flex;align-items:center;justify-content:space-between}.ui-top .ut{font-family:'Poppins';font-weight:700;font-size:16px;color:#fff}.ui-top .ut b{color:var(--gold)}.ui-top .chip{font-family:'Poppins';font-weight:600;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--navy);background:var(--gold);border-radius:999px;padding:4px 12px}
.ui-bd{padding:20px}
.phone{width:290px;max-width:100%;margin:0 auto;background:#ffffff;border-radius:30px;overflow:hidden;box-shadow:0 30px 62px -26px rgba(3,14,24,.55)}
.ph-top{background:linear-gradient(125deg,#2C6FA6,var(--navy));padding:22px 20px 18px;color:#fff}.ph-brand{display:flex;align-items:center;gap:10px;font-family:'Poppins';font-weight:700;font-size:16px}.ph-brand .lg{width:28px;height:28px;border-radius:8px;background:var(--gold);display:flex;align-items:center;justify-content:center;color:var(--navy);font-family:'Poppins';font-weight:700;font-size:14px}.ph-tag{font-size:12px;color:var(--mist-text);margin-top:6px}
.ph-bd{padding:18px}.ph-diag{background:var(--mist-bg);border-radius:14px;padding:14px}.ph-dl{font-family:'Poppins';font-weight:600;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-ink)}.ph-dt{font-family:'Poppins';font-weight:700;font-size:16px;color:var(--ink);margin-top:4px}.ph-price{display:flex;align-items:baseline;justify-content:space-between;margin-top:14px}.ph-price .pv{font-family:'Poppins';font-weight:700;font-size:25px;color:var(--navy)}.ph-price .pu{font-size:12px;color:#7A7364}.ph-book{margin-top:14px;background:var(--gold);border-radius:12px;padding:13px;text-align:center;font-family:'Poppins';font-weight:700;font-size:15px;color:var(--ink)}
.road{display:flex;flex-direction:column;gap:0}.road-step{display:flex;gap:15px;align-items:flex-start}.road-n{width:34px;height:34px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;font-family:'Poppins';font-weight:700;font-size:15px;color:var(--ink);flex-shrink:0}.road-c{width:2px;height:24px;background:#DCE3EA;margin-left:16px}.road-t{font-family:'Poppins';font-weight:700;font-size:16px;color:var(--ink);padding-top:5px}.road-d{font-size:14px;color:var(--text-3);margin-top:2px;line-height:1.42}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:600px}.statc{background:rgba(255,255,255,.09);border-radius:16px;padding:32px 30px;box-shadow:0 20px 44px -30px rgba(0,0,0,.4)}.statn{font-family:'Poppins';font-weight:700;font-size:clamp(46px,5.6vw,68px);line-height:.9;letter-spacing:-.03em;color:var(--gold)}.statl{font-family:'Poppins';font-weight:600;font-size:16px;line-height:1.3;color:var(--mist-text);margin:14px 0 0}.feat:not(.navy) .statc{background:#fff;border:1px solid #E3ECF4;box-shadow:0 18px 40px -28px rgba(18,49,77,.28)}.feat:not(.navy) .statn{color:var(--green)}.feat:not(.navy) .statl{color:var(--text-2)}
.stat-track{margin-top:20px;grid-template-columns:1fr;max-width:248px}.stat-track .statc{padding:22px 24px;text-align:center}.stat-track .statn{font-size:clamp(40px,4.8vw,58px)}.stat-track .statn .x{font-weight:700;font-size:.46em;vertical-align:.52em;letter-spacing:0;color:var(--green)}.stat-track .statl{margin-top:10px}.stat-track .statsub{font-family:'Poppins';font-weight:500;font-size:12.5px;line-height:1.35;color:#8595A3;margin-top:5px}
.stat-convert{margin-top:56px;max-width:900px;padding:26px 32px;border-radius:16px;background:#173F62;border:1px solid rgba(255,255,255,.16);box-shadow:0 18px 40px -26px rgba(0,0,0,.55)}
.stat-convert p{margin:0;font-family:'Poppins';font-weight:600;font-size:clamp(18px,1.9vw,24px);line-height:1.75;color:#C2D6E6;letter-spacing:-.01em;text-wrap:pretty;text-align:center}
.stat-convert .big{font-weight:700;color:var(--gold);font-size:1.7em;line-height:1;letter-spacing:-.03em}
.stat-convert .cx{color:var(--gold);font-weight:700}
.feat-actions{margin-top:34px;padding-top:26px;border-top:1px solid rgba(18,49,77,.12)}.feat.navy .feat-actions{border-top-color:rgba(255,255,255,.18)}.feat-actions .feat-note{margin-top:0}.feat-actions .feat-cta{margin-top:16px}
.founders{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:52px}.fcard{border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 22px 50px -30px rgba(18,49,77,.3);background:#ffffff}
.fphoto{position:relative;background:var(--navy);height:240px;overflow:hidden}.fphoto img{width:100%;height:100%;object-fit:cover;object-position:center 26%;filter:grayscale(1) contrast(1.04);mix-blend-mode:luminosity;opacity:.94}
.fbody{padding:28px 30px}.fname{font-family:'Poppins';font-weight:700;font-size:25px;color:var(--ink)}.frole{font-family:'Poppins';font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin:5px 0 0}.ftext{font-size:15.5px;line-height:1.6;color:var(--text-2);margin:14px 0 0}
.contact{padding:100px 0;background:var(--navy);color:#ffffff}.contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(440px,1.15fr);gap:54px;align-items:start}.contact h2{font-size:clamp(38px,5vw,60px);color:#fff;margin:16px 0 0}.contact h2 em{color:var(--gold)}.contact .csub{font-size:18px;line-height:1.5;color:var(--mist-text);margin:20px 0 0;max-width:420px;font-weight:500}.contact .eyebrow{background:var(--gold);color:var(--navy)}
.form-card{background:#ffffff;border-radius:18px;padding:36px;box-shadow:0 30px 64px -28px rgba(3,14,24,.5)}.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}.fld{margin-bottom:16px}.fldlabel{display:block;font-family:'Poppins';font-weight:600;font-size:14px;color:var(--ink);margin-bottom:7px}.inp{width:100%;height:50px;border:1px solid #D0DEEC;border-radius:10px;padding:0 14px;font-size:15px;font-family:inherit;color:var(--ink);background:#fff}.inp:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,80,128,.16)}select.inp{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2312314D' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center}.inp.area{height:auto;min-height:110px;padding:12px 14px;resize:vertical;line-height:1.5}.inp.errb{border-color:var(--error)}.err{color:var(--error);font-size:13px;margin-top:6px;font-family:'Poppins';font-weight:600}.form-card .mb{width:100%;justify-content:center;margin-top:4px}.form-note{text-align:center;font-size:13px;color:var(--text-3);margin:14px 0 0}
.hp-field{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
.success{text-align:center;padding:26px 8px}.success-ic{width:64px;height:64px;border-radius:50%;background:#FFF4D2;color:var(--gold-ink);display:flex;align-items:center;justify-content:center;margin:0 auto}.success h3{font-family:'Poppins';font-weight:700;font-size:26px;color:var(--ink);margin:18px 0 0}.success p{font-size:15.5px;color:var(--text-2);margin:10px 0 0;line-height:1.55}
.footer{background:#0F2942;color:#9DBBD6}.footer-in{padding:64px clamp(28px,6vw,72px) 34px;max-width:1160px;margin:0 auto}.footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.1)}.footer-brand{max-width:310px}.flogo{height:52px;display:block;position:relative;top:-13px}.ftag{font-family:'Poppins';font-weight:600;font-size:15px;line-height:1.5;color:var(--mist-text);margin:18px 0 0}.fsocial{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:9px;background:rgba(255,255,255,.08);color:var(--mist-text);margin-top:22px}.fsocial:hover{background:var(--gold);color:var(--ink)}.fcol{display:flex;flex-direction:column;gap:11px}.fcol-h{font-family:'Poppins';font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#7FA0C0;margin-bottom:5px}.fcol a{font-family:'Open Sans';font-size:15px;color:var(--mist-text)}.fcol a:hover{color:var(--gold)}.footer-legal{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:26px}.fcopy{font-size:13px;color:#7FA0C0}.flinks{display:flex;gap:22px}.flinks a{font-size:13px;color:#7FA0C0}.flinks a:hover{color:var(--gold)}
@media(min-width:601px){.footer-cols>*:nth-child(2){justify-self:center}.footer-cols>*:nth-child(3){justify-self:end}}

/* Mobile menu (not in reference — design notes call for one below 900px) */
.menu-btn{display:none;width:42px;height:42px;border:none;background:none;cursor:pointer;color:var(--ink);padding:0;align-items:center;justify-content:center}
.mnav{display:none;background:#fff;box-shadow:0 18px 34px -18px rgba(18,49,77,.3);border-top:1px solid #E3ECF4}
.mnav.open{display:block}
.mnav a{display:block;padding:15px clamp(28px,6vw,72px);font-family:'Poppins';font-weight:600;font-size:16px;color:var(--ink);border-bottom:1px solid #EEF2F6}
.mnav a:last-child{border-bottom:none}
.mnav a span{font-family:'Open Sans';font-weight:400;font-size:13px;color:var(--text-3);display:block;margin-top:2px}

@media(max-width:900px){.nav{display:none}.hd-cta .mb{display:none}.hd-cta .mb.hd-login{display:inline-flex}.menu-btn{display:flex}.offer-grid{grid-template-columns:1fr}.feat-grid,.contact-grid,.founders,.probwrap{grid-template-columns:1fr;gap:32px}.feat.rev .feat-grid{direction:ltr}.stat-grid{grid-template-columns:1fr}}
/* Phone header: the login pill shares the bar with the logo and the burger, so it tightens up
   to keep all three on one line without crowding the wordmark down to ~320px. */
@media(max-width:600px){.hd-cta{gap:10px}.hd-cta .mb.hd-login{font-size:14px;padding:8px 15px}}
@media(max-width:380px){.hd .wrap{padding:0 18px}.hd-logo img{height:30px}}
/* Homepage hero: tablet stacks. It used to hold the two-column layout down to 601px to keep
   the fold short, but that gave the video 47% of an already narrow viewport — 230px at
   601px, against 528px one pixel lower where mobile stacks — and the callout labels in it
   stopped being readable. The headline column is at its own limit by then, so there was no
   width to move across. Stacking instead, capped so the video can't dominate a 900px
   tablet; the CTA still sits above the video, so the fold is unaffected where it matters.
   Mobile keeps the same stack with tighter text/whitespace. Scoped to .hero-home so
   Track/Convert's prod-hero sections are unaffected. */
@media(min-width:601px) and (max-width:900px){
  .hero-home .hero-in{grid-template-columns:1fr;gap:28px;padding-top:48px;padding-bottom:48px}
  .hero-home h1{font-size:clamp(38px,5.5vw,60px);margin-top:18px}
  .hero-home .sub{font-size:clamp(17px,1.8vw,20px);margin-top:20px;max-width:none}
  .hero-home .hero-cta{margin-top:26px}
  .hero-home .herophoto--full{max-width:560px;margin-inline:auto}
}
/* 901-1199 stays two-column, but the video reaches across .wrap's gutter to within 16px of
   the viewport edge — the gutter is 6vw here, so this is worth 38-56px of width and also
   softens the step up to the 1200px rule below. */
@media(min-width:901px) and (max-width:1199px){
  .hero-home .herophoto--full{width:calc(100% + 6vw - 16px)}
}
@media(max-width:600px){
  .hero-home .hero-in{grid-template-columns:1fr;gap:22px;padding-top:32px;padding-bottom:36px}
  .hero-home h1{font-size:clamp(30px,9vw,40px);margin-top:14px}
  .hero-home .sub{font-size:16px;margin-top:14px}
  .hero-home .hero-cta{margin-top:18px}
}
/* Desktop hero video: 20% larger, pushed toward the top-right. .wrap's gutter is pinned at
   its 72px max from 1200px up, so bleeding across it lands the right edge exactly on the
   wrap's outer edge — closer to the page edge without ever overflowing the viewport. The
   negative left margin is the growth (20% of the column) minus that gutter, which keeps the
   right edge on the wrap edge instead of pushing it past. align-self overrides the row's
   centring so it rides near the top of the hero rather than the middle. */
@media(min-width:1200px){
  .hero-home .herophoto--full{
    width:120%;
    margin-left:calc(72px - 20%);
    align-self:start;
    margin-top:36px;
  }
}
@media(max-width:1024px){.contact-grid{grid-template-columns:1fr;gap:28px}.contact-intro{max-width:640px}}
@media(max-width:600px){.pad{padding:68px 0}.feat,.contact{padding:64px 0}.frow{grid-template-columns:1fr}.probc{padding:32px 26px}.footer-cols{grid-template-columns:1fr 1fr;gap:32px}.footer-brand{grid-column:1/-1}.footer-legal{flex-direction:column;align-items:flex-start}}

/* ---- Legal pages (privacy/terms) ---- */
.legal-hero{background:linear-gradient(160deg,var(--navy),#123A5C);padding:64px 0 56px}
.legal-hero h1{color:#fff;font-size:clamp(34px,4.6vw,56px)}
.legal{max-width:760px}
.legal h2{font-size:clamp(26px,3vw,34px);margin:56px 0 6px;scroll-margin-top:96px}
.legal h2:first-child{margin-top:0}
.legal h3{font-size:20px;margin:34px 0 0;color:var(--ink)}
.legal p{font-size:16.5px;line-height:1.65;color:var(--text-2);margin:12px 0 0}
.legal ul{margin:12px 0 0;padding-left:22px}
.legal li{font-size:16.5px;line-height:1.65;color:var(--text-2);margin-top:6px}
.legal a{text-decoration:underline}
.legal .updated{font-family:'Poppins';font-weight:600;font-size:14px;color:var(--text-3)}

/* ---- Product pages (F2F Convert; Track will reuse) ---- */
.prod-hero h1{font-size:clamp(38px,5.4vw,64px);max-width:900px;margin:22px auto 0}
.prod-hero .hero-in{grid-template-columns:1fr;text-align:center}
.prod-hero .eyebrow{white-space:normal}
.prod-hero .sub{margin:24px auto 0;max-width:760px}
.prod-hero .hero-cta{justify-content:center}
.prod-hero .hero-note{justify-content:center}
.prod-hero h1 em{color:var(--blue-soft)}
#how .feat-tex,#foryou .feat-tex{background-image:url('/assets/tex-convert.png');opacity:.06}
.pains{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
.pain{background:#fff;border:1px solid #E3ECF4;border-top:4px solid var(--blue);border-radius:16px;padding:26px}
.pain h3{font-size:19px;color:var(--ink)}
.pain p{font-size:15px;line-height:1.55;color:var(--text-2);margin:10px 0 0}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:52px}
.step{background:#fff;border:1px solid #E3ECF4;border-radius:16px;padding:22px;text-align:center;position:relative;transition:box-shadow .3s,transform .3s}
.step:hover{box-shadow:0 18px 40px -24px rgba(18,49,77,.35);transform:translateY(-3px);z-index:5}
.step-n{position:absolute;top:-14px;left:50%;transform:translateX(-50%);width:28px;height:28px;border-radius:50%;background:var(--blue);color:#fff;font-family:'Poppins';font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;transition:transform .3s,background .3s,color .3s}
.step:hover .step-n{transform:translateX(-50%) scale(1.1);background:var(--gold);color:var(--ink)}
.step-shot{height:340px;display:flex;align-items:center;justify-content:center;margin:10px 0 14px}
.step-shot img{max-height:100%;width:auto;filter:drop-shadow(0 12px 24px rgba(18,49,77,.18));transition:transform .5s ease-out;will-change:transform}
.step:hover .step-shot img{transform:scale(1.5);position:relative;z-index:50}
.step h3{font-size:17px;color:var(--ink)}
.step p{font-size:14px;line-height:1.5;color:var(--text-2);margin:8px 0 0}
.gets{list-style:none;margin:22px 0 0;padding:0}
.gets li{position:relative;padding-left:26px;font-size:16px;line-height:1.55;color:var(--mist-text);margin-top:12px}
.gets li b{color:#fff;font-family:'Poppins';font-weight:700}
.gets li::before{content:"";position:absolute;left:0;top:7px;width:14px;height:14px;border-radius:50%;background:var(--gold)}
.dashshot img{width:100%;border-radius:16px;box-shadow:0 30px 64px -28px rgba(10,35,56,.6);display:block}
.ctaband{background:var(--mist-bg)}
.ctaband-in{text-align:center;max-width:640px;margin:0 auto}
.ctaband-in h2{font-size:clamp(30px,3.8vw,44px)}
.ctaband-in p{font-size:18px;color:var(--text-2);margin:14px 0 0}
.ctaband-in .hero-cta{justify-content:center}
@media (max-width:900px){.pains,.steps{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.pains,.steps{grid-template-columns:1fr}}

/* ---- Convert full-page panels (recreated from legacy fix2finish.com) ---- */
#instant .feat-tex,#record .feat-tex{background-image:url('/assets/tex-convert.png');opacity:.05}
.probgrid{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:48px;align-items:center}
.imgcard{border-radius:16px;overflow:hidden;box-shadow:0 24px 52px -26px rgba(18,49,77,.35);background:#fff}
.imgcard img{width:100%;display:block}
.imgcard.tall img{max-height:560px;object-fit:contain}
.plead{font-family:'Poppins';font-weight:600;font-size:20px;line-height:1.4;color:var(--ink)}
.probcopy p{font-size:16.5px;line-height:1.6;color:var(--text-2);margin:14px 0 0}
.probcopy .plead{margin:0}
.perks{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:920px;margin:44px auto 0;padding:0}
.perks li{display:flex;align-items:center;justify-content:center;text-align:center;min-height:104px;background:#fff;border:1px solid #E7EEF5;border-radius:14px;padding:20px;font-family:'Poppins';font-weight:600;font-size:15.5px;line-height:1.35;color:var(--ink);box-shadow:0 10px 26px -18px rgba(18,49,77,.35);transition:transform .18s ease,box-shadow .18s ease}
.perks li:hover{transform:translateY(-3px);box-shadow:0 16px 34px -18px rgba(18,49,77,.42)}
.recordgrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;margin-top:48px;align-items:start}
.rec-h{font-size:clamp(22px,2.4vw,28px);color:var(--ink)}
.rec-p{font-size:16.5px;line-height:1.6;color:var(--text-2);margin:14px 0 0}
.pains.stack{grid-template-columns:1fr;margin-top:24px;gap:14px}
.pains.stack .pain{padding:18px 20px}
.coreimg{display:flex;justify-content:center;margin-top:24px}
.coreimg img{width:100%;max-width:608px}
#opportunity .ts-sub{max-width:640px;line-height:1.6}
.investnote{margin-top:28px;font-size:14.5px;color:var(--text-3)}
.investnote a{text-decoration:underline}
@media (max-width:900px){.probgrid,.recordgrid{grid-template-columns:1fr}.perks{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.perks{grid-template-columns:1fr}}

/* ---- F2F Track product page ---- */
.track-hero{position:relative;overflow:hidden}
.track-dollar{position:absolute;right:-60px;top:-80px;font-family:'Poppins';font-weight:800;font-size:clamp(280px,38vw,520px);line-height:1;color:rgba(255,255,255,.035);pointer-events:none;user-select:none}
.track-hero-in{position:relative;text-align:center;padding-top:clamp(76px,11vw,132px);padding-bottom:clamp(64px,8vw,104px)}
.prodmark-row{margin-bottom:20px}
.prodmark-chip{display:inline-flex;background:#fff;border-radius:12px;padding:9px 16px;box-shadow:0 6px 18px rgba(10,35,56,.25)}
.prodmark-chip img{height:34px;width:auto;display:block}
.track-hero h1{font-size:clamp(40px,6.4vw,74px);color:#fff;max-width:960px;margin:22px auto 0}
.track-hero h1 em{color:var(--green-soft)}
.track-hero .sub{font-size:clamp(17px,2.2vw,21px);line-height:1.55;color:#CFE0EE;margin:22px auto 0;max-width:660px;font-weight:500}
.hero-cta.center{justify-content:center}
.wrap.narrow{max-width:800px}
#leaks .feat-tex,#how .feat-tex,#pricing .feat-tex{background-image:url('/assets/tex-track.png');opacity:.05}
.gapgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px}
.gapcard{border-radius:16px;padding:24px;text-align:center;background:#fff}
.gapcard.solid{border:2px solid var(--green)}
.gapcard.dashed{border:2px dashed #B9CADA}
.gapcard-t{font-family:'Poppins';font-weight:700;font-size:17px;color:var(--ink)}
.gapcard-c{margin-top:18px;display:flex;flex-direction:column;align-items:center;gap:8px;min-height:88px;justify-content:center}
.gapcard.solid .gapcard-c{color:var(--green)}
.gapcard.solid .gapcard-c span{font-family:'Poppins';font-weight:600;font-size:14px}
.gapcard .q{font-family:'Poppins';font-weight:800;font-size:52px;color:#B9CADA;line-height:1}
.leaks{display:flex;flex-direction:column;gap:26px;margin-top:44px}
.leak{display:flex;gap:18px;align-items:flex-start}
.leak-n{flex-shrink:0;width:34px;height:34px;border-radius:50%;background:var(--green);color:var(--gold);font-family:'Poppins';font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center;margin-top:2px}
.leak h3{font-size:18px;color:var(--ink)}
.leak p{font-size:16.5px;line-height:1.6;color:var(--text-2);margin:6px 0 0}
.calcgrid{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:44px;align-items:start;max-width:1040px;margin-left:auto;margin-right:auto}
.calcinputs{display:flex;flex-direction:column;gap:38px}
.calcfield label{font-family:'Poppins';font-weight:600;font-size:15px;color:var(--ink)}
.calcfield.highlighted{background:var(--mist-bg);border:1.5px solid #C6D9E8;border-radius:16px;padding:20px 20px 22px}
.calcfield.highlighted label{font-weight:700}
.calcfield-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.numwrap{display:flex;align-items:center;height:40px;background:#fff;border:1.5px solid #D3DEE8;border-radius:10px;padding:0 10px}
.numwrap.hi{height:42px;border-color:#C6D9E8;padding:0 12px}
.numfield{width:46px;border:none;outline:none;background:none;font-family:'Poppins';font-weight:700;font-size:16px;color:var(--green);text-align:right;padding:0}
.numwrap.hi .numfield{font-weight:800;font-size:18px}
.nfx{font-family:'Poppins';font-weight:700;font-size:16px;color:var(--green)}
/* Slider styled to match the P2P design-system reference: uniform light track, no green
   fill, green thumb with a white ring + soft shadow (not native accent-color). */
.calcfield input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:9999px;background:#DDE6E0;outline:none;margin:12px 0 0;cursor:pointer}
.calcfield input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:var(--green-surface);border:4px solid #fff;box-shadow:0 2px 6px rgba(8,55,31,.35);cursor:pointer}
.calcfield input[type=range]::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--green-surface);border:4px solid #fff;box-shadow:0 2px 6px rgba(8,55,31,.35);cursor:pointer}
.rangelabels{display:flex;justify-content:space-between;font-size:12px;color:var(--text-3);margin-top:7px}
/* "Best in class" brace (bracket over the ideal range) — matches P2P bestInClass marker. */
.bic{position:relative;height:16px;margin-top:12px}
.bic-brace{position:absolute;height:7px;bottom:0;border-left:2px solid #3E7D5B;border-right:2px solid #3E7D5B;border-top:2px solid #3E7D5B;border-radius:4px 4px 0 0}
.bic-label{position:absolute;bottom:9px;transform:translateX(-50%);font-size:11px;font-weight:600;color:#3E7D5B;white-space:nowrap;font-family:'Poppins'}
.lossfield label{color:var(--text-3);font-weight:700;font-size:16px;line-height:1.25}
.lossctl{display:flex;align-items:center;gap:12px;flex-shrink:0}
.lossval{font-family:'Poppins';font-weight:700;font-size:18px;color:var(--text-3)}
.lossbtn{height:30px;padding:0 14px;border-radius:8px;border:1px solid #D3DEE8;background:#fff;color:var(--text-3);cursor:pointer;font-family:'Poppins';font-weight:600;font-size:13px}
.lossnote{font-size:12.5px;line-height:1.55;color:var(--text-3);margin:12px 0 0}
.lossslider{margin-top:16px}
.calcresult{position:sticky;top:98px}
.roi-hero{background:var(--navy);border-radius:18px;padding:28px 26px;text-align:center}
.roi-eyebrow{font-family:'Poppins';font-weight:600;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--mist-text)}
.roi-big{font-family:'Poppins';font-weight:800;font-size:clamp(44px,5vw,64px);line-height:.96;letter-spacing:-.04em;color:#fff;margin:6px 0 2px}
.roi-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:14px}
.roi-tile{background:#F5F8F6;border:1px solid #E6EDE8;border-radius:16px;padding:26px 22px;text-align:center}
.roi-tile.green{background:#EEF7F1;border-color:#CDE4D6}
.rt-l{font-size:14px;color:var(--text-3);font-weight:600}
.roi-tile.green .rt-l{color:var(--green)}
.rt-v{font-family:'Poppins';font-weight:800;font-size:34px;color:var(--green);margin-top:8px;line-height:1}
.mb.wide{display:flex;width:100%;justify-content:center;margin-top:16px}
.tsteps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}
.tstep{background:#fff;border:1px solid #E3ECF4;border-radius:16px;padding:26px 22px}
.tstep-n{font-family:'Poppins';font-weight:800;font-size:24px;color:var(--green)}
.tstep h3{font-size:17px;color:var(--ink);margin:8px 0 6px}
.tstep p{font-size:14.5px;line-height:1.6;color:var(--text-2);margin:0}
.tsteps-note{text-align:center;font-size:16px;color:var(--green);font-weight:600;font-family:'Poppins';margin:24px 0 0}
.ba-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:22px;max-width:940px;margin:52px auto 0;align-items:start}
.ba-label{font-family:'Poppins';font-weight:600;font-size:14.5px;line-height:1.35;color:var(--text-2);margin-bottom:12px}
.ba-label.hi{color:var(--green)}
.ba-arrow{align-self:center;color:var(--green)}
.receipt{background:#fff;border:1px solid #E3ECF4;border-radius:16px;padding:24px 20px;box-shadow:0 4px 12px rgba(15,23,42,.03)}
.receipt-head{display:flex;justify-content:space-between;border-bottom:1px dashed #E3ECF4;padding-bottom:10px;margin-bottom:12px;font-family:'Poppins'}
.receipt-head span{font-weight:700;font-size:14px;color:var(--ink)}
.receipt-head .po{font-weight:600;font-size:12px;color:var(--text-3)}
.receipt-head .g{color:var(--green)}
.receipt-lines{display:flex;flex-direction:column;gap:10px}
.rl{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--ink)}
.rl span{font-weight:500;color:#334155}
.rl i,.scr i,.bleedrow i{font-style:normal;font-size:11.5px;color:var(--text-3);margin-left:6px}
.rl b{font-weight:700}
.receipt-total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid #E3ECF4;padding-top:10px;margin-top:4px;font-family:'Poppins'}
.receipt-total span{font-weight:700;font-size:13px}
.receipt-total b{font-weight:800;font-size:16px}
.ba-caption{font-size:13px;line-height:1.5;color:var(--text-3);margin:12px 0 0}
.recon{position:relative;background:#EEF7F1;border:1px solid #C3E2D1;border-radius:16px;padding:24px 20px;box-shadow:0 14px 32px rgba(6,55,31,.12)}
.subcard{border-radius:12px;padding:10px 12px;margin-bottom:10px;background:#EEF7F1;border:1px solid #C3E2D1}
.subcard.blue{background:#F0F9FF;border-color:#BAE6FD}
.subcard-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.subcard-head span{font-family:'Poppins';font-weight:700;font-size:13.5px;color:var(--green);display:flex;align-items:center;gap:6px}
.subcard.blue .subcard-head span,.subcard.blue .subcard-head b{color:#0284C7}
.subcard-head b{font-family:'Poppins';font-weight:800;font-size:15px;color:var(--green)}
.scr{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:#334155;margin-top:6px}
.scr b{font-weight:400;color:var(--text-2);font-size:12px}
.bleedrow{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;background:#FEF3C7;border:1px solid rgba(217,119,6,.25);padding:10px 12px;border-radius:10px;margin-top:4px;color:#92400E}
.bleedrow b{font-weight:700;font-size:13px;font-family:'Poppins'}
.quotes{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:40px}
.quote{background:var(--mist-bg);border:1px solid #E3ECF4;border-radius:20px;padding:clamp(28px,3vw,38px)}
.quote p{font-family:'Poppins';font-weight:500;font-size:clamp(16.5px,2vw,19px);line-height:1.5;color:#1E293B;margin:0;letter-spacing:-.01em}
.quote-who{margin-top:24px;font-size:14px;color:var(--text-3);font-family:'Poppins';font-weight:600}
.pricecard{background:var(--navy);border-radius:24px;padding:clamp(32px,4vw,48px);box-shadow:0 24px 50px rgba(18,49,77,.3);margin:36px auto 0;max-width:940px}
.pricecard-top{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.price{display:flex;align-items:baseline;gap:6px}
.pnum{font-family:'Poppins';font-weight:800;font-size:clamp(52px,8vw,72px);line-height:1;letter-spacing:-.04em;color:#fff}
.pper{font-family:'Poppins';font-weight:500;font-size:17px;color:var(--mist-text)}
.pchip{display:inline-block;font-family:'Poppins';font-weight:600;font-size:13px;color:var(--gold-soft);background:rgba(255,186,0,.14);padding:6px 14px;border-radius:9999px;margin-top:10px}
.pricecard-div{height:1px;background:rgba(255,255,255,.13);margin:30px 0 24px}
.pricecard-inc{font-family:'Poppins';font-weight:600;font-size:13px;letter-spacing:.05em;text-transform:uppercase;color:var(--mist-text);margin-bottom:18px}
.pfeatures{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px 28px}
.pf h3{font-family:'Poppins';font-weight:600;font-size:15px;color:#fff;margin:0}
.pf p{font-size:13.5px;line-height:1.55;color:var(--mist-text);margin:6px 0 0}
.faqs{display:flex;flex-direction:column;gap:12px;margin-top:36px}
.faqitem{background:var(--mist-bg);border:1px solid #E3ECF4;border-radius:14px;overflow:hidden}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:20px 22px;font-weight:600;font-size:16px;color:var(--ink);background:none;border:none;cursor:pointer;text-align:left;font-family:'Open Sans'}
.faq-x{flex-shrink:0;width:28px;height:28px;border-radius:8px;background:#fff;border:1px solid #E3ECF4;color:var(--green);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:500;line-height:1}
.faq-a{padding:0 22px 22px;font-size:14.5px;line-height:1.65;color:var(--text-2)}
.track-cta{background:linear-gradient(160deg,var(--navy),#123A5C);text-align:center;padding:clamp(64px,9vw,104px) 0}
.track-cta h2{font-size:clamp(28px,4.2vw,42px);color:#fff;line-height:1.15}
.track-cta .hero-cta{margin-top:30px}
.betamodal{position:fixed;inset:0;z-index:200;background:rgba(10,35,56,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:22px}
.betamodal-card{background:#fff;border-radius:20px;padding:clamp(28px,4vw,40px);max-width:480px;width:100%;box-shadow:0 24px 60px rgba(18,49,77,.25);position:relative}
.betamodal-card h2{font-size:clamp(22px,3.5vw,28px);line-height:1.2;color:var(--ink);margin:0 32px 0 0}
.betamodal-card p{font-size:16px;line-height:1.6;color:var(--text-2);margin:14px 0 0}
.betamodal-x{position:absolute;top:16px;right:16px;width:32px;height:32px;border-radius:8px;border:1px solid #DCE8E1;background:#fff;color:var(--text-2);cursor:pointer;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center}
.betamodal-card .mb.wide{margin-top:24px}
@media (max-width:900px){.gapgrid,.tsteps,.quotes,.calcgrid{grid-template-columns:1fr}.calcresult{position:static}.ba-grid{grid-template-columns:1fr;gap:16px}.ba-arrow{transform:rotate(90deg);justify-self:center}}
.betamodal[hidden]{display:none}

/* Gold emphasis on select headline words */
h2 em.gold,.feat-h em.gold,.feat.navy .feat-h em.gold{color:var(--gold)}

/* ---- About page ---- */
.about-hero{background:linear-gradient(160deg,var(--navy),#123A5C);text-align:center;padding:clamp(76px,10vw,124px) 0 clamp(64px,8vw,100px)}
.about-hero .eyebrow{background:var(--gold);color:var(--navy)}
.about-hero h1{color:#fff;font-size:clamp(42px,6.4vw,78px);max-width:15ch;margin:22px auto 0;text-wrap:balance}
.about-hero h1 em{color:var(--gold)}
.story{padding:clamp(72px,9vw,112px) 0;background:#fff}
.story-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(36px,5vw,64px);align-items:center}
.story-lead{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(24px,3vw,34px);line-height:1.3;letter-spacing:-.02em;color:var(--ink);margin:16px 0 0;text-wrap:pretty}
.mission-card{position:relative;background:var(--navy);border-radius:20px;padding:clamp(28px,3.4vw,42px);overflow:hidden;box-shadow:0 26px 56px -30px rgba(3,14,24,.6)}
.mission-card::before{content:"";position:absolute;top:0;left:0;width:100%;height:6px;background:var(--gold)}
.mission-label{font-family:'Poppins';font-weight:700;font-size:13px;letter-spacing:.09em;text-transform:uppercase;color:var(--gold-soft)}
.mission-card p{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(17px,1.7vw,20px);line-height:1.5;letter-spacing:-.01em;color:#E7F0F8;margin:14px 0 0;text-wrap:pretty}
.values{padding:clamp(64px,8vw,100px) 0;background:var(--mist-bg)}
.values-head{text-align:center;max-width:640px;margin:0 auto}
.values-head .eyebrow{background:var(--gold);color:var(--navy)}
.values-head h2{font-size:clamp(30px,4vw,46px);margin:16px 0 0}
.values-head h2 em{color:var(--blue)}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:clamp(36px,4vw,52px)}
.valcard{position:relative;background:#fff;border:1px solid #E3ECF4;border-radius:18px;padding:34px 30px 30px;overflow:hidden;transition:transform .16s,box-shadow .16s,border-color .16s}
.valcard:hover{transform:translateY(-3px);box-shadow:0 20px 44px -26px rgba(18,49,77,.32);border-color:#C6D9E8}
.val-initial{font-family:'Poppins',sans-serif;font-weight:800;font-size:66px;line-height:.9;letter-spacing:-.03em;color:var(--gold)}
.val-name{font-family:'Poppins',sans-serif;font-weight:700;font-size:22px;color:var(--ink);margin:12px 0 0}
.val-name b{color:var(--blue)}
@media(max-width:900px){.story-grid,.values-grid{grid-template-columns:1fr}}
@media(max-width:600px){.values-grid{grid-template-columns:1fr}}

/* Darker gold for 'broken' — brand gold is too low-contrast on the white problem section */
#problem h2 em.gold{color:var(--gold-ink)}
/* Convert eyebrow — whole line in the Convert accent (light blue) */
#convert .feat-eye,#convert .feat-eye em{color:var(--blue-soft)}
/* 'Find your ROI' button living inside the Track ROI stat card */
.stat-track .stat-roi{margin-top:16px}
/* Homepage Convert phone mockup — cap to a phone-appropriate size, centered */
#convert .feat-grid{align-items:start}
#convert .phone-shot{max-width:280px;width:100%;height:auto;margin:113px auto 0;display:block}
/* That 113px drop aligns the phone against the copy in the two-column layout. Once the grid
   stacks it just leaves a dead gap under the CTAs, so the 32px grid gap carries it instead. */
@media(max-width:900px){#convert .phone-shot{margin-top:0}}

/* ---- Contact — intent selector styled like the input fields, softened ---- */
.intent{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:2px;margin-left:22px;width:calc(100% - 44px)}
.intent-opt{min-height:50px;padding:0 14px;display:flex;flex-direction:column;justify-content:center;font-family:inherit;font-weight:500;font-size:15px;color:#667C90;background:#fff;border:1px solid #D0DEEC;border-radius:10px;cursor:pointer;text-align:left;transition:border-color .15s,background .15s,box-shadow .15s,color .15s}
.fldhint{font-weight:500;font-size:12.5px;color:var(--text-3)}
.intent-apply{gap:2px}
.io-lead{font-size:11px;font-weight:600;letter-spacing:.01em;line-height:1.1;opacity:.7}
.io-main{font-family:'Poppins';font-weight:700;font-size:15px;line-height:1.15}
.io-ic{height:1.15em;width:auto;vertical-align:-0.18em;margin-right:6px}
.intent-wide{grid-column:1/-1}
.fico{width:18px;height:18px;vertical-align:-4px;margin-right:8px}
.intent-opt:hover{border-color:#B9CADA;color:var(--ink)}
.intent-opt[aria-pressed="true"]{border-color:var(--blue);color:var(--ink);background:#DDEAF4;box-shadow:0 0 0 2px rgba(0,80,128,.22)}
.intent-opt[aria-pressed="true"] .io-lead{opacity:.85}
.intent-opt:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
@media(max-width:420px){.intent{grid-template-columns:1fr}}
/* Indented email field + optional comments toggle */
.contact .inp.indent{margin-left:22px;width:calc(100% - 44px)}
.details-toggle{margin-left:0;background:none;border:none;padding:0;font-family:'Poppins';font-weight:600;font-size:14px;color:var(--blue);cursor:pointer;text-decoration:none}
.details-toggle:hover{color:var(--navy)}
.details-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:3px}
.details-wrap{margin-top:12px}
.details-wrap[hidden]{display:none}

/* ---- Homepage section backgrounds (keep textures) ---- */
#recover{background:var(--green-light)}

/* ---- About: center value cards + advisor grid ---- */
.valcard{text-align:center}
.advisors{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px}
.acard{background:#fff;border:1px solid #E3ECF4;border-radius:18px;padding:28px 28px 30px;box-shadow:0 18px 44px -30px rgba(18,49,77,.28)}
.aname{font-family:'Poppins';font-weight:700;font-size:21px;color:var(--ink)}
.arole{font-family:'Poppins';font-weight:600;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--blue);margin:5px 0 0}
.alist{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.alist li{position:relative;padding-left:18px;font-size:14.5px;line-height:1.5;color:var(--text-2)}
.alist li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:var(--green)}
@media(max-width:900px){.advisors{grid-template-columns:1fr}}

/* ==== F2F Track — Parts2Profit design system, exact tokens (scoped .page-track) ==== */
/* Hero */
.track-hero{background:radial-gradient(125% 140% at 50% -10%,#0C6E41 0%,#06371F 52%,#03170D 100%)}
.track-hero h1 em{color:var(--gold)}
.track-hero .sub{color:#C2E2CF}
.page-track .hero .eyebrow{background:rgba(255,255,255,.08);color:#8FCBAA;border-color:rgba(255,255,255,.14);border-radius:9999px}
.page-track .prodmark-row{text-align:center}
.page-track .prodmark-chip{justify-content:center}
/* All Track buttons → full pill (P2P universal) */
.page-track .mb{border-radius:9999px}
/* Headings → P2P green; sub-titles green; centered balanced subtext */
.page-track .sechead h2{color:var(--green-dark)}
.page-track .sechead h2 em{color:var(--gold)}
.page-track .leak h3,.page-track .tstep h3,.page-track .gapcard-t{color:var(--green-dark)}
.page-track .sechead.center p{margin-left:auto;margin-right:auto;text-wrap:balance;color:var(--text-2)}
/* Pale-green section backgrounds + FAQ cards (checkmark textures kept) */
.page-track #leaks,.page-track #how,.page-track #pricing{background:var(--green-light)}
.page-track .faqitem{background:var(--green-light)}
/* Gap cards */
.gapcard{background:#F6F9F7}
.gapcard.solid{border:2px solid var(--green-surface)}
.gapcard.solid .gapcard-c{color:var(--green-surface)}
.gapcard.dashed{border:1px dashed #C4D3C6}
.gapcard .q{color:var(--gold)}
/* Numbered circles → P2P brand green, gold number */
.leak-n{background:var(--green-surface)}
/* Calculator — P2P exact */
.calcfield.highlighted{background:#EAF4EE;border-color:#BCE0CC}
.roi-hero{background:var(--green-result)}
.roi-eyebrow{color:#7FB79A}
.roi-tile{background:#F5F8F6;border:1px solid #E6EDE8}
.roi-tile .rt-l{color:#5A6B61}
.roi-tile .rt-v{color:#14502C}
.roi-tile.green{background:#E1EFE7;border-color:#CDE4D6}
.roi-tile.green .rt-l{color:#3E7D5B}
/* "What you know with F2F Track" label → near-black */
.ba-label.hi{color:var(--ink)}
/* Pricing card — P2P dark green + gold rounded-square check icons */
.pricecard{background:var(--green-card)}
.pricecard .pf{position:relative;padding-left:30px}
.pricecard .pf::before{content:"";position:absolute;left:0;top:1px;width:21px;height:21px;border-radius:6px;background:rgba(255,186,0,.16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='%23FFBA00' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/13px no-repeat}
.pricecard .pf p{color:#A9C7B5}
.pricecard-inc{color:#7FB395}
.pricecard .pper{color:#7FB395}
.pricecard .pchip{color:#FFD866;background:rgba(255,186,0,.14)}
/* Final CTA band — P2P green radial */
.track-cta{background:radial-gradient(120% 150% at 50% 0%,#0C6E41 0%,#06371F 55%,#03170D 100%)}

/* ---- Homepage: the section's product logo locks into a sticky strip on scroll (/home-sticky/) ----
   A semi-transparent white strip pins just under the 74px header. Each product's white-card logo
   is cloned into the strip and placed exactly where that section's real logo scrolls to, so at the
   dock line the real logo hides and the strip logo takes its place at the same spot — the scrolling
   logo appears to fix inside the bar. Triggering is by the real logo reaching the dock line (not the
   section top), so the strip never appears early and the logo never doubles. The chip's left is set
   once per product (never per frame), so there's nothing to repaint mid-scroll — no flicker. */
.prodind-wrap{position:fixed;top:60px;left:0;right:0;height:54px;z-index:40;pointer-events:none;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);
  border-bottom:1px solid rgba(18,49,77,.08);box-shadow:0 8px 22px -16px rgba(18,49,77,.4);
  opacity:0;transition:opacity .35s ease}
.prodind-wrap.show{opacity:1}
/* The chip is painted on top of the strip and slides up into its locked slot (top:6 within the
   strip). JS hands off at the strip's bottom edge, so the logo never travels under the strip. */
.prodind-chip{position:absolute;top:6px;left:0;display:inline-flex;align-items:center;
  background:#fff;border-radius:10px;padding:7px 12px;box-shadow:0 6px 16px -10px rgba(18,49,77,.28);
  opacity:0;transform:translateY(48px);
  transition:transform .26s cubic-bezier(.22,.7,.24,1),opacity .2s ease}
.prodind-chip.on{opacity:1}
.prodind-chip.snap{transition:none}
.prodind-chip.dark{background:#1A4A70;box-shadow:0 6px 16px -10px rgba(3,14,24,.5)}
.prodind-chip img{height:29px;width:auto;display:block}
@media(prefers-reduced-motion:reduce){.prodind-wrap,.prodind-chip{transition:none}}

/* ---- Careers page ---- */
.careers{max-width:720px;margin:0 auto;text-align:center}
.careers .story-lead{margin:0}
.careers-tag{font-family:'Poppins';font-weight:600;font-size:clamp(18px,2vw,22px);color:var(--blue);margin:22px 0 0}
.careers-card{margin:clamp(36px,5vw,56px) auto 0;background:var(--mist-bg);border-radius:20px;padding:clamp(32px,4vw,48px)}
.careers-card h2{font-size:clamp(26px,3vw,36px);color:var(--ink)}
.careers-card p{font-size:17px;line-height:1.6;color:var(--text-2);margin:14px auto 24px;max-width:520px}

/* Homepage logo intro — html carries .intro-full on the session's first load: the nav-bar
   sting. Gate script lives in base.njk <head>; choreography in home-sticky/index.html.
   Return visits, reduced motion, mobile and no-JS set no class and nothing is hidden. */
.f2f-sting{position:fixed;z-index:70;pointer-events:none;transform-origin:top left}
html.intro-full .hd-logo img{opacity:0}
html.intro-full .nav,html.intro-full .hd-cta{opacity:0}
html.intro-full .hero .hero-in{opacity:.1}
html.intro-page-in .hero .hero-in{opacity:1;transition:opacity .65s ease}
html.intro-page-in .nav,html.intro-page-in .hd-cta{opacity:1;transition:opacity .45s ease}
html.intro-logo-in .hd-logo img{opacity:1;transition:opacity .35s ease}
