/* Legal Gridlock brand layer over Porto */
:root {
	--primary: #8133C9; --primary-100: #742dB5; --primary-200: #6c2aa9; --primary-300: #63279b;
	--primary--100: #8e45d0; --primary--200: #9651d4; --primary--300: #9e5dd8;
	--primary-rgba-0: rgba(129,51,201,0); --primary-rgba-10: rgba(129,51,201,.1); --primary-rgba-20: rgba(129,51,201,.2);
	--primary-rgba-30: rgba(129,51,201,.3); --primary-rgba-40: rgba(129,51,201,.4); --primary-rgba-50: rgba(129,51,201,.5);
	--primary-rgba-60: rgba(129,51,201,.6); --primary-rgba-70: rgba(129,51,201,.7); --primary-rgba-80: rgba(129,51,201,.8); --primary-rgba-90: rgba(129,51,201,.9);
	--lg-teal: #0E9384; --lg-ink: #131922;
}
.lg-wordmark { display:flex; align-items:center; gap:10px; text-decoration:none; }
.lg-wordmark .mark { width:34px; height:34px; border-radius:8px; display:grid; grid-template-columns:repeat(3,1fr); gap:3px; padding:6px; background:var(--lg-ink); }
.lg-wordmark .mark i { display:block; background:#fff; border-radius:1px; opacity:.35; }
.lg-wordmark .mark i:nth-child(1), .lg-wordmark .mark i:nth-child(5), .lg-wordmark .mark i:nth-child(9) { background:var(--lg-teal); opacity:1; }
.lg-wordmark b { font-weight:800; letter-spacing:.08em; color:var(--lg-ink); font-size:15px; line-height:1; }
.lg-wordmark small { display:block; font-size:9px; letter-spacing:.22em; color:#777; margin-top:3px; }
#heroGrid { position:absolute; inset:0; width:100%; height:100%; z-index:1; }
.hero-light { background:#f4f6fb; }
.hero-light:before { content:""; position:absolute; inset:0; z-index:2; background:radial-gradient(ellipse at center, rgba(244,246,251,.55) 0%, rgba(244,246,251,.92) 70%); }
.word-rotator-words.bg-primary b { color:#fff; }
.team-card img { border-radius:50%; max-width:220px; margin:0 auto; }
.lg-stat { border-left:3px solid var(--primary); padding-left:16px; margin-bottom:22px; }
.lg-stat strong { display:block; font-size:34px; font-weight:800; color:var(--lg-ink); line-height:1.1; font-variant-numeric:tabular-nums; }
.lg-cta { background:var(--lg-ink); }
.lg-cta h2, .lg-cta p { color:#fff; }
#footer { background:var(--lg-ink); }
section.section.lg-cta { background:var(--lg-ink) !important; }
.lg-cta .form-control { background:#fff; border:0; }
#heroGrid { opacity:1; }
.hero-light:before { background:radial-gradient(ellipse at center, rgba(244,246,251,.85) 0%, rgba(244,246,251,.35) 75%) !important; }
/* Inner pages */
.lg-eyebrow { display:inline-block; font-size:12px; font-weight:700; letter-spacing:.16em; color:var(--primary); }
.lg-page-header { background:#f4f6fb !important; padding:60px 0 30px !important; text-align:left; }
.lg-page-header h1 { text-wrap:balance; text-transform:none; }
.lg-panel { background:#fff; border:1px solid #e6e8ef; padding:32px; }
.bg-color-grey .lg-panel { background:#fff; }
.lg-step { border-top:3px solid var(--primary); padding-top:18px; }
.lg-step-n { display:inline-grid; place-items:center; width:30px; height:30px; border-radius:50%; background:var(--primary-rgba-10); color:var(--primary); font-weight:700; font-size:13px; margin-bottom:12px; }
.lg-pillar { background:#fff; border:1px solid #e6e8ef; padding:34px 30px; color:#555; transition:border-color .2s, transform .2s, box-shadow .2s; }
.lg-pillar i { font-size:34px; color:var(--primary); }
.lg-pillar h3 { color:var(--lg-ink); }
.lg-pillar:hover { border-color:var(--primary); transform:translateY(-3px); box-shadow:0 14px 30px rgba(19,25,34,.08); }
.lg-industry { display:flex !important; gap:22px; align-items:flex-start; background:#f4f6fb; padding:34px; color:#555; border-left:4px solid var(--primary); }
.lg-industry i { font-size:38px; color:var(--primary); }
.lg-industry h3 { color:var(--lg-ink); }
.lg-industry:hover { background:var(--primary-rgba-10); }
.lg-stack { display:flex; flex-direction:column; gap:8px; }
.lg-layer { display:flex; gap:18px; align-items:center; background:#fff; border:1px solid #e6e8ef; padding:18px 22px; }
.lg-layer i { font-size:24px; color:var(--primary); width:30px; }
.lg-layer b { display:block; color:var(--lg-ink); }
.lg-layer span { font-size:13px; color:#777; }
.lg-layer-top { border-color:var(--primary); box-shadow:0 10px 24px rgba(129,51,201,.12); }
.lg-layer-base { background:var(--lg-ink); border-color:var(--lg-ink); }
.lg-layer-base b { color:#fff; } .lg-layer-base span { color:rgba(255,255,255,.65); } .lg-layer-base i { color:#fff; }
#footer .list li { margin-bottom:8px; }
#header .dropdown-menu .dropdown-item.active { color:var(--primary); }
@media (prefers-reduced-motion:reduce) { .lg-pillar:hover { transform:none; } }
.lg-legal h2, .lg-legal h3 { font-size:1.25rem; font-weight:700; margin:28px 0 10px; }
.lg-legal li { margin:0 0 8px 18px; list-style:disc; }
.lg-since { background:var(--lg-ink); color:#fff; padding:40px 34px; }
.lg-since span { display:block; font-size:12px; letter-spacing:.18em; font-weight:700; color:#c9a6ee; }
.lg-since strong { display:block; font-size:88px; font-weight:800; line-height:1; margin-top:8px; font-variant-numeric:tabular-nums; }
.lg-since em { display:block; font-style:normal; margin-top:14px; font-size:14px; color:rgba(255,255,255,.75); }
/* Team */
.lg-dept-h span { font-size:13px; color:#999; font-weight:600; margin-left:6px; }
.lg-agent-card { display:block; text-align:center; text-decoration:none; padding:22px 14px; background:#fff; border:1px solid #e6e8ef; height:100%; transition:border-color .2s, transform .2s; }
.lg-agent-card img { width:130px; height:130px; border-radius:50%; object-fit:cover; margin-bottom:14px; }
.lg-agent-card h3 { font-size:16px; font-weight:700; color:var(--lg-ink); margin:0 0 4px; }
.lg-agent-card p { font-size:13px; line-height:1.4; margin:0; color:#777; }
.lg-agent-card:hover { border-color:var(--primary); transform:translateY(-3px); }
.lg-profile-hero { background:#f4f6fb; }
.lg-profile-photo { width:100%; max-width:260px; border-radius:50%; }
.lg-back { display:block; font-size:13px; font-weight:600; margin-bottom:14px; text-decoration:none; }
.lg-si-pill { display:inline-block; background:var(--lg-ink); color:#fff; font-size:11px; font-weight:700; letter-spacing:.12em; padding:5px 12px; border-radius:999px; }
.lg-profile-hero h1 { color:var(--lg-ink); line-height:1.1; }
.lg-facts { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:10px 34px; }
.lg-facts li { font-weight:600; color:var(--lg-ink); font-size:14px; }
.lg-facts span { display:block; font-size:11px; letter-spacing:.1em; text-transform:uppercase; color:#888; font-weight:600; }
.lg-quote { border-left:4px solid var(--primary); margin:34px 0 0; padding:6px 0 6px 22px; font-size:20px; line-height:1.5; color:var(--lg-ink); font-weight:500; }
.lg-quote cite { display:block; font-size:13px; font-style:normal; color:#888; margin-top:10px; }
.lg-checklist { list-style:none; padding:0; }
.lg-checklist li { position:relative; padding-left:30px; margin-bottom:12px; }
.lg-checklist li:before { content:"\f00c"; font-family:"Font Awesome 6 Free","Font Awesome 5 Free"; font-weight:900; position:absolute; left:0; color:var(--primary); }
.lg-lessons { padding-left:22px; }
.lg-lessons li { margin-bottom:12px; padding-left:6px; }
.lg-lessons li::marker { color:var(--primary); font-weight:700; }
.lg-side-block { background:#fff; border:1px solid #e6e8ef; padding:24px; margin-bottom:20px; }
.lg-side-block h4 { font-size:13px; letter-spacing:.1em; text-transform:uppercase; font-weight:700; margin:0 0 14px; color:var(--lg-ink); }
.lg-side-note { background:#f4f6fb; border-color:#f4f6fb; font-size:14px; }
.lg-tags { display:flex; flex-wrap:wrap; gap:8px; }
.lg-tags span { background:var(--primary-rgba-10); color:var(--primary-300); font-size:13px; font-weight:600; padding:5px 12px; border-radius:999px; }
.lg-mini { display:flex; gap:12px; align-items:center; padding:8px 0; text-decoration:none; border-top:1px solid #f0f1f5; }
.lg-mini:first-of-type { border-top:0; }
.lg-mini img { width:42px; height:42px; border-radius:50%; object-fit:cover; }
.lg-mini b { display:block; color:var(--lg-ink); font-size:14px; }
.lg-mini span { font-size:12px; color:#777; line-height:1.3; }
.lg-stories { display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:24px; }
.lg-story { background:#fff; padding:30px; border-top:3px solid var(--primary); display:flex; flex-direction:column; }
.lg-story h3 { font-size:19px; font-weight:700; color:var(--lg-ink); margin:0 0 10px; }
.lg-story p { flex:1; }
.lg-share { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:#888; }
.lg-share a { width:34px; height:34px; display:grid; place-items:center; border:1px solid #e6e8ef; border-radius:50%; color:var(--lg-ink); text-decoration:none; }
.lg-share a:hover { background:var(--primary); border-color:var(--primary); color:#fff; }
.lg-post-card { display:block; background:#fff; border:1px solid #e6e8ef; padding:24px; text-decoration:none; color:#555; }
.lg-post-card span { font-size:12px; color:#888; } .lg-post-card h3 { font-size:18px; color:var(--lg-ink); margin:6px 0; }
@media (prefers-reduced-motion:reduce) { .lg-agent-card:hover { transform:none; } }
/* Journal: article layout (post pages) */
.lg-article-head{ background:#f4f6fb; padding:48px 0 34px; }
.lg-article-head .lg-eyebrow a{ color:var(--primary); text-decoration:none; }
.lg-article-head h1{ font-size:clamp(28px,3.6vw,44px); line-height:1.15; font-weight:800; color:var(--lg-ink); text-wrap:balance; margin:10px 0 12px; }
.lg-article-head .lead{ max-width:760px; }
.lg-article{ max-width:760px; font-size:17px; line-height:1.75; color:#333; }
.lg-article h2{ font-size:26px; font-weight:700; color:var(--lg-ink); margin:38px 0 12px; line-height:1.25; }
.lg-article h3{ font-size:20px; font-weight:700; color:var(--lg-ink); margin:28px 0 10px; }
.lg-article p{ margin:0 0 18px; }
.lg-article ul{ margin:0 0 20px 22px; } .lg-article li{ margin-bottom:8px; }
.lg-article a{ color:var(--primary); }
.lg-author-card{ display:flex; gap:14px; align-items:center; }
.lg-author-card img{ width:56px; height:56px; border-radius:50%; object-fit:cover; flex:none; }
.lg-author-card b{ display:block; color:var(--lg-ink); font-size:15px; }
.lg-author-card span{ font-size:13px; color:#777; display:block; }
.lg-author-card .lg-si-pill{ margin-top:6px; font-size:10px; padding:3px 9px; }
.lg-sources{ margin-top:34px; padding-top:22px; border-top:1px solid #e6e8ef; }
.lg-sources h4{ font-size:13px; letter-spacing:.1em; text-transform:uppercase; font-weight:700; color:#777; margin-bottom:10px; }
.lg-sources ol{ padding-left:20px; font-size:14px; } .lg-sources li{ margin-bottom:6px; }
.lg-ai-note{ font-size:13px; color:#777; padding:14px 16px; background:#f4f6fb; border-radius:10px; }
.lg-side-link{ display:block; padding:10px 0; border-top:1px solid #f0f1f5; color:var(--lg-ink); text-decoration:none; font-size:14px; font-weight:500; }
.lg-side-link:first-of-type{ border-top:0; } .lg-side-link span{ display:block; font-size:12px; color:#999; font-weight:400; }
.lg-post-row{ display:block; padding:18px 0; border-top:1px solid #e6e8ef; text-decoration:none; color:#555; }
.lg-post-row:first-of-type{ border-top:0; }
.lg-post-row > span{ font-size:12px; color:#888; } .lg-post-row h3{ font-size:20px; color:var(--lg-ink); margin:4px 0 6px; font-weight:700; }
.lg-post-row h3:hover{ color:var(--primary); } .lg-post-row p{ margin:0; font-size:14px; }
.lg-post-by{ display:flex; align-items:center; gap:8px; font-size:12px; color:#888; margin-bottom:8px; }
.lg-post-by img{ width:22px; height:22px; border-radius:50%; object-fit:cover; }
.lg-pager{ display:flex; gap:10px; margin-top:20px; } .lg-pager a{ padding:8px 16px; border:1px solid #e6e8ef; text-decoration:none; color:var(--lg-ink); font-weight:600; font-size:13px; }
.lg-profile-photo{ max-width:190px; }
.lg-share{ margin-top:22px; }
.lg-crumbs{ font-size:13px; color:#888; margin-bottom:10px; } .lg-crumbs a{ color:#666; text-decoration:none; } .lg-crumbs a:hover{ color:var(--primary); }
.lg-byline{ font-size:14px; color:#777; } .lg-byline a{ color:var(--lg-ink); font-weight:600; text-decoration:none; }
.lg-faq{ margin-top:40px; padding-top:28px; border-top:1px solid #e6e8ef; max-width:760px; }
.lg-faq h2{ font-size:26px; font-weight:700; color:var(--lg-ink); margin:0 0 16px; }
.lg-faq h3{ font-size:18px; font-weight:700; color:var(--lg-ink); margin:22px 0 6px; }
.lg-faq p{ font-size:16px; line-height:1.7; color:#444; margin:0; }
.lg-post-tags{ margin-top:26px; align-items:center; } .lg-post-tags b{ font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:#888; margin-right:4px; }
/* ---------- Team directory (2026-09-13 redesign) ---------- */
.lgt-hero{ background:var(--lg-ink); color:#fff; padding:72px 0 56px; }
.lgt-kicker{ display:inline-block; font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:#c9a6ee; margin-bottom:14px; }
.lgt-hero h1{ color:#fff; font-size:clamp(34px,4.4vw,54px); line-height:1.05; font-weight:800; margin:0 0 16px; text-wrap:balance; letter-spacing:-.01em; }
.lgt-hero p{ color:rgba(255,255,255,.72); font-size:17px; line-height:1.65; max-width:560px; margin:0; }
.lgt-stats{ display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.12); margin:0; }
.lgt-stats div{ background:var(--lg-ink); padding:18px 20px; }
.lgt-stats dt{ font-size:36px; font-weight:800; line-height:1; color:#fff; font-variant-numeric:tabular-nums; }
.lgt-stats dd{ margin:6px 0 0; font-size:13px; color:rgba(255,255,255,.62); }
.lgt-head{ display:flex; align-items:baseline; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:26px; }
.lgt-head h2{ margin:0; font-size:30px; font-weight:800; color:var(--lg-ink); letter-spacing:-.01em; }
.lgt-head p{ margin:0; color:#6b7280; font-size:15px; }
.lgt-dept{ display:inline-block; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--primary); }

.lgt-leads{ padding:64px 0 24px; background:#fff; }
.lgt-lead-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(340px,1fr)); gap:18px; }
.lgt-lead{ display:flex; gap:18px; align-items:flex-start; padding:20px; border:1px solid #e6e8ef; background:#fff; text-decoration:none; color:#555; transition:border-color .2s, box-shadow .2s; }
.lgt-lead img{ width:96px; height:96px; border-radius:50%; object-fit:cover; flex:none; }
.lgt-lead h3{ font-size:19px; font-weight:700; color:var(--lg-ink); margin:4px 0 2px; }
.lgt-role{ margin:0 0 8px; font-size:14px; color:#555; }
.lgt-tag{ margin:0 0 10px; font-size:14px; line-height:1.5; color:#777; }
.lgt-more{ font-size:13px; font-weight:600; color:var(--lg-ink); }
.lgt-lead:hover{ border-color:var(--primary); box-shadow:0 12px 28px rgba(19,25,34,.07); }
.lgt-lead:hover .lgt-more{ color:var(--primary); }

.lgt-roster{ padding:48px 0 72px; background:#fff; }
.lgt-bar{ position:sticky; top:0; z-index:20; background:#fff; display:flex; gap:14px; align-items:center; justify-content:space-between; flex-wrap:wrap; padding:12px 0; margin-bottom:22px; border-bottom:1px solid #eef0f4; }
.lgt-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.lgt-chips button{ border:1px solid #e1e4ea; background:#fff; color:var(--lg-ink); padding:7px 14px; border-radius:999px; font-size:13px; font-weight:600; cursor:pointer; }
.lgt-chips button span{ color:#9aa1ad; font-weight:600; margin-left:3px; }
.lgt-chips button:hover{ border-color:var(--primary); }
.lgt-chips button.on{ background:var(--lg-ink); border-color:var(--lg-ink); color:#fff; }
.lgt-chips button.on span{ color:rgba(255,255,255,.6); }
.lgt-chips button:focus-visible, .lgt-card:focus-visible, .lgt-lead:focus-visible{ outline:3px solid var(--primary); outline-offset:2px; }
.lgt-search input{ border:1px solid #e1e4ea; padding:9px 14px; min-width:240px; font-size:14px; border-radius:999px; }
.lgt-search input:focus{ outline:2px solid var(--primary); border-color:var(--primary); }
.lgt-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:16px; }
.lgt-card{ display:flex; flex-direction:column; align-items:center; text-align:center; padding:24px 16px 18px; border:1px solid #e6e8ef; background:#fff; text-decoration:none; color:#555; transition:border-color .2s, transform .2s, box-shadow .2s; }
.lgt-card[hidden]{ display:none; }
.lgt-card img{ width:120px; height:120px; border-radius:50%; object-fit:cover; margin-bottom:14px; }
.lgt-card h3{ font-size:16px; font-weight:700; color:var(--lg-ink); margin:0 0 3px; text-transform:none; }
.lgt-card p{ font-size:13px; line-height:1.4; margin:0 0 14px; color:#6b7280; flex:1; }
.lgt-foot{ display:flex; gap:8px; align-items:center; justify-content:center; flex-wrap:wrap; }
.lgt-n{ font-size:12px; color:#8a93a0; }
.lgt-card:hover{ border-color:var(--primary); transform:translateY(-3px); box-shadow:0 12px 28px rgba(19,25,34,.07); }
.lgt-empty{ text-align:center; color:#888; padding:30px 0; }

.lgt-journal{ padding:64px 0; background:#f4f6fb; }
.lgt-feature{ display:block; height:100%; background:var(--lg-ink); color:rgba(255,255,255,.75); padding:34px; text-decoration:none; }
.lgt-feature .lgt-dept{ color:#c9a6ee; }
.lgt-feature h3{ color:#fff; font-size:clamp(24px,2.6vw,32px); line-height:1.2; font-weight:800; margin:10px 0 14px; text-wrap:balance; }
.lgt-feature p{ font-size:16px; line-height:1.65; margin:0 0 22px; }
.lgt-by{ display:flex; align-items:center; gap:8px; font-size:13px; color:#8a93a0; }
.lgt-feature .lgt-by{ color:rgba(255,255,255,.6); }
.lgt-by img{ width:26px; height:26px; border-radius:50%; object-fit:cover; }
.lgt-item{ display:block; background:#fff; border:1px solid #e6e8ef; padding:20px 22px; text-decoration:none; margin-bottom:12px; }
.lgt-item:last-child{ margin-bottom:0; }
.lgt-item h3{ font-size:17px; line-height:1.35; font-weight:700; color:var(--lg-ink); margin:6px 0 8px; }
.lgt-item:hover, .lgt-feature:hover{ box-shadow:0 12px 28px rgba(19,25,34,.10); }
.lgt-item:hover h3{ color:var(--primary); }
@media (max-width:767px){ .lgt-hero{ padding:52px 0 40px; } .lgt-lead-grid{ grid-template-columns:1fr; } .lgt-search input{ min-width:0; width:100%; } .lgt-search{ width:100%; } .lgt-grid{ grid-template-columns:repeat(2,1fr); gap:10px; } .lgt-card img{ width:88px; height:88px; } }
@media (prefers-reduced-motion:reduce){ .lgt-card:hover{ transform:none; } }
.lgt-lead h3, .lgt-card h3, .lgt-feature h3, .lgt-item h3, .lgt-head h2, .lgt-hero h1{ text-transform:none; }
.lgt-lead-grid{ grid-template-columns:repeat(4,1fr); }
.lgt-lead{ flex-direction:column; align-items:flex-start; }
.lgt-lead img{ width:84px; height:84px; }
@media (max-width:1199px){ .lgt-lead-grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:991px){ .lgt-lead-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:575px){ .lgt-lead-grid{ grid-template-columns:1fr; } }

/* ---- Managed IT pricing (pricing page + managed security) */
.lgp-toggle { display:flex; width:max-content; margin:0 auto 36px; border:1px solid #d9dce5; background:#fff; padding:4px; }
.lgp-toggle button { border:0; background:transparent; padding:10px 22px; font-weight:600; font-size:14px; color:var(--lg-ink); cursor:pointer; }
.lgp-toggle button em { font-style:normal; font-size:11px; font-weight:700; letter-spacing:.04em; color:var(--primary); margin-left:6px; }
.lgp-toggle button.on { background:var(--lg-ink); color:#fff; }
.lgp-toggle button.on em { color:#c9a4ee; }
.lgp-toggle button:focus-visible { outline:2px solid var(--primary); outline-offset:2px; }
.lgp-card { position:relative; height:100%; background:#fff; border:1px solid #e3e6ee; padding:34px 30px 30px; display:flex; flex-direction:column; transition:border-color .2s, box-shadow .2s; }
.bg-color-grey .lgp-card { background:#fff; }
.lgp-card h3 { font-size:22px; font-weight:800; text-transform:none; margin:0 0 6px; color:var(--lg-ink); letter-spacing:0; }
.lgp-for { min-height:48px; margin-bottom:18px; color:#5b6272; }
.lgp-price { display:flex; align-items:baseline; gap:6px; }
.lgp-price strong { font-size:46px; line-height:1; font-weight:800; color:var(--lg-ink); font-variant-numeric:tabular-nums; letter-spacing:-.02em; }
.lgp-price span { color:#5b6272; font-weight:500; }
.lgp-billed { margin:8px 0 2px; font-weight:600; color:var(--lg-ink); font-size:14px; font-variant-numeric:tabular-nums; }
.lgp-inc { font-size:13px; color:#5b6272; margin-bottom:22px; }
.lgp-lead { margin:24px 0 12px; font-weight:600; color:var(--lg-ink); font-size:14px; line-height:1.5; }
.lgp-list { list-style:none; padding:0; margin:0; }
.lgp-list li { position:relative; padding:7px 0 7px 26px; border-top:1px solid #eef0f4; font-size:14px; line-height:1.45; }
.lgp-list li i { position:absolute; left:0; top:11px; font-size:12px; color:var(--primary); }
.lgp-featured { border:2px solid var(--primary); box-shadow:0 18px 40px rgba(129,51,201,.12); }
.lgp-badge { position:absolute; top:-13px; left:30px; background:var(--primary); color:#fff; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; padding:5px 12px; }
.lgp-picked { border-color:var(--lg-ink); }
.lgp-featured.lgp-picked { border-color:var(--primary); }
.lgp-note { text-align:center; max-width:760px; margin:28px auto 0; font-size:13px; color:#5b6272; }
.lgp-table-wrap { overflow-x:auto; background:#fff; border:1px solid #e3e6ee; }
.lgp-table { width:100%; min-width:640px; border-collapse:collapse; font-size:14px; }
.lgp-table th, .lgp-table td { padding:13px 18px; border-bottom:1px solid #eef0f4; text-align:center; vertical-align:middle; }
.lgp-table tbody th { text-align:left; font-weight:500; color:var(--lg-ink); }
.lgp-table thead th { font-weight:800; color:var(--lg-ink); font-size:15px; background:#fafbfc; }
.lgp-table thead th:first-child { text-align:left; font-weight:600; color:#5b6272; font-size:13px; }
.lgp-table .lgp-featured-col { color:var(--primary); }
.lgp-table td { font-variant-numeric:tabular-nums; color:#3a4150; }
.lgp-table tbody tr:last-child th, .lgp-table tbody tr:last-child td { border-bottom:0; }
.lgp-dash { color:#b3b8c4; }
.lgp-summary { background:var(--lg-ink); color:#fff; padding:26px 28px; margin-top:26px; }
.lgp-sum-row { display:flex; justify-content:space-between; gap:16px; padding:9px 0; border-bottom:1px solid rgba(255,255,255,.1); font-size:14px; }
.lgp-sum-row span { color:rgba(255,255,255,.7); }
.lgp-sum-row b { font-weight:600; text-align:right; font-variant-numeric:tabular-nums; }
.lgp-sum-total { border-bottom:0; padding-top:14px; font-size:18px; }
.lgp-sum-total span { color:#fff; font-weight:600; }
.lgp-sum-total b { font-size:24px; font-weight:800; }
.lgp-sum-note { margin:10px 0 0; font-size:12px; color:rgba(255,255,255,.6); line-height:1.5; }
.lgp-check { display:flex; gap:10px; align-items:flex-start; font-size:14px; line-height:1.5; cursor:pointer; }
.lgp-check input { margin-top:4px; width:17px; height:17px; flex:none; accent-color:var(--primary); }
.lgp-alert { border-left:3px solid #d97706; background:#fff8eb; padding:12px 16px; margin-bottom:18px; font-size:14px; }
.lgp-book { height:100%; background:#fff; border:1px solid #e3e6ee; padding:30px; display:flex; flex-direction:column; align-items:flex-start; }
.lgp-book i.icons { font-size:30px; color:var(--primary); }
.lgp-book h3 { font-size:19px; font-weight:800; text-transform:none; letter-spacing:0; margin:16px 0 8px; color:var(--lg-ink); }
.lgp-book p { font-size:14px; }
.lgp-book-price { margin-top:auto; font-weight:600; color:var(--lg-ink); font-size:13px !important; }
.lgp-faq-item { border-bottom:1px solid #e3e6ee; }
.lgp-faq-item summary { cursor:pointer; list-style:none; padding:18px 30px 18px 0; font-weight:600; color:var(--lg-ink); font-size:16px; position:relative; }
.lgp-faq-item summary::-webkit-details-marker { display:none; }
.lgp-faq-item summary::after { content:"+"; position:absolute; right:4px; top:14px; font-size:22px; color:var(--primary); font-weight:400; }
.lgp-faq-item[open] summary::after { content:"\2212"; }
.lgp-faq-item p { padding:0 0 18px; margin:0; max-width:680px; }
.lgw-card { background:#fff; border:1px solid #e3e6ee; padding:30px; }
.lgw-steps { list-style:none; padding:0; margin:0; counter-reset:s; }
.lgw-steps li { counter-increment:s; position:relative; padding:0 0 18px 44px; }
.lgw-steps li::before { content:counter(s); position:absolute; left:0; top:0; width:30px; height:30px; border-radius:50%; background:var(--primary-rgba-10); color:var(--primary); font-weight:700; display:grid; place-items:center; font-size:13px; }
@media (max-width:991px) { .lgp-for { min-height:0; } }
.lgp-msg { padding:14px 18px; margin-top:16px; font-size:14px; border-left:3px solid #8a93a6; background:#f5f6f9; }
.lgp-msg-err { border-color:#d92d20; background:#fef3f2; }
.lgp-msg-ok { border-color:var(--lg-teal); background:#effaf8; font-size:16px; }
.lgp-pay { border:1px solid #e3e6ee; background:#fff; padding:22px; scroll-margin-top:110px; }
.lgp-pay-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; padding-bottom:16px; margin-bottom:16px; border-bottom:1px solid #eef0f4; font-size:14px; }
#lgpPayMount { min-height:420px; }
.lgp-paynote { font-size:13px; color:#5b6272; }
