/*
Theme Name: Twenty Twenty-Five
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 7.2
Version: 1.5
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * IMPORTANT: This file is only served on the frontend when `SCRIPT_DEBUG` is enabled;
 * in most instances, the `style.min.css` file will be served. It is not recommended that you
 * use the Theme File Editor to modify this stylesheet. Instead, add the necessary style
 * overrides via "Additional CSS" in the Site Editor.
 */

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
 a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1, h2, h3, h4, h5, h6, blockquote, caption, figcaption, p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}

/*
 * Prevents unnecessary scrollbars while handling long lines of preformatted text.
 * https://core.trac.wordpress.org/ticket/63875
 */
:where(pre) {
	overflow-x: auto;
}
:root{
  --navy:#2E3238; --navy-2:#3C424A; --navy-3:#4A5159; --ink:#20242A;
  --green:#E8712B; --green-deep:#C85A18; --green-soft:#FBE7D6; --green-bright:#F59248;
  --paper:#F3F4F6; --card:#FFFFFF; --line:#E4E6EA; --line-2:#D4D7DD;
  --slate:#565B63; --slate-2:#888D96;
  --amber:#F2A93B; --coral:#EB5A4B; --violet:#6C6CE0; --teal:#0EA5A0;
  --disp:"Bricolage Grotesque",system-ui,sans-serif;
  --body:"Inter",system-ui,sans-serif; --mono:"JetBrains Mono",ui-monospace,monospace;
  --wrap:1180px; --r:16px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--navy);font-family:var(--body);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--disp);letter-spacing:-.02em;line-height:1.06;font-weight:700}
img{max-width:100%;display:block}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--green-deep);font-weight:600;display:inline-flex;align-items:center;gap:9px}
.eyebrow::before{content:"";width:22px;height:1.5px;background:var(--green)}
.mono{font-family:var(--mono)}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--body);font-weight:600;font-size:15px;padding:13px 20px;border-radius:11px;border:1.5px solid transparent;cursor:pointer;transition:.18s ease;white-space:nowrap}
.btn svg{width:17px;height:17px}
.btn-primary{background:var(--green);color:#fff;border-color:var(--green)}
.btn-primary:hover{background:var(--green-deep);border-color:var(--green-deep);transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--navy);border-color:var(--line-2)}
.btn-ghost:hover{border-color:var(--navy);background:#fff}
.btn-navy{background:var(--navy);color:#fff;border-color:var(--navy)}
.btn-navy:hover{background:var(--ink)}
.btn-lg{padding:15px 24px;font-size:16px}

/* top strip */
.strip{background:var(--navy);color:#fff;font-size:12.5px}
.strip .wrap{display:flex;align-items:center;gap:14px;height:38px}
.strip b{color:var(--green-bright)}
.strip .sp{margin-left:auto;display:flex;gap:18px;color:#C6D2E2}
.strip a:hover{color:#fff}
@media(max-width:720px){.strip .sp{display:none}}

/* nav */
header{position:sticky;top:0;z-index:60;background:rgba(244,246,248,.82);backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:.2s}
header.scrolled{border-color:var(--line);background:rgba(244,246,248,.96)}
.nav{display:flex;align-items:center;gap:14px;height:70px}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--disp);font-weight:700;font-size:19px}
.nav-links{display:flex;gap:24px;margin-left:32px}
.nav-links a{font-size:14.5px;color:var(--slate);font-weight:500}
.nav-links a:hover{color:var(--navy)}
.nav-cta{margin-left:auto;display:flex;align-items:center;gap:12px}
.burger{display:none;background:none;border:1px solid var(--line-2);border-radius:9px;width:42px;height:40px;cursor:pointer;color:var(--navy)}

/* hero */
.hero{position:relative;padding:64px 0 44px;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(760px 380px at 78% -8%,rgba(232,113,43,.10),transparent 60%),radial-gradient(680px 420px at 8% 8%,rgba(20,72,122,.08),transparent 60%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:50px;align-items:center;position:relative}
.badge{display:inline-flex;align-items:center;gap:8px;background:var(--green-soft);color:var(--green-deep);font-family:var(--mono);font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:6px 12px;border-radius:20px;border:1px solid #F3D4BC}
.badge i{width:7px;height:7px;border-radius:50%;background:var(--green);animation:pulse 2.2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(232,113,43,.5)}70%{box-shadow:0 0 0 9px rgba(232,113,43,0)}100%{box-shadow:0 0 0 0 rgba(232,113,43,0)}}
.hero h1{font-size:clamp(2.6rem,5.4vw,4.3rem);font-weight:800;margin:22px 0 0}
.hero h1 em{font-style:normal;color:var(--green);position:relative;white-space:nowrap}
.hero h1 em::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.08em;background:repeating-linear-gradient(90deg,var(--green) 0 8px,transparent 8px 15px);opacity:.5}
.hero-lead{font-size:clamp(1.05rem,1.5vw,1.2rem);color:var(--slate);max-width:36ch;margin:22px 0 0}
.hero-lead b{color:var(--navy);font-weight:600}
.hero-cta{display:flex;gap:13px;margin-top:30px;flex-wrap:wrap}
.hero-tr{margin-top:24px;display:flex;gap:18px;flex-wrap:wrap;font-size:13px;color:var(--slate-2)}
.hero-tr span{display:flex;align-items:center;gap:7px}
.hero-tr svg{width:15px;height:15px;color:var(--green)}

/* product glass mock */
.glass{background:var(--ink);border-radius:20px;padding:16px;box-shadow:0 40px 90px -44px rgba(10,30,54,.55),0 0 0 1px rgba(255,255,255,.05) inset;position:relative;overflow:hidden}
.glass::before{content:"";position:absolute;inset:0;background:radial-gradient(560px 220px at 82% -12%,rgba(232,113,43,.22),transparent 60%);pointer-events:none}
.gtop{display:flex;align-items:center;gap:8px;margin-bottom:13px}
.dot{width:9px;height:9px;border-radius:50%}
.gtitle{margin-left:8px;font-family:var(--mono);font-size:11px;color:#8FA2BC;letter-spacing:.03em}
.glive{margin-left:auto;font-family:var(--mono);font-size:10px;color:var(--green-bright);display:flex;align-items:center;gap:6px}
.glive i{width:6px;height:6px;border-radius:50%;background:var(--green-bright);animation:pulse 2s infinite}
.feed{display:flex;flex-direction:column;gap:7px}
.frow{display:flex;align-items:center;gap:11px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);border-radius:11px;padding:10px 12px}
.frow .sev{width:3px;align-self:stretch;border-radius:3px}
.frow .fm{min-width:0;flex:1}
.frow .ft{font-size:12.5px;color:#EAEEF5;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.frow .fs{font-family:var(--mono);font-size:10px;color:#8390A6;margin-top:2px}
.chip{font-family:var(--mono);font-size:9.5px;font-weight:600;padding:4px 8px;border-radius:7px;white-space:nowrap}
.gmini{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07)}
.gcell{height:26px;border-radius:5px}
.gfoot{display:flex;gap:14px;margin-top:12px}
.gstat b{display:block;font-family:var(--disp);font-size:18px;color:#fff;font-weight:700}
.gstat span{font-family:var(--mono);font-size:9.5px;color:#8390A6;text-transform:uppercase;letter-spacing:.05em}

/* trust bar */
.trust{padding:26px 0}
.trust-in{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.trust-l{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--slate-2);max-width:150px;line-height:1.5}
.trust-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;flex:1}
.tlogo{display:flex;align-items:center;gap:9px;font-family:var(--disp);font-weight:700;font-size:17px;color:var(--navy)}
.tlogo .tag{font-family:var(--mono);font-size:9px;font-weight:600;color:var(--green-deep);background:var(--green-soft);padding:3px 7px;border-radius:6px;letter-spacing:.04em}
.tslot{display:flex;align-items:center;justify-content:center;min-width:140px;height:44px;border:1.5px dashed var(--line-2);border-radius:11px;color:var(--slate-2);font-size:12.5px;font-family:var(--mono)}
.consent{width:100%;font-size:11px;color:var(--slate-2);margin-top:2px}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.stat{background:var(--card);padding:26px 22px;text-align:center}
.stat b{font-family:var(--disp);font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:800;color:var(--navy);display:block}
.stat b.g{color:var(--green)}
.stat span{font-size:13px;color:var(--slate);margin-top:5px;display:block}

/* section scaffold */
.band{padding:clamp(60px,8vw,104px) 0}
.sec-head{max-width:640px}
.sec-head.center{margin:0 auto;text-align:center}
.sec-title{font-size:clamp(1.9rem,3.6vw,2.7rem);margin:15px 0 0}
.sec-sub{color:var(--slate);font-size:clamp(1rem,1.3vw,1.1rem);margin-top:15px}

/* problem cards */
.cards{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:44px}
.pcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:20px}
.pcard .pi{width:40px;height:40px;border-radius:10px;background:var(--green-soft);color:var(--green-deep);display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.pcard .pi svg{width:20px;height:20px}
.pcard h3{font-size:15px;font-weight:600}
.pcard p{font-size:13px;color:var(--slate);margin-top:6px;line-height:1.5}

/* coverage (navy) */
.cov{background:var(--navy);color:#fff}
.cov .sec-title,.cov .eyebrow{color:#fff}
.cov .eyebrow::before{background:var(--green-bright)}
.cov .sec-sub{color:#B7C6DA}
.cov-groups{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}
.cgroup{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:20px}
.cgroup h4{font-size:14px;color:#fff;margin-bottom:14px;display:flex;align-items:center;gap:8px}
.cgroup h4 svg{width:16px;height:16px;color:var(--green-bright)}
.cgroup ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.cgroup li{font-size:13.5px;color:#CBD6E5;display:flex;align-items:center;gap:8px}
.cgroup li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--green-bright);flex:none}
.cov-note{margin-top:22px;font-family:var(--mono);font-size:11px;color:#8FA2BC}

/* how it works trail */
.trail{margin-top:52px;position:relative}
.trail-line{position:absolute;left:0;right:0;top:33px;height:2px;background:repeating-linear-gradient(90deg,var(--line-2) 0 7px,transparent 7px 14px)}
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;position:relative}
.step{text-align:center}
.step .node{width:66px;height:66px;margin:0 auto 16px;border-radius:50%;background:var(--card);border:2px solid var(--line-2);display:flex;align-items:center;justify-content:center;position:relative;z-index:2;transition:.35s}
.step .node svg{width:26px;height:26px;color:var(--slate)}
.step .k{font-family:var(--mono);font-size:10.5px;color:var(--green-deep);font-weight:600;letter-spacing:.06em}
.step h3{font-size:16px;font-weight:600;margin:5px 0 6px}
.step p{font-size:12.5px;color:var(--slate);line-height:1.5;max-width:19ch;margin:0 auto}
.trail.on .step .node{border-color:var(--green);box-shadow:0 8px 22px -10px rgba(232,113,43,.5)}
.trail.on .step .node svg{color:var(--green)}

/* product showcase (alternating) */
.show{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-top:56px}
.show.rev .show-text{order:2}
.show-text .eyebrow{margin-bottom:14px}
.show-text h3{font-size:clamp(1.5rem,2.4vw,2rem)}
.show-text p{color:var(--slate);margin-top:14px;font-size:15px}
.show-list{margin-top:18px;display:flex;flex-direction:column;gap:11px}
.show-list li{list-style:none;display:flex;gap:10px;font-size:14.5px;color:var(--navy)}
.show-list svg{width:19px;height:19px;color:var(--green);flex:none;margin-top:1px}
.panel-mock{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 60px -40px rgba(10,30,54,.4);overflow:hidden}
.pm-top{background:var(--navy);color:#fff;padding:12px 16px;font-family:var(--mono);font-size:11px;display:flex;align-items:center;gap:8px}
.pm-top .d{width:8px;height:8px;border-radius:50%}
.pm-body{padding:18px}
.mrow{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;font-size:12.5px}
.mrow .sv{width:3px;height:24px;border-radius:3px}
.mrow .mm{flex:1;min-width:0}
.mrow .mt{font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mrow .ms{font-family:var(--mono);font-size:10px;color:var(--slate-2)}
.mrow .mc{font-family:var(--mono);font-size:9.5px;font-weight:600;padding:3px 7px;border-radius:6px}
/* heat grid mock */
.heat{display:grid;grid-template-columns:auto repeat(5,1fr);gap:4px;font-family:var(--mono);font-size:10px}
.heat .hh{color:var(--slate-2);text-align:center;padding:2px}
.heat .hl{color:var(--slate);display:flex;align-items:center}
.heat .hc{height:26px;border-radius:5px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600}

/* solutions tabs */
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:40px}
.tab{font-size:14px;font-weight:600;padding:10px 16px;border-radius:10px;border:1.5px solid var(--line-2);background:#fff;color:var(--slate);cursor:pointer;transition:.15s}
.tab:hover{border-color:var(--slate-2)}
.tab.on{background:var(--navy);color:#fff;border-color:var(--navy)}
.tabpane{display:none;margin-top:22px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:32px;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center}
.tabpane.on{display:grid}
.tabpane h3{font-size:1.5rem}
.tabpane p{color:var(--slate);margin-top:12px;font-size:14.5px}
.tabpane .pill{display:inline-flex;font-family:var(--mono);font-size:11px;color:var(--green-deep);background:var(--green-soft);padding:5px 10px;border-radius:8px;margin-bottom:6px}
.tabpane .art{background:linear-gradient(150deg,var(--navy),var(--ink));border-radius:14px;min-height:170px;display:flex;align-items:center;justify-content:center;color:#fff;position:relative;overflow:hidden}
.tabpane .art .big{font-family:var(--disp);font-size:52px;font-weight:800;color:rgba(255,255,255,.14)}
.tabpane .art svg{width:60px;height:60px;color:var(--green-bright);position:absolute}
@media(max-width:760px){.tabpane.on{grid-template-columns:1fr}}

/* why */
.why{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.why-list{margin-top:24px;display:flex;flex-direction:column;gap:20px}
.wi{display:flex;gap:15px}
.wi .n{flex:none;width:34px;height:34px;border-radius:9px;background:var(--green-soft);color:var(--green-deep);display:flex;align-items:center;justify-content:center;font-family:var(--disp);font-weight:700}
.wi h3{font-size:16.5px;font-weight:600}
.wi p{font-size:14px;color:var(--slate);margin-top:5px}
.why-card{background:linear-gradient(155deg,var(--navy-2),var(--navy));border-radius:20px;padding:34px;color:#fff}
.why-card .q{font-family:var(--disp);font-size:22px;line-height:1.35;font-weight:500}
.why-card .q b{color:var(--green-bright);font-weight:600}
.why-card .attr{margin-top:22px;display:flex;align-items:center;gap:12px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12)}
.why-card .av{width:42px;height:42px;border-radius:11px;background:var(--green);display:flex;align-items:center;justify-content:center;font-family:var(--disp);font-weight:700}
.why-card .attr span{font-size:13px;color:#B7C6DA}
.why-card .attr b{display:block;color:#fff;font-size:14.5px}

/* comparison */
.cmp{margin-top:44px;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--card)}
.cmp table{width:100%;border-collapse:collapse}
.cmp th,.cmp td{padding:16px 20px;text-align:left;font-size:14px;border-bottom:1px solid var(--line)}
.cmp thead th{background:var(--navy);color:#fff;font-family:var(--disp);font-weight:600}
.cmp thead th.us{background:var(--green)}
.cmp td.feat{font-weight:600;color:var(--navy)}
.cmp .y{color:var(--green-deep);font-weight:600}
.cmp .n{color:var(--slate-2)}
.cmp tr:last-child td{border-bottom:none}

/* channels */
.chan{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:40px}
.chan .cc{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 12px;text-align:center;font-size:12.5px;font-weight:500;color:var(--navy)}
.chan .cc small{display:block;color:var(--slate-2);font-family:var(--mono);font-size:9.5px;margin-top:4px;text-transform:uppercase;letter-spacing:.04em}

/* testimonials */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
.quote{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px}
.quote p{font-size:14.5px;color:var(--navy);line-height:1.6}
.quote .who{margin-top:16px;font-size:12.5px;color:var(--slate-2);font-family:var(--mono)}
.ph-note{text-align:center;font-size:12px;color:var(--slate-2);margin-top:14px}

/* faq */
.faq{max-width:820px;margin:40px auto 0}
.qa{border-bottom:1px solid var(--line)}
.qa button{width:100%;background:none;border:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font-family:var(--disp);font-size:17px;font-weight:600;color:var(--navy);text-align:left}
.qa button svg{width:20px;height:20px;color:var(--green);flex:none;transition:.2s}
.qa.open button svg{transform:rotate(45deg)}
.qa .a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.qa .a p{padding:0 0 20px;color:var(--slate);font-size:14.5px}

/* cta + form */
.beta-shell{display:grid;grid-template-columns:.82fr 1.18fr;border-radius:24px;overflow:hidden;border:1px solid var(--line);box-shadow:0 40px 80px -50px rgba(10,30,54,.5);background:#fff}
.beta-aside{background:linear-gradient(155deg,var(--navy-2),var(--navy));color:#fff;padding:clamp(30px,4vw,48px)}
.beta-aside h2{color:#fff;font-size:clamp(1.7rem,2.6vw,2.2rem);margin-top:16px}
.beta-aside p{color:#CFE0EE;margin-top:14px;font-size:15px}
.bp{margin-top:24px;display:flex;flex-direction:column;gap:13px}
.bp div{display:flex;gap:11px;align-items:flex-start;font-size:14px}
.bp svg{width:18px;height:18px;flex:none;margin-top:1px;color:var(--green-bright)}
.beta-form{padding:clamp(26px,3.4vw,42px)}
.field{margin-bottom:15px}
.field label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:6px}
.req{color:var(--green-deep)}
.input,.select,.textarea{width:100%;font-family:var(--body);font-size:14.5px;color:var(--navy);background:var(--paper);border:1.5px solid var(--line-2);border-radius:10px;padding:11px 13px;transition:.15s}
.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--green);background:#fff;box-shadow:0 0 0 3px rgba(232,113,43,.14)}
.textarea{resize:vertical;min-height:80px}
.frow2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.checks{display:flex;flex-wrap:wrap;gap:8px}
.check{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--slate);border:1.5px solid var(--line-2);border-radius:9px;padding:8px 11px;cursor:pointer}
.check input{accent-color:var(--green);width:15px;height:15px}
.check.on{border-color:var(--green);background:var(--green-soft);color:var(--green-deep)}
.consent2{display:flex;gap:9px;align-items:flex-start;margin:4px 0 16px;font-size:12.5px;color:var(--slate)}
.consent2 input{accent-color:var(--green);width:15px;height:15px;margin-top:1px;flex:none}
.err{font-size:12px;color:#D33;margin-top:5px;display:none}
.field.invalid .input{border-color:#D33}
.field.invalid .err{display:block}
.submit{width:100%;justify-content:center;padding:14px}
.fn{font-size:12px;color:var(--slate-2);text-align:center;margin-top:12px}
.fn a{color:var(--green-deep);font-weight:600}
.ok-state{display:none;text-align:center;padding:30px 10px}
.ok-state.show{display:block}
.ok-state .ok{width:56px;height:56px;border-radius:50%;background:var(--green-soft);color:var(--green-deep);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}

/* footer */
footer{background:var(--ink);color:#B7C6DA;padding:64px 0 34px;margin-top:16px}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.09)}
.foot-logo{width:210px;margin-bottom:16px}
.foot-brand p{font-size:13.5px;line-height:1.6;max-width:34ch}
.foot-tag{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--green-bright);margin-bottom:10px}
.fcol h4{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#7F8EA4;margin-bottom:14px}
.fcol a{display:block;font-size:14px;color:#B7C6DA;padding:5px 0}
.fcol a:hover{color:#fff}
.foot-bot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:22px;font-size:12.5px;color:#7F8EA4}


/* threat taxonomy */
.taxo{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px}
.tx{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:22px}
.tx h3{font-size:15px;display:flex;align-items:center;gap:9px;color:var(--navy)}
.tx h3 .ic{width:30px;height:30px;border-radius:8px;background:var(--green-soft);color:var(--green-deep);display:flex;align-items:center;justify-content:center;flex:none}
.tx h3 .ic svg{width:16px;height:16px}
.tx ul{list-style:none;margin-top:12px;display:flex;flex-direction:column;gap:8px}
.tx li{font-size:13px;color:var(--slate);display:flex;gap:8px;line-height:1.45}
.tx li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--green);flex:none;margin-top:7px}
.tx li b{color:var(--navy);font-weight:600}
/* detect/monitor/remove band */
.dmr{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}
.dmr .d{background:linear-gradient(155deg,var(--navy-2),var(--navy));color:#fff;border-radius:var(--r);padding:24px}
.dmr .d h4{font-size:16px;display:flex;align-items:center;gap:9px;color:#fff}
.dmr .d h4 .n{font-family:var(--mono);font-size:11px;color:var(--green-bright);border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:2px 7px}
.dmr .d p{color:#C7CDD6;font-size:13px;margin-top:12px;line-height:1.6}
.dmr .d p b{color:#fff;font-weight:600}
@media(max-width:960px){.taxo{grid-template-columns:1fr 1fr}.dmr{grid-template-columns:1fr}}
@media(max-width:560px){.taxo{grid-template-columns:1fr}}
.reveal{opacity:0;transform:translateY(22px);transition:.7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

@media(max-width:960px){
  .hero-grid,.why,.show,.show.rev .show-text{grid-template-columns:1fr;gap:34px}
  .show.rev .show-text{order:0}
  .cards{grid-template-columns:1fr 1fr 1fr}
  .cov-groups{grid-template-columns:1fr 1fr}
  .stats{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr 1fr 1fr}.trail-line{display:none}
  .chan{grid-template-columns:1fr 1fr 1fr}
  .quotes{grid-template-columns:1fr}
  .beta-shell{grid-template-columns:1fr}.frow2{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .nav-links{display:none}.burger{display:flex;align-items:center;justify-content:center}
  .nav-links.open{display:flex;position:absolute;top:70px;left:0;right:0;flex-direction:column;background:#fff;border-bottom:1px solid var(--line);padding:14px 24px;margin:0}
  .nav-links.open a{padding:11px 0;border-bottom:1px solid var(--line)}
}
@media(max-width:560px){.cards,.cov-groups,.stats,.steps,.chan{grid-template-columns:1fr}.stats,.cards{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
/* ================= TOP BAR ================= */

.top-bar{
  background:#222831;
  color:#fff;
  font-size:13px;
}

.top-bar-inner{
  max-width:1200px;
  margin:auto;
  height:38px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:0 20px;
}

.top-links{
  display:flex;
  gap:24px;
}

.top-links a{
  color:#fff;
  text-decoration:none;
  font-size:13px;
}

/* ================= MAIN HEADER ================= */

.v3-header-bg{
  background:#f3f3f3;
  border-bottom:1px solid #e5e5e5;
}

.custom-header{
  max-width:1200px;
  margin:auto;
  padding:14px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
}

.logo img{
  width:250px;
  height:auto;
  display:block;
}

.header-right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:24px;
  flex:1;
}

/* ================= MAX MEGA MENU ================= */

#mega-menu-wrap-header-menu{
  background:transparent !important;
  width:auto !important;
}

#menu-main-menu {
  display: contents;
  list-style: none;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:22px;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item{
  margin:0 !important;
  float:none !important;
  display:block !important;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item > a.mega-menu-link{
  background:transparent !important;
  color:#4b4b4b !important;
  font-size:16px !important;
  font-weight:500 !important;
  height:auto !important;
  line-height:1.2 !important;
  padding:10px 0 !important;
  white-space:nowrap;
  display:flex !important;
  align-items:center;
}

#mega-menu-wrap-header-menu #mega-menu-header-menu > li.mega-menu-item:hover > a.mega-menu-link{
  color:#EB7A26 !important;
}

/* Remove bullets if any */

#mega-menu-wrap-header-menu ul,
#mega-menu-wrap-header-menu li{
  list-style:none !important;
}

/* ================= BUTTONS ================= */

.header-buttons{
  display:flex;
  align-items:center;
  gap:12px;
}

.btn-outline{
  border:1px solid #d8d8d8;
  color:#222;
  text-decoration:none;
  padding:11px 20px;
  border-radius:14px;
  font-weight:600;
}

.btn-outline:hover{
  border-color:#EB7A26;
  color:#EB7A26;
}

.btn-orange{
  background:#EB7A26;
  color:#fff;
  text-decoration:none;
  padding:12px 22px;
  border-radius:14px;
  font-weight:600;
}

.btn-orange:hover{
  background:#d86815;
  color:#fff;
}



/* ================= MOBILE ================= */

@media (max-width:992px){

  .top-links,
  .header-buttons{
      display:none;
  }

  .custom-header{
      padding:12px 15px;
  }

  .header-right{
      justify-content:flex-end;
  }
}