.elementor-kit-4{--e-global-color-primary:#031D48;--e-global-color-secondary:#020817;--e-global-color-text:#475569;--e-global-color-accent:#E0353D;--e-global-color-aa_ink:#0B1530;--e-global-color-aa_light:#F3F6FC;--e-global-color-aa_line:#E2E8F3;--e-global-color-aa_white:#FFFFFF;--e-global-color-aa_on_dark:#A9B8D6;--e-global-color-aa_red_dark:#C21F28;--e-global-color-aa_red_light:#FF6B72;--e-global-color-aa_blue:#4F7BFF;--e-global-color-aa_night2:#071430;--e-global-color-cp_paper:#F5F3EE;--e-global-color-cp_ink:#0A0F1C;--e-global-color-cp_red:#D7263D;--e-global-color-cp_line:#D8DCE3;--e-global-color-cp_mute:#525B6B;--e-global-color-bn_bg:#F5F7FC;--e-global-color-bn_ink:#0B1E4A;--e-global-color-bn_blue:#3D6BFF;--e-global-color-bn_red:#EF3B4A;--e-global-color-d4_red:#D62839;--e-global-color-d4_light:#F4F6FA;--e-global-color-d4_text:#4A5568;--e-global-color-d4_ink:#0B1733;--e-global-color-d4_navy2:#06132E;--e-global-color-bn_mute:#5A6782;--e-global-typography-primary-font-family:"Sora";--e-global-typography-primary-font-size:70px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.04em;--e-global-typography-primary-letter-spacing:-2.4px;--e-global-typography-secondary-font-family:"Sora";--e-global-typography-secondary-font-size:50px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.08em;--e-global-typography-secondary-letter-spacing:-1.6px;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-family:"Manrope";--e-global-typography-accent-font-size:12px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.4em;--e-global-typography-accent-letter-spacing:1.8px;--e-global-typography-aa_h3-font-family:"Sora";--e-global-typography-aa_h3-font-size:21px;--e-global-typography-aa_h3-font-weight:600;--e-global-typography-aa_h3-line-height:1.3em;--e-global-typography-aa_h3-letter-spacing:-0.4px;--e-global-typography-aa_h4-font-family:"Manrope";--e-global-typography-aa_h4-font-size:16px;--e-global-typography-aa_h4-font-weight:700;--e-global-typography-aa_h4-line-height:1.4em;--e-global-typography-aa_lead-font-family:"Manrope";--e-global-typography-aa_lead-font-size:19px;--e-global-typography-aa_lead-font-weight:400;--e-global-typography-aa_lead-line-height:1.65em;--e-global-typography-aa_small-font-family:"Manrope";--e-global-typography-aa_small-font-size:15px;--e-global-typography-aa_small-font-weight:400;--e-global-typography-aa_small-line-height:1.65em;--e-global-typography-aa_button-font-family:"Manrope";--e-global-typography-aa_button-font-size:15px;--e-global-typography-aa_button-font-weight:700;--e-global-typography-aa_button-line-height:1em;--e-global-typography-aa_button-letter-spacing:0.1px;--e-global-typography-aa_nav-font-family:"Manrope";--e-global-typography-aa_nav-font-size:15px;--e-global-typography-aa_nav-font-weight:600;--e-global-typography-aa_nav-line-height:1.2em;--e-global-typography-aa_quote-font-family:"Sora";--e-global-typography-aa_quote-font-size:38px;--e-global-typography-aa_quote-font-weight:600;--e-global-typography-aa_quote-line-height:1.15em;--e-global-typography-aa_quote-letter-spacing:-1px;--e-global-typography-aa_marquee-font-family:"Sora";--e-global-typography-aa_marquee-font-size:64px;--e-global-typography-aa_marquee-font-weight:600;--e-global-typography-aa_marquee-line-height:1.1em;--e-global-typography-aa_marquee-letter-spacing:-2px;--e-global-typography-aa_mono-font-family:"Manrope";--e-global-typography-aa_mono-font-size:14px;--e-global-typography-aa_mono-font-weight:500;--e-global-typography-aa_mono-line-height:1.55em;--e-global-typography-cp_display-font-family:"Space Grotesk";--e-global-typography-cp_display-font-size:86px;--e-global-typography-cp_display-font-weight:600;--e-global-typography-cp_display-line-height:0.98em;--e-global-typography-cp_display-letter-spacing:-3.2px;--e-global-typography-cp_h2-font-family:"Space Grotesk";--e-global-typography-cp_h2-font-size:56px;--e-global-typography-cp_h2-font-weight:600;--e-global-typography-cp_h2-line-height:1.02em;--e-global-typography-cp_h2-letter-spacing:-1.8px;--e-global-typography-cp_h3-font-family:"Space Grotesk";--e-global-typography-cp_h3-font-size:26px;--e-global-typography-cp_h3-font-weight:600;--e-global-typography-cp_h3-line-height:1.15em;--e-global-typography-cp_h3-letter-spacing:-0.6px;--e-global-typography-cp_body-font-family:"Inter Tight";--e-global-typography-cp_body-font-size:17px;--e-global-typography-cp_body-font-weight:400;--e-global-typography-cp_body-line-height:1.65em;--e-global-typography-cp_small-font-family:"Inter Tight";--e-global-typography-cp_small-font-size:15px;--e-global-typography-cp_small-font-weight:400;--e-global-typography-cp_small-line-height:1.6em;--e-global-typography-cp_label-font-family:"Inter Tight";--e-global-typography-cp_label-font-size:12px;--e-global-typography-cp_label-font-weight:600;--e-global-typography-cp_label-text-transform:uppercase;--e-global-typography-cp_label-line-height:1.3em;--e-global-typography-cp_label-letter-spacing:2.2px;--e-global-typography-cp_lead-font-family:"Inter Tight";--e-global-typography-cp_lead-font-size:20px;--e-global-typography-cp_lead-font-weight:400;--e-global-typography-cp_lead-line-height:1.6em;--e-global-typography-cp_statement-font-family:"Space Grotesk";--e-global-typography-cp_statement-font-size:50px;--e-global-typography-cp_statement-font-weight:500;--e-global-typography-cp_statement-line-height:1.15em;--e-global-typography-cp_statement-letter-spacing:-1.4px;--e-global-typography-cp_ticker-font-family:"Space Grotesk";--e-global-typography-cp_ticker-font-size:30px;--e-global-typography-cp_ticker-font-weight:500;--e-global-typography-cp_ticker-line-height:1em;--e-global-typography-cp_ticker-letter-spacing:-0.5px;--e-global-typography-d4_display-font-family:"Poppins";--e-global-typography-d4_display-font-size:64px;--e-global-typography-d4_display-font-weight:700;--e-global-typography-d4_display-line-height:1.1em;--e-global-typography-d4_display-letter-spacing:-1.2px;--e-global-typography-d4_h2-font-family:"Poppins";--e-global-typography-d4_h2-font-size:42px;--e-global-typography-d4_h2-font-weight:700;--e-global-typography-d4_h2-line-height:1.18em;--e-global-typography-d4_h2-letter-spacing:-0.8px;--e-global-typography-d4_h3-font-family:"Poppins";--e-global-typography-d4_h3-font-size:21px;--e-global-typography-d4_h3-font-weight:600;--e-global-typography-d4_h3-line-height:1.3em;--e-global-typography-d4_h3-letter-spacing:-0.2px;--e-global-typography-d4_body-font-family:"Inter";--e-global-typography-d4_body-font-size:16px;--e-global-typography-d4_body-font-weight:400;--e-global-typography-d4_body-line-height:1.75em;--e-global-typography-d4_small-font-family:"Inter";--e-global-typography-d4_small-font-size:14px;--e-global-typography-d4_small-font-weight:400;--e-global-typography-d4_small-line-height:1.65em;--e-global-typography-d4_label-font-family:"Poppins";--e-global-typography-d4_label-font-size:13px;--e-global-typography-d4_label-font-weight:600;--e-global-typography-d4_label-text-transform:uppercase;--e-global-typography-d4_label-line-height:1.3em;--e-global-typography-d4_label-letter-spacing:2px;--e-global-typography-d4_lead-font-family:"Inter";--e-global-typography-d4_lead-font-size:18px;--e-global-typography-d4_lead-font-weight:400;--e-global-typography-d4_lead-line-height:1.7em;--e-global-typography-d4_nav-font-family:"Poppins";--e-global-typography-d4_nav-font-size:15px;--e-global-typography-d4_nav-font-weight:500;--e-global-typography-d4_nav-line-height:1.2em;--e-global-typography-d4_btn-font-family:"Poppins";--e-global-typography-d4_btn-font-size:15px;--e-global-typography-d4_btn-font-weight:600;--e-global-typography-d4_btn-line-height:1em;--e-global-typography-d4_btn-letter-spacing:0.2px;--e-global-typography-bn_display-font-family:"Outfit";--e-global-typography-bn_display-font-size:80px;--e-global-typography-bn_display-font-weight:600;--e-global-typography-bn_display-line-height:1em;--e-global-typography-bn_display-letter-spacing:-2.6px;--e-global-typography-bn_h2-font-family:"Outfit";--e-global-typography-bn_h2-font-size:54px;--e-global-typography-bn_h2-font-weight:600;--e-global-typography-bn_h2-line-height:1.05em;--e-global-typography-bn_h2-letter-spacing:-1.6px;--e-global-typography-bn_h3-font-family:"Outfit";--e-global-typography-bn_h3-font-size:24px;--e-global-typography-bn_h3-font-weight:600;--e-global-typography-bn_h3-line-height:1.2em;--e-global-typography-bn_h3-letter-spacing:-0.4px;--e-global-typography-bn_body-font-family:"Plus Jakarta Sans";--e-global-typography-bn_body-font-size:17px;--e-global-typography-bn_body-font-weight:400;--e-global-typography-bn_body-line-height:1.7em;--e-global-typography-bn_small-font-family:"Plus Jakarta Sans";--e-global-typography-bn_small-font-size:15px;--e-global-typography-bn_small-font-weight:500;--e-global-typography-bn_small-line-height:1.6em;--e-global-typography-bn_label-font-family:"Plus Jakarta Sans";--e-global-typography-bn_label-font-size:12px;--e-global-typography-bn_label-font-weight:700;--e-global-typography-bn_label-text-transform:uppercase;--e-global-typography-bn_label-line-height:1.3em;--e-global-typography-bn_label-letter-spacing:1.6px;--e-global-typography-bn_lead-font-family:"Plus Jakarta Sans";--e-global-typography-bn_lead-font-size:20px;--e-global-typography-bn_lead-font-weight:400;--e-global-typography-bn_lead-line-height:1.6em;--e-global-typography-bn_statement-font-family:"Outfit";--e-global-typography-bn_statement-font-size:52px;--e-global-typography-bn_statement-font-weight:500;--e-global-typography-bn_statement-line-height:1.15em;--e-global-typography-bn_statement-letter-spacing:-1.4px;--e-global-typography-bn_ui-font-family:"Plus Jakarta Sans";--e-global-typography-bn_ui-font-size:14px;--e-global-typography-bn_ui-font-weight:600;--e-global-typography-bn_ui-line-height:1.4em;--e-global-typography-d4_h1-font-family:"Poppins";--e-global-typography-d4_h1-font-size:50px;--e-global-typography-d4_h1-font-weight:700;--e-global-typography-d4_h1-line-height:1.14em;--e-global-typography-d4_h1-letter-spacing:-1px;background-color:#FFFFFF;color:#4A5568;font-family:"Inter", Sans-serif;font-size:16px;line-height:1.75em;}.elementor-kit-4 button,.elementor-kit-4 input[type="button"],.elementor-kit-4 input[type="submit"],.elementor-kit-4 .elementor-button{background-color:#D62839;font-family:"Poppins", Sans-serif;font-size:15px;font-weight:600;color:#FFFFFF;border-radius:10px 10px 10px 10px;padding:17px 30px 17px 30px;}.elementor-kit-4 button:hover,.elementor-kit-4 button:focus,.elementor-kit-4 input[type="button"]:hover,.elementor-kit-4 input[type="button"]:focus,.elementor-kit-4 input[type="submit"]:hover,.elementor-kit-4 input[type="submit"]:focus,.elementor-kit-4 .elementor-button:hover,.elementor-kit-4 .elementor-button:focus{background-color:#031D48;color:#FFFFFF;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4 a{color:#D62839;}.elementor-kit-4 a:hover{color:#0B1733;}.elementor-kit-4 h1{color:#0B1733;font-family:"Poppins", Sans-serif;font-weight:700;}.elementor-kit-4 h2{color:#0B1733;font-family:"Poppins", Sans-serif;font-weight:700;}.elementor-kit-4 h3{color:#0B1733;font-family:"Poppins", Sans-serif;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-4{--e-global-typography-primary-font-size:54px;--e-global-typography-secondary-font-size:40px;--e-global-typography-text-font-size:17px;--e-global-typography-accent-font-size:12px;--e-global-typography-aa_h3-font-size:20px;--e-global-typography-aa_h4-font-size:16px;--e-global-typography-aa_lead-font-size:18px;--e-global-typography-aa_small-font-size:15px;--e-global-typography-aa_button-font-size:15px;--e-global-typography-aa_nav-font-size:16px;--e-global-typography-aa_quote-font-size:32px;--e-global-typography-aa_marquee-font-size:48px;--e-global-typography-aa_mono-font-size:14px;--e-global-typography-cp_display-font-size:60px;--e-global-typography-cp_h2-font-size:44px;--e-global-typography-cp_h3-font-size:23px;--e-global-typography-cp_body-font-size:17px;--e-global-typography-cp_small-font-size:15px;--e-global-typography-cp_label-font-size:12px;--e-global-typography-cp_lead-font-size:18px;--e-global-typography-cp_statement-font-size:38px;--e-global-typography-cp_ticker-font-size:26px;--e-global-typography-d4_display-font-size:48px;--e-global-typography-d4_h2-font-size:34px;--e-global-typography-d4_h3-font-size:20px;--e-global-typography-d4_body-font-size:16px;--e-global-typography-d4_small-font-size:14px;--e-global-typography-d4_label-font-size:13px;--e-global-typography-d4_lead-font-size:17px;--e-global-typography-d4_nav-font-size:16px;--e-global-typography-d4_btn-font-size:15px;--e-global-typography-bn_display-font-size:58px;--e-global-typography-bn_h2-font-size:42px;--e-global-typography-bn_h3-font-size:22px;--e-global-typography-bn_body-font-size:17px;--e-global-typography-bn_small-font-size:15px;--e-global-typography-bn_label-font-size:12px;--e-global-typography-bn_lead-font-size:18px;--e-global-typography-bn_statement-font-size:40px;--e-global-typography-bn_ui-font-size:14px;--e-global-typography-d4_h1-font-size:42px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-4{--e-global-typography-primary-font-size:40px;--e-global-typography-secondary-font-size:32px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:11px;--e-global-typography-aa_h3-font-size:19px;--e-global-typography-aa_h4-font-size:16px;--e-global-typography-aa_lead-font-size:17px;--e-global-typography-aa_small-font-size:15px;--e-global-typography-aa_button-font-size:14px;--e-global-typography-aa_nav-font-size:16px;--e-global-typography-aa_quote-font-size:28px;--e-global-typography-aa_marquee-font-size:36px;--e-global-typography-aa_mono-font-size:13px;--e-global-typography-cp_display-font-size:42px;--e-global-typography-cp_h2-font-size:34px;--e-global-typography-cp_h3-font-size:21px;--e-global-typography-cp_body-font-size:16px;--e-global-typography-cp_small-font-size:15px;--e-global-typography-cp_label-font-size:11px;--e-global-typography-cp_lead-font-size:17px;--e-global-typography-cp_statement-font-size:28px;--e-global-typography-cp_ticker-font-size:22px;--e-global-typography-d4_display-font-size:36px;--e-global-typography-d4_h2-font-size:29px;--e-global-typography-d4_h3-font-size:19px;--e-global-typography-d4_body-font-size:16px;--e-global-typography-d4_small-font-size:14px;--e-global-typography-d4_label-font-size:12px;--e-global-typography-d4_lead-font-size:16px;--e-global-typography-d4_nav-font-size:16px;--e-global-typography-d4_btn-font-size:14px;--e-global-typography-bn_display-font-size:42px;--e-global-typography-bn_h2-font-size:34px;--e-global-typography-bn_h3-font-size:20px;--e-global-typography-bn_body-font-size:16px;--e-global-typography-bn_small-font-size:14px;--e-global-typography-bn_label-font-size:11px;--e-global-typography-bn_lead-font-size:17px;--e-global-typography-bn_statement-font-size:30px;--e-global-typography-bn_ui-font-size:13px;--e-global-typography-d4_h1-font-size:33px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =========================================================
   American Apex Court Reporters — "Midnight Glass" design layer (v5)
   Colors and fonts come from Elementor globals (Site Settings).
   Classes are prefixed aa- and set in Advanced > CSS Classes.
   Motion is driven by the "Site motion" snippet (Elementor > Custom Code).
   ========================================================= */

@property --aa-angle { syntax: "<angle>"; initial-value: 0deg; inherits: false; }

:root {
	--aa-navy: var(--e-global-color-primary, #031D48);
	--aa-night: var(--e-global-color-secondary, #020817);
	--aa-red: var(--e-global-color-accent, #E0353D);
	--aa-blue: var(--e-global-color-aa_blue, #4F7BFF);
	--aa-text: var(--e-global-color-text, #475569);
	--aa-light: var(--e-global-color-aa_light, #F3F6FC);
	--aa-on-dark: var(--e-global-color-aa_on_dark, #A9B8D6);
	--aa-ease: cubic-bezier(.22, .68, .2, 1);
	--aa-radius: 22px;
	--aa-glass-dark: linear-gradient(140deg, rgba(255, 255, 255, .11), rgba(255, 255, 255, .03));
	--aa-glass-light: linear-gradient(140deg, rgba(255, 255, 255, .82), rgba(255, 255, 255, .55));
}

html { scroll-behavior: smooth; scroll-padding-top: 110px; }
html, body { overflow-x: clip; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
::selection { background: var(--aa-red); color: #fff; }
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }

/* ---------- Motion bootstrap (pre-hide only while JS motion is running) ---------- */
.aa-js:not(.aa-ready) .aa-reveal,
.aa-js:not(.aa-ready) .aa-stagger > .e-con-inner > *,
.aa-js:not(.aa-ready) .aa-stagger > *:not(.e-con-inner) { opacity: 0; }
.aa-split-word { display: inline-block; overflow: hidden; vertical-align: top; padding-bottom: .08em; margin-bottom: -.08em; }
.aa-split-word > span { display: inline-block; will-change: transform; }

/* ---------- Dark sections + aurora ---------- */
.aa-night { position: relative; overflow: clip; isolation: isolate; }
.aa-night > .e-con-inner > .e-con:not(.aa-aurora), .aa-night > .e-con:not(.aa-aurora) { position: relative; z-index: 1; }
.aa-aurora { position: absolute !important; inset: 0; z-index: 0 !important; pointer-events: none; overflow: hidden; }
.aa-aurora::after { content: ""; position: absolute; inset: 0;
	background-image: linear-gradient(rgba(255, 255, 255, .045) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .045) 1px, transparent 1px);
	background-size: 72px 72px; -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 40%, #000 20%, transparent 75%); mask-image: radial-gradient(ellipse 70% 60% at 50% 40%, #000 20%, transparent 75%); }
.aa-orb { position: absolute !important; border-radius: 50%; filter: blur(70px); opacity: .55; will-change: transform; }
.aa-orb-1 { width: 620px !important; height: 620px; top: -220px; left: -140px; background: radial-gradient(circle, #2A5BFF 0%, rgba(42, 91, 255, 0) 70%); animation: aaDrift1 18s ease-in-out infinite alternate; }
.aa-orb-2 { width: 520px !important; height: 520px; bottom: -240px; right: -120px; background: radial-gradient(circle, #E0353D 0%, rgba(224, 53, 61, 0) 70%); opacity: .38; animation: aaDrift2 22s ease-in-out infinite alternate; }
.aa-orb-3 { width: 460px !important; height: 460px; top: 30%; left: 45%; background: radial-gradient(circle, #1B3D9E 0%, rgba(27, 61, 158, 0) 70%); animation: aaDrift3 26s ease-in-out infinite alternate; }
@keyframes aaDrift1 { to { transform: translate3d(160px, 120px, 0) scale(1.15); } }
@keyframes aaDrift2 { to { transform: translate3d(-180px, -90px, 0) scale(1.2); } }
@keyframes aaDrift3 { to { transform: translate3d(-140px, 60px, 0) scale(.85); } }

/* Soft colour blobs behind light sections */
.aa-soft { position: relative; overflow: clip; isolation: isolate; }
.aa-soft > .e-con-inner > .e-con:not(.aa-aurora) { position: relative; z-index: 1; }
.aa-soft .aa-orb { filter: blur(90px); opacity: .5; }
.aa-soft .aa-orb-1 { background: radial-gradient(circle, #C9D8FF 0%, rgba(201, 216, 255, 0) 70%); }
.aa-soft .aa-orb-2 { background: radial-gradient(circle, #FFD3D6 0%, rgba(255, 211, 214, 0) 70%); opacity: .6; }
.aa-soft .aa-orb-3 { background: radial-gradient(circle, #DCE6FF 0%, rgba(220, 230, 255, 0) 70%); }
.aa-soft .aa-aurora::after { display: none; }

/* ---------- Glass surfaces ---------- */
.aa-glass, .aa-glass-light { border-radius: var(--aa-radius); -webkit-backdrop-filter: blur(18px) saturate(160%); backdrop-filter: blur(18px) saturate(160%); }
.aa-glass { background: var(--aa-glass-dark) !important; border: 1px solid rgba(255, 255, 255, .13); box-shadow: 0 30px 70px -35px rgba(0, 0, 0, .75), inset 0 1px 0 rgba(255, 255, 255, .14); }
.aa-glass-light { background: var(--aa-glass-light) !important; border: 1px solid rgba(255, 255, 255, .9); box-shadow: 0 30px 60px -36px rgba(16, 38, 96, .35), inset 0 1px 0 #fff; }

/* Cursor spotlight (position set by motion script) */
.aa-spot { position: relative; overflow: hidden; }
.aa-spot::after { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity .45s var(--aa-ease);
	background: radial-gradient(420px circle at var(--mx, 50%) var(--my, 0%), rgba(79, 123, 255, .22), transparent 45%); }
.aa-spot:hover::after { opacity: 1; }
.aa-glass-light.aa-spot::after { background: radial-gradient(420px circle at var(--mx, 50%) var(--my, 0%), rgba(79, 123, 255, .12), transparent 45%); }

/* Rotating gradient ring */
.aa-ring { position: relative; }
.aa-ring::before { content: "" !important; position: absolute; inset: -1px; border-radius: inherit; padding: 1.5px; pointer-events: none; opacity: 1 !important; mix-blend-mode: normal !important; z-index: 2;
	background: conic-gradient(from var(--aa-angle), transparent 0 55%, #4F7BFF 70%, #FF5A63 82%, transparent 95%);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude;
	animation: aaSpin 7s linear infinite; }
@keyframes aaSpin { to { --aa-angle: 360deg; } }

/* ---------- Labels + gradient text ---------- */
.aa-chip .elementor-heading-title { display: inline-flex; align-items: center; gap: 10px; padding: 8px 16px 8px 12px; border-radius: 100px;
	background: rgba(255, 255, 255, .07); border: 1px solid rgba(255, 255, 255, .16); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); }
.aa-chip .elementor-heading-title::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #FF5A63; box-shadow: 0 0 0 0 rgba(255, 90, 99, .6); animation: aaPulse 2s infinite; }
.aa-chip-light .elementor-heading-title { background: rgba(255, 255, 255, .7); border-color: rgba(3, 29, 72, .1); }
@keyframes aaPulse { 0% { box-shadow: 0 0 0 0 rgba(255, 90, 99, .55); } 70% { box-shadow: 0 0 0 10px rgba(255, 90, 99, 0); } 100% { box-shadow: 0 0 0 0 rgba(255, 90, 99, 0); } }
.elementor-heading-title em { font-style: normal; background: linear-gradient(100deg, #7FA2FF 0%, #FF6B72 45%, #7FA2FF 90%); background-size: 200% auto;
	-webkit-background-clip: text; background-clip: text; color: transparent; animation: aaShimmer 6s linear infinite; }
.aa-on-light .elementor-heading-title em, .elementor-heading-title em.aa-em-dark { background-image: linear-gradient(100deg, #2A5BFF 0%, #E0353D 45%, #2A5BFF 90%); }
@keyframes aaShimmer { to { background-position: -200% center; } }

/* ---------- Buttons ---------- */
.elementor-button { white-space: nowrap; border-radius: 100px !important; position: relative; overflow: hidden; isolation: isolate;
	transition: transform .4s var(--aa-ease), box-shadow .4s var(--aa-ease), background-color .4s var(--aa-ease), color .4s var(--aa-ease); }
.elementor-button .elementor-button-icon svg { transition: transform .4s var(--aa-ease); }
.elementor-button:hover .elementor-button-icon svg { transform: translateX(4px); }
.aa-btn-primary .elementor-button { background-image: linear-gradient(135deg, #FF5A63, #D7262F) !important; box-shadow: 0 14px 34px -14px rgba(224, 53, 61, .85), inset 0 1px 0 rgba(255, 255, 255, .25); }
.aa-btn-primary .elementor-button::after { content: ""; position: absolute; inset: 0; z-index: -1; transform: translateX(-120%);
	background: linear-gradient(110deg, transparent 30%, rgba(255, 255, 255, .35) 50%, transparent 70%); transition: transform .9s var(--aa-ease); }
.aa-btn-primary .elementor-button:hover::after { transform: translateX(120%); }
.aa-btn-primary .elementor-button:hover { box-shadow: 0 20px 44px -14px rgba(224, 53, 61, .95), inset 0 1px 0 rgba(255, 255, 255, .25); }
.aa-btn-glass .elementor-button { background: rgba(255, 255, 255, .08) !important; border: 1px solid rgba(255, 255, 255, .22); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.aa-btn-glass .elementor-button:hover { background: rgba(255, 255, 255, .16) !important; border-color: rgba(255, 255, 255, .45); }
.aa-btn-ghost .elementor-button { background: rgba(255, 255, 255, .6) !important; border: 1px solid rgba(3, 29, 72, .14); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.aa-btn-ghost .elementor-button:hover { background: #fff !important; border-color: rgba(3, 29, 72, .35); box-shadow: 0 14px 30px -18px rgba(3, 29, 72, .45); }
.aa-link .elementor-button { padding: 0 !important; background: none !important; border-radius: 0 !important; overflow: visible; }
.aa-link .elementor-button-text { background-image: linear-gradient(currentColor, currentColor); background-size: 0% 1px; background-position: 0 100%; background-repeat: no-repeat; padding-bottom: 2px; transition: background-size .45s var(--aa-ease); }
.aa-link .elementor-button:hover .elementor-button-text { background-size: 100% 1px; }

/* ---------- Floating glass header ---------- */
.aa-header { position: fixed !important; top: 14px; left: 0; right: 0; z-index: 999; background: transparent !important; pointer-events: none; transition: top .45s var(--aa-ease); }
.admin-bar .aa-header { top: 46px; }
.aa-header > .e-con-inner > .aa-nav-shell, .aa-header > .aa-nav-shell { pointer-events: auto; }
.aa-nav-shell { border-radius: 18px; background: rgba(4, 13, 36, .55) !important; border: 1px solid rgba(255, 255, 255, .1);
	-webkit-backdrop-filter: blur(20px) saturate(170%); backdrop-filter: blur(20px) saturate(170%); box-shadow: 0 20px 50px -30px rgba(0, 0, 0, .8);
	transition: background-color .45s var(--aa-ease), padding .45s var(--aa-ease), box-shadow .45s var(--aa-ease); }
.aa-scrolled .aa-header { top: 8px; }
.aa-scrolled .aa-nav-shell { background: rgba(4, 13, 36, .78) !important; box-shadow: 0 24px 60px -28px rgba(0, 0, 0, .9); }
.aa-wordmark .elementor-heading-title span { display: block; font-family: var(--e-global-typography-text-font-family), sans-serif; font-size: 9.5px; font-weight: 700; letter-spacing: .26em; text-transform: uppercase; color: #FF6B72; margin-top: 4px; }
.aa-logo img { transition: transform .6s var(--aa-ease); filter: drop-shadow(0 6px 14px rgba(0, 0, 0, .35)); }
.aa-logo:hover img { transform: rotate(-8deg) scale(1.04); }
.aa-nav .elementor-nav-menu--dropdown { border-radius: 16px; margin-top: 10px; overflow: hidden; background: rgba(4, 13, 36, .92) !important; -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, .1); }
.aa-nav .elementor-menu-toggle { border-radius: 12px; }

/* ---------- Hero ---------- */
.aa-hero-stage { position: relative; }
.aa-hero-photo img { border-radius: 28px; box-shadow: 0 50px 100px -40px rgba(0, 0, 0, .8); }
.aa-hero-photo { position: relative; }
.aa-hero-photo::after { content: ""; position: absolute; inset: 0; border-radius: 28px; pointer-events: none;
	background: linear-gradient(180deg, rgba(2, 8, 23, 0) 45%, rgba(2, 8, 23, .55) 100%), linear-gradient(120deg, rgba(42, 91, 255, .18), transparent 50%); }
.aa-float { position: absolute !important; z-index: 3; }
.aa-float-a { left: -56px; bottom: 36px; width: 340px !important; animation: aaBob 7s ease-in-out infinite; }
.aa-float-b { right: -18px; top: 30px; animation: aaBob 8s ease-in-out -3s infinite; }
@keyframes aaBob { 50% { transform: translateY(-10px); } }

/* Realtime transcript card */
.aa-transcript .elementor-icon-box-wrapper { gap: 10px; }
.aa-line .elementor-icon-box-content { display: flex; gap: 10px; align-items: baseline; }
.aa-line .elementor-icon-box-title { margin: 0 !important; flex: none; }
.aa-line .elementor-icon-box-description { margin: 0; }
.aa-line .elementor-icon-box-title { min-width: 22px; color: #FF6B72 !important; }
.aa-line .elementor-icon-box-description { clip-path: inset(0 100% 0 0); animation: aaType 12s steps(28, end) infinite; }
.aa-line:nth-of-type(2) .elementor-icon-box-description { animation-name: aaType2; }
.aa-line:nth-of-type(3) .elementor-icon-box-description { animation-name: aaType3; }
.aa-line:nth-of-type(4) .elementor-icon-box-description { animation-name: aaType4; }
.aa-line:nth-of-type(5) .elementor-icon-box-description { animation-name: aaType5; }
@keyframes aaType { 0% { clip-path: inset(0 100% 0 0); } 10%, 92% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 0 0 0); opacity: 0; } }
@keyframes aaType2 { 0%, 14% { clip-path: inset(0 100% 0 0); } 22%, 92% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 0 0 0); opacity: 0; } }
@keyframes aaType3 { 0%, 28% { clip-path: inset(0 100% 0 0); } 40%, 92% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 0 0 0); opacity: 0; } }
@keyframes aaType4 { 0%, 46% { clip-path: inset(0 100% 0 0); } 54%, 92% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 0 0 0); opacity: 0; } }
@keyframes aaType5 { 0%, 60% { clip-path: inset(0 100% 0 0); } 74%, 92% { clip-path: inset(0 0 0 0); } 100% { clip-path: inset(0 0 0 0); opacity: 0; } }
.aa-live .elementor-icon { animation: aaBlink 1.4s steps(2, start) infinite; }
@keyframes aaBlink { to { opacity: .2; } }

/* ---------- Trust bar (overlaps hero) ---------- */
.aa-trustbar > .e-con:not(:first-child) { border-left: 1px solid rgba(3, 29, 72, .08); }
.aa-trustbar .elementor-icon { width: 46px; height: 46px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 14px;
	background: linear-gradient(140deg, rgba(79, 123, 255, .14), rgba(224, 53, 61, .1)); transition: transform .5s var(--aa-ease); }
.aa-trustbar .elementor-icon svg { width: 20px !important; height: 20px !important; }
.aa-trustbar .e-con:hover .elementor-icon { transform: translateY(-4px) rotate(-6deg); }

/* ---------- Marquee ---------- */
.aa-marquee { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.aa-marquee-track { flex-wrap: nowrap !important; width: max-content !important; animation: aaMarquee 38s linear infinite; }
.aa-marquee:hover .aa-marquee-track { animation-play-state: paused; }
.aa-marquee-track > .elementor-widget { flex: none; }
.aa-marquee-track .elementor-icon-box-title { white-space: nowrap; -webkit-text-stroke: 1px rgba(3, 29, 72, .35); color: transparent !important; transition: color .4s var(--aa-ease), -webkit-text-stroke-color .4s; }
.aa-marquee-track .elementor-widget:hover .elementor-icon-box-title { color: var(--aa-navy) !important; }
@keyframes aaMarquee { to { transform: translateX(-50%); } }

/* ---------- Image treatments ---------- */
.aa-round img { border-radius: 26px; }
.aa-parallax { overflow: hidden; border-radius: 26px; }
.aa-parallax img { transform: scale(1.12); will-change: transform; }
.aa-tilt { transition: transform .6s var(--aa-ease); transform-style: preserve-3d; }

/* ---------- Services bento ---------- */
.aa-svc { transition: transform .5s var(--aa-ease), border-color .5s var(--aa-ease); }
.aa-svc:hover { transform: translateY(-6px); border-color: rgba(255, 255, 255, .28); }
.aa-svc .elementor-icon { width: 56px; height: 56px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 16px;
	background: linear-gradient(140deg, rgba(79, 123, 255, .35), rgba(224, 53, 61, .25)); border: 1px solid rgba(255, 255, 255, .18); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25); transition: transform .5s var(--aa-ease); }
.aa-svc .elementor-icon svg { width: 24px !important; height: 24px !important; }
.aa-svc:hover .elementor-icon { transform: scale(1.08) rotate(-6deg); }
.aa-svc .aa-link { margin-top: auto; }

/* ---------- Checklist ---------- */
.aa-checks .elementor-icon-list-icon { width: 24px; height: 24px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: rgba(224, 53, 61, .12); flex: none; }
.aa-checks .elementor-icon-list-icon svg { width: 11px !important; }
.aa-checks-dark .elementor-icon-list-icon { background: rgba(255, 107, 114, .16); }

/* ---------- Sticky stacking cards ---------- */
.aa-stackcards > .aa-stackcard { position: sticky; top: 120px; transition: transform .5s var(--aa-ease); }
.aa-stackcards > .aa-stackcard:nth-child(2) { top: 140px; }
.aa-stackcards > .aa-stackcard:nth-child(3) { top: 160px; }
.aa-stackcards > .aa-stackcard:nth-child(4) { top: 180px; }
.aa-stackcards > .aa-stackcard:nth-child(5) { top: 200px; }
.aa-stackcards { counter-reset: aacard; }
.aa-stackcard { counter-increment: aacard; background: linear-gradient(140deg, rgba(20, 34, 78, .92), rgba(8, 18, 48, .92)) !important; }
.aa-stackcard .elementor-widget-heading .elementor-heading-title::before { content: counter(aacard, decimal-leading-zero); display: block; margin-bottom: 18px;
	font-family: var(--e-global-typography-primary-font-family), sans-serif; font-size: 48px; font-weight: 600; letter-spacing: -2px; line-height: 1;
	background: linear-gradient(120deg, #7FA2FF, #FF6B72); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* ---------- Process ---------- */
.aa-steps { position: relative; counter-reset: aastep; }
.aa-steps::before { content: ""; position: absolute; left: 4%; right: 4%; top: 46px; height: 2px; background: rgba(3, 29, 72, .08); border-radius: 2px; }
.aa-steps-line { position: absolute !important; left: 4%; right: 4%; top: 46px; height: 2px !important; min-height: 0 !important; z-index: 0;
	background: linear-gradient(90deg, #4F7BFF, #E0353D) !important; border-radius: 2px; transform-origin: left; transform: scaleX(var(--aa-progress, 1)); }
.aa-step { counter-increment: aastep; position: relative; z-index: 1; transition: transform .5s var(--aa-ease); }
.aa-step:hover { transform: translateY(-6px); }
.aa-step .elementor-widget-heading .elementor-heading-title::before { content: counter(aastep, decimal-leading-zero); display: flex; align-items: center; justify-content: center;
	width: 52px; height: 52px; margin-bottom: 22px; border-radius: 16px; color: #fff; font-size: 17px; font-weight: 700; letter-spacing: 0;
	background: linear-gradient(140deg, #2A5BFF, #E0353D); box-shadow: 0 14px 30px -12px rgba(42, 91, 255, .6); }

/* ---------- Local section ---------- */
.aa-chips .elementor-icon-list-items { gap: 10px; }
.aa-chips .elementor-icon-list-item { margin: 0 !important; padding: 9px 16px !important; border-radius: 100px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .18); transition: background-color .35s var(--aa-ease), border-color .35s; }
.aa-chips .elementor-icon-list-item::after { display: none !important; }
.aa-chips .elementor-icon-list-item:hover { background: rgba(255, 255, 255, .16); border-color: rgba(255, 255, 255, .4); }

/* ---------- Quote form ---------- */
.aa-form .elementor-field-group .elementor-field { border-radius: 14px !important; transition: border-color .3s var(--aa-ease), box-shadow .3s var(--aa-ease), background-color .3s var(--aa-ease); }
.aa-form .elementor-field-group .elementor-field:focus { border-color: var(--aa-blue) !important; background-color: #fff !important; box-shadow: 0 0 0 4px rgba(79, 123, 255, .15); outline: none; }
.aa-form .elementor-field-type-select select { appearance: none; }
.aa-form .elementor-button { width: 100%; background-image: linear-gradient(135deg, #FF5A63, #D7262F) !important; box-shadow: 0 14px 34px -14px rgba(224, 53, 61, .85); }

/* ---------- FAQ ---------- */
.aa-faq .e-n-accordion { display: flex; flex-direction: column; gap: 12px; }
.aa-faq .e-n-accordion-item { border-radius: 18px; background: rgba(255, 255, 255, .7); border: 1px solid rgba(255, 255, 255, .95); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
	box-shadow: 0 18px 40px -30px rgba(16, 38, 96, .4); transition: box-shadow .4s var(--aa-ease), transform .4s var(--aa-ease); }
.aa-faq .e-n-accordion-item:hover { transform: translateY(-2px); box-shadow: 0 24px 50px -30px rgba(16, 38, 96, .5); }
.aa-faq .e-n-accordion-item[open] { background: #fff; box-shadow: 0 30px 60px -34px rgba(42, 91, 255, .45); }
.aa-faq .e-n-accordion-item > .e-con { border: 0 !important; padding: 0 28px 24px 62px !important; }
.aa-faq .e-n-accordion-item-title { padding: 22px 26px !important; }
.aa-faq .e-n-accordion-item-title-icon { width: 26px; height: 26px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: rgba(79, 123, 255, .12); }

/* ---------- Footer ---------- */
.aa-foot-links .elementor-icon-list-item a:hover .elementor-icon-list-text { color: #fff !important; }
.aa-foot-rule { border-top: 1px solid rgba(255, 255, 255, .08); }
.aa-giant .elementor-heading-title { white-space: nowrap; color: transparent !important; -webkit-text-stroke: 1px rgba(255, 255, 255, .14);
	background: linear-gradient(180deg, rgba(255, 255, 255, .09), rgba(255, 255, 255, 0)); -webkit-background-clip: text; background-clip: text; }

/* ---------- Tablet ---------- */
@media (max-width: 1024px) {
	.aa-float-a { left: 16px; bottom: -40px; }
	.aa-float-b { right: 16px; }
	.aa-trustbar > .e-con:nth-child(3) { border-left: 0; }
	.aa-stackcards > .aa-stackcard { position: relative; top: auto !important; }
	.aa-steps::before, .aa-steps-line { display: none; }
	.aa-giant .elementor-heading-title { font-size: 13vw !important; }
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
	.aa-header { top: 10px; }
	.aa-float-a { position: relative !important; left: auto; bottom: auto; width: auto !important; margin: -70px 14px 0; }
	.aa-float-b { top: 14px; right: 14px; }
	.aa-trustbar > .e-con { border-left: 0 !important; border-top: 1px solid rgba(3, 29, 72, .08); }
	.aa-trustbar > .e-con:first-child { border-top: 0; }
	.aa-faq .e-n-accordion-item > .e-con { padding: 0 20px 20px 20px !important; }
	.aa-faq .e-n-accordion-item-title { padding: 18px 18px !important; }
	.aa-orb { filter: blur(60px); }
	.aa-orb-1 { width: 380px !important; height: 380px; }
	.aa-orb-2 { width: 340px !important; height: 340px; }
	.aa-orb-3 { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation: none !important; transition-duration: 0s !important; }
	.aa-line .elementor-icon-box-description { clip-path: none; }
	html { scroll-behavior: auto; }
}

/* ---------- v5 refinements ---------- */
/* Gradient keyword survives the word-split animation */
.elementor-heading-title em .aa-split-word > span { background: linear-gradient(100deg, #7FA2FF 0%, #FF6B72 45%, #7FA2FF 90%); background-size: 200% auto;
	-webkit-background-clip: text; background-clip: text; color: transparent; animation: aaShimmer 6s linear infinite; }
.aa-on-light .elementor-heading-title em .aa-split-word > span { background-image: linear-gradient(100deg, #2A5BFF 0%, #E0353D 45%, #2A5BFF 90%); }
/* Header stays crisp over light sections */
.aa-scrolled .aa-nav-shell { background: rgba(4, 13, 36, .9) !important; }
/* Dark glass on light sections and light glass on dark sections need more body */
.aa-soft .aa-glass { background: linear-gradient(140deg, rgba(10, 26, 62, .88), rgba(3, 12, 32, .8)) !important; }
.aa-night .aa-glass-light { background: linear-gradient(140deg, rgba(255, 255, 255, .97), rgba(246, 249, 255, .92)) !important; }
/* Process line spans the grid exactly */
.aa-steps-line { width: auto !important; max-width: none !important; }
/* Footer wordmark fits the container */
.aa-giant .elementor-heading-title { font-size: min(12.4vw, 156px) !important; letter-spacing: -.045em !important; }
/* Skyline card: keep body copy legible over bright city lights */
#san-diego .aa-glass { background: linear-gradient(140deg, rgba(6, 16, 42, .78), rgba(3, 10, 28, .7)) !important; -webkit-backdrop-filter: blur(22px) saturate(140%); backdrop-filter: blur(22px) saturate(140%); }

/* =========================================================
   Shared motion helpers used by the demo pages (m- classes)
   ========================================================= */
.m-marquee { display: flex !important; flex-wrap: nowrap !important; width: max-content !important; animation: aaMarquee 42s linear infinite; }
.m-marquee > .elementor-widget, .m-marquee > .e-con { flex: none !important; }
.m-marquee.m-rev { animation-direction: reverse; }
.m-marquee:hover { animation-play-state: paused; }
.m-word { transition: none; }
.m-hscroll-track { flex-wrap: nowrap !important; will-change: transform; }
.m-draw { transform-origin: top center; }
@keyframes mPulse { 0% { box-shadow: 0 0 0 0 rgba(224, 53, 61, .55); } 70% { box-shadow: 0 0 0 16px rgba(224, 53, 61, 0); } 100% { box-shadow: 0 0 0 0 rgba(224, 53, 61, 0); } }
@keyframes mFloat { 50% { transform: translateY(-12px); } }
.m-float { animation: mFloat 7s ease-in-out infinite; }
.m-float-2 { animation: mFloat 8.5s ease-in-out -2.5s infinite; }
.m-float-3 { animation: mFloat 9.5s ease-in-out -5s infinite; }
@media (max-width: 1024px) {
	.m-hscroll-track { flex-wrap: wrap !important; transform: none !important; }
}
@media (prefers-reduced-motion: reduce) { .m-marquee, .m-float, .m-float-2, .m-float-3 { animation: none !important; } }

/* =========================================================
   Demo 4 — modern corporate (top bar, full-screen hero, carousels)
   Every rule is scoped to .d4 (set on each top-level section).
   ========================================================= */
.d4 { --d4-navy: var(--e-global-color-primary, #031D48); --d4-navy2: var(--e-global-color-d4_navy2, #06132E); --d4-red: var(--e-global-color-d4_red, #D62839);
	--d4-light: var(--e-global-color-d4_light, #F4F6FA); --d4-ink: var(--e-global-color-d4_ink, #0B1733); --d4-ease: cubic-bezier(.22, .68, .2, 1); --d4-r: 16px; }

/* ---------- Buttons ---------- */
.d4 .elementor-button { border-radius: 10px !important; background-image: none !important; box-shadow: none !important; }
.d4 .elementor-button::after { display: none !important; }
.d4 .d4-btn .elementor-button { background: var(--d4-red) !important; box-shadow: 0 14px 28px -14px rgba(214, 40, 57, .75) !important; }
.d4 .d4-btn .elementor-button:hover { background: var(--d4-navy) !important; transform: translateY(-2px); box-shadow: 0 16px 30px -16px rgba(3, 29, 72, .7) !important; }
.d4 .d4-btn-line .elementor-button { background: transparent !important; box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, .55) !important; }
.d4 .d4-btn-line .elementor-button:hover { background: #fff !important; color: var(--d4-navy) !important; box-shadow: inset 0 0 0 1.5px #fff !important; }
.d4 .d4-btn-dark .elementor-button { background: transparent !important; box-shadow: inset 0 0 0 1.5px rgba(3, 29, 72, .25) !important; }
.d4 .d4-btn-dark .elementor-button:hover { background: var(--d4-navy) !important; color: #fff !important; }
.d4 .elementor-button .elementor-button-icon svg { transition: transform .4s var(--d4-ease); }
.d4 .elementor-button:hover .elementor-button-icon svg { transform: translateX(4px); }

/* Accent words: solid brand red, no gradient */
.d4 .elementor-heading-title em, .d4 .elementor-heading-title em .aa-split-word > span { font-style: normal; color: var(--d4-red) !important; -webkit-text-fill-color: currentColor;
	background: none !important; -webkit-background-clip: border-box !important; background-clip: border-box !important; animation: none !important; }
.d4-dark .elementor-heading-title em, .d4-dark .elementor-heading-title em .aa-split-word > span { color: #FF5A68 !important; }

/* Section label */
.d4 .d4-label .elementor-heading-title { display: inline-flex; align-items: center; gap: 12px; }
.d4 .d4-label .elementor-heading-title::before { content: ""; width: 34px; height: 2px; background: var(--d4-red); border-radius: 2px; }
.d4 .d4-label-center .elementor-heading-title::after { content: ""; width: 34px; height: 2px; background: var(--d4-red); border-radius: 2px; }

/* ---------- Top bar + navigation ---------- */
.d4-topbar .elementor-icon-list-item a:hover .elementor-icon-list-text { color: #fff !important; }
.d4-social .elementor-social-icon { transition: background-color .35s var(--d4-ease), transform .35s var(--d4-ease); }
.d4-social .elementor-social-icon:hover { background: var(--d4-red) !important; transform: translateY(-2px); }
.d4-navbar { transition: box-shadow .4s var(--d4-ease); }
.d4-navbar.elementor-sticky--effects { box-shadow: 0 14px 34px -22px rgba(6, 19, 46, .45); }
.d4-wordmark .elementor-heading-title span { display: block; font-family: var(--e-global-typography-d4_label-font-family), sans-serif; font-size: 10px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; color: var(--d4-red); margin-top: 3px; }
.d4-nav .elementor-nav-menu--main .elementor-item::after { height: 2px !important; border-radius: 2px; }
.d4-nav .elementor-nav-menu--dropdown { border-top: 3px solid var(--d4-red); box-shadow: 0 30px 40px -24px rgba(6, 19, 46, .45); }

/* ---------- Hero ---------- */
/* Banner image always covers the full hero height and width, never tiles. */
.d4-hero { background-size: cover !important; background-repeat: no-repeat !important; }
.d4-hero-card { border-radius: 14px; background: rgba(255, 255, 255, .08) !important; border: 1px solid rgba(255, 255, 255, .16); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
	transition: background-color .4s var(--d4-ease), transform .4s var(--d4-ease); }
.d4-hero-card:hover { background: rgba(255, 255, 255, .14) !important; transform: translateY(-3px); }
.d4-chip .elementor-icon-box-title { display: inline-flex; align-items: center; gap: 10px; margin: 0 !important; padding: 8px 16px 8px 12px; border-radius: 100px;
	background: rgba(214, 40, 57, .18); border: 1px solid rgba(255, 90, 104, .45); }
.d4-chip .elementor-icon-box-title::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #FF5A68; animation: mPulse 2s infinite; }
.d4-scroll .elementor-icon { animation: d4Bounce 2.2s infinite; }
@keyframes d4Bounce { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(8px); } }

/* ---------- About ---------- */
.d4-about-media { position: relative; }
.d4-about-main img { border-radius: 18px; }
.d4-about-small { position: absolute !important; right: -28px; bottom: -36px; width: 46% !important; z-index: 2; }
.d4-about-small img { border-radius: 16px; border: 8px solid #fff; box-shadow: 0 30px 50px -30px rgba(6, 19, 46, .55); }
.d4-badge { position: absolute !important; left: -24px; top: 32px; z-index: 3; border-radius: 14px; box-shadow: 0 24px 40px -24px rgba(214, 40, 57, .8); }
.d4-ticks .elementor-icon-box-icon .elementor-icon { width: 30px; height: 30px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 50%; background: rgba(214, 40, 57, .1); }
.d4-ticks .elementor-icon svg { width: 13px !important; height: 13px !important; }
.d4-ticks .elementor-icon-box-wrapper { align-items: center; }

/* ---------- Carousels ---------- */
.d4-carousel { position: relative; }
.d4-carousel .swiper { padding-bottom: 54px !important; }
.d4-carousel .elementor-swiper-button { position: absolute; top: auto !important; bottom: 0 !important; width: 46px; height: 46px; border-radius: 50%; display: inline-flex !important; align-items: center; justify-content: center;
	background: #fff; box-shadow: inset 0 0 0 1.5px rgba(3, 29, 72, .18); transition: background-color .3s, box-shadow .3s; z-index: 5; }
.d4-carousel .elementor-swiper-button:hover { background: var(--d4-red); box-shadow: none; }
.d4-carousel .elementor-swiper-button:hover svg { fill: #fff; }
.d4-carousel .elementor-swiper-button-prev { left: auto !important; right: 58px !important; }
.d4-carousel .elementor-swiper-button-next { right: 0 !important; left: auto !important; }
.d4-carousel .swiper-pagination-progressbar { top: auto !important; bottom: 21px !important; width: calc(100% - 140px) !important; height: 3px !important; border-radius: 3px; background: rgba(3, 29, 72, .1) !important; }
.d4-carousel .swiper-pagination-progressbar-fill { background: var(--d4-red) !important; border-radius: 3px; }
.d4-dark .d4-carousel .elementor-swiper-button { background: rgba(255, 255, 255, .08); box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, .25); }
.d4-dark .d4-carousel .elementor-swiper-button svg { fill: #fff; }
.d4-dark .d4-carousel .swiper-pagination-progressbar { background: rgba(255, 255, 255, .15) !important; }

/* Service cards: image background, text reveals on hover */
.d4-svc { border-radius: var(--d4-r); overflow: hidden; background-size: cover !important; background-position: center !important; transition: background-size 1s var(--d4-ease), transform .5s var(--d4-ease); }
.d4-svc:hover { transform: translateY(-6px); }
.d4-svc .elementor-icon-box-description { max-height: 0; opacity: 0; overflow: hidden; transition: max-height .6s var(--d4-ease), opacity .5s var(--d4-ease); }
.d4-svc:hover .elementor-icon-box-description { max-height: 160px; opacity: 1; }
.d4-svc .elementor-icon { width: 52px; height: 52px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 14px; background: var(--d4-red); }
.d4-svc .elementor-icon svg { width: 22px !important; height: 22px !important; fill: #fff !important; }
@media (hover: none) { .d4-svc .elementor-icon-box-description { max-height: none; opacity: 1; } }

/* CART cards */
.d4-cart { border-radius: var(--d4-r); overflow: hidden; background: #fff; box-shadow: 0 24px 50px -36px rgba(6, 19, 46, .5), inset 0 0 0 1px rgba(3, 29, 72, .06); transition: transform .5s var(--d4-ease), box-shadow .5s; }
.d4-cart:hover { transform: translateY(-6px); box-shadow: 0 34px 60px -36px rgba(6, 19, 46, .6), inset 0 0 0 1px rgba(214, 40, 57, .25); }
.d4-cart .elementor-widget-image { overflow: hidden; }
.d4-cart img { transition: transform 1s var(--d4-ease); }
.d4-cart:hover img { transform: scale(1.06); }
.d4-cart-num .elementor-heading-title { display: inline-block; padding: 5px 11px; border-radius: 100px; background: rgba(214, 40, 57, .1); }

/* ---------- Vision & mission ---------- */
.d4-vm-media { position: relative; }
.d4-vm-media img { border-radius: 18px; position: relative; z-index: 1; }
.d4-vm-media::after { content: ""; position: absolute; left: -22px; top: -22px; width: 55%; height: 55%; border: 2px solid var(--d4-red); border-radius: 18px; z-index: 0; }
.d4-vm-card { border-radius: var(--d4-r); background: rgba(255, 255, 255, .06) !important; border: 1px solid rgba(255, 255, 255, .12); transition: background-color .4s var(--d4-ease), border-color .4s, transform .4s; }
.d4-vm-card:hover { background: rgba(255, 255, 255, .1) !important; border-color: rgba(255, 90, 104, .5); transform: translateY(-4px); }
.d4-vm-card .elementor-icon { width: 58px; height: 58px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 16px; background: var(--d4-red); }
.d4-vm-card .elementor-icon svg { fill: #fff !important; width: 24px !important; height: 24px !important; }

/* ---------- Locations ---------- */
.d4-states { counter-reset: d4state; }
.d4-state { border-radius: 10px; background: #fff; box-shadow: inset 0 0 0 1px rgba(3, 29, 72, .08); transition: background-color .3s var(--d4-ease), box-shadow .3s, transform .3s; }
.d4-state:hover { background: var(--d4-navy); transform: translateY(-2px); box-shadow: none; }
.d4-state:hover .elementor-icon-box-title { color: #fff !important; }
.d4-state:hover .elementor-icon svg { fill: #FF5A68 !important; }
.d4-state .elementor-icon-box-wrapper { align-items: center; }
.d4-state .elementor-icon-box-title { margin: 0 !important; transition: color .3s; }
.d4-map img { opacity: .9; }

/* ---------- FAQ ---------- */
.d4-faq-media { position: relative; }
.d4-faq-media img { border-radius: 18px; }
.d4-faq-call { position: absolute !important; left: 24px; right: 24px; bottom: 24px; z-index: 2; border-radius: 14px; }
.d4-faq .e-n-accordion { display: flex; flex-direction: column; gap: 12px; }
.d4-faq .e-n-accordion-item { border-radius: 14px; background: #fff; box-shadow: inset 0 0 0 1px rgba(3, 29, 72, .08); transition: box-shadow .4s var(--d4-ease); }
.d4-faq .e-n-accordion-item[open] { box-shadow: inset 0 0 0 1.5px var(--d4-red), 0 20px 40px -30px rgba(214, 40, 57, .55); }
.d4-faq .e-n-accordion-item-title { padding: 20px 24px !important; justify-content: space-between; }
.d4-faq .e-n-accordion-item > .e-con { border: 0 !important; padding: 0 24px 22px 24px !important; }
.d4-faq .e-n-accordion-item-title-icon { width: 30px; height: 30px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: var(--d4-light); transition: background-color .3s, transform .4s var(--d4-ease); }
.d4-faq .e-n-accordion-item[open] .e-n-accordion-item-title-icon { background: var(--d4-red); transform: rotate(180deg); }
.d4-faq .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg { fill: #fff !important; }

/* ---------- Testimonials ---------- */
.d4-quote { border-radius: var(--d4-r); background: #fff; box-shadow: 0 24px 50px -36px rgba(6, 19, 46, .45), inset 0 0 0 1px rgba(3, 29, 72, .06); position: relative; }
.d4-quote::after { content: "”"; position: absolute; right: 26px; top: 6px; font-family: Georgia, serif; font-size: 110px; line-height: 1; color: rgba(214, 40, 57, .14); }
.d4-quote .elementor-star-rating i::before, .d4-quote .elementor-star-rating i { color: #F5B301 !important; }
.d4-avatar .elementor-icon-box-icon .elementor-icon { width: 50px; height: 50px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 50%; background: var(--d4-navy); }
.d4-avatar .elementor-icon svg { fill: #fff !important; width: 20px !important; }
.d4-avatar .elementor-icon-box-wrapper { align-items: center; }

/* ---------- Blog (Posts widget) ---------- */
.d4-blog .elementor-post__card { border-radius: var(--d4-r) !important; overflow: hidden; border: 0 !important; box-shadow: 0 24px 50px -36px rgba(6, 19, 46, .5), inset 0 0 0 1px rgba(3, 29, 72, .06) !important; transition: transform .5s var(--d4-ease); }
.d4-blog .elementor-post__card:hover { transform: translateY(-6px); }
.d4-blog .elementor-post__thumbnail img { transition: transform 1s var(--d4-ease); }
.d4-blog .elementor-post__card:hover .elementor-post__thumbnail img { transform: scale(1.06); }
.d4-blog .elementor-post__badge { background: var(--d4-red) !important; border-radius: 100px !important; }
.d4-blog .elementor-post__read-more { color: var(--d4-red) !important; font-weight: 600; }

/* ---------- Footer ---------- */
.d4-foot-links .elementor-icon-list-item a:hover .elementor-icon-list-text { color: #fff !important; }
.d4-foot-links .elementor-icon-list-item a .elementor-icon-list-text { transition: color .3s, padding-left .3s; }
.d4-foot-links .elementor-icon-list-item a:hover .elementor-icon-list-text { padding-left: 4px; }

/* ---------- Tablet ---------- */
@media (max-width: 1024px) {
	.d4-about-small { right: 12px; bottom: -28px; }
	.d4-badge { left: 12px; }
	.d4-vm-media::after { left: -12px; top: -12px; }
}
/* ---------- Mobile ---------- */
@media (max-width: 767px) {
	.d4-about-small { width: 52% !important; right: 8px; bottom: -24px; }
	.d4-badge { left: 8px; top: 12px; }
	.d4-carousel .swiper-pagination-progressbar { width: calc(100% - 130px) !important; }
	.d4-faq .e-n-accordion-item-title { padding: 18px 18px !important; }
	.d4-faq .e-n-accordion-item > .e-con { padding: 0 18px 18px 18px !important; }
	.d4-faq-call { position: relative !important; left: auto; right: auto; bottom: auto; margin-top: -70px; margin-left: 14px; margin-right: 14px; }
}
/* Inline icon boxes: icon centred on the text */
.d4 .elementor-position-inline-start .elementor-icon-box-wrapper { align-items: center !important; }
.d4-vm-card .elementor-icon-box-wrapper, .d4-svc .elementor-icon-box-wrapper { align-items: flex-start !important; }
.d4-quote .elementor-star-rating { color: #F5B301; }
.d4-quote .elementor-star-rating i { font-style: normal; }
.d4-social .elementor-social-icons-wrapper { justify-content: flex-start; }
.d4-topbar .d4-social .elementor-social-icons-wrapper { justify-content: flex-end; }
/* Blog cards (native) */
.d4-post { border-radius: var(--d4-r); overflow: hidden; background: #fff; box-shadow: 0 24px 50px -36px rgba(6, 19, 46, .5), inset 0 0 0 1px rgba(3, 29, 72, .06); transition: transform .5s var(--d4-ease); }
.d4-post:hover { transform: translateY(-6px); }
.d4-post-media { position: relative; overflow: hidden; }
.d4-post-media img { transition: transform 1s var(--d4-ease); }
.d4-post:hover .d4-post-media img { transform: scale(1.06); }
.d4-post-badge { position: absolute !important; top: 16px; right: 16px; width: auto !important; z-index: 2; }
.d4-post-badge .elementor-icon-box-title { display: inline-block; margin: 0 !important; padding: 6px 12px; border-radius: 100px; background: var(--d4-red); }
.d4-post .d4-post-more { margin-top: auto; }
.d4-post .elementor-heading-title a { color: inherit; transition: color .3s; }
.d4-post .elementor-heading-title a:hover { color: var(--d4-red); }
.d4-post-media .elementor-widget-image, .d4-post-media .elementor-widget-image a { display: block; width: 100%; }
.d4-post-media img { width: 100% !important; }

/* =========================================================
   Site pages (built on the Demo 4 system): inner hero, cards,
   steps, tiles, related links, forms and the blog grid.
   ========================================================= */

/* ---------- Inner page hero ---------- */
.d4-phero { position: relative; overflow: clip; }
.d4-phero::before { content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0;
	background: radial-gradient(60% 80% at 100% 0%, rgba(214, 40, 57, .22), transparent 60%), radial-gradient(50% 70% at 0% 100%, rgba(79, 123, 255, .14), transparent 60%); }
.d4-phero::after { content: ""; position: absolute; right: 0; top: 0; width: 46%; height: 100%; pointer-events: none; z-index: 0; opacity: .35;
	background-image: radial-gradient(rgba(255, 255, 255, .22) 1px, transparent 1.4px); background-size: 22px 22px;
	-webkit-mask-image: linear-gradient(90deg, transparent, #000 60%); mask-image: linear-gradient(90deg, transparent, #000 60%); }
.d4-phero > .e-con-inner { position: relative; z-index: 1; }
.d4-phero-media { position: relative; }
.d4-phero-media::before { content: ""; position: absolute; left: 22px; top: 22px; right: -22px; bottom: -22px; border: 2px solid var(--d4-red); border-radius: 20px; z-index: 0; }
.d4-phero-media .elementor-widget-image { position: relative; z-index: 1; }
.d4-phero-media img { display: block; width: 100%; height: auto; border-radius: 20px; box-shadow: 0 40px 70px -40px rgba(0, 0, 0, .8); }
.d4-crumbs .elementor-icon-list-items { flex-wrap: wrap; row-gap: 6px; }
.d4-crumbs .elementor-icon-list-item:first-child .elementor-icon-list-icon { display: none; }
.d4-crumbs .elementor-icon-list-item:last-child .elementor-icon-list-text { color: #fff !important; }
.d4-crumbs a:hover .elementor-icon-list-text { color: #fff !important; }

/* Photos in content sections always keep their natural ratio */
.d4-vm-media img, .d4-split-media img { display: block; width: 100%; height: auto; }

/* ---------- Feature cards ---------- */
.d4-card { border-radius: var(--d4-r); background: #fff; box-shadow: 0 24px 50px -38px rgba(6, 19, 46, .5), inset 0 0 0 1px rgba(3, 29, 72, .07);
	transition: transform .5s var(--d4-ease), box-shadow .5s var(--d4-ease); }
.d4-card:hover { transform: translateY(-6px); box-shadow: 0 34px 60px -38px rgba(6, 19, 46, .6), inset 0 0 0 1px rgba(214, 40, 57, .3); }
.d4-card-dark { background: rgba(255, 255, 255, .05); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12); }
.d4-card-dark:hover { background: rgba(255, 255, 255, .09); box-shadow: inset 0 0 0 1px rgba(255, 90, 104, .5); }
.d4-card-icon .elementor-icon { width: 54px; height: 54px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 14px; background: var(--d4-red);
	box-shadow: 0 14px 26px -14px rgba(214, 40, 57, .9); transition: transform .5s var(--d4-ease); }
.d4-card-icon .elementor-icon svg { width: 22px !important; height: 22px !important; fill: #fff !important; }
.d4-card-icon-lg .elementor-icon { width: 58px; height: 58px; border-radius: 16px; }
.d4-card:hover .d4-card-icon .elementor-icon, .d4-rel:hover .d4-card-icon .elementor-icon { transform: rotate(-6deg) scale(1.06); }
.d4-card .elementor-widget-text-editor p:last-child, .d4-step p:last-child, .d4-tile p:last-child, .d4-rel p:last-child { margin-bottom: 0; }

/* ---------- Steps ---------- */
.d4-step { border-top: 1px solid rgba(3, 29, 72, .14); position: relative; }
.d4-step::before { content: ""; position: absolute; top: -1px; left: 0; width: 56px; height: 3px; background: var(--d4-red); border-radius: 3px; transition: width .6s var(--d4-ease); }
.d4-step:hover::before { width: 100%; }
.d4-steps-dark .d4-step { border-top-color: rgba(255, 255, 255, .16); }
.d4-step-num .elementor-heading-title { font-size: 46px !important; line-height: 1 !important; letter-spacing: -1px; -webkit-text-stroke: 1.5px var(--d4-red); color: transparent !important; }
.d4-steps-dark .d4-step-num .elementor-heading-title { -webkit-text-stroke-color: #FF5A68; }
@supports not (-webkit-text-stroke: 1px red) { .d4-step-num .elementor-heading-title { color: var(--d4-red) !important; } }

/* ---------- Image tiles ---------- */
.d4-tile { border-radius: var(--d4-r); overflow: hidden; transition: transform .5s var(--d4-ease), box-shadow .5s; box-shadow: 0 30px 60px -40px rgba(6, 19, 46, .7); }
.d4-tile:hover { transform: translateY(-6px); }
.d4-tile .elementor-heading-title a { color: inherit; }
.d4-tile .elementor-heading-title a:hover { color: #FF8A94; }

/* ---------- Related links ---------- */
.d4-rel { border-radius: 14px; background: #fff; box-shadow: inset 0 0 0 1px rgba(3, 29, 72, .09); transition: box-shadow .4s var(--d4-ease), transform .4s var(--d4-ease); }
.d4-rel:hover { transform: translateY(-4px); box-shadow: inset 0 0 0 1.5px var(--d4-red), 0 22px 40px -30px rgba(214, 40, 57, .6); }
.d4-rel .d4-card-icon .elementor-icon { width: 46px; height: 46px; border-radius: 12px; }
.d4-rel .d4-card-icon .elementor-icon svg { width: 18px !important; height: 18px !important; }
.d4-rel .elementor-heading-title a { color: inherit; }
.d4-rel .elementor-heading-title { font-size: 17px !important; }
.d4-rel-arrow .elementor-icon { transition: transform .4s var(--d4-ease); }
.d4-rel:hover .d4-rel-arrow .elementor-icon { transform: translateX(4px); }

/* ---------- FAQ side card ---------- */
.d4-ask { border-radius: 14px; }
.d4-ask .elementor-icon-box-wrapper { align-items: center; }

/* ---------- Forms ---------- */
.d4-form .elementor-field-group .elementor-field { min-height: 48px; }
.d4-form .elementor-field-textual:focus { box-shadow: 0 0 0 3px rgba(214, 40, 57, .25) !important; border-color: var(--d4-red) !important; }
.d4-form .e-form__indicators { margin-bottom: 26px; }
.d4-form .e-form__indicators__indicator__number { border-color: var(--d4-red) !important; }
.d4-form .e-form__indicators__indicator--state-active .e-form__indicators__indicator__number,
.d4-form .e-form__indicators__indicator--state-completed .e-form__indicators__indicator__number { background: var(--d4-red) !important; color: #fff !important; }
.d4-form .e-form__indicators__indicator__label { font-family: var(--e-global-typography-d4_btn-font-family), sans-serif; font-size: 13px; }
.d4-form-dark .e-form__indicators__indicator__label { color: #fff; }
.d4-form .e-form__buttons__wrapper__button-previous { background: transparent !important; box-shadow: inset 0 0 0 1.5px rgba(3, 29, 72, .25) !important; color: var(--d4-navy) !important; }
.d4-panel { border-radius: 20px; background: #fff; box-shadow: 0 40px 80px -50px rgba(6, 19, 46, .55), inset 0 0 0 1px rgba(3, 29, 72, .06); }
.d4-info .elementor-icon-box-wrapper { align-items: center; }
.d4-info { border-radius: 14px; background: #fff; box-shadow: inset 0 0 0 1px rgba(3, 29, 72, .09); transition: box-shadow .4s var(--d4-ease), transform .4s var(--d4-ease); }
.d4-info:hover { transform: translateY(-3px); box-shadow: inset 0 0 0 1.5px var(--d4-red); }
.d4-info .elementor-icon { width: 50px; height: 50px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 12px; background: rgba(214, 40, 57, .1); }

/* ---------- Blog grid (shortcode) ---------- */
.aa-pg { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; }
.aa-pg-card { display: flex; flex-direction: column; border-radius: var(--d4-r, 16px); overflow: hidden; background: #fff; box-shadow: 0 24px 50px -36px rgba(6, 19, 46, .5), inset 0 0 0 1px rgba(3, 29, 72, .07); transition: transform .5s cubic-bezier(.22, .68, .2, 1); }
.aa-pg-card:hover { transform: translateY(-6px); }
.aa-pg-media { position: relative; display: block; overflow: hidden; aspect-ratio: 3 / 2; background: #E9EDF5; }
.aa-pg-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 1s cubic-bezier(.22, .68, .2, 1); }
.aa-pg-card:hover .aa-pg-media img { transform: scale(1.05); }
.aa-pg-cat { position: absolute; top: 16px; right: 16px; padding: 6px 12px; border-radius: 100px; background: #D62839; color: #fff; font: 600 12px/1.2 Poppins, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.aa-pg-body { display: flex; flex-direction: column; gap: 12px; padding: 24px 26px 26px; flex: 1; }
.aa-pg-date { margin: 0; color: #4A5568; font: 400 14px/1.4 Inter, sans-serif; }
.aa-pg-title { margin: 0; font: 600 20px/1.35 Poppins, sans-serif; color: #0B1733; }
.aa-pg-title a { color: inherit; text-decoration: none; transition: color .3s; }
.aa-pg-title a:hover { color: #D62839; }
.aa-pg-excerpt { margin: 0; color: #4A5568; font: 400 15px/1.65 Inter, sans-serif; }
.aa-pg-more { margin-top: auto; color: #D62839; font: 600 15px/1 Poppins, sans-serif; text-decoration: none; display: inline-flex; gap: 8px; align-items: center; }
.aa-pg-more:hover { color: #0B1733; }
@media (max-width: 1024px) { .aa-pg { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) { .aa-pg { grid-template-columns: 1fr; } }

/* ---------- Single post template ---------- */
.d4-article .elementor-widget-theme-post-content { font: 400 17px/1.8 Inter, sans-serif; color: #2D3748; }
.d4-article .elementor-widget-theme-post-content h2 { font: 700 30px/1.25 Poppins, sans-serif; color: #0B1733; margin: 1.6em 0 .6em; letter-spacing: -.4px; }
.d4-article .elementor-widget-theme-post-content h3 { font: 600 22px/1.35 Poppins, sans-serif; color: #0B1733; margin: 1.4em 0 .5em; }
.d4-article .elementor-widget-theme-post-content a { color: #D62839; text-decoration: underline; text-underline-offset: 3px; }
.d4-article .elementor-widget-theme-post-content ul, .d4-article .elementor-widget-theme-post-content ol { padding-left: 1.3em; margin-bottom: 1.2em; }
.d4-article .elementor-widget-theme-post-content li { margin-bottom: .4em; }
.d4-article .elementor-widget-theme-post-featured-image img { display: block; width: 100%; height: auto; border-radius: 20px; }
.d4-sidecard { border-radius: 18px; }
.d4-post-meta .elementor-icon-list-text, .d4-post-meta a { color: #A9B8D6 !important; }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
	.d4-phero::after { width: 100%; opacity: .18; }
	.d4-phero-media::before { left: 14px; top: 14px; right: -14px; bottom: -14px; }
}
@media (max-width: 767px) {
	.d4-phero-media { margin-right: 14px; }
	.d4-step-num .elementor-heading-title { font-size: 38px !important; }
	.d4-rel .elementor-heading-title { font-size: 16px !important; }
}

/* Icon + text rows: text column takes the remaining width and never overflows the card */
.d4-rel > .e-con, .d4-vm-card > .e-con { --width: auto; flex: 1 1 0% !important; min-width: 0; }
.d4-rel > .elementor-widget-icon, .d4-vm-card > .elementor-widget-icon { flex: 0 0 auto; }

/* Step numbers from a CSS counter (not counted as text) */
.d4-steps-grid, .elementor-element.aa-stagger:has(> .d4-step), .e-grid:has(> .d4-step) { counter-reset: d4step; }
.d4-step { counter-increment: d4step; }
.d4-step::after { content: counter(d4step, decimal-leading-zero); order: -1; font: 700 46px/1 Poppins, sans-serif; letter-spacing: -1px; color: transparent; -webkit-text-stroke: 1.5px var(--d4-red); margin-bottom: 4px; }
.d4-steps-dark .d4-step::after { -webkit-text-stroke-color: #FF5A68; }
@media (max-width: 767px) { .d4-step::after { font-size: 38px; } }
/* Tile arrow */
.d4-tile-arrow .elementor-icon { width: 42px; height: 42px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 50%; background: rgba(255, 255, 255, .14); transition: background-color .3s, transform .4s var(--d4-ease); }
.d4-tile:hover .d4-tile-arrow .elementor-icon { background: var(--d4-red); transform: translateX(4px); }
.d4-tile-arrow .elementor-icon svg { width: 15px !important; height: 15px !important; fill: #fff !important; }

/* Single post sidebar */
.d4-side-more .aa-pg { grid-template-columns: 1fr !important; gap: 16px; }
.d4-side-more .aa-pg-excerpt { display: none; }
.d4-side-more .aa-pg-body { padding: 18px 20px 20px; gap: 8px; }
.d4-side-more .aa-pg-title { font-size: 17px; }
.d4-sidecard .elementor-button { width: 100%; justify-content: center; }
/* Form steps in brand colours */
.d4-form .e-form__indicators__indicator--state-active .e-form__indicators__indicator__label,
.d4-form .e-form__indicators__indicator--state-completed .e-form__indicators__indicator__label { color: var(--d4-red) !important; }
.d4-form .e-form__indicators__indicator__separator { background-color: rgba(3, 29, 72, .14) !important; }
.d4-form .e-form__indicators__indicator--state-completed + .e-form__indicators__indicator__separator { background-color: var(--d4-red) !important; }
/* Archive cards: thumbnails keep the photos' 3:2 ratio */
.d4-blog .elementor-post__thumbnail { padding-bottom: 66.667% !important; }
.d4-blog .elementor-post__thumbnail img { width: 100%; height: 100%; object-fit: cover; }

/* =========================================================
   Layout variety kit: heading treatments, hero styles,
   image frames and section patterns (classes x-*, hs-*, lbl-*)
   ========================================================= */

/* ---------- Heading treatments (applied to the accent <em>) ---------- */
.hs-mark .elementor-heading-title em { position: relative; z-index: 0; color: inherit !important; }
.hs-mark .elementor-heading-title em::after { content: ""; position: absolute; left: -2px; right: -2px; bottom: .08em; height: .38em; background: rgba(214, 40, 57, .22); z-index: -1; border-radius: 3px; }
.d4-dark .hs-mark .elementor-heading-title em::after { background: rgba(255, 90, 104, .35); }
.hs-outline .elementor-heading-title em, .hs-outline .elementor-heading-title em .aa-split-word > span { color: transparent !important; -webkit-text-stroke: 1.6px var(--d4-red); }
.d4-dark .hs-outline .elementor-heading-title em, .d4-dark .hs-outline .elementor-heading-title em .aa-split-word > span { -webkit-text-stroke-color: #FF5A68; }
.hs-under .elementor-heading-title em { text-decoration: underline; text-decoration-color: var(--d4-red); text-decoration-thickness: .09em; text-underline-offset: .14em; color: inherit !important; }
.hs-caps .elementor-heading-title { text-transform: uppercase; letter-spacing: .01em; }
.hs-caps .elementor-heading-title em { color: var(--d4-red) !important; }
.x-xl .elementor-heading-title { font-size: clamp(40px, 6.2vw, 84px) !important; line-height: 1.02 !important; letter-spacing: -2px !important; }
.x-hero-center .elementor-widget-heading h1.elementor-heading-title { font-size: clamp(36px, 5vw, 64px) !important; }

/* ---------- Labels ---------- */
.lbl-pill .elementor-heading-title { display: inline-block; padding: 7px 14px; border-radius: 100px; background: rgba(214, 40, 57, .1); color: var(--d4-red); }
.lbl-pill.lbl-dark .elementor-heading-title { background: rgba(255, 255, 255, .14); color: #fff; }
.lbl-num .elementor-heading-title { display: inline-flex; align-items: center; gap: 12px; color: var(--d4-ink) !important; }
.lbl-num .elementor-heading-title::before { content: "/"; color: var(--d4-red); font-size: 18px; }
.lbl-num.lbl-dark .elementor-heading-title { color: #fff !important; }

/* ---------- Image frames (always natural ratio) ---------- */
.x-frame img { display: block; width: 100%; height: auto; }
.x-frame-plain img { border-radius: 20px; box-shadow: 0 40px 70px -46px rgba(6, 19, 46, .7); }
.x-frame-strip img { border-radius: 22px; }
.x-frame-block { position: relative; }
.x-frame-block::before { content: ""; position: absolute; right: -20px; bottom: -20px; width: 70%; height: 70%; background: var(--d4-navy); border-radius: 20px; z-index: 0; }
.x-frame-block::after { content: ""; position: absolute; left: -16px; top: -16px; width: 90px; height: 90px; background-image: radial-gradient(var(--d4-red) 1.6px, transparent 1.8px); background-size: 14px 14px; z-index: 0; }
.x-frame-block .elementor-widget-image { position: relative; z-index: 1; }
.x-frame-block img { border-radius: 20px; }
.x-frame-pad { padding: 14px !important; background: #fff; border-radius: 24px; box-shadow: 0 30px 60px -40px rgba(6, 19, 46, .55), inset 0 0 0 1px rgba(3, 29, 72, .07); }
.x-frame-pad img { border-radius: 14px; }
.x-caption p { margin: 14px 0 0; font-style: italic; color: #64748B !important; }

/* Two photos overlapping */
.x-stack { position: relative; padding-bottom: 60px !important; padding-right: 50px !important; }
.x-stack-big img { border-radius: 20px; display: block; width: 100%; height: auto; }
.x-stack-small { position: absolute !important; right: 0; bottom: 0; width: 46% !important; z-index: 2; }
.x-stack-small img { border-radius: 16px; border: 8px solid #fff; box-shadow: 0 30px 50px -30px rgba(6, 19, 46, .6); display: block; width: 100%; height: auto; }

/* ---------- Heroes ---------- */
/* Banner: the box takes the photo's own 16:9 ratio on desktop, so the photo is never cut */
@media (min-width: 1025px) { .x-banner { aspect-ratio: 16 / 9; max-height: 900px; min-height: 560px; } }
@media (min-width: 1025px) and (max-aspect-ratio: 16/10) { .x-banner { max-height: none; } }
@media (max-width: 1024px) {
	.x-banner { background-image: none !important; }
	.x-banner::before { background: transparent !important; }
	.x-banner > .e-con-inner > .x-banner-text, .x-banner > .x-banner-text { padding: 36px 28px 0 !important; }
	.x-banner-mimg img { display: block; width: 100%; height: auto; }
}
@media (max-width: 767px) { .x-banner > .e-con-inner > .x-banner-text, .x-banner > .x-banner-text { padding: 30px 16px 0 !important; } }
.x-banner .d4-crumbs .elementor-icon-list-items { justify-content: inherit; }
.x-banner-center .d4-crumbs .elementor-icon-list-items { justify-content: center; }
.x-hero-center { position: relative; overflow: clip; }
.x-hero-center::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; opacity: .7;
	background-image: linear-gradient(rgba(3, 29, 72, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(3, 29, 72, .06) 1px, transparent 1px); background-size: 46px 46px;
	-webkit-mask-image: radial-gradient(70% 70% at 50% 40%, #000, transparent); mask-image: radial-gradient(70% 70% at 50% 40%, #000, transparent); }
.x-hero-center > .e-con-inner { position: relative; z-index: 1; }
.x-hero-center .d4-crumbs .elementor-icon-list-items, .x-hero-video .d4-crumbs .elementor-icon-list-items { justify-content: center; }
.x-hero-center .d4-crumbs .elementor-icon-list-text, .x-hero-strip .d4-crumbs .elementor-icon-list-text, .x-hero-left .d4-crumbs .elementor-icon-list-text,
.x-hero-editorial .d4-crumbs .elementor-icon-list-text, .x-hero-caption .d4-crumbs .elementor-icon-list-text { color: #64748B !important; }
.x-hero-center .d4-crumbs .elementor-icon-list-item:last-child .elementor-icon-list-text, .x-hero-strip .d4-crumbs .elementor-icon-list-item:last-child .elementor-icon-list-text,
.x-hero-left .d4-crumbs .elementor-icon-list-item:last-child .elementor-icon-list-text, .x-hero-editorial .d4-crumbs .elementor-icon-list-item:last-child .elementor-icon-list-text,
.x-hero-caption .d4-crumbs .elementor-icon-list-item:last-child .elementor-icon-list-text { color: var(--d4-ink) !important; }
.x-chip { padding: 10px 16px; border-radius: 100px; background: #fff; box-shadow: inset 0 0 0 1px rgba(3, 29, 72, .1); width: auto !important; }
.x-chip .elementor-icon-box-wrapper { align-items: center; }
.x-chip .elementor-icon-box-title { margin: 0 !important; }
/* Device frame */
.x-device { border-radius: 16px; overflow: hidden; background: #0F1E3D; box-shadow: 0 50px 90px -40px rgba(0, 0, 0, .85), inset 0 0 0 1px rgba(255, 255, 255, .12); }
.x-device-bar .elementor-heading-title { display: flex; align-items: center; gap: 14px; padding: 12px 16px; font-size: 13px !important; background: rgba(255, 255, 255, .05); border-bottom: 1px solid rgba(255, 255, 255, .08); }
.x-device-bar .elementor-heading-title::before { content: ""; width: 46px; height: 10px; flex: none; background: radial-gradient(circle at 5px 5px, #FF5F57 4.5px, transparent 5px), radial-gradient(circle at 23px 5px, #FEBC2E 4.5px, transparent 5px), radial-gradient(circle at 41px 5px, #28C840 4.5px, transparent 5px); }
.x-device img { display: block; width: 100%; height: auto; }
/* Video frame */
.x-video { position: relative; border-radius: 22px; overflow: hidden; box-shadow: 0 50px 90px -40px rgba(0, 0, 0, .9); margin-bottom: -150px !important; z-index: 3; }
.x-video img { display: block; width: 100%; height: auto; }
.x-video::before { content: "● REC"; position: absolute; left: 22px; top: 20px; z-index: 2; padding: 6px 12px; border-radius: 8px; background: rgba(6, 19, 46, .75); color: #fff; font: 600 12px/1 Poppins, sans-serif; letter-spacing: .12em; }
.x-video::after { content: ""; position: absolute; left: 50%; top: 50%; width: 86px; height: 86px; margin: -43px 0 0 -43px; border-radius: 50%; z-index: 2;
	background: var(--d4-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M8 5v14l11-7z'/%3E%3C/svg%3E") 55% 50% / 34px no-repeat; box-shadow: 0 0 0 12px rgba(214, 40, 57, .3); }
.x-after-video { padding-top: 220px !important; }
@media (max-width: 767px) { .x-video { margin-bottom: -60px !important; } .x-after-video { padding-top: 120px !important; } .x-video::after { width: 60px; height: 60px; margin: -30px 0 0 -30px; background-size: 24px; } }
/* Live-caption frame */
.x-capframe { position: relative; }
.x-capframe img { display: block; width: 100%; height: auto; border-radius: 20px; }
.x-cap-bar { position: absolute !important; left: 18px; right: 18px; bottom: 18px; z-index: 2; width: auto !important; }
.x-cap-bar p { margin: 0; padding: 14px 18px; border-radius: 12px; background: rgba(6, 19, 46, .86); color: #fff !important; font-family: "Courier New", monospace; font-size: 15px; line-height: 1.5;
	-webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.x-cap-bar p::after { content: "▍"; color: #FF5A68; animation: xBlink 1s steps(1) infinite; margin-left: 2px; }
.x-cap-name { color: #FF8A94; font-weight: 700; }
@keyframes xBlink { 50% { opacity: 0; } }

/* ---------- Patterns ---------- */
.x-num { border-top: 1px solid rgba(3, 29, 72, .12); }
.x-num-dark { border-top-color: rgba(255, 255, 255, .14); }
.x-num-n .elementor-heading-title { display: inline-flex; width: 52px; height: 52px; align-items: center; justify-content: center; border-radius: 50%; box-shadow: inset 0 0 0 1.5px currentColor; font-size: 14px !important; }
.x-num > .e-con { --width: auto; flex: 1 1 0% !important; min-width: 0; }
.x-ic-icon .elementor-icon { width: 58px; height: 58px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 50%; background: rgba(214, 40, 57, .09); }
.x-ic-dark .x-ic-icon .elementor-icon { background: rgba(255, 255, 255, .08); }
.x-bento { border-radius: 20px; min-height: 230px; transition: transform .5s var(--d4-ease); }
.x-bento:hover { transform: translateY(-5px); }
.x-bento-navy { background: var(--d4-navy) !important; }
.x-bento-red { background: var(--d4-red) !important; }
.x-bento-light { background: #fff !important; box-shadow: inset 0 0 0 1px rgba(3, 29, 72, .09); }
.x-bento-icon .elementor-icon { width: 54px; height: 54px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 14px; background: rgba(255, 255, 255, .14); }
.x-bento-light .x-bento-icon .elementor-icon { background: rgba(214, 40, 57, .1); }
.x-bento-red .elementor-widget-text-editor, .x-bento-red .elementor-widget-text-editor p { color: rgba(255, 255, 255, .9) !important; }
@media (min-width: 768px) { .x-span2 { grid-column: span 2; } }
.x-tl { position: relative; }
.x-tl::before { content: ""; position: absolute; left: 11px; top: 8px; bottom: 30px; width: 2px; background: linear-gradient(var(--d4-red), rgba(214, 40, 57, .1)); }
.x-tl-item { position: relative; }
.x-tl-item::before { content: ""; position: absolute; left: 3px; top: 4px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: inset 0 0 0 4px var(--d4-red); }
.x-tl-dark .x-tl-item::before { background: var(--d4-navy2); }
.x-tl-tag .elementor-heading-title { display: inline-block; padding: 4px 10px; border-radius: 6px; background: rgba(214, 40, 57, .1); }
.x-tl-dark .x-tl-tag .elementor-heading-title { background: rgba(255, 255, 255, .1); }
.x-table-wrap { overflow-x: auto; border-radius: 18px; box-shadow: 0 30px 60px -44px rgba(6, 19, 46, .6), inset 0 0 0 1px rgba(3, 29, 72, .08); background: #fff; }
.x-table { width: 100%; border-collapse: collapse; font-size: 15px; min-width: 560px; margin: 0 !important; }
.x-table th, .x-table td { padding: 18px 22px; text-align: left; vertical-align: top; border: 0 !important; border-bottom: 1px solid rgba(3, 29, 72, .08) !important; background: none !important; }
.x-table thead th { background: var(--d4-navy) !important; color: #fff; font: 600 14px/1.3 Poppins, sans-serif; letter-spacing: .02em; }
.x-table thead th:first-child { width: 26%; }
.x-table tbody th { color: var(--d4-ink); font: 600 15px/1.4 Poppins, sans-serif; }
.x-table tbody tr:nth-child(even) td, .x-table tbody tr:nth-child(even) th { background: #F7F9FC !important; }
.x-table tbody tr:last-child td, .x-table tbody tr:last-child th { border-bottom: 0 !important; }
.x-table-note { padding: 14px 22px; margin: 0; font-size: 13px; color: #64748B; }
.x-tabs .e-n-tabs-heading { gap: 8px !important; flex-wrap: wrap; }
.x-tabs .e-n-tab-title { border-radius: 100px !important; padding: 12px 22px !important; background: #fff !important; box-shadow: inset 0 0 0 1px rgba(3, 29, 72, .12); border: 0 !important; color: var(--d4-ink) !important; }
.x-tabs .e-n-tab-title[aria-selected="true"] { background: var(--d4-red) !important; color: #fff !important; box-shadow: 0 14px 26px -14px rgba(214, 40, 57, .9); }
.x-tabs .e-n-tabs-content > .e-con { margin-top: 18px; border-radius: 20px; background: #fff; box-shadow: 0 30px 60px -44px rgba(6, 19, 46, .6), inset 0 0 0 1px rgba(3, 29, 72, .07); border: 0 !important; }
.x-statement p { margin: 0; max-width: 980px; text-align: center; font-family: Poppins, sans-serif; font-weight: 600; font-size: clamp(26px, 3.4vw, 44px); line-height: 1.25; letter-spacing: -.6px; color: #fff !important; }
.x-statement-red { background-image: radial-gradient(60% 120% at 100% 0%, rgba(255, 255, 255, .14), transparent 60%) !important; }
.x-fact-n .elementor-heading-title { font-size: clamp(44px, 5vw, 68px) !important; line-height: 1 !important; }
.x-fact { border-left: 2px solid var(--d4-red); padding-left: 22px !important; }
.x-check { border-radius: 20px; }
.x-check:not(.x-check-dark) { box-shadow: inset 0 0 0 1px rgba(3, 29, 72, .09); }
.x-qa { border-radius: 16px; background: #fff; box-shadow: inset 0 0 0 1px rgba(3, 29, 72, .09); transition: box-shadow .4s var(--d4-ease); }
.x-qa:hover { box-shadow: inset 0 0 0 1.5px var(--d4-red); }
.x-qa-q .elementor-heading-title { display: flex; gap: 10px; }
.x-qa-q .elementor-heading-title::before { content: "Q"; flex: none; width: 26px; height: 26px; display: inline-flex; align-items: center; justify-content: center; border-radius: 7px; background: var(--d4-red); color: #fff; font-size: 13px; }
.x-qa p:last-child { margin-bottom: 0; }
.x-ctacard { border-radius: 26px; background-image: radial-gradient(70% 140% at 100% 0%, rgba(214, 40, 57, .35), transparent 60%) !important; }
.x-bigphone .elementor-heading-title a { color: #fff; }
.x-bigphone .elementor-heading-title a:hover { color: #FF8A94; }
.x-chips .elementor-icon-list-items { gap: 10px; flex-wrap: wrap; }
.x-chips .elementor-icon-list-item { margin: 0 !important; }
.x-chips .elementor-icon-list-item a { display: inline-flex !important; flex-direction: row-reverse; gap: 8px; padding: 12px 18px; border-radius: 100px; background: #fff; box-shadow: inset 0 0 0 1px rgba(3, 29, 72, .14); transition: background-color .3s, color .3s; }
.x-chips .elementor-icon-list-item a:hover { background: var(--d4-red); }
.x-chips .elementor-icon-list-item a:hover .elementor-icon-list-text { color: #fff !important; }
.x-chips .elementor-icon-list-item a:hover svg { fill: #fff !important; }
.x-chips .elementor-icon-list-item::after { display: none !important; }
.x-strip .elementor-heading-title { font-size: clamp(24px, 2.6vw, 34px) !important; }
@media (max-width: 1024px) { .x-frame-block::before { right: -12px; bottom: -12px; } .x-stack { padding-right: 24px !important; } }
/* Numbered rows: numbers from a CSS counter */
.x-num-grid { counter-reset: xnum; }
.x-num { counter-increment: xnum; }
.x-num::after { content: counter(xnum, decimal-leading-zero); order: -1; position: static !important; flex: none; width: 52px; height: 52px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%;
	box-shadow: inset 0 0 0 1.5px var(--d4-red); color: var(--d4-red); font: 600 14px/1 Poppins, sans-serif; letter-spacing: .08em; }
.x-num-dark::after { color: #FF5A68; box-shadow: inset 0 0 0 1.5px #FF5A68; }
/* Hero labels drawn from data-label (kept out of the text flow) */
.x-hlabel::before { content: attr(data-label); display: table; margin-bottom: 18px; font: 600 13px/1.3 Poppins, sans-serif; letter-spacing: .16em; text-transform: uppercase; color: var(--d4-red); }
.x-hlabel-pill::before { padding: 7px 14px; border-radius: 100px; background: rgba(214, 40, 57, .1); }
.x-hlabel-dash::before { content: "—  " attr(data-label); }
.x-hlabel-num::before { content: "/  " attr(data-label); color: var(--d4-ink); }
.x-hlabel-center::before { margin-left: auto; margin-right: auto; }
@media (max-width: 767px) { .x-hlabel::before { font-size: 12px; margin-bottom: 14px; } }
/* Fact figures drawn from data-num */
.x-fact-t::before { content: attr(data-num); display: block; margin-bottom: 6px; font: 700 clamp(44px, 5vw, 68px)/1 Poppins, sans-serif; letter-spacing: -1px; color: var(--d4-ink); }
.x-fact-dark .x-fact-t::before { color: #fff; }/* End custom CSS */