/* Shared styles for the public pricing, FAQ, setup guide pages and the new landing sections. */
.lp .visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.lp [hidden]{display:none!important}
.lp-narrow{width:min(860px,100% - 48px);margin-inline:auto}
.lp-center{text-align:center;margin-top:28px}
.lp section[id],.lp [id^="faq-q-"],.lp [id^="faq-cat-"]{scroll-margin-top:88px}
.lp-links a[aria-current=page]{color:var(--lp-blue);background:var(--lp-soft)}
.lp-links a,.lp-btn{min-height:44px;align-items:center}
.lp-links a{display:flex}

/* Page hero */
.lp-page-hero{padding:72px 0 56px;background:radial-gradient(900px 420px at 85% -20%,#dbe9ff 0%,rgba(219,233,255,0) 70%),linear-gradient(180deg,#f3f8ff 0%,#fff 100%);text-align:center}
.lp-page-hero h1{font-size:clamp(2rem,4.2vw,3.1rem);line-height:1.12;letter-spacing:-.02em;color:var(--lp-navy);font-weight:800;max-width:46rem;margin-inline:auto}
.lp-page-hero .lp-lead{max-width:44rem;margin:18px auto 0}
.lp-page-hero .lp-cta-row{justify-content:center}

/* Notices */
.lp-notice{display:flex;gap:16px;align-items:flex-start;padding:22px 24px;border:1px solid var(--lp-line);border-radius:var(--lp-radius);background:#fff;box-shadow:var(--lp-shadow);max-width:46rem;margin:0 auto}
.lp-notice>i{font-size:1.6rem;color:var(--lp-blue);flex:none;line-height:1.2}
.lp-notice .lp-cta-row{margin-top:16px}
.lp-notice-soft{background:var(--lp-soft);box-shadow:none;margin-top:40px;max-width:none}

/* Pricing */
.lp-period-toggle{display:flex;justify-content:center;gap:4px;width:fit-content;max-width:100%;flex-wrap:wrap;margin:0 auto 36px;padding:5px;border:1px solid var(--lp-line);border-radius:999px;background:#fff}
.lp-period-toggle button{min-height:44px;padding:8px 20px;border:0;border-radius:999px;background:transparent;color:var(--lp-muted);font-weight:600;font-size:.95rem;cursor:pointer;transition:background .2s,color .2s}
.lp-period-toggle button:hover{color:var(--lp-navy)}
.lp-period-toggle button[aria-pressed=true]{background:var(--lp-blue);color:#fff;box-shadow:0 6px 16px rgba(31,111,235,.28)}
.lp-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px;align-items:stretch}
.lp-plan-grid.is-single{grid-template-columns:minmax(0,420px);justify-content:center}
.lp-plan{display:flex;flex-direction:column;gap:18px;padding:30px 26px;border:1px solid var(--lp-line);border-radius:var(--lp-radius);background:#fff;box-shadow:var(--lp-shadow);transition:transform .2s,box-shadow .2s}
.lp-plan:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(15,40,90,.12)}
.lp-plan h3{font-size:1.35rem;color:var(--lp-navy);font-weight:800}
.lp-plan-segment{font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--lp-blue);margin-bottom:4px}
.lp-plan-tagline{color:var(--lp-muted);font-size:.95rem;margin-top:6px}
.lp-plan-price{min-height:92px}
.lp-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}
.lp-amount{font-size:2.2rem;font-weight:800;color:var(--lp-navy);letter-spacing:-.02em}
.lp-per{color:var(--lp-muted);font-size:.95rem}
.lp-price-old{color:var(--lp-muted);font-size:.95rem}
.lp-save{display:inline-block;margin-left:6px;padding:2px 10px;border-radius:999px;background:#e5f6ee;color:#11704a;font-weight:700;font-size:.8rem}
.lp-price-note{color:var(--lp-muted);font-size:.88rem}
.lp-plan-features{display:flex;flex-direction:column;gap:10px;flex:1;padding-top:16px;border-top:1px solid var(--lp-line)}
.lp-plan-features li{display:flex;gap:10px;align-items:flex-start;font-size:.95rem}
.lp-plan-features i{color:#1a9e68;margin-top:3px;flex:none}
.lp-plan-actions{display:flex;flex-direction:column;gap:10px}
.lp-plan-actions .lp-btn{width:100%}
.lp-plan-subscribe{display:block;text-align:center;font-size:.88rem;color:var(--lp-blue)!important;font-weight:600;padding:10px 4px;min-height:44px}
.lp-plan-subscribe:hover{text-decoration:underline!important}
.lp .lp-pricing-note{display:flex;gap:10px;align-items:flex-start;justify-content:center;max-width:46rem;margin:44px auto 0;color:var(--lp-muted);font-size:.9rem;text-align:left}
.lp-pricing-note i{color:var(--lp-blue);margin-top:3px;flex:none}
.lp .lp-pricing-more{text-align:center;margin-top:36px}
.lp-pricing-more .lp-btn{gap:10px}

/* Comparison table */
.lp-table-wrap{overflow-x:auto;border:1px solid var(--lp-line);border-radius:var(--lp-radius);background:#fff;box-shadow:var(--lp-shadow)}
.lp-compare{width:100%;min-width:560px;border-collapse:collapse;font-size:.95rem}
.lp-compare th,.lp-compare td{padding:14px 18px;border-bottom:1px solid var(--lp-line);text-align:left;vertical-align:top}
.lp-compare thead th{background:var(--lp-soft);color:var(--lp-navy);font-weight:800}
.lp-compare tbody th{font-weight:600;color:var(--lp-ink);width:34%}
.lp-compare tbody tr:last-child th,.lp-compare tbody tr:last-child td{border-bottom:0}
.lp-yes{color:#1a9e68;font-size:1.1rem}
.lp-no{color:#8a98ad}
.lp-terms{display:flex;flex-direction:column;gap:14px}
.lp-terms li{display:flex;gap:12px;align-items:flex-start;padding:16px 20px;border:1px solid var(--lp-line);border-radius:14px;background:#fff}
.lp-terms i{color:#1a9e68;margin-top:4px;flex:none}
.lp-terms a{color:var(--lp-blue);text-decoration:underline}

/* FAQ */
.lp-faq-list{display:flex;flex-direction:column;gap:12px}
.lp-faq-item{border:1px solid var(--lp-line);border-radius:14px;background:#fff;transition:box-shadow .2s,border-color .2s}
.lp-faq-item[open]{border-color:#bcd3f7;box-shadow:var(--lp-shadow)}
.lp-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;min-height:56px;cursor:pointer;font-weight:700;color:var(--lp-navy);list-style:none}
.lp-faq-item summary::-webkit-details-marker{display:none}
.lp-faq-item summary i{flex:none;color:var(--lp-blue);transition:transform .2s}
.lp-faq-item[open] summary i{transform:rotate(180deg)}
.lp-faq-answer{padding:0 20px 18px;color:var(--lp-muted)}
.lp-faq-answer p+p{margin-top:10px}
.lp-faq-link{color:var(--lp-blue)!important;font-weight:600}
.lp-faq-link:hover{text-decoration:underline!important}
.lp .lp-faq-home-more{text-align:center;margin-top:40px}
.lp-faq-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;align-items:start}
.lp-faq-side{position:sticky;top:96px;display:flex;flex-direction:column;gap:20px}
.lp-faq-search label{display:block;font-weight:700;font-size:.85rem;color:var(--lp-navy);margin-bottom:6px}
.lp-faq-search input{width:100%;min-height:44px;padding:10px 14px;border:1px solid #c9d8f0;border-radius:12px;font:inherit;color:var(--lp-ink);background:#fff}
.lp-faq-nav ul{display:flex;flex-direction:column;gap:4px}
.lp-faq-nav a{display:flex;gap:10px;align-items:center;min-height:44px;padding:8px 12px;border-radius:10px;color:var(--lp-muted);font-weight:600;font-size:.94rem}
.lp-faq-nav a:hover{background:var(--lp-soft);color:var(--lp-navy)}
.lp-faq-nav i{color:var(--lp-blue)}
.lp-faq-category{margin-bottom:40px}
.lp-faq-category h2{display:flex;align-items:center;gap:12px;font-size:1.4rem;color:var(--lp-navy);margin-bottom:16px}
.lp-faq-category h2 i{color:var(--lp-blue)}
.lp-faq-status{padding:16px 20px;border-radius:12px;background:var(--lp-soft);color:var(--lp-muted);margin-bottom:24px}

/* Setup guide */
.lp-setup-list{display:flex;flex-direction:column;gap:16px}
.lp-setup-item{display:flex;gap:18px;padding:22px;border:1px solid var(--lp-line);border-radius:var(--lp-radius);background:#fff;box-shadow:var(--lp-shadow)}
.lp-setup-num{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:var(--lp-blue);color:#fff;font-weight:800}
.lp-setup-item h3{font-size:1.15rem;color:var(--lp-navy);display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px}
.lp-setup-item p{color:var(--lp-muted)}
.lp .lp-badge.is-required,.lp .lp-badge.is-optional{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.lp .lp-badge.is-required{background:#e8f1ff;color:var(--lp-blue-dark)}
.lp .lp-badge.is-optional{background:#eef1f6;color:#4a5a72}

/* Security descriptions */
.lp-security-grid li{align-items:flex-start}
.lp-security-grid li small{display:block;font-weight:400;color:var(--lp-muted);font-size:.86rem;margin-top:2px}

/* Footer */
.lp .lp-cta-support{margin-top:22px;font-size:.92rem;color:#cfdaee}
.lp .lp-cta-support a{color:#fff;text-decoration:underline}
.lp .lp-cta p:not(.lp-cta-support){max-width:36rem;margin:16px auto 0;color:#dbe5f5}
.lp .lp-footer-grid.lp-footer-grid-4{grid-template-columns:1.6fr repeat(4,minmax(130px,1fr));gap:32px 40px}
.lp .lp-footer-col h2{margin:0 0 4px;font-size:1rem;font-weight:700;color:#fff}
.lp .lp-footer-col a{display:inline-flex;align-items:center;min-height:32px;overflow-wrap:anywhere}
.lp .lp-footer-bottom a{color:#cfdaee}

@media (max-width:1100px){
    .lp-faq-layout{grid-template-columns:1fr}
    .lp-faq-side{position:static}
    .lp-faq-nav ul{flex-direction:row;flex-wrap:wrap}
    .lp .lp-footer-grid.lp-footer-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
    .lp .lp-footer-grid.lp-footer-grid-4 .lp-footer-brand{grid-column:1/-1}
}
@media (max-width:640px){
    .lp-section{padding:64px 0}
    .lp-page-hero{padding:48px 0 36px}
    .lp-plan{padding:24px 20px}
    .lp-setup-item{flex-direction:column;gap:12px}
    .lp-notice{flex-direction:column;gap:10px}
    .lp-period-toggle{width:100%}
    .lp-period-toggle button{flex:1 1 auto}
    .lp .lp-footer-grid.lp-footer-grid-4{grid-template-columns:1fr}
    .lp-faq-item summary{padding:14px 16px}
    .lp-faq-answer{padding:0 16px 16px}
}
@media (prefers-reduced-motion:reduce){
    .lp-plan,.lp-faq-item,.lp-faq-item summary i,.lp-period-toggle button{transition:none}
    .lp-plan:hover{transform:none}
}
