.ifsp{--ink:#edf5ff;--muted:#9cb0c8;--line:#274663;--panel:#0d2035;--panel2:#102944;--mint:#31e5b1;--cyan:#54c8ff;--gold:#f4c45f;max-width:1240px;margin:0 auto;padding:28px 22px 64px;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.ifsp *{box-sizing:border-box}
.ifsp-admin-banner{display:flex;align-items:center;gap:11px;padding:13px 16px;margin-bottom:18px;border:1px solid #7e5d1e;border-radius:14px;background:#3a2a0f;color:#ffe5a2}
.ifsp-admin-banner i{width:10px;height:10px;border-radius:50%;background:#ffcc58;box-shadow:0 0 18px #ffcc58}
.ifsp-admin-banner span{margin-left:auto;color:#ffeac0}
.ifsp-hero,.ifsp-section{border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,rgba(17,42,70,.98),rgba(7,20,35,.98));box-shadow:0 22px 55px rgba(0,0,0,.22)}
.ifsp-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(290px,.6fr);gap:28px;align-items:center;padding:46px}
.ifsp-eyebrow{display:inline-block;margin-bottom:13px;color:var(--mint);font-size:12px;font-weight:900;letter-spacing:.14em}
.ifsp h1{margin:0 0 16px;font-size:clamp(44px,7vw,82px);line-height:.96;letter-spacing:-.055em;color:#fff}
.ifsp h2{margin:0 0 12px;font-size:clamp(27px,4vw,43px);line-height:1.08;letter-spacing:-.035em;color:#fff}
.ifsp h3{margin:7px 0 6px;font-size:19px;color:#fff}
.ifsp p,.ifsp li{color:var(--muted);font-size:16px;line-height:1.65}
.ifsp-hero>div>p{max-width:710px;font-size:20px}
.ifsp-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}
.ifsp-chips span{padding:8px 12px;border:1px solid #315779;border-radius:999px;background:#0a1b2e;color:#cfe1f2;font-size:13px;font-weight:700}
.ifsp-price{padding:26px;border:1px solid #3a7191;border-radius:20px;background:linear-gradient(150deg,#123652,#0b1e33)}
.ifsp-price small,.ifsp-price strong,.ifsp-price em,.ifsp-price b,.ifsp-price mark{display:block}
.ifsp-price small{color:#9edff7;font-weight:800}
.ifsp-price strong{margin-top:9px;font-size:50px;line-height:1;color:#fff}
.ifsp-price em{margin:5px 0 12px;color:var(--gold);font-size:20px;font-style:normal;font-weight:900}
.ifsp-price-breakdown{display:grid;gap:5px;margin:14px 0;padding:12px;border:1px solid #315779;border-radius:12px;background:#0a1b2e}
.ifsp-price-breakdown span{display:block;color:#d9e8f7;font-size:14px;font-weight:800}
.ifsp-disabled-cta{display:block;width:100%;margin:16px 0 0;padding:13px 16px;border:0;border-radius:12px;background:linear-gradient(90deg,#087a63,#117a91);color:#fff;font:inherit;font-weight:900;cursor:not-allowed;opacity:.72}
.ifsp-price b{margin:16px 0 12px;padding:9px 11px;border-radius:10px;background:#3a2a0f;color:#ffe09a}
.ifsp-price mark{padding:11px;border-radius:10px;background:#132840;color:#b7c9dc;font-size:12px;line-height:1.5}
.ifsp-section{margin-top:18px;padding:38px}
.ifsp-shot figure{margin:0}
.ifsp-shot img{display:block;width:100%;height:auto;border:1px solid #325371;border-radius:18px;background:#071525}
.ifsp-shot figcaption{margin-top:8px;color:#8298b2;font-size:12px}
.ifsp-feature-grid,.ifsp-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.ifsp-feature-grid article,.ifsp-flow article,.ifsp-split article{padding:22px;border:1px solid #244966;border-radius:16px;background:rgba(8,25,43,.76)}
.ifsp-feature-grid article>b{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#123a4d;color:var(--mint);font-size:21px}
.ifsp-flow{grid-template-columns:repeat(4,minmax(0,1fr))}
.ifsp-flow article>b{color:var(--cyan);font-size:28px}
.ifsp-split{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.ifsp-split ul,.ifsp-gate ul{margin:13px 0 0;padding-left:20px}
.ifsp-legal,.ifsp-gate{padding:26px;border-radius:18px}
.ifsp-legal{border:1px solid #4b477b;background:#171a3a}
.ifsp-gate{border:1px solid #886522;background:#35280f}
.ifsp-gate li{color:#ffe5ae}
.ifsp-actions{display:flex;flex-wrap:wrap;gap:10px}
.ifsp-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;border-radius:11px;background:#087a63;color:#fff!important;font-weight:900;text-decoration:none!important}
.ifsp-button--ghost{border:1px solid #315779;background:#10233a}
.ifsp-foot{padding:22px 4px 0;color:#7f94ad;font-size:12px;text-align:center}
@media(max-width:980px){.ifsp-hero{grid-template-columns:1fr}.ifsp-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ifsp-flow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.ifsp{padding:44px 12px 46px}.ifsp-admin-banner{align-items:flex-start;flex-wrap:wrap}.ifsp-admin-banner span{width:100%;margin-left:21px}.ifsp-hero,.ifsp-section{padding:24px;border-radius:18px}.ifsp-feature-grid,.ifsp-flow,.ifsp-split{grid-template-columns:1fr}.ifsp h1{font-size:45px}.ifsp-price strong{font-size:42px}}
.ifsp{scroll-margin-top:100px}.ifsp [id]{scroll-margin-top:100px}
.ifsp .ifsp-intro{color:#edf5ff;font-size:clamp(24px,3vw,33px);line-height:1.25;font-weight:700;letter-spacing:-.02em}
.ifsp .ifsp-price h2{font-size:clamp(28px,3vw,36px);line-height:1.1}
.ifsp .ifsp-contact-hint{border-top:1px solid var(--line);padding-top:14px;font-size:14px;color:#c8dced}
.ifsp h2.ifsp-eyebrow{font-size:12px;font-weight:900;letter-spacing:.14em;color:var(--mint);line-height:1.5}
.ifsp-flow{grid-template-columns:repeat(3,minmax(0,1fr))}
.ifsp-actions{margin-top:22px}.ifsp-button{min-height:48px;text-align:center}
.ifsp a:focus-visible,.ifsp summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.ifsp-faq{margin-top:24px}.ifsp-faq details{border-top:1px solid var(--line);padding:18px 0}
.ifsp-faq details:last-child{padding-bottom:0}.ifsp-faq summary{cursor:pointer;font-weight:700;font-size:18px;line-height:1.5;color:var(--ink)}
.ifsp-faq details p{margin-bottom:0;max-width:900px}.ifsp-admin-banner span{overflow-wrap:anywhere}
@media(max-width:620px){.ifsp{padding-top:20px}.ifsp-hero{gap:24px}.ifsp .ifsp-hero>div>p{font-size:17px}.ifsp .ifsp-hero>div>.ifsp-intro{font-size:26px}.ifsp-flow{grid-template-columns:1fr}.ifsp-price{padding:20px}.ifsp .ifsp-actions{flex-direction:column;align-items:stretch}.ifsp h1{font-size:clamp(35px,10.6vw,52px)}.ifsp h2{font-size:30px}.ifsp-hero,.ifsp-section{padding:22px}.ifsp-admin-banner span{width:calc(100% - 21px);margin-left:21px}}
@media(prefers-reduced-motion:reduce){.ifsp *{scroll-behavior:auto!important}}
