/* Topher AI — /plumbing landing page.
   Layered ON TOP of assets/topher-site.css (production design system).
   Adds only what the plumbing page needs: operational panels, interactive demo,
   calculator, lead form. No token redefinition, no global resets. */
:root{--pl-void:#1A1821;--pl-panel:#211E29;--pl-panel-2:#1E1B25;--pl-ink:#F2EEE9;--pl-cream:#F3E9DD;--pl-mute:#B4ABAF;--pl-faint:#8C8289;--pl-hair:rgba(243,233,221,.08);--pl-hair-2:rgba(243,233,221,.05);--pl-coral:#E8826B;--pl-coral-deep:#D26A52;--pl-urgent:#E0A85C;--pl-mono:"JetBrains Mono",ui-monospace,"SF Mono",monospace}

/* ── shared furniture ─────────────────────── */
.pl-wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.pl-sec{padding:88px 0;position:relative}
.pl-sec--tight{padding:64px 0}
.pl-sec+.pl-sec{border-top:1px solid var(--pl-hair-2)}
.pl-head{max-width:760px}
.pl-head h2{font-size:clamp(28px,4.2vw,44px);font-weight:700;line-height:1.1;letter-spacing:-.025em;margin:16px 0 0;text-wrap:balance;color:var(--pl-cream)}
.pl-head p{font-size:clamp(16px,2vw,18.5px);color:var(--pl-mute);line-height:1.6;margin:18px 0 0;max-width:62ch;text-wrap:pretty}
.pl-kicker{font-family:var(--pl-mono);font-size:10.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--pl-coral-deep);margin:0}
.pl-note{font-size:13px;color:var(--pl-faint);line-height:1.6;margin:18px 0 0;max-width:70ch}
a.pl-btn,button.pl-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:15px 26px;border-radius:100px;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;border:1px solid transparent;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;text-align:center;line-height:1.2}
.pl-btn--primary{background:linear-gradient(135deg,var(--pl-coral-deep),var(--pl-coral));color:var(--pl-cream)!important;box-shadow:0 4px 20px rgba(232,130,107,.28)}
.pl-btn--primary:hover{box-shadow:0 10px 34px rgba(232,130,107,.42);transform:translateY(-1px);color:var(--pl-cream)!important}
.pl-btn--ghost{background:rgba(243,233,221,.05);border-color:rgba(243,233,221,.15);color:var(--pl-cream)!important}
.pl-btn--ghost:hover{border-color:rgba(232,130,107,.5);background:rgba(232,130,107,.09);color:var(--pl-cream)!important}
.pl-ctarow{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.pl-trust{display:flex;gap:11px;align-items:flex-start;margin-top:24px;padding:14px 16px;border-radius:14px;border:1px solid rgba(232,130,107,.22);background:rgba(232,130,107,.06);max-width:600px}
.pl-trust svg{width:17px;height:17px;flex:none;margin-top:2px;color:var(--pl-coral)}
.pl-trust p{margin:0;font-size:14px;color:var(--pl-cream);line-height:1.55}
.pl-samplebadge{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:100px;border:1px dashed rgba(224,168,92,.5);background:rgba(224,168,92,.09);font-family:var(--pl-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#EFCC92}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--pl-coral);outline-offset:3px;border-radius:6px}

/* ── hero ─────────────────────────────────── */
.pl-hero{position:relative;padding:132px 0 84px;background:radial-gradient(ellipse 80% 55% at 50% -10%,rgba(232,130,107,.11),transparent 70%)}
.pl-hero>.pl-wrap{position:relative;z-index:1}
.pl-hero__bg{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.pl-hero__bg::before{content:"";position:absolute;inset:0;opacity:.42;filter:saturate(.85);background-repeat:no-repeat;background-size:cover;background-position:78% 40%}
@media(min-width:961px){.pl-hero__bg::before{background-image:url("hero-plumber.jpg");background-image:image-set(url("hero-plumber.webp") type("image/webp"),url("hero-plumber.jpg") type("image/jpeg"))}}
.pl-hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--pl-void) 0%,rgba(26,24,33,.93) 34%,rgba(26,24,33,.62) 58%,rgba(26,24,33,.5) 100%),linear-gradient(180deg,var(--pl-void) 0%,transparent 22%,transparent 62%,var(--pl-void) 100%)}
.pl-hero__grid{display:grid;grid-template-columns:1.02fr .98fr;gap:60px;align-items:center}
.pl-hero h1{font-size:clamp(34px,5.4vw,62px);font-weight:700;line-height:1.03;letter-spacing:-.033em;margin:18px 0 0;text-wrap:balance;color:var(--pl-cream)}
.pl-hero__sub{font-size:clamp(16.5px,2.1vw,19.5px);color:var(--pl-mute);line-height:1.58;margin:22px 0 0;max-width:56ch;text-wrap:pretty}
.pl-hero__terms{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px;list-style:none;padding:0}
.pl-hero__terms li{font-family:var(--pl-mono);font-size:11px;letter-spacing:.06em;padding:7px 13px;border-radius:100px;border:1px solid var(--pl-hair);color:var(--pl-mute);background:rgba(243,233,221,.03)}

/* ── hero product visual (call → summary → handoff) ── */
.pl-viz{border:1px solid var(--pl-hair);border-radius:22px;background:linear-gradient(180deg,rgba(232,130,107,.07),transparent 40%),var(--pl-panel);box-shadow:0 40px 90px -50px rgba(0,0,0,.9);overflow:hidden}
.pl-viz__bar{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--pl-hair-2)}
.pl-viz__pip{width:8px;height:8px;border-radius:50%;background:var(--pl-coral);box-shadow:0 0 10px var(--pl-coral);flex:none;animation:plPulse 2s infinite}
@keyframes plPulse{50%{opacity:.35}}
.pl-viz__bar b{font-family:var(--pl-mono);font-size:10.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--pl-coral)}
.pl-viz__bar span{margin-left:auto;font-family:var(--pl-mono);font-size:10px;letter-spacing:.08em;color:var(--pl-faint);text-transform:uppercase}
.pl-viz__body{padding:18px;display:flex;flex-direction:column;gap:10px}
.pl-vrow{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:15px;border:1px solid var(--pl-hair);background:rgba(243,233,221,.03)}
.pl-vrow__ic{width:34px;height:34px;border-radius:10px;flex:none;display:grid;place-items:center;background:rgba(232,130,107,.14);border:1px solid rgba(232,130,107,.26);color:var(--pl-coral)}
.pl-vrow__ic i,.pl-caps i,.pl-incl i,.pl-assure i,.pl-trust i{font-style:normal;line-height:1}
.pl-caps i.fas,.pl-incl i.fas,.pl-assure i.fas{flex:none;font-size:12px;margin-top:4px;color:var(--pl-coral)}
.pl-trust i.fas{flex:none;font-size:15px;margin-top:2px;color:var(--pl-coral)}
.pl-vrow__ic i.fas{font-size:15px}
.pl-btn i.fas{font-size:12px}
.pl-vrow em{font-style:normal;display:block;font-family:var(--pl-mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--pl-coral-deep)}
.pl-vrow b{display:block;font-size:15px;font-weight:600;color:var(--pl-cream);margin-top:4px;line-height:1.35}
.pl-vrow p{margin:3px 0 0;font-size:13.5px;color:var(--pl-mute);line-height:1.5}
.pl-vrow--urgent{border-color:rgba(224,168,92,.34);background:rgba(224,168,92,.07)}
.pl-vrow--urgent .pl-vrow__ic{background:rgba(224,168,92,.14);border-color:rgba(224,168,92,.3);color:var(--pl-urgent)}
.pl-vrow--urgent em{color:var(--pl-urgent)}
.pl-vrow--human{border-color:rgba(232,130,107,.4);background:linear-gradient(135deg,rgba(232,130,107,.14),rgba(232,130,107,.04))}
.pl-vdiv{display:flex;align-items:center;gap:10px;padding-left:16px;color:var(--pl-faint)}
.pl-vdiv span{font-family:var(--pl-mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase}
.pl-vdiv i{display:block;width:1px;height:14px;background:var(--pl-hair);flex:none}

/* ── problem list ─────────────────────────── */
.pl-problems{display:grid;gap:1px;margin-top:40px;background:var(--pl-hair-2);border:1px solid var(--pl-hair);border-radius:18px;overflow:hidden}
.pl-problems li{list-style:none;background:var(--pl-panel-2);padding:22px 24px;display:flex;gap:16px;align-items:flex-start}
.pl-problems b{font-family:var(--pl-mono);font-size:11px;letter-spacing:.1em;color:var(--pl-coral-deep);flex:none;padding-top:3px}
.pl-problems p{margin:0;font-size:15.5px;color:var(--pl-mute);line-height:1.6}
.pl-problems p strong{color:var(--pl-cream);font-weight:600}

/* ── interactive demo ─────────────────────── */
.pl-demo{border:1px solid var(--pl-hair);border-radius:22px;background:var(--pl-panel);overflow:hidden;margin-top:34px}
.pl-demo__stages{display:flex;gap:8px;padding:16px;border-bottom:1px solid var(--pl-hair-2);overflow-x:auto;scrollbar-width:none}
.pl-demo__stages::-webkit-scrollbar{display:none}
.pl-stagebtn{flex:none;display:flex;align-items:center;gap:9px;padding:11px 16px;border-radius:12px;border:1px solid var(--pl-hair);background:rgba(243,233,221,.03);color:var(--pl-mute);font-family:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:.15s;min-height:44px}
.pl-stagebtn i{font-style:normal;font-family:var(--pl-mono);font-size:10.5px;opacity:.8}
.pl-stagebtn:hover{color:var(--pl-ink);border-color:rgba(232,130,107,.35)}
.pl-stagebtn[aria-selected=true]{background:rgba(232,130,107,.14);border-color:rgba(232,130,107,.5);color:var(--pl-coral)}
.pl-demo__panel{padding:24px}
.pl-demo__panel[hidden]{display:none}
.pl-demo__foot{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:16px 24px 22px}
.pl-demo__foot .pl-btn{padding:12px 20px;font-size:14px}
.pl-demo__ack{flex-basis:100%;margin:0;font-size:13.5px;color:var(--pl-coral);line-height:1.5}
.pl-demo__ack:empty{display:none}
.pl-demo__prog{margin-left:auto;font-family:var(--pl-mono);font-size:11px;letter-spacing:.08em;color:var(--pl-mute)}
.pl-fields{display:grid;gap:1px;background:var(--pl-hair-2);border:1px solid var(--pl-hair);border-radius:16px;overflow:hidden}
.pl-fields div{background:var(--pl-panel-2);padding:15px 18px;display:flex;flex-wrap:wrap;gap:6px 18px;align-items:baseline}
.pl-fields dt{font-family:var(--pl-mono);font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--pl-faint);min-width:170px;margin:0}
.pl-fields dd{margin:0;font-size:15.5px;color:var(--pl-cream);font-weight:500}
.pl-fields dd.pl-flag{color:var(--pl-urgent);font-weight:700}
.pl-turns{display:flex;flex-direction:column;gap:14px}
.pl-turn{max-width:min(560px,88%);padding:14px 17px;border-radius:16px;font-size:15px;line-height:1.55}
.pl-turn em{font-style:normal;display:block;font-family:var(--pl-mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:6px;opacity:.85}
.pl-turn--ai{background:rgba(232,130,107,.11);border:1px solid rgba(232,130,107,.28);color:var(--pl-cream);border-bottom-left-radius:5px}
.pl-turn--ai em{color:var(--pl-coral)}
.pl-turn--caller{margin-left:auto;background:rgba(243,233,221,.05);border:1px solid var(--pl-hair);color:var(--pl-ink);border-bottom-right-radius:5px}
.pl-turn--caller em{color:var(--pl-faint)}
.pl-guard{margin-top:18px;padding:14px 16px;border-radius:14px;border:1px solid var(--pl-hair);background:rgba(243,233,221,.03);font-size:13.5px;color:var(--pl-mute);line-height:1.6}
.pl-guard b{color:var(--pl-cream)}
.pl-outcome{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.pl-outcome div{padding:18px;border-radius:16px;border:1px solid rgba(232,130,107,.3);background:linear-gradient(150deg,rgba(232,130,107,.12),transparent)}
.pl-outcome em{font-style:normal;display:block;font-family:var(--pl-mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--pl-coral);margin-bottom:6px}
.pl-outcome b{font-size:16.5px;font-weight:600;color:var(--pl-cream);display:block;line-height:1.3}
.pl-outcome p{margin:5px 0 0;font-size:13.5px;color:var(--pl-mute);line-height:1.5}

/* ── steps / capability / audience grids ─── */
.pl-grid{display:grid;gap:14px;margin-top:40px}
.pl-grid--4{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.pl-grid--3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.pl-grid--2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.pl-card{border:1px solid var(--pl-hair);border-radius:18px;background:var(--pl-panel-2);padding:24px}
.pl-card h3{font-size:17.5px;font-weight:700;color:var(--pl-cream);margin:0 0 8px;line-height:1.25}
.pl-card p{margin:0;font-size:14.5px;color:var(--pl-mute);line-height:1.62}
.pl-card__n{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,var(--pl-coral),var(--pl-coral-deep));color:var(--pl-cream);font-family:var(--pl-mono);font-size:12.5px;font-weight:500;margin-bottom:14px}
.pl-caps{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:40px;list-style:none;padding:0}
.pl-caps li{display:flex;gap:12px;align-items:flex-start;padding:16px 18px;border:1px solid var(--pl-hair);border-radius:15px;background:var(--pl-panel-2);font-size:15px;color:var(--pl-cream);line-height:1.45}
.pl-caps svg{width:15px;height:15px;flex:none;margin-top:3px;color:var(--pl-coral)}
.pl-caps small{display:block;font-size:12.5px;color:var(--pl-faint);margin-top:3px;line-height:1.45}

/* ── human control ────────────────────────── */
.pl-control{border:1px solid rgba(232,130,107,.3);border-radius:24px;background:linear-gradient(150deg,rgba(232,130,107,.11),rgba(243,233,221,.02));padding:clamp(26px,4vw,48px)}
.pl-control h2{margin-top:12px}
.pl-control__cols{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));margin-top:34px}
.pl-control__cols div{padding:18px;border-radius:16px;background:rgba(26,24,33,.55);border:1px solid var(--pl-hair)}
.pl-control__cols em{font-style:normal;display:block;font-family:var(--pl-mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--pl-coral);margin-bottom:7px}
.pl-control__cols p{margin:0;font-size:15px;color:var(--pl-cream);line-height:1.55}

/* ── calculator ───────────────────────────── */
.pl-calc{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px;align-items:start}
.pl-calc__inputs,.pl-calc__out{border:1px solid var(--pl-hair);border-radius:20px;background:var(--pl-panel);padding:24px}
.pl-calc__out{border-color:rgba(232,130,107,.3);background:linear-gradient(160deg,rgba(232,130,107,.1),var(--pl-panel) 55%)}
.pl-calc h3{font-size:13px;font-family:var(--pl-mono);font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--pl-coral);margin:0 0 20px}
.pl-inp{margin-bottom:22px}
.pl-inp:last-child{margin-bottom:0}
.pl-inp label{display:block;font-size:14.5px;font-weight:600;color:var(--pl-cream);margin-bottom:9px}
.pl-inp__row{display:flex;gap:12px;align-items:center}
.pl-inp input[type=range]{flex:1;min-width:0;-webkit-appearance:none;appearance:none;height:6px;border-radius:99px;background:rgba(243,233,221,.1);cursor:pointer}
.pl-inp input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--pl-coral);border:2px solid var(--pl-void);cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.4)}
.pl-inp input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--pl-coral);border:2px solid var(--pl-void);cursor:pointer}
.pl-inp input[type=number]{width:104px;flex:none;padding:10px 12px;border-radius:11px;border:1px solid var(--pl-hair);background:rgba(243,233,221,.05);color:var(--pl-cream);font-family:var(--pl-mono);font-size:15px;text-align:right}
.pl-inp input[type=number]:focus{outline:2px solid var(--pl-coral);outline-offset:2px;border-color:transparent}
.pl-inp small{display:block;font-size:12.5px;color:var(--pl-mute);margin-top:8px}
.pl-out{padding:16px 0;border-bottom:1px solid var(--pl-hair-2)}
.pl-out:last-of-type{border-bottom:0}
.pl-out em{font-style:normal;display:block;font-size:13.5px;color:var(--pl-mute);margin-bottom:5px}
.pl-out b{font-family:"Quicksand","Hanken Grotesk",sans-serif;font-size:clamp(26px,4vw,36px);font-weight:700;color:var(--pl-cream);line-height:1;letter-spacing:-.02em;display:block}
.pl-out--hero b{color:var(--pl-coral)}
.pl-out code{display:block;font-family:var(--pl-mono);font-size:11.5px;color:var(--pl-mute);margin-top:8px;line-height:1.5;white-space:normal}
.pl-disclaimer{margin-top:20px;padding:16px 18px;border-radius:14px;border:1px solid rgba(224,168,92,.3);background:rgba(224,168,92,.07);font-size:13.5px;color:#EFCC92;line-height:1.6}

/* ── pricing ──────────────────────────────── */
.pl-price{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px;align-items:start}
.pl-price__card{border:1px solid rgba(232,130,107,.34);border-radius:24px;background:linear-gradient(165deg,rgba(232,130,107,.13),var(--pl-panel) 60%);padding:clamp(24px,3vw,34px)}
.pl-price__name{font-family:var(--pl-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--pl-coral);margin:0}
.pl-price__amt{display:flex;flex-wrap:wrap;gap:10px 26px;margin:20px 0 0}
.pl-price__amt div b{display:block;font-family:"Quicksand","Hanken Grotesk",sans-serif;font-size:clamp(30px,4.4vw,42px);font-weight:700;color:var(--pl-cream);line-height:1;letter-spacing:-.025em}
.pl-price__amt div span{display:block;font-size:12.5px;color:var(--pl-faint);margin-top:6px;font-family:var(--pl-mono);letter-spacing:.06em;text-transform:uppercase}
.pl-price__usage{margin:22px 0 0;padding:13px 15px;border-radius:13px;border:1px solid var(--pl-hair);background:rgba(26,24,33,.5);font-size:13.5px;color:var(--pl-mute);line-height:1.55}
.pl-incl{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:10px}
.pl-incl li{display:flex;gap:11px;align-items:flex-start;font-size:15px;color:var(--pl-cream);line-height:1.45}
.pl-incl svg{width:14px;height:14px;flex:none;margin-top:4px;color:var(--pl-coral)}

/* ── future / growth ─────────────────────── */
.pl-future{border:1px dashed rgba(243,233,221,.16);border-radius:24px;background:rgba(26,24,33,.6);padding:clamp(26px,4vw,48px)}
.pl-future__tag{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:100px;border:1px dashed rgba(243,233,221,.22);font-family:var(--pl-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--pl-faint)}
.pl-future__list{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));list-style:none;padding:0;margin:30px 0 0}
.pl-future__list li{padding:16px 18px;border-radius:15px;border:1px solid var(--pl-hair-2);background:rgba(243,233,221,.02);font-size:15px;color:var(--pl-mute);line-height:1.45}

/* ── process ──────────────────────────────── */
.pl-process{list-style:none;padding:0;margin:40px 0 0;display:grid;gap:1px;background:var(--pl-hair-2);border:1px solid var(--pl-hair);border-radius:18px;overflow:hidden;counter-reset:pl}
.pl-process li{counter-increment:pl;background:var(--pl-panel-2);padding:20px 24px;display:flex;gap:16px;align-items:center;font-size:15.5px;color:var(--pl-cream)}
.pl-process li::before{content:counter(pl,decimal-leading-zero);font-family:var(--pl-mono);font-size:11.5px;color:var(--pl-coral-deep);flex:none}

/* ── faq ──────────────────────────────────── */
.pl-faq{margin-top:38px;border-top:1px solid var(--pl-hair-2)}
.pl-faq details{border-bottom:1px solid var(--pl-hair-2)}
.pl-faq summary{list-style:none;cursor:pointer;padding:20px 44px 20px 0;position:relative;font-size:16.5px;font-weight:600;color:var(--pl-cream);line-height:1.4;min-height:56px;display:flex;align-items:center}
.pl-faq summary::-webkit-details-marker{display:none}
.pl-faq summary::after{content:"+";position:absolute;right:8px;top:50%;transform:translateY(-50%);font-family:var(--pl-mono);font-size:20px;color:var(--pl-coral);line-height:1}
.pl-faq details[open] summary::after{content:"–"}
.pl-faq p{margin:0 0 22px;font-size:15px;color:var(--pl-mute);line-height:1.7;max-width:74ch}

/* ── lead form ────────────────────────────── */
.pl-form__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start;margin-top:10px}
.pl-form{border:1px solid rgba(232,130,107,.26);border-radius:24px;background:linear-gradient(180deg,rgba(232,130,107,.09),transparent 40%),var(--pl-panel);padding:clamp(22px,3vw,32px)}
.pl-form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pl-fg{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}
.pl-fg label{font-family:var(--pl-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--pl-mute)}
.pl-fg label .req{color:var(--pl-coral)}
.pl-fg input,.pl-fg select,.pl-fg textarea{width:100%;padding:13px 15px;border-radius:13px;border:1px solid var(--pl-hair);background:rgba(243,233,221,.05);color:var(--pl-ink);font-family:inherit;font-size:15.5px;min-height:48px}
.pl-fg textarea{min-height:96px;resize:vertical}
.pl-fg select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23B4ABAF' stroke-width='1.6'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;background-size:12px;padding-right:40px}
.pl-fg input:focus,.pl-fg select:focus,.pl-fg textarea:focus{outline:2px solid var(--pl-coral);outline-offset:2px;border-color:transparent}
.pl-fg [aria-invalid=true]{border-color:#D9655A;background:rgba(217,101,90,.08)}
.pl-err{font-size:12.5px;color:#F0A79E;min-height:0;line-height:1.4}
.pl-fg--consent{flex-direction:row;gap:12px;align-items:flex-start;padding:16px;border-radius:14px;border:1px solid var(--pl-hair);background:rgba(243,233,221,.03)}
.pl-fg--consent input{width:22px;height:22px;min-height:0;flex:none;margin-top:1px;accent-color:var(--pl-coral)}
.pl-fg--consent label{font-family:inherit;font-size:13.5px;letter-spacing:0;text-transform:none;color:var(--pl-mute);line-height:1.55}
.pl-formstatus{margin-top:16px;padding:15px 17px;border-radius:14px;font-size:14.5px;line-height:1.55;display:none}
.pl-formhelp{margin:-4px 0 18px;font-size:13.5px;color:var(--pl-mute);line-height:1.55}
.pl-formstatus[data-state=success]{display:block;border:1px solid rgba(232,130,107,.45);background:rgba(232,130,107,.12);color:var(--pl-cream)}
.pl-formstatus[data-state=error]{display:block;border:1px solid rgba(217,101,90,.45);background:rgba(217,101,90,.1);color:#F0A79E}
.pl-formstatus[data-state=info]{display:block;border:1px solid var(--pl-hair);background:rgba(243,233,221,.04);color:var(--pl-mute)}
.pl-assure{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:13px}
.pl-assure li{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:var(--pl-cream);line-height:1.5}
.pl-assure svg{width:15px;height:15px;flex:none;margin-top:3px;color:var(--pl-coral)}

/* ── final cta ────────────────────────────── */
.pl-final{text-align:center;padding:96px 0}
.pl-final h2{font-size:clamp(30px,5vw,52px);font-weight:700;line-height:1.06;letter-spacing:-.03em;margin:16px auto 0;max-width:22ch;text-wrap:balance;color:var(--pl-cream)}
.pl-final p{margin:20px auto 0;max-width:56ch;font-size:17px;color:var(--pl-mute);line-height:1.6}
.pl-final .pl-ctarow{justify-content:center}

/* ── responsive ───────────────────────────── */
@media(max-width:960px){
 .pl-hero__grid,.pl-calc,.pl-price,.pl-form__grid{grid-template-columns:1fr;gap:34px}
 .pl-hero{padding:110px 0 64px}
 .pl-hero__bg::before{background-image:none}
 .pl-hero__bg::after{background:linear-gradient(180deg,rgba(26,24,33,.72) 0%,rgba(26,24,33,.9) 45%,var(--pl-void) 82%)}
 .pl-sec{padding:64px 0}
 .pl-final{padding:72px 0}
}
@media(max-width:560px){
 .pl-wrap{padding:0 16px}
 .pl-form__row{grid-template-columns:1fr}
 .pl-ctarow .pl-btn{width:100%}
 .pl-fields dt{min-width:100%}
 .pl-inp__row{flex-wrap:wrap}
 .pl-inp input[type=number]{width:100%}
 .pl-problems li,.pl-process li{padding:18px 18px;flex-direction:column;gap:8px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
