/* Modern public forms: support, careers and invoice request. */
.lpf-page {
    --lpf-navy: #17234e;
    --lpf-navy-dark: #0b1229;
    --lpf-gold: #ffc250;
    --lpf-cyan: #36c5d8;
    --lpf-ink: #172038;
    --lpf-muted: #5f6b7e;
    --lpf-soft: #f4f7fb;
    --lpf-border: #dfe5ef;
    background: #fff;
    color: var(--lpf-ink);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    overflow: hidden;
}
.lpf-page *, .lpf-page *::before, .lpf-page *::after { box-sizing: border-box; }
.lpf-page :where(a, button, input, select, textarea, summary):focus-visible { outline:3px solid #198bd1 !important; outline-offset:3px !important; }
.lpf-container { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.lpf-hero {
    position: relative;
    min-height: 690px;
    padding: 112px 0 86px;
    color: #fff;
    background:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
        radial-gradient(circle at 72% 15%, rgba(54,197,216,.22), transparent 30%),
        linear-gradient(135deg, #0a1127 0%, #17234e 54%, #243879 100%);
    background-size: 56px 56px, 56px 56px, auto, auto;
    isolation: isolate;
}
.lpf-hero-careers {
    background:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
        radial-gradient(circle at 76% 18%, rgba(255,194,80,.23), transparent 30%),
        linear-gradient(135deg, #0b1229 0%, #1b2858 58%, #39316f 100%);
    background-size: 56px 56px, 56px 56px, auto, auto;
}
.lpf-hero-invoice {
    background:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
        radial-gradient(circle at 78% 18%, rgba(4,160,189,.25), transparent 31%),
        linear-gradient(135deg, #09142d 0%, #16315b 56%, #126b7c 100%);
    background-size:56px 56px, 56px 56px, auto, auto;
}
.lpf-orb { position:absolute; border-radius:999px; filter:blur(2px); opacity:.55; z-index:-1; pointer-events:none; }
.lpf-orb-a { width:360px; height:360px; top:-190px; left:-120px; background:radial-gradient(circle, rgba(255,194,80,.6), transparent 68%); }
.lpf-orb-b { width:480px; height:480px; right:-230px; bottom:-290px; background:radial-gradient(circle, rgba(54,197,216,.5), transparent 70%); }
.lpf-hero-grid { display:grid; grid-template-columns:minmax(0, 1.25fr) minmax(330px, .75fr); gap:72px; align-items:center; position:relative; z-index:1; }
.lpf-eyebrow, .lpf-kicker, .lpf-panel-kicker {
    display:inline-flex; align-items:center; gap:9px; margin:0 0 20px;
    color:var(--lpf-gold); font-size:.78rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase;
}
.lpf-eyebrow span { font-size:.6rem; filter:drop-shadow(0 0 7px rgba(255,194,80,.8)); }
.lpf-hero h1 { max-width:800px; margin:0; color:#fff; font-size:clamp(2.6rem, 5.2vw, 4.65rem); line-height:1.04; letter-spacing:-.045em; font-weight:820; }
.lpf-hero h1 em { color:var(--lpf-gold); font-style:normal; }
.lpf-hero-copy > p { max-width:720px; margin:26px 0 0; color:rgba(255,255,255,.79); font-size:clamp(1.05rem, 1.5vw, 1.22rem); line-height:1.7; }
.lpf-hero-actions { display:flex; flex-wrap:wrap; gap:13px; margin-top:34px; }
.lpf-btn { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:13px 23px; border:1px solid transparent; border-radius:11px; font-weight:800; text-decoration:none !important; transition:transform .18s ease, box-shadow .18s ease, background .18s ease; }
.lpf-btn:hover { transform:translateY(-2px); }
.lpf-btn-primary { background:var(--lpf-gold); color:#19213b !important; box-shadow:0 12px 30px rgba(255,194,80,.2); }
.lpf-btn-primary:hover { background:#ffd071; box-shadow:0 16px 34px rgba(255,194,80,.3); }
.lpf-btn-ghost { color:#fff !important; background:rgba(255,255,255,.07); border-color:rgba(255,255,255,.24); }
.lpf-btn-ghost:hover { background:rgba(255,255,255,.13); }
.lpf-trust-list { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin:44px 0 0; padding:30px 0 0; border-top:1px solid rgba(255,255,255,.15); list-style:none; }
.lpf-trust-list li { display:flex; flex-direction:column; gap:5px; }
.lpf-trust-list strong { color:#fff; font-size:.95rem; }
.lpf-trust-list span { color:rgba(255,255,255,.6); font-size:.8rem; line-height:1.45; }
.lpf-hero-panel { position:relative; padding:35px; border:1px solid rgba(255,255,255,.17); border-radius:24px; background:linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.055)); box-shadow:0 30px 80px rgba(0,0,0,.2); backdrop-filter:blur(16px); }
.lpf-hero-panel::before { content:""; position:absolute; inset:0; border-radius:inherit; background:linear-gradient(135deg, rgba(255,194,80,.1), transparent 38%); pointer-events:none; }
.lpf-panel-kicker { margin-bottom:13px; }
.lpf-hero-panel h2 { position:relative; margin:0 0 27px; color:#fff; font-size:1.55rem; line-height:1.3; }
.lpf-check-steps { display:grid; gap:19px; margin:0; padding:0; list-style:none; }
.lpf-check-steps li { display:grid; grid-template-columns:38px 1fr; gap:14px; align-items:start; }
.lpf-check-steps > li > span { display:grid; place-items:center; width:38px; height:38px; border-radius:10px; background:rgba(255,194,80,.13); border:1px solid rgba(255,194,80,.3); color:var(--lpf-gold); font-weight:900; }
.lpf-check-steps strong, .lpf-check-steps small { display:block; }
.lpf-check-steps strong { color:#fff; font-size:.95rem; }
.lpf-check-steps small { margin-top:3px; color:rgba(255,255,255,.62); font-size:.79rem; line-height:1.45; }
.lpf-panel-note { position:relative; margin:25px 0 0; padding:18px 0 0; border-top:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.68); font-size:.84rem; line-height:1.55; }
.lpf-panel-note a { color:var(--lpf-gold); font-weight:750; }
.lpf-culture-panel blockquote { position:relative; margin:7px 0 24px; color:#fff; font-size:1.55rem; font-weight:750; line-height:1.4; letter-spacing:-.02em; }
.lpf-values-mini { display:flex; flex-wrap:wrap; gap:8px; }
.lpf-values-mini span { padding:8px 11px; border:1px solid rgba(255,255,255,.15); border-radius:999px; background:rgba(255,255,255,.07); color:rgba(255,255,255,.83); font-size:.78rem; font-weight:650; }

.lpf-section { padding:92px 0; }
.lpf-section-soft { background:var(--lpf-soft); }
.lpf-section-head { max-width:720px; margin:0 auto 46px; text-align:center; }
.lpf-kicker { color:#876100; margin-bottom:12px; }
.lpf-section h2 { margin:0; color:var(--lpf-navy-dark); font-size:clamp(2rem, 3.8vw, 3.25rem); line-height:1.12; letter-spacing:-.035em; }
.lpf-section-head p, .lpf-lead { margin:18px 0 0; color:var(--lpf-muted); font-size:1.07rem; line-height:1.75; }
.lpf-card-grid { display:grid; gap:22px; }
.lpf-card-grid-3 { grid-template-columns:repeat(3, 1fr); }
.lpf-info-card { position:relative; min-height:255px; padding:30px; border:1px solid var(--lpf-border); border-radius:19px; background:#fff; box-shadow:0 9px 30px rgba(20,32,70,.055); overflow:hidden; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.lpf-info-card::after { content:""; position:absolute; width:120px; height:120px; right:-65px; bottom:-65px; border-radius:999px; background:rgba(255,194,80,.14); }
.lpf-info-card:hover { transform:translateY(-5px); border-color:#c8d1e3; box-shadow:0 19px 45px rgba(20,32,70,.1); }
.lpf-icon { display:grid; place-items:center; width:47px; height:47px; margin-bottom:27px; border-radius:13px; background:#eef2ff; color:var(--lpf-navy); font-weight:900; }
.lpf-careers .lpf-info-card:nth-child(2) .lpf-icon { background:#fff3d6; color:#8b6500; }
.lpf-info-card:nth-child(3) .lpf-icon { background:#e7f9f7; color:#087466; }
.lpf-info-card h3 { margin:0 0 11px; color:var(--lpf-navy-dark); font-size:1.23rem; }
.lpf-info-card p { margin:0; color:var(--lpf-muted); line-height:1.67; }

.lpf-form-layout { display:grid; grid-template-columns:minmax(260px,.72fr) minmax(520px,1.28fr); gap:72px; align-items:start; }
.lpf-form-intro { position:sticky; top:112px; }
.lpf-form-intro > p { margin:18px 0 28px; color:var(--lpf-muted); font-size:1.05rem; line-height:1.7; }
.lpf-side-card { margin-top:16px; padding:20px 21px; border:1px solid var(--lpf-border); border-radius:14px; background:var(--lpf-soft); }
.lpf-side-card strong { color:var(--lpf-navy-dark); }
.lpf-side-card p { margin:7px 0 10px; color:var(--lpf-muted); font-size:.9rem; line-height:1.55; }
.lpf-side-card a { color:var(--lpf-navy); font-size:.88rem; font-weight:800; }
.lpf-side-card ul { margin:10px 0 0; padding-left:19px; color:var(--lpf-muted); font-size:.9rem; line-height:1.7; }
.lpf-form-card { padding:35px; border:1px solid var(--lpf-border); border-radius:22px; background:#fff; box-shadow:0 22px 65px rgba(20,32,70,.11); }
.lpf-form-card .lf-wrap { max-width:none; }
.lpf-form-card .lf-form { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:17px 18px; }
.lpf-form-card :where(.lf-section, .lf-field-textarea, .lf-field-checkbox, .lf-field-file, .lf-actions, .lf-error) { grid-column:1 / -1; }
.lpf-form-card .lf-section { margin-top:13px; padding-bottom:10px; }
.lpf-form-card .lf-section:first-child { margin-top:0; }
.lpf-form-card .lf-field label { font-size:.86rem; }
.lpf-form-card :where(.lf-field input[type="text"], .lf-field input[type="email"], .lf-field input[type="tel"], .lf-field input[type="url"], .lf-field input[type="number"], .lf-field input[type="date"], .lf-field select, .lf-field textarea) { border-radius:9px; border-color:#cfd7e5; min-height:49px; }
.lpf-form-card .lf-field textarea { min-height:120px; resize:vertical; }
.lpf-form-card .lf-field input:focus, .lpf-form-card .lf-field select:focus, .lpf-form-card .lf-field textarea:focus { border-color:#3856aa; box-shadow:0 0 0 3px rgba(56,86,170,.13); }
.lpf-form-card .lf-submit { width:100%; min-height:54px; border-radius:10px; background:var(--lpf-navy); font-weight:800; }
.lpf-form-card .lf-submit:hover { background:#2b407e; }
.lpf-privacy { margin:18px 0 0; color:#707b8e; font-size:.78rem; line-height:1.55; text-align:center; }
.lpf-privacy a { color:var(--lpf-navy); }
.lpf-form-unavailable { padding:35px; border-radius:15px; background:var(--lpf-soft); text-align:center; }
.lpf-form-unavailable strong { color:var(--lpf-navy-dark); font-size:1.2rem; }
.lpf-form-unavailable p { color:var(--lpf-muted); }

.lpf-section-dark { color:#fff; background:var(--lpf-navy-dark); }
.lpf-section-dark h2 { color:#fff; }
.lpf-faq-layout { display:grid; grid-template-columns:.7fr 1.3fr; gap:80px; align-items:start; }
.lpf-faq-layout > div:first-child > p { color:rgba(255,255,255,.64); line-height:1.7; }
.lpf-faq-list { border-top:1px solid rgba(255,255,255,.16); }
.lpf-faq-list details { border-bottom:1px solid rgba(255,255,255,.16); }
.lpf-faq-list summary { display:flex; justify-content:space-between; gap:20px; padding:22px 2px; color:#fff; font-weight:750; cursor:pointer; list-style:none; }
.lpf-faq-list summary::-webkit-details-marker { display:none; }
.lpf-faq-list summary span { color:var(--lpf-gold); font-size:1.3rem; transition:transform .18s ease; }
.lpf-faq-list details[open] summary span { transform:rotate(45deg); }
.lpf-faq-list details p { margin:0; padding:0 34px 23px 2px; color:rgba(255,255,255,.68); line-height:1.65; }
.lpf-faq-list details a { color:var(--lpf-gold); }

.lpf-split { display:grid; grid-template-columns:.9fr 1.1fr; gap:80px; align-items:start; }
.lpf-feature-list { border-top:1px solid var(--lpf-border); }
.lpf-feature-list article { display:grid; grid-template-columns:45px 1fr; gap:18px; padding:25px 0; border-bottom:1px solid var(--lpf-border); }
.lpf-feature-list > article > span { color:#9a6f00; font-size:.78rem; font-weight:900; letter-spacing:.08em; }
.lpf-feature-list h3 { margin:0 0 7px; color:var(--lpf-navy-dark); font-size:1.12rem; }
.lpf-feature-list p { margin:0; color:var(--lpf-muted); line-height:1.62; }
.lpf-process-section { background:linear-gradient(180deg,#fff,#f7f8fc); border-block:1px solid #eef1f6; }
.lpf-process { position:relative; display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin:0; padding:0; list-style:none; }
.lpf-process::before { content:""; position:absolute; top:27px; left:16%; right:16%; height:1px; background:#ccd4e2; }
.lpf-process li { position:relative; padding:0 24px 25px; text-align:center; }
.lpf-process li > span { position:relative; z-index:1; display:grid; place-items:center; width:55px; height:55px; margin:0 auto 21px; border:7px solid #f9fafc; border-radius:999px; background:var(--lpf-gold); color:var(--lpf-navy-dark); font-weight:900; box-shadow:0 0 0 1px #edb342; }
.lpf-process h3 { margin:0 0 9px; color:var(--lpf-navy-dark); font-size:1.12rem; }
.lpf-process p { margin:0; color:var(--lpf-muted); line-height:1.6; font-size:.92rem; }
.lpf-process-note { max-width:700px; margin:24px auto 0; color:#778195; font-size:.83rem; text-align:center; }

@media (max-width: 980px) {
    .lpf-hero { min-height:auto; padding:90px 0 72px; }
    .lpf-hero-grid, .lpf-form-layout, .lpf-faq-layout, .lpf-split { grid-template-columns:1fr; gap:45px; }
    .lpf-hero-panel { max-width:680px; }
    .lpf-form-intro { position:static; }
    .lpf-card-grid-3 { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 680px) {
    .lpf-container { width:min(100% - 32px, 1180px); }
    .lpf-hero { padding:72px 0 56px; }
    .lpf-hero h1 { font-size:clamp(2.35rem, 12vw, 3.35rem); }
    .lpf-hero-grid { gap:38px; }
    .lpf-hero-actions { flex-direction:column; }
    .lpf-btn { width:100%; }
    .lpf-trust-list { grid-template-columns:1fr; gap:15px; }
    .lpf-hero-panel { padding:25px 21px; border-radius:18px; }
    .lpf-section { padding:68px 0; }
    .lpf-card-grid-3, .lpf-process { grid-template-columns:1fr; }
    .lpf-info-card { min-height:auto; }
    .lpf-form-card { padding:24px 18px; border-radius:17px; }
    .lpf-form-card .lf-form { grid-template-columns:1fr; }
    .lpf-form-card .lf-form > * { grid-column:1 / -1; }
    .lpf-process::before { display:none; }
}
@media (prefers-reduced-motion: reduce) {
    .lpf-page *, .lpf-page *::before, .lpf-page *::after { scroll-behavior:auto !important; transition:none !important; }
}
