@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Mono:wght@500;600;700&display=swap");

/* ==================================================
   EARTHRINGS USA GLOBAL DESIGN SYSTEM
   Edit these values to update the website globally
   ================================================== */
:root {
  /* 1. BRAND COLORS */
  --color-primary: #0e5bd7;
  --color-primary-hover: #1677e8;
  --color-ring-blue: #0067C8;
  --color-ring-blue-light: #0A7BFF;
  --color-ring-blue-dark: #004A99;
  --heading-blue-top: #1375D6;
  --heading-blue-middle: #0862BE;
  --heading-blue-bottom: #034B99;
  --heading-metallic-blue: linear-gradient(
    180deg,
    var(--heading-blue-top) 0%,
    var(--heading-blue-middle) 50%,
    var(--heading-blue-bottom) 100%
  );
  --color-blue-dark: #0b3a6e;
  --color-navy: #061b33;
  --color-cyan: #28a9e0;
  --color-blue-secondary: #0b63ce;
  --color-electric: #1484ff;
  --color-navy-legacy: #061f4d;
  --color-gold: #ffb31a;
  --color-gold-dark: #f4b11c;
  --color-success: #177a4c;
  --color-success-dark: #176342;
  --color-success-accent: #27a66c;
  --color-danger: #be2d38;

  /* 2. TEXT COLORS */
  --color-heading: #f4f9ff;
  --color-body-base: #d7e6f5;
  --color-body: #b7c9dc;
  --color-muted: #8fa8c0;
  --color-muted-legacy: #8fa8c0;
  --color-dark-text: #e8f3ff;
  --color-heading-legacy: #f4f9ff;
  --color-white: #ffffff;
  --color-link: var(--color-primary);
  --color-link-hover: var(--color-primary-hover);
  --color-text-on-dark-muted: #dceeff;
  --color-note: #bdd1e4;
  --color-chip: #0a5fc4;
  --footer-text: #dbe7f6;

  /* 3. BACKGROUND COLORS */
  --bg-page: #020b17;
  --bg-white: #07182b;
  --bg-page-tint: #030F1F;
  --bg-light: #06182b;
  --bg-light-blue: #08203a;
  --bg-navy: #020b17;
  --bg-dark: #020b17;
  --bg-card: #071a30;
  --bg-media: #0b2037;
  --bg-card-subtle: #0a1d33;
  --bg-control-soft: #0b2b50;
  --bg-mobile-subtle: #0b2037;
  --bg-check: #0b2b50;
  --bg-success-soft: #e8f8f0;
  --header-bg: #020b17;
  --footer-gradient-start: #020b17;
  --footer-gradient-end: #061f42;
  --topbar-gradient-start: #010711;
  --topbar-gradient-end: #06264b;

  /* 4. TYPOGRAPHY */
  --font-primary: "IBM Plex Sans", Inter, "Segoe UI", Arial, sans-serif;
  --font-secondary: "Barlow Condensed", Inter, "Segoe UI", Arial, sans-serif;
  --font-heading: var(--font-secondary);
  --font-ui: Inter, "Segoe UI", Arial, sans-serif;
  --font-mono: "IBM Plex Mono", monospace;
  --body-size: 16px;
  --body-weight: 400;
  --body-line-height: 1.5;
  --body-size-large: 17px;
  --body-line-height-large: 1.7;
  --intro-size: 18px;
  --small-size: 13px;
  --caption-size: 12px;
  --label-size: 14px;
  --label-weight: 600;
  --label-color: #dceafb;

  /* 5. HEADING SIZES */
  --display-size: clamp(58px, 5vw, 76px);
  --h1-size: 48px;
  --h1-size-mobile: 38px;
  --h1-size-technical: clamp(46px, 5vw, 68px);
  --h1-weight: 700;
  --h1-line-height: .98;
  --h1-letter-spacing: 0;
  --h1-margin: 8px 0 20px;
  --h2-size: 36px;
  --h2-size-large: clamp(36px, 4vw, 52px);
  --h2-size-compact: 38px;
  --h2-weight: 700;
  --h2-line-height: 1.04;
  --h3-size: 28px;
  --h3-size-compact: 23px;
  --h3-weight: 700;
  --h3-line-height: 1.05;
  --h4-size: 18px;
  --h4-weight: 700;

  /* 6. EYEBROW STYLES */
  --eyebrow-font-size: 20px;
  --eyebrow-font-weight: 500;
  --eyebrow-letter-spacing: .4px;
  --eyebrow-color: #7BC9F8;
  --eyebrow-text-transform: uppercase;

  /* 7. BUTTONS */
  --button-height: 46px;
  --button-height-small: 38px;
  --button-padding-x: 20px;
  --button-padding-y: 13px;
  --button-padding-small-x: 15px;
  --button-padding-small-y: 10px;
  --button-radius: 8px;
  --button-font-size: 16px;
  --button-font-size-small: 13px;
  --button-font-weight: 400;
  --button-metallic-top: #82c2fb;
  --button-metallic-upper: #1471c7;
  --button-metallic-mid: #0052CE;
  --button-metallic-bottom: #053970;
  --button-primary-bg-start: var(--button-metallic-top);
  --button-primary-bg-end: var(--button-metallic-bottom);
  --button-primary-text: #FFFFFF;
  --button-border: #2F9FFF;
  --button-hover-background: #2F9FFF;
  --button-hover-text: #092B55;
  --button-hover-border: #2F9FFF;
  --secondary-button-hover-bg: #2F9FFF;
  --secondary-button-hover-text: #092B55;
  --secondary-button-hover-border: #2F9FFF;
  --secondary-button-hover-shadow:
    0 8px 20px rgba(47,159,255,.28),
    inset 0 1px 0 rgba(255,255,255,.25);
  --button-secondary-bg: #0b2847;
  --button-secondary-text: #8dccff;
  --button-dark-bg: #020b17;
  --button-dark-text: #ffffff;
  --button-light-bg: #f6f9fd;
  --button-light-text: var(--color-blue-dark);
  --button-transition: .2s ease;

  /* 8. BORDERS */
  --border-light: rgba(80,151,224,.30);
  --border-medium: rgba(78,149,222,.38);
  --border-header: rgba(50,136,238,.26);
  --border-form: rgba(92,162,231,.48);
  --border-control: rgba(82,151,219,.42);
  --border-input-legacy: rgba(82,151,219,.42);
  --border-form-wrap: rgba(74,144,216,.34);
  --border-card-legacy: rgba(74,144,216,.30);
  --border-stat: rgba(87,159,231,.42);

  /* 9. SHADOWS */
  --shadow-card: 0 16px 36px rgba(0,0,0,.34), 0 0 0 1px rgba(32,126,226,.06);
  --shadow-card-soft: 0 10px 26px rgba(0,0,0,.24);
  --shadow-dropdown: 0 18px 42px rgba(0,0,0,.42);
  --shadow-toast: 0 8px 20px rgba(0,0,0,.25);
  --focus-outline: 3px solid rgba(40,169,224,.35);
  --focus-offset: 3px;
  --disabled-opacity: .55;

  /* 10. RADIUS */
  --radius-lg: 18px;
  --radius-md: 16px;
  --radius-card-sm: 14px;
  --radius-sm: 12px;
  --radius-control-lg: 10px;
  --radius-control: 9px;

  /* 11. SPACING */
  --section-padding-y: 68px;
  --section-padding-y-large: 78px;
  --section-padding-y-mobile: 54px;
  --section-gap: 22px;
  --content-gap: 34px;
  --page-gutter: 24px;
  --page-gutter-tablet: 18px;
  --page-gutter-mobile: 14px;

  /* 12. CONTAINERS */
  --container-width: 1500px;
  --merged-max: var(--container-width);
  --global-hero-width: 2058px;
  --global-hero-height: 480px;
  /* Default inner-page hero. Override this variable on any .page-hero. */
  --page-hero-image: url("hero_images/About1.webp");

  /* 13. HEADER */
  --header-background: var(--header-bg);
  --topbar-font-size: 13px;
  --header-border: var(--border-header);
  --header-logo-size: 44px;
  --nav-font-size: 16px;
  --nav-font-weight: 700;
  --nav-color: #2C88DA;
  --nav-hover-color: #62b1f6;
  --nav-active-color: #78b4ea !important;
  --dropdown-background: var(--bg-white);
  --dropdown-border: var(--border-light);

  /* 14. FOOTER */
  --footer-background-start: var(--footer-gradient-start);
  --footer-background-end: var(--footer-gradient-end);
  --footer-heading-color: var(--color-white);
  --footer-font-size: 14px;
  --footer-body-color: var(--footer-text);
  --footer-link-color: var(--footer-text);
  --footer-link-hover: var(--color-white);
  --footer-divider: rgba(255,255,255,.18);

  /* 15. FORMS */
  --form-bg: #091d33;
  --form-text: #eef7ff;
  --form-border: var(--border-form);
  --form-radius: var(--radius-control);
  --form-control-height: 46px;
  --form-control-padding-x: 12px;
  --form-control-padding-y: 10px;
  --form-focus-border: var(--color-primary);
  --form-focus-shadow: 0 0 0 3px rgba(14,91,215,.16);
  --form-placeholder: #7794ad;

  /* 16. CARDS */
  --card-bg: #0A67C8;
  --card-border: var(--border-light);
  --card-radius: var(--radius-lg);
  --card-shadow: var(--shadow-card);
  --card-padding: 28px;

  /* Existing aliases retained for backward compatibility */
  --navy: var(--color-navy-legacy);
  --navy2: #0a3278;
  --blue: var(--color-blue-secondary);
  --electric: var(--color-electric);
  --blue3: var(--bg-light-blue);
  --white: var(--color-white);
  --ink: #e8f3ff;
  --muted: var(--color-muted-legacy);
  --line: var(--border-medium);
  --gold: var(--color-gold);
  --bg: var(--bg-page-tint);
  --danger: var(--color-danger);
  --success: var(--color-success);
  --shadow: var(--shadow-card);
  --radius: var(--radius-lg);
  --ring-blue-base: var(--color-ring-blue);
  --ring-blue-highlight: var(--color-ring-blue-light);
  --ring-blue-shadow: var(--color-ring-blue-dark);
  --ring-blue-heading-gradient: var(--heading-metallic-blue);
}

*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-ui);color:var(--color-dark-text);background:var(--color-white);line-height:1.5}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}.container{width:min(var(--container-width),calc(100% - (var(--page-gutter) * 2)));max-width:var(--container-width);margin-inline:auto}.topbar{background:linear-gradient(90deg,var(--topbar-gradient-start),var(--topbar-gradient-end));color:var(--color-white);font-size:var(--topbar-font-size)}.topbar-inner{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:9px 0}.top-links,.socials{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.badge{border:1px solid rgba(255,255,255,.45);padding:5px 11px;border-radius:7px;color:#d8ecff;font-weight:800}.header{background:var(--header-background);border-bottom:1px solid var(--header-border);position:sticky;top:0;z-index:100}.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 0}.logo{display:flex;align-items:center;gap:12px;min-width:max-content}.logo-mark{width:var(--header-logo-size);height:var(--header-logo-size);display:block;object-fit:contain;flex:0 0 var(--header-logo-size)}.logo-text strong{display:block;font-size:27px;line-height:1}.logo-text strong span{color:#0a6fe8}.logo-text small{font-size:10.5px;letter-spacing:1.65px;font-weight:800}.menu{display:flex;align-items:center;gap:22px;font-weight:750;font-size:14px}.menu a{position:relative;padding:10px 0}.menu a:hover,.menu a.active{color:var(--color-blue-secondary)}.menu a.active:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--color-blue-secondary)}.nav-actions{display:flex;align-items:center;gap:10px}.cart-link{display:flex;align-items:center;gap:7px;padding:10px 12px;border:1px solid var(--border-medium);border-radius:var(--button-radius);font-weight:800}.cart-count{min-width:20px;height:20px;border-radius:20px;background:var(--color-blue-secondary);color:var(--color-white);display:grid;place-items:center;font-size:11px}.mobile-toggle{display:none;border:0;background:none;font-size:28px;color:var(--color-navy-legacy);cursor:pointer}.mobile-menu{display:none;padding:0 0 14px}.mobile-menu.open{display:grid}.mobile-menu a{padding:11px 0;border-top:1px solid var(--border-medium);font-weight:700}
.cta{display:inline-flex;align-items:center;justify-content:center;padding:var(--button-padding-y) var(--button-padding-x);border-radius:var(--button-radius);font-weight:var(--button-font-weight);background:linear-gradient(180deg,var(--button-primary-bg-start),var(--button-primary-bg-end));color:var(--color-white);border:0;box-shadow:0 8px 18px rgba(11,99,206,.22);cursor:pointer}.cta:hover{filter:brightness(1.06)}.cta:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.cta:disabled,.cta[aria-disabled="true"]{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.cta.gold{background:linear-gradient(180deg,#ffc534,#f5a000);color:#08265a}.cta.outline{background:transparent;border:1px solid currentColor;box-shadow:none}.cta.ghost{background:#eef6ff;color:var(--color-blue-secondary);box-shadow:none}.cta.danger{background:var(--color-danger)}.cta.small{min-height:var(--button-height-small);padding:var(--button-padding-small-y) var(--button-padding-small-x);font-size:var(--button-font-size-small)}.cta.block{width:100%}.text-link{color:var(--color-blue-secondary);font-weight:800}.hidden{display:none!important}
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 74% 28%,rgba(20,132,255,.5),transparent 28%),linear-gradient(118deg,#061d4a 0%,#0a3a88 52%,#0b63ce 100%);color:#fff}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(90deg,transparent,black 45%,black)}.hero-cursor-glow{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:0;transition:opacity .22s ease-out;mix-blend-mode:screen;filter:blur(18px) saturate(1.05);background:radial-gradient(circle at var(--mouse-x,50%) var(--mouse-y,50%),rgba(255,255,255,.08) 0%,rgba(173,216,255,.10) 8%,rgba(0,60,169,.18) 16%,rgba(0,60,169,.30) 28%,rgba(0,60,169,.44) 40%,rgba(0,60,169,.18) 58%,rgba(0,60,169,0) 78%,transparent 100%),radial-gradient(circle at var(--mouse-x,50%) var(--mouse-y,50%),rgba(0,60,169,.58) 0%,rgba(0,60,169,.12) 20%,rgba(0,60,169,0) 52%)}.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:28px;align-items:center;min-height:510px;padding:72px 0 60px}.eyebrow{color:var(--eyebrow-color);font-weight:var(--eyebrow-font-weight);letter-spacing:var(--eyebrow-letter-spacing);text-transform:var(--eyebrow-text-transform)}.hero h1{font-size:58px;line-height:.98;margin:14px 0 16px;letter-spacing:-1px}.hero h2{font-size:24px;margin:0 0 18px}.hero h2 span{color:#25a0ff}.hero p{font-size:17px;max-width:560px;color:#e7eff9}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.hero-art{position:relative;min-height:390px}.pipe-stack{position:absolute;right:-50px;top:28px;width:440px;height:260px;background:repeating-radial-gradient(circle at 10px 10px,#9da9b8 0 5px,#1a2636 6px 11px,#d7dfe7 12px 13px);border-radius:20px;transform:skewY(-3deg);opacity:.92;filter:drop-shadow(0 18px 20px rgba(0,0,0,.3))}.ring{position:absolute;width:250px;height:250px;border-radius:50%;border:30px solid #0b63ce;left:60px;top:26px;box-shadow:0 0 0 9px #08285f inset,0 0 30px rgba(20,132,255,.8);display:grid;place-items:center;font-weight:900;letter-spacing:2px}.ring:after{content:"EARTHRINGS";color:#fff;transform:rotate(-18deg)}.fittings{position:absolute;left:0;right:0;bottom:18px;display:flex;gap:12px;align-items:flex-end;justify-content:center}.fit{background:linear-gradient(#f5f7fb,#b8c2cf);border-radius:15px;box-shadow:inset 0 -8px 12px rgba(0,0,0,.12),0 8px 16px rgba(0,0,0,.28)}.fit.a{width:105px;height:75px}.fit.b{width:80px;height:110px}.fit.c{width:130px;height:90px}.fit.d{width:92px;height:68px;background:linear-gradient(#2a8cff,#063e95)}.fit.e{width:120px;height:120px;border-radius:50%}
.page-hero{background:linear-gradient(115deg,#061f4d,#0b63ce);color:#fff;padding:72px 0}.page-hero h1{font-size:var(--h1-size);margin:8px 0 10px}.breadcrumbs{color:#d4e7ff;font-size:14px}.section{padding:var(--section-padding-y) 0}.section.alt{background:var(--bg)}.section-title{text-align:center;margin-bottom:30px}.section-title h2{font-size:var(--h2-size);margin:0;color:#102f68}.section-title p{color:var(--muted);max-width:760px;margin:8px auto 0}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.panel{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:var(--card-padding)}.blue-panel{background:linear-gradient(135deg,#08265f,#0d3e88);color:#fff;border-radius:var(--radius);padding:32px}.blue-panel h2,.blue-panel h3{color:#fff}.image-panel{min-height:380px;border-radius:20px;background:radial-gradient(circle at 70% 30%,#1686ff 0 12%,transparent 13%),linear-gradient(135deg,#081f4e,#0b63ce);box-shadow:var(--shadow);position:relative;overflow:hidden}.image-panel:after{content:"";position:absolute;width:255px;height:255px;border:26px solid #d2e7ff;border-radius:50%;right:38px;bottom:28px;box-shadow:0 0 0 18px rgba(255,255,255,.1)}.feature-list{display:grid;gap:14px;margin:24px 0}.feature{display:flex;gap:12px}.check{width:28px;height:28px;border-radius:50%;background:#e4f2ff;color:var(--blue);display:grid;place-items:center;font-weight:900;flex:0 0 auto}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat{border:1px solid #bcd5ef;border-radius:12px;padding:16px;text-align:center}.stat strong{display:block;color:var(--electric);font-size:28px}
.product-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:24px;flex-wrap:wrap}.search-box{display:flex;gap:10px;flex:1;min-width:260px}.search-box input,.product-toolbar select{padding:12px 14px;border:1px solid var(--border-control);border-radius:var(--radius-control);background:var(--color-white)}.search-box input{width:100%}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.product-card{background:var(--color-white);border:1px solid var(--border-card-legacy);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 10px 24px rgba(18,52,100,.08);display:flex;flex-direction:column}.product-thumb{height:220px;background:linear-gradient(145deg,#f7fbff,#d8e6f4);display:grid;place-items:center;position:relative}.mini-ring{width:120px;height:120px;border:18px solid var(--color-blue-secondary);border-radius:50%;box-shadow:inset 0 0 0 8px #0a2f73}.product-badge{position:absolute;left:14px;top:14px;background:#08265f;color:var(--color-white);padding:5px 9px;border-radius:20px;font-size:11px;font-weight:800}.product-card .body{padding:20px;display:flex;flex-direction:column;flex:1}.product-card h3{margin:0 0 8px;color:var(--color-heading-legacy)}.sku{font-size:12px;color:var(--color-muted)}.price{font-weight:900;color:var(--color-blue-secondary);font-size:21px;margin:12px 0}.buyer-price{color:var(--color-success);font-weight:900}.card-actions{display:flex;gap:8px;margin-top:auto;flex-wrap:wrap}.qty-row{display:flex;align-items:center;gap:9px}.qty-row input{width:75px;padding:10px;border:1px solid var(--border-medium);border-radius:var(--button-radius)}.product-detail{display:grid;grid-template-columns:.95fr 1.05fr;gap:42px;align-items:start}.detail-art{min-height:460px;background:linear-gradient(145deg,#f7fbff,#d8e6f4);border-radius:22px;display:grid;place-items:center;box-shadow:var(--shadow-card)}.detail-art .mini-ring{width:230px;height:230px;border-width:30px}.detail-meta{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.chip{padding:6px 10px;border-radius:20px;background:var(--bg-control-soft);color:var(--color-chip);font-size:12px;font-weight:800}.detail-list{padding-left:20px}.detail-list li{margin:8px 0}
.cart-layout{display:grid;grid-template-columns:1.55fr .65fr;gap:28px;align-items:start}.cart-table{width:100%;border-collapse:collapse}.cart-table th,.cart-table td{padding:15px 10px;border-bottom:1px solid var(--border-medium);text-align:left}.cart-item{display:flex;align-items:center;gap:14px}.cart-mini{width:62px;height:62px;border-radius:var(--radius-sm);background:var(--bg-light-blue);display:grid;place-items:center}.cart-mini:before{content:"";width:32px;height:32px;border:7px solid var(--color-blue-secondary);border-radius:50%}.summary-card{background:var(--color-white);border:1px solid var(--border-medium);border-radius:var(--radius-md);padding:24px;box-shadow:var(--shadow-card);position:sticky;top:110px}.summary-row{display:flex;justify-content:space-between;gap:15px;padding:9px 0}.summary-row.total{font-size:20px;font-weight:900;border-top:1px solid var(--border-medium);margin-top:8px;padding-top:16px}.empty-state{text-align:center;padding:60px 20px}.empty-state .icon{font-size:54px}
.form-wrap{max-width:790px;margin:auto;background:var(--form-bg);border:1px solid var(--border-form-wrap);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-weight:750;font-size:14px}.field input,.field select,.field textarea{width:100%;min-height:var(--form-control-height);padding:var(--form-control-padding-y) var(--form-control-padding-x);border:1px solid var(--form-border);border-radius:var(--form-radius);outline:none;background:var(--form-bg);color:var(--form-text)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--form-focus-border);box-shadow:var(--form-focus-shadow)}.field textarea{min-height:130px;resize:vertical}.note{background:#eef6ff;border-left:4px solid var(--color-blue-secondary);padding:14px 16px;border-radius:var(--button-radius);color:var(--color-note);margin-bottom:22px}.notice-success{background:var(--bg-success-soft);color:var(--color-success-dark);border-left:4px solid var(--color-success-accent);padding:14px 16px;border-radius:var(--button-radius)}.checkout-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:28px;align-items:start}.payment-options{display:grid;gap:10px}.payment-option{border:1px solid var(--border-medium);border-radius:var(--radius-control-lg);padding:13px;display:flex;align-items:center;gap:10px}.account-grid{display:grid;grid-template-columns:260px 1fr;gap:26px}.account-nav{background:var(--color-white);border:1px solid var(--border-medium);border-radius:var(--radius-card-sm);padding:10px;align-self:start}.account-nav a{display:block;padding:12px;border-radius:var(--radius-control);font-weight:750}.account-nav a.active,.account-nav a:hover{background:var(--bg-control-soft);color:var(--color-blue-secondary)}.order-card{border:1px solid var(--border-medium);border-radius:var(--radius-card-sm);padding:18px;margin-bottom:14px}.order-head{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.status{padding:4px 9px;border-radius:var(--radius-lg);background:var(--bg-success-soft);color:var(--color-success);font-size:12px;font-weight:850}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px}.contact-card{background:linear-gradient(145deg,#08285f,var(--color-blue-secondary));color:var(--color-white);border-radius:var(--radius-lg);padding:30px}.contact-item{display:flex;gap:12px;margin:18px 0}.map{min-height:220px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#d8e8f8,#b8d5f0);display:grid;place-items:center;color:var(--color-heading-legacy);font-weight:800;margin-top:22px}.faq details{border-bottom:1px solid var(--border-medium);padding:15px 0}.faq summary{font-weight:850;cursor:pointer}.legal h2{margin-top:32px;color:var(--color-heading-legacy)}.legal p,.legal li{color:#4f637b}
.footer {
  background:
    linear-gradient(rgba(9, 36, 73, 0), rgb(9, 36, 73)),
    url("footer-background.webp");

  background-size: cover;
  background-position: center-top;
  background-repeat: no-repeat;
  background-color: #092449;

  color: var(--color-white);
  padding: 44px 0;
}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .95fr 1fr 1.05fr;gap:26px}.footer h4{margin:0 0 12px}.footer ul{list-style:none;padding:0;margin:0}.footer li{margin:7px 0;color:var(--footer-body-color);font-size:var(--footer-font-size)}.footer p{color:var(--footer-body-color);font-size: 10px;}.footer-box{border:1px solid var(--color-gold-dark);border-radius:var(--radius-sm);padding:18px}.bottom{border-top:1px solid var(--footer-divider);margin-top:28px;padding:15px 0;font-size:13px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--footer-text)}
@media(max-width:1050px){.menu{display:none}.mobile-toggle{display:block}.hero-grid,.grid-2,.product-detail,.cart-layout,.checkout-grid,.contact-grid{grid-template-columns:1fr}.hero h1{font-size:47px}.product-grid,.grid-3{grid-template-columns:repeat(2,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.account-grid{grid-template-columns:1fr}.account-nav{display:flex;overflow:auto;gap:5px}.account-nav a{min-width:max-content}.summary-card{position:static}}
@media(max-width:680px){.topbar-inner{align-items:flex-start}.top-links{gap:7px;font-size:11px}.socials{display:none}.logo-text strong{font-size:21px}.logo-mark{width:46px;height:46px}.nav-actions .cta{display:none}.hero-grid{padding:48px 0 52px}.hero h1{font-size:39px}.hero-art{min-height:285px}.pipe-stack{width:330px;height:220px;right:-130px}.ring{width:190px;height:190px;border-width:24px;left:10px}.section{padding:50px 0}.page-hero{padding:54px 0}.page-hero h1{font-size:var(--h1-size-mobile)}.product-grid,.grid-3,.grid-4,.footer-grid,.form-grid,.stat-grid{grid-template-columns:1fr}.product-toolbar{align-items:stretch}.search-box{min-width:100%}.cart-table thead{display:none}.cart-table,.cart-table tbody,.cart-table tr,.cart-table td{display:block;width:100%}.cart-table tr{padding:12px 0;border-bottom:1px solid var(--line)}.cart-table td{border:0;padding:5px 0}.cart-table td[data-label]:before{content:attr(data-label) ": ";font-weight:800}.nav-actions{gap:4px}.cart-link{padding:9px}.cart-link .cart-text{display:none}}

/* Client proposal homepage imagery */
.proposal-hero{background:linear-gradient(115deg,#061b33 0%,#082e66 50%,#0e5bd7 100%)}
.proposal-hero:after{content:"";position:absolute;left:-3%;right:-3%;bottom:-38px;height:74px;border-radius:50% 50% 0 0/100% 100% 0 0;z-index:1}
.proposal-hero-grid{grid-template-columns:.82fr 1.18fr;min-height:500px;padding:42px 0 58px;gap:18px}
.proposal-hero-grid>*{position:relative;z-index:2}
.proposal-hero-image-wrap{align-self:stretch;display:flex;align-items:center;justify-content:flex-end;overflow:visible}
.proposal-hero-image{width:100%;max-width:660px;height:400px;object-fit:cover;object-position:center;border-radius:4px;box-shadow:0 24px 50px rgba(0,0,0,.28);mix-blend-mode:normal}
.proposal-hero .hero-copy{padding-right:10px}
.proposal-hero .hero-copy h1{font-size:64px;max-width:520px}
.proposal-products-section{padding-top:54px}
.proposal-title h2{font-family:"Arial Narrow",var(--font-ui);font-weight:900;letter-spacing:.3px}
.proposal-product-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.proposal-product-card{background:var(--color-white);border:1px solid var(--border-light);border-radius:6px;padding:14px;box-shadow:0 8px 20px rgba(6,27,51,.08);text-align:center;transition:.2s ease}
.proposal-product-card:hover{transform:translateY(-3px);border-color:var(--color-primary-hover);box-shadow:0 12px 26px rgba(14,91,215,.16)}
.proposal-product-card img{width:100%;height:126px;object-fit:cover;object-position:center;border-radius:3px;background:var(--color-white);margin-bottom:10px}
.proposal-product-card h3{font-size:17px;line-height:1.15;color:var(--color-blue-dark);margin:8px 0}
.proposal-product-card p{font-size:13px;color:var(--color-muted);margin:0}
.proposal-center{text-align:center;margin-top:24px}
.proposal-why-section{background:var(--color-white)}
.proposal-why-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:0;align-items:stretch;max-width:1180px}
.proposal-factory-wrap{overflow:hidden;border-radius:6px 0 0 6px;min-height:320px}
.proposal-factory{width:100%;height:100%;min-height:320px;object-fit:cover}
.proposal-blue-panel{border-radius:0 6px 6px 0;padding:34px 48px 34px 42px;background:linear-gradient(125deg,var(--color-navy),var(--color-blue-dark) 65%,var(--color-primary))}
.proposal-blue-panel h2{font-size:35px;margin-top:0}.proposal-blue-panel h2 span{color:var(--color-cyan)}
.proposal-blue-panel .stat{border-radius:5px}.proposal-blue-panel .cta{margin-top:18px}
.proposal-industry-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.proposal-industry-card{border:1px solid var(--border-light);border-radius:6px;padding:14px;background:#0a67c8;text-align:center;box-shadow:0 6px 16px rgba(6,27,51,.06)}
.proposal-industry-card img{height:100px;width:100%;object-fit:cover;object-position:center;border-radius:3px;margin-bottom:8px}
.proposal-industry-card h3{margin:0;color:var(--color-blue-dark);font-size:15px}
.proposal-industries .proposal-title .eyebrow,
.proposal-industries .proposal-title h2{background:none;color:#1467C8;-webkit-text-fill-color:#1467C8}
@media(max-width:1050px){.proposal-product-grid,.proposal-industry-grid{grid-template-columns:repeat(2,1fr)}.proposal-hero-grid,.proposal-why-grid{grid-template-columns:1fr}.proposal-hero-image{max-width:none;height:auto}.proposal-blue-panel,.proposal-factory-wrap{border-radius:6px}.proposal-factory-wrap{margin-bottom:18px}}
@media(max-width:680px){.proposal-product-grid,.proposal-industry-grid{grid-template-columns:1fr}.proposal-hero .hero-copy h1{font-size:42px}.proposal-blue-panel{padding:28px 22px}.proposal-hero:after{bottom:-22px;height:42px}}

/* =========================================================
   MERGED CLIENT PROPOSAL OVERRIDES
   Visual layout/images: client proposal template
   Copy/hero content: 1500px editable hero template
   Main desktop content width: 1500px
   ========================================================= */
body{font-family:var(--font-primary);font-size:var(--body-size);font-weight:var(--body-weight);line-height:var(--body-line-height);color:var(--color-body-base);background:var(--bg-page)}
h1,h2,h3,h4,h5,h6,.eyebrow,.cta,.menu,.logo-text strong{font-family:var(--font-heading)}


/* Hero remains full-bleed while its editable content is aligned to the 1500px container. */
.merged-hero{background:linear-gradient(112deg,#061b33 0%,#082e66 48%,#0e5bd7 100%);--mouse-x:50%;--mouse-y:50%}
.merged-hero:before{display:none}
.merged-hero .proposal-hero-grid{grid-template-columns:minmax(470px,.82fr) minmax(650px,1.18fr);min-height:570px;padding:52px 0 76px;gap:26px;position:relative;z-index:2}
.merged-hero .hero-copy h1{font-size:clamp(58px,5vw,76px);line-height:.96;max-width:690px;margin:14px 0 18px;text-transform:none}
.merged-hero .hero-lead{font-size:18px;line-height:1.6;max-width:660px;color:#edf6ff}
.merged-hero .proposal-hero-image{max-width:820px;height:455px;object-fit:cover;object-position:center;border-radius:4px}
.merged-hero .hero-cursor-glow{background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),rgba(255,255,255,.06) 0%,rgba(160,210,255,.08) 7%,rgba(0,60,169,.18) 15%,rgba(0,60,169,.16) 24%,rgba(0,60,169,.46) 38%,rgba(0,60,169,.18) 56%,rgba(0,60,169,0) 72%,transparent 100%),radial-gradient(circle at var(--mouse-x) var(--mouse-y),rgba(0,60,169,.62) 0%,rgba(0,60,169,.12) 18%,rgba(0,60,169,0) 52%);filter:blur(22px) saturate(1.1);mix-blend-mode:screen}
.hero-login-link{display:inline-flex;align-items:center;justify-content:center;margin-top:18px;padding:9px 16px;min-height:56px;background:#0e5bd7;border:1px solid #1677e8;border-radius:4px;color:#fff;font-size:14px;font-weight:700;line-height:1;text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .2s ease}
.hero-login-link:hover{background:#1677e8;border-color:#28a9e0;color:#fff;transform:translateY(-1px)}
.hero-login-link:focus-visible{outline:3px solid rgba(40,169,224,.35);outline-offset:3px}

/* 1500px value strip */
.merged-value-strip{background:var(--color-white);border-bottom:1px solid var(--border-light)}
.value-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.value-grid article{padding:22px 26px;border-right:1px solid var(--border-light);display:flex;flex-direction:column;gap:3px}
.value-grid article:first-child{border-left:1px solid var(--border-light)}
.value-grid strong{color:var(--color-blue-dark);font-size:17px}
.value-grid span{color:var(--color-muted);font-size:13px}

.proposal-product-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}
.proposal-product-card{padding:18px;min-height:360px;display:flex;flex-direction:column}
.proposal-product-card img{height:168px}
.proposal-product-card h3{font-size:23px}
.proposal-product-card p{font-size:15px;line-height:1.45}
.card-link{margin-top:auto;padding-top:15px;color:var(--color-primary);font-weight:800;font-family:var(--font-heading);font-size:16px;text-transform:uppercase}

.proposal-why-grid{max-width:none;grid-template-columns:.92fr 1.08fr}
.proposal-factory{height:100%;min-height:470px;object-fit:cover}
.proposal-blue-panel{padding:48px 54px}
.proposal-blue-panel h2{font-size:46px;line-height:1.05;margin:8px 0 18px}
.proposal-blue-panel p{font-size:17px;max-width:760px}
.merged-stats{margin:28px 0 24px}
.merged-stats .stat{min-height:105px;display:flex;flex-direction:column;justify-content:center}
.merged-stats .stat span{display:block;color:var(--color-white);font-size:13px}

.proposal-industry-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}
.proposal-industry-card img{height:150px;object-fit:cover}

.ice{background:var(--bg-light-blue)}
.merged-resource-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.merged-resource-grid a{background:var(--color-white);border:1px solid var(--border-light);padding:26px;min-height:145px;display:flex;flex-direction:column;gap:8px;box-shadow:0 8px 20px rgba(6,27,51,.06)}
.merged-resource-grid strong{color:var(--color-blue-dark);font-family:var(--font-heading);font-size:23px}
.merged-resource-grid span{color:var(--color-muted);font-size:14px}

.merged-distributor-cta{background:linear-gradient(110deg,var(--color-navy),var(--color-blue-dark));color:var(--color-white);padding:46px 0}
.distributor-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.distributor-inner h2{font-size:42px;line-height:1.05;margin:7px 0 10px;color:var(--color-white)}
.distributor-inner p{margin:0;color:var(--color-text-on-dark-muted)}
.cta-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.light-cta{background:var(--color-white)!important;color:var(--color-blue-dark)!important;border-color:var(--color-white)!important}

/* Header/footer inherit the same 1500px container. */
.header .container,.topbar .container,.footer .container{width:min(var(--container-width),calc(100% - (var(--page-gutter) * 2)));max-width:var(--container-width)}

@media(max-width:1250px){
  .merged-hero .proposal-hero-grid{grid-template-columns:1fr 1.12fr}
  .merged-hero .proposal-hero-image{height:420px}
  .proposal-product-grid,.proposal-industry-grid{gap:14px}
}
@media(max-width:1050px){
  .container,.header .container,.topbar .container,.footer .container{width:min(var(--container-width),calc(100% - (var(--page-gutter-tablet) * 2)))}
  .merged-hero .proposal-hero-grid{grid-template-columns:1fr;min-height:auto}
  .merged-hero .proposal-hero-image{max-width:none;height:auto}
  .value-grid{grid-template-columns:repeat(2,1fr)}
  .proposal-product-grid,.proposal-industry-grid,.merged-resource-grid{grid-template-columns:repeat(2,1fr)}
  .distributor-inner{align-items:flex-start;flex-direction:column}
  .cta-actions{justify-content:flex-start}
}
@media(max-width:680px){
  .container,.header .container,.topbar .container,.footer .container{width:calc(100% - (var(--page-gutter-mobile) * 2))}
  .merged-hero .proposal-hero-grid{padding:42px 0 58px}
  .merged-hero .hero-copy h1{font-size:44px}
  .merged-hero .hero-lead{font-size:16px}
  .value-grid,.proposal-product-grid,.proposal-industry-grid,.merged-resource-grid{grid-template-columns:1fr}
  .value-grid article{border-left:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}
  .proposal-product-card{min-height:0}
  .proposal-blue-panel{padding:30px 22px}
  .proposal-blue-panel h2,.distributor-inner h2{font-size:34px}
}

/* =========================================================
   LANDING PAGE STRUCTURE - MASTER PLAN SIMPLIFIED
   Hero -> Value Strip -> Problem/Solution -> Products ->
   How It Works -> Industries -> Distributor -> Resources/CTA
   ========================================================= */
.ice-soft{background:#f7fbff}
.problem-solution-section{background:var(--color-white);padding:78px 0}
.problem-solution-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center; padding-bottom: 40px;}
.problem-copy h2,.how-content h2{font-size:clamp(40px,4vw,56px);line-height:1.02;color:var(--color-navy);margin:8px 0 22px}
.problem-copy p{font-size:17px;line-height:1.72;color:var(--color-body);max-width:720px}
.problem-copy p strong{color:var(--color-blue-dark)}
.problem-copy .cta{margin-top:10px}
.problem-visual{display:grid;grid-template-columns:1fr 52px 1fr;align-items:center;gap:0}
.current-card{min-height:370px;border:1px solid var(--border-light);background:var(--color-white);padding:28px 24px;text-align:center;box-shadow:0 14px 30px rgba(6,27,51,.08);position:relative;overflow:hidden}
.current-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--color-blue-dark)}
.danger-current:before{background:var(--color-muted)}.protected-current:before{background:var(--color-primary-hover)}
.current-label{display:inline-block;font-family:var(--font-heading);font-weight:800;letter-spacing:.8px;font-size:14px;color:var(--color-blue-dark);background:var(--bg-light-blue);padding:6px 10px}
.current-illustration-note{margin-top:7px;font-size:10px;font-weight:600;letter-spacing:.55px;color:var(--color-muted);text-transform:uppercase}
.motor-diagram{width:190px;height:190px;margin:25px auto 18px;position:relative;display:grid;place-items:center}
.motor-shaft{position:absolute;width:142px;height:38px;background:linear-gradient(180deg,#9aaabd,#d9e2ec 45%,#829ab1);border:2px solid var(--color-muted)}
.bearing-ring{position:absolute;width:125px;height:125px;border:20px solid var(--color-muted);border-radius:50%;box-shadow:inset 0 0 0 4px var(--border-light),0 0 0 3px var(--border-light)}
.blue-ring-diagram{border-color:var(--color-primary);box-shadow:inset 0 0 0 4px var(--color-cyan),0 0 0 3px var(--border-light)}
.current-path{position:absolute;font-size:44px;font-weight:900;z-index:3}.current-path-danger{color:var(--color-body);top:65px}.current-path-safe{color:var(--color-primary-hover);right:4px;bottom:18px;font-size:52px}
.current-card h3{font-size:25px;margin:8px 0;color:var(--color-blue-dark)}.current-card p{font-size:14px;color:var(--color-muted);margin:0;line-height:1.55}
.current-arrow{font-size:42px;color:var(--color-primary-hover);text-align:center;font-weight:800}

.how-section{padding:78px 0;background:var(--color-white)}
.how-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:58px;align-items:stretch; padding-bottom: 40px; }
.how-image-panel{border-radius: 18px;min-height:520px;position:relative;overflow:hidden;background:var(--color-navy)}
.how-image-panel img{width:100%;height:100%;min-height:520px;object-fit:cover;filter:saturate(.9)}
.how-image-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,27,51,.08),rgba(6,27,51,.82))}
.how-image-overlay{position:absolute;z-index:2;left:34px;right:34px;bottom:30px;color:var(--color-white)}
.how-kicker{display:block;color:#61c2f2;font-family:var(--font-heading);font-weight:800;letter-spacing:1px;margin-bottom:5px}
.how-image-overlay strong{font-family:var(--font-heading);font-size:35px;line-height:1.03}
.how-content{align-self:center}
.process-steps{display:flex;flex-direction:column;margin:24px 0 30px}
.process-step{display:grid;grid-template-columns:64px 1fr;gap:18px;padding:22px 0;border-top:1px solid var(--border-light)}
.process-step:last-child{border-bottom:1px solid var(--border-light)}
.process-step>span{width:52px;height:52px;display:grid;place-items:center;background:var(--color-primary);color:var(--color-white);font-family:var(--font-mono);font-weight:700;font-size:16px}
.process-step h3{font-size:26px;color:var(--color-blue-dark);margin:0 0 5px}.process-step p{margin:0;color:var(--color-muted);line-height:1.55}

.distributor-process-section{padding:76px 0;background: radial-gradient(circle at 50% -12%, rgba(25, 131, 255, .22), transparent 32%), linear-gradient(180deg, #041226b0 0%, #041226b0 58%, #04122600 100%);}
.distributor-process-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center; padding-bottom: 40px;}
.distributor-intro h2{font-size:clamp(42px,4vw,58px);line-height:1.02;margin:8px 0 18px;color:var(--color-white)}
.distributor-intro p{color:var(--color-text-on-dark-muted);font-size:17px;line-height:1.7;max-width:650px}
.left-actions{justify-content:flex-start;margin-top:28px}
.approval-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.approval-steps article{background:#01143eb8;border:1px solid rgba(255,255,255,.18);padding:22px 18px;min-height:210px;backdrop-filter:blur(2px)}
.approval-steps article>span{width:38px;height:38px;display:grid;place-items:center;background:var(--color-white);color:var(--color-blue-dark);font-family:var(--font-mono);font-weight:800;margin-bottom:18px}
.approval-steps strong{display:block;font-family:var(--font-heading);font-size:25px;color:var(--color-white);margin-bottom:7px}
.approval-steps p{font-size:13px;line-height:1.55;color:var(--color-text-on-dark-muted);margin:0}

.merged-resource-grid em{margin-top:auto;padding-top:12px;color:#ffffff;font-style:normal;font-family:var(--font-heading);font-weight:800;text-transform:uppercase}
.final-home-cta{margin-top:48px;background:linear-gradient(110deg,var(--color-navy),var(--color-blue-dark));padding:38px 42px;color:var(--color-white);display:flex;justify-content:space-between;align-items:center;gap:38px;border-top:4px solid var(--color-primary-hover)}
.final-home-cta h2{font-size:clamp(34px,3vw,46px);line-height:1.05;margin:6px 0 10px;color:var(--color-white)}.final-home-cta p{margin:0;color:var(--color-text-on-dark-muted);max-width:850px}.final-home-cta .cta-actions{flex-shrink:0}

@media(max-width:1250px){
  .problem-solution-grid,.how-grid,.distributor-process-grid{gap:38px}
  .approval-steps{grid-template-columns:repeat(3,1fr)}
  .approval-steps article{min-height:180px}
}
@media(max-width:1050px){
  .problem-solution-grid,.how-grid,.distributor-process-grid{grid-template-columns:1fr}
  .problem-visual{max-width:820px;margin:10px auto 0;width:100%}
  .how-image-panel,.how-image-panel img{min-height:420px}
  .approval-steps{grid-template-columns:repeat(5,1fr)}
  .final-home-cta{align-items:flex-start;flex-direction:column}
}
@media(max-width:820px){
  .problem-visual{grid-template-columns:1fr;gap:14px}.current-arrow{transform:rotate(90deg);height:40px;line-height:40px}
  .approval-steps{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  .problem-solution-section,.how-section,.distributor-process-section{padding:54px 0}
  .problem-copy h2,.how-content h2{font-size:38px}
  .current-card{min-height:330px;padding:22px 18px}.motor-diagram{width:160px;height:160px}.bearing-ring{width:110px;height:110px;border-width:17px}.motor-shaft{width:126px}
  .how-image-panel,.how-image-panel img{min-height:320px}.how-image-overlay{left:22px;right:22px;bottom:22px}.how-image-overlay strong{font-size:29px}
  .process-step{grid-template-columns:52px 1fr;gap:14px}.process-step>span{width:44px;height:44px}.process-step h3{font-size:23px}
  .approval-steps{grid-template-columns:1fr}.approval-steps article{min-height:0}
  .final-home-cta{padding:30px 22px}
}


/* ===== MASTER PLAN PUBLIC SITE NAVIGATION + PAGE SYSTEM ===== */
#site-header{position:sticky;top:0;z-index:1000}
.header{position:relative;z-index:1000}
.nav{display:flex;align-items:center;gap:22px}
.menu{display:flex;align-items:center;gap:3px;margin-left:auto}
.menu>a,.nav-dropbtn{font-family:var(--font-heading);font-size:var(--nav-font-size);font-weight:var(--nav-font-weight);text-transform:uppercase;letter-spacing:.25px;color:var(--nav-color);text-decoration:none;padding:26px 10px;background:none;border:0;cursor:pointer;white-space:nowrap}
.menu>a:hover,.nav-dropbtn:hover,.menu>a.active,.nav-dropdown.active>.nav-dropbtn{color:var(--nav-hover-color)}
.nav-dropdown{position:relative}
.dropdown-menu{position:absolute;top:calc(100% - 4px);left:0;min-width:270px;background:var(--dropdown-background);border:1px solid var(--dropdown-border);box-shadow:0 16px 36px rgba(6,27,51,.16);padding:10px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s ease;z-index:1200}
.nav-dropdown:hover>.dropdown-menu,.nav-dropdown.open>.dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}
.dropdown-menu a{display:block;padding:11px 13px;color:var(--color-dark-text);text-decoration:none;font-size:14px;font-weight:500;border-left:3px solid transparent}
.dropdown-menu a:hover,.dropdown-menu a.active{background:var(--bg-light-blue);color:var(--color-primary);border-left-color:var(--color-primary)}
.dropdown-menu.mega{width:580px;display:grid;grid-template-columns:1fr 1fr;gap:2px 8px}
.chev{font-size:12px;margin-left:5px}
.nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.login-btn,.apply-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;text-decoration:none;font-family:var(--font-heading);font-size:14px;font-weight:800;text-transform:uppercase;border:1px solid var(--color-primary)}
.login-btn{color:var(--color-primary);background:var(--color-white)}.login-btn:hover{background:var(--bg-light-blue)}.apply-btn{background:var(--color-primary);color:var(--color-white)}.apply-btn:hover{background:var(--color-primary-hover)}
.mobile-menu{display:none}.mobile-group-toggle,.mobile-submenu{display:none}
.expanded-footer{grid-template-columns:minmax(280px,320px) repeat(4,minmax(180px,210px));justify-content:start}
.footer a:hover{text-decoration:none}
.footer-bottom a{color:inherit;transition:color .2s ease}
.footer-bottom a:hover{color:var(--color-primary-hover)}
.expanded-footer ul a{color:var(--footer-link-color);text-decoration:none;transition:color .2s ease}
.expanded-footer ul a:hover,.expanded-footer ul a:focus-visible{color:var(--color-primary-hover);text-decoration:none}

.technical-page-hero{background:linear-gradient(108deg,#061b33 0%,#0b3a6e 64%,#0e5bd7 100%);color:#fff;padding:66px 0}
.page-hero-grid{display:grid;grid-template-columns:1fr .78fr;gap:58px;align-items:center}
.technical-page-hero h1{font-family:"Barlow Condensed",sans-serif;font-size:clamp(46px,5vw,68px);line-height:.98;margin:8px 0 20px;color:#fff;max-width:860px}
.technical-page-hero p{font-size:18px;line-height:1.65;color:#dceeff;max-width:760px}
.page-hero-image{height:340px;overflow:hidden;border:1px solid rgba(255,255,255,.22);box-shadow:0 22px 50px rgba(0,0,0,.2)}
.page-hero-image img{width:100%;height:100%;object-fit:cover}

/* Why Be a Distributor hero artwork: stronger dark overlay on the left so the copy reads clearly. */
body.why-be-a-distributor-page .page-hero::after{
  background:linear-gradient(90deg,rgba(2,11,26,.92) 0%,rgba(2,11,26,.8) 32%,rgba(2,11,26,.4) 58%,rgba(2,11,26,.12) 80%) !important;
}
.content-narrow{max-width:1100px}
.content-narrow h2{font-size:clamp(34px,3.4vw,48px);line-height:1.04;color:var(--color-navy);margin:0 0 18px}
.content-narrow p,.content-narrow li{font-size:17px;line-height:1.7;color:var(--color-body)}
.resource-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}
.resource-link-grid a{display:flex;flex-direction:column;gap:8px;min-height:130px;padding:24px;background:var(--color-white);border:1px solid var(--border-light);text-decoration:none;box-shadow:0 8px 22px rgba(6,27,51,.06)}
.resource-link-grid strong{font-family:var(--font-heading);font-size:24px;color:var(--color-blue-dark)}.resource-link-grid span{color:var(--color-muted)}
.info-panel{margin-top:22px;padding:20px 22px;background:var(--bg-light-blue);border-left:4px solid var(--color-primary)}.info-panel strong{color:var(--color-blue-dark)}
.master-form{max-width:1200px;margin:0 auto;background:var(--color-white);border:1px solid var(--border-light);padding:38px;box-shadow:0 12px 32px rgba(6,27,51,.08)}
.master-form h2{font-size:42px;margin-top:0;color:var(--color-navy)}.form-section{padding:28px 0;border-top:1px solid var(--border-light)}.form-section h3{font-size:28px;color:var(--color-blue-dark);margin:0 0 20px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 22px}.master-form label,.auth-card label{display:flex;flex-direction:column;gap:7px;font-size:var(--label-size);font-weight:var(--label-weight);color:var(--label-color)}.master-form input,.master-form textarea,.master-form select,.auth-card input{width:100%;min-height:var(--form-control-height);border:1px solid var(--form-border);padding:var(--form-control-padding-y) var(--form-control-padding-x);font:inherit;background:var(--form-bg);color:var(--form-text)}.master-form textarea{min-height:100px;resize:vertical}.master-form .check{display:flex;flex-direction:row;align-items:flex-start;gap:10px;margin:10px 0;font-weight:500}.master-form .check input{width:auto;min-height:auto;margin-top:4px}
.auth-shell{display:grid;place-items:center}.auth-card{ border-radius:18px; width:min(820px,100%);background:var(--color-white);border:1px solid var(--border-light);padding:36px;box-shadow:0 14px 34px rgba(6,27,51,.09)}.auth-card h2{font-size:40px;color:var(--color-navy);margin-top:0}.auth-card p{color:var(--color-muted)}.auth-card label{margin:16px 0}.auth-card .cta{width:100%;margin-top:10px}.auth-card a{color:var(--color-primary)}

@media(max-width:1380px){.menu>a,.nav-dropbtn{font-size:15px;padding-left:7px;padding-right:7px}.nav-actions .login-btn{display:none}}
@media(max-width:1180px){
 .menu,.nav-actions>.login-btn,.nav-actions>.apply-btn{display:none}.mobile-toggle{display:inline-flex}.mobile-menu.open{display:block;padding-top:8px;padding-bottom:18px;border-top:1px solid #d8e5f0;background:#fff}.mobile-menu>a{display:block;padding:12px 4px;border-bottom:1px solid #edf3f8;color:#102a43;text-decoration:none;font-weight:700}.mobile-group-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:13px 4px;border:0;border-bottom:1px solid #edf3f8;background:#fff;font:700 16px "Barlow Condensed",sans-serif;text-transform:uppercase;color:#102a43}.mobile-submenu.open{display:block;padding:3px 0 8px 14px;background:#f7fbff}.mobile-submenu a{display:block;padding:10px 8px;color:#486581;text-decoration:none}.mobile-cta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.mobile-cta-row .login-btn,.mobile-cta-row .apply-btn{display:flex}.expanded-footer{grid-template-columns:repeat(2,1fr)}.page-hero-grid{grid-template-columns:1fr}.page-hero-image{height:300px}.resource-link-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){.expanded-footer{grid-template-columns:1fr}.form-grid,.resource-link-grid,.mobile-cta-row{grid-template-columns:1fr}.master-form,.auth-card{padding:24px 18px}.technical-page-hero{padding:48px 0}.page-hero-image{height:230px}.topbar-inner{align-items:flex-start;gap:4px}.topbar .top-links:last-child{display:none}}

/* HERO BACKGROUND UPDATE - supplied Earthring hero artwork */
.merged-hero{
  background-image:
    linear-gradient(90deg,rgba(6, 27, 51, 0) 0%,rgba(6, 27, 51, 0) 28%,rgba(6, 27, 51, 0) 46%,rgba(6, 27, 51, 0) 64%,rgba(6,27,51,0) 100%),
    url("earthring-hero.webp");
  background-size:cover;
  background-position:center left;
  background-repeat:no-repeat;
  min-height:780px;
  position:relative;
  overflow:hidden;
}
.merged-hero .hero-particle-effect{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;clip-path:polygon(0 0,100% 0,100% 32%,90% 27%,76% 20%,64% 27%,52% 53%,39% 70%,20% 79%,0 62%)}
.merged-hero .hero-cursor-glow{position:absolute;inset:0;z-index:2;pointer-events:none}
.merged-hero .proposal-hero-grid{
  grid-template-columns:minmax(0,1050px) 1fr;
  min-height:610px;
  padding:68px 0 100px;
  position:relative;
  z-index:3;
}
.merged-hero .hero-copy{
  position:relative;
  z-index:3;
  max-width:1050px;
}
.merged-hero .hero-copy h1{max-width:1050px}
.merged-hero .hero-lead{max-width:650px}
@media(max-width:1050px){
  .merged-hero{background-position:62% center;min-height:560px}
  .merged-hero .proposal-hero-grid{grid-template-columns:1fr;min-height:560px}
  .merged-hero .hero-copy{max-width:620px}
}
@media(max-width:680px){
  .merged-hero{
    background-position:68% center;
    min-height:640px;
  }
  .merged-hero:before{content:"";position:absolute;inset:0;background:rgba(6,27,51,.48);z-index:1}
  .merged-hero .proposal-hero-grid{min-height:640px;padding:48px 0 78px}
}


/* ===== SOURCE CONTENT + ASSET INTEGRATION ===== */
.media-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:48px;align-items:center;padding-bottom: 40px; }
.media-split.reverse{ padding-top: 40px; grid-template-columns:minmax(320px,.95fr) minmax(0,1.05fr)}
.media-split.reverse>.media-frame{order:-1}
.media-frame{background:var(--bg-media);overflow:hidden;min-height:320px}
.media-frame img,.media-frame video{border-radius: 18px;display:block;width:100%;height:100%;min-height:320px;object-fit:cover}
.media-frame.contain img{object-fit:cover }
.section-kicker{font:700 20px/1 var(--font-mono);color:var(--color-primary);letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px}
.copy-stack h2,.copy-stack h3{font-family:var(--font-heading);color:var(--color-navy)}.copy-stack h2{font-size:var(--h2-size-large);line-height:1.02;margin:0 0 16px}.copy-stack h3{font-size:28px;margin:26px 0 10px}.copy-stack p,.copy-stack li{font-size:var(--body-size-large);line-height:1.72;color:var(--color-body)}.copy-stack ul{padding-left:22px}
.feature-grid{ padding-top: 40px; display:grid;grid-template-columns:repeat(3,1fr);gap:20px; padding-bottom: 40px; }.feature-card{border-radius: 18px;  background:var(--color-white);border:1px solid var(--border-light);padding:24px;min-height:180px}.feature-card h3{font:700 28px/1.05 var(--font-heading);color:var(--color-blue-dark);margin:0 0 10px}.feature-card p{color:var(--color-body);line-height:1.6;margin:0}
.asset-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.asset-gallery figure{border-radius: 18px; margin:0;background:var(--color-white);border:1px solid var(--border-light);overflow:hidden}.asset-gallery img{width:100%;height:250px;object-fit:cover;display:block}.asset-gallery .contain{object-fit:cover;background:var(--color-white);}.asset-gallery figcaption{padding:12px 14px;color:#000000;font-size:14px;font-weight:500;text-align:center}
.asset-gallery img[src*="LV_ARC_80.png"]{object-fit:contain;object-position:center;background:#fff}
.asset-gallery > figure:nth-child(4):last-child{grid-column:2}
.bracket-assembly-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:28px}
.bracket-assembly-card{position:relative;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(76,151,226,.52);border-radius:18px;background:#0a67c8;color:#fff;text-decoration:none;box-shadow:0 14px 34px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.bracket-card-image{overflow:hidden;margin:16px 16px 0;padding:12px;border:1px solid rgba(255,255,255,.42);border-radius:12px;background:#fff}
.bracket-card-image img{display:block;width:100%;height:150px;object-fit:contain;transition:transform .25s ease}
.bracket-card-body{display:flex;flex:1;flex-direction:column;align-items:center;min-height:220px;padding:20px 22px 22px;text-align:center}
.bracket-card-body h3{margin:0 0 12px;color:#fff!important;-webkit-text-fill-color:#fff!important;font:700 24px/1.12 var(--font-heading)}
.bracket-card-body p{margin:0 auto 18px;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:16px;line-height:1.55}
.bracket-card-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:148px;margin-top:auto;padding:11px 15px;border:1px solid #84c8ff;border-radius:8px;background:linear-gradient(180deg,#0759ad 0%,#043d7d 100%);box-shadow:0 7px 16px rgba(0,35,79,.28),inset 0 1px 0 rgba(255,255,255,.22);color:#fff;font:700 12px/1 var(--font-mono);letter-spacing:.03em;text-transform:uppercase;transition:background .2s ease,box-shadow .2s ease,transform .2s ease}
.bracket-assembly-card:hover{transform:translateY(-4px);border-color:#75b9f5;box-shadow:0 20px 40px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.1)}
.bracket-assembly-card:hover .bracket-card-image img{transform:scale(1.025)}
.bracket-assembly-card:hover .bracket-card-action{background:linear-gradient(180deg,#086dcc 0%,#04498f 100%);box-shadow:0 9px 20px rgba(0,35,79,.36);transform:translateY(-1px)}
.bracket-assembly-card:focus-visible{outline:3px solid #64b5ff;outline-offset:4px}
.section:has(.asset-gallery) .copy-stack > :is(.section-kicker,h2){text-align:center}
.product-family-grid{ padding-bottom: 40px;   display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.family-card{ border-radius: 18px;  display:flex;flex-direction:column;background:var(--color-white);border:1px solid var(--border-light);text-decoration:none;color:inherit;overflow:hidden}.family-card img{width:100%;height:230px;object-fit:contain;background:var(--color-white);padding:18px}.family-card .family-body{padding:20px}.family-card h3{font:700 29px/1 var(--font-heading);color:var(--color-blue-dark);margin:0 0 9px}.family-card p{color:var(--color-body);line-height:1.55;margin:0 0 14px}.family-card strong{color:var(--color-primary);font:700 14px var(--font-mono);text-transform:uppercase}
.spec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.spec-box{border:1px solid var(--border-light);background:var(--bg-card-subtle);padding:18px}.spec-box span{display:block;font:600 12px var(--font-mono);color:var(--color-muted);text-transform:uppercase}.spec-box strong{display:block;font:700 24px var(--font-heading);color:var(--color-blue-dark);margin-top:4px}
.download-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.download-card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--border-light);background:var(--color-white);padding:18px;text-decoration:none;min-height:130px}.download-card strong{font:700 21px var(--font-heading);color:var(--color-blue-dark)}.download-card span{color:var(--color-muted);font-size:13px}.download-card em{margin-top:auto;color:var(--color-primary);font-style:normal;font-weight:700}
.download-centre-page main > .section > .container > .copy-stack{text-align:center}
.download-centre-page main > .section > .container > .copy-stack p{max-width:1200px;margin-left:auto;margin-right:auto}
.download-centre-page main > .section > .container > .copy-stack + .copy-stack,
.download-centre-page main > .section > .container > .download-grid + .copy-stack{padding-top:80px}
.download-centre-page main > .section > .container > .download-grid{margin-bottom:80px}
.download-centre-page .download-card{text-align:center;border-radius: 18px;  }
.download-centre-page .download-card em.cta{align-self:center;width:200px;height:50px}
.tech-table-wrap{ border-radius: 18px; overflow:auto;border:1px solid var(--border-light)}.tech-table{width:100%;border-collapse:collapse;min-width:760px}.tech-table th,.tech-table td{padding:12px 14px;border-bottom:1px solid var(--border-light);text-align:left}.tech-table th{background:var(--color-navy);color:var(--color-white);font:700 15px var(--font-mono)}.tech-table td{color:var(--color-body)}.tech-table tr:last-child td{border-bottom:0}
.notice-blue{background:var(--bg-light-blue);border-left:4px solid var(--color-primary);padding:18px 20px;color:var(--color-dark-text);margin:22px 0}.notice-dark{background:var(--color-navy);color:var(--color-white);padding:22px;margin:24px 0}.notice-dark p{color:var(--color-text-on-dark-muted);margin:0}
.process-list{counter-reset:step;display:grid;gap:14px}.process-list article{counter-increment:step;display:grid;grid-template-columns:52px 1fr;gap:16px;padding:18px;border:1px solid var(--border-light);background:var(--color-white)}.process-list article:before{content:counter(step,decimal-leading-zero);display:grid;place-items:center;width:44px;height:44px;background:var(--color-primary);color:var(--color-white);font:700 14px var(--font-mono)}.process-list h3{margin:0 0 5px;font:700 24px var(--font-heading);color:var(--color-blue-dark)}.process-list p{margin:0;color:var(--color-body);line-height:1.6}
.faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}.faq-list details{     border-radius: 10px;  border:1px solid var(--border-light);background:var(--color-white);margin:0;transition:background-color .2s ease,border-color .2s ease}.faq-list details:hover,.faq-list details:focus-within{background:linear-gradient(180deg,var(--button-metallic-top) 0%,var(--button-metallic-upper) 28%,var(--button-metallic-mid) 60%,var(--button-metallic-bottom) 100%) !important;border-color:var(--button-metallic-top)}.faq-list summary{cursor:pointer;padding:18px 20px;font:700 22px var(--font-heading);color:var(--color-blue-dark)}.faq-list details:hover summary,.faq-list details:focus-within summary{color:var(--color-white)}.faq-list details p{padding:0 20px 18px;margin:0;color:var(--color-body);line-height:1.65}.faq-list details:hover p,.faq-list details:focus-within p{color:var(--color-white)}
.page-cta{display:flex;align-items:center;justify-content:space-between;gap:38px;background:linear-gradient(110deg,var(--color-navy),var(--color-blue-dark));color:var(--color-white);padding:38px 42px;border-top:4px solid var(--color-primary-hover)}.page-cta h2{font-size:clamp(34px,3vw,46px);line-height:1.05;margin:6px 0 10px;color:var(--color-white)}.page-cta p{color:var(--color-text-on-dark-muted);margin:0;max-width:850px}.page-cta .cta{flex-shrink:0}
.notice-blue.pricing-login-cta{display:flex;align-items:center;justify-content:space-between;gap:38px;background:linear-gradient(110deg,var(--color-navy),var(--color-blue-dark));color:var(--color-white);padding:38px 42px;border:0;border-top:4px solid var(--color-primary-hover)}.pricing-login-cta>strong{font-weight:700;line-height:1.6}.pricing-login-cta>.cta{flex-shrink:0}
.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.video-card{background:var(--color-navy);padding:14px}.video-card video{width:100%;display:block}.video-card p{color:var(--color-white);margin:12px 4px 4px}
.feature-grid-4{grid-template-columns:repeat(4,1fr)}
.key-features-columns{grid-template-columns:repeat(2,1fr);gap:0 24px}
.key-features-columns ul{margin:0}
.mini-commitment-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0}
.mini-commitment{background:#0A67C8;border-radius:6px;border:2px solid #041C38;box-shadow:0 8px 18px rgba(4,28,56,.35);padding:16px 14px;text-align:center}
.mini-commitment h4{font:700 18px/1.3 var(--font-heading);color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;background:none !important;background-image:none !important;text-transform:uppercase;margin:0 0 6px;min-height:70px;display:flex;align-items:flex-start;justify-content:center}
.mini-commitment p{font:400 10px/1.4 var(--font-mono);color:#ffffff !important;-webkit-text-fill-color:#ffffff !important;text-transform:uppercase;letter-spacing:.02em;margin:0}
.commitments-section{position:relative;overflow:hidden;background:#ffffff !important}
.commitments-bg-ring{position:absolute;top:0;right:0;width:78%;max-width:950px;pointer-events:none;z-index:0}
.commitments-intro{position:relative;z-index:1;max-width:760px}
.commitments-intro h2{text-transform:uppercase;color:#0E5BD7 !important;background:none !important;background-image:none !important;-webkit-text-fill-color:#0E5BD7 !important}
.commitments-accent{color:var(--color-primary) !important;-webkit-text-fill-color:var(--color-primary) !important}
.commitments-intro p{color:#233247 !important;-webkit-text-fill-color:#233247 !important}
.commitments-intro p strong{color:var(--color-blue-dark) !important;-webkit-text-fill-color:var(--color-blue-dark) !important}
.commitment-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:36px}
.commitment-card{background:var(--color-white);border:1px solid var(--border-light);border-radius:14px;overflow:hidden;box-shadow:0 10px 24px rgba(6,27,51,.08);display:flex;flex-direction:column}
.commitment-card img{width:100%;height:190px;object-fit:cover;background:#f3f7fc;padding:0px}
.commitment-card .commitment-body{padding:20px}
.commitment-card h3{font:700 22px/1.1 var(--font-heading);color:var(--color-blue-dark);margin:0 0 6px;min-height:2.2em}
.commitment-card .commitment-subheading{font:700 12px/1.3 var(--font-mono);color:var(--color-primary);text-transform:uppercase;letter-spacing:.04em;margin:0 0 12px;min-height:2.6em}
.commitment-card .commitment-line{display:block;width:36px;height:2px;background:var(--color-primary);margin:0 0 12px}
.commitment-card p{color:#000;line-height:1.6;margin:0}
.commitment-card-cover img{height:190px;object-fit:cover;background:#000;padding:0}
.benefit-strip{background:radial-gradient(circle at 6% 120%,rgba(40,169,224,.35),transparent 45%),linear-gradient(90deg,#03101f 0%,#071e37 55%,#03101f 100%);border-top:1px solid rgba(80,151,224,.25);border-bottom:1px solid rgba(80,151,224,.25)}
.benefit-strip-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.benefit-strip-item{display:flex;align-items:center;justify-content:center;gap:18px;padding:34px 26px;border-right:1px solid rgba(80,151,224,.25)}
.benefit-strip-item:last-child{border-right:none}
.benefit-strip-icon{flex:none;width:52px;height:52px;color:var(--color-cyan)}
.benefit-strip-icon svg{width:100%;height:100%}
.benefit-strip-text{display:flex;flex-direction:column;font:700 19px/1.35 var(--font-heading);letter-spacing:.02em;color:#fff;text-transform:uppercase}
.benefit-strip-text strong{color:var(--color-cyan);font-weight:800}
.page-cta.page-cta-plain{flex-direction:column !important;justify-content:center !important;gap:26px !important;text-align:center;background:none !important;border-top:0 !important;border-radius:0 !important;box-shadow:none !important;padding:0 !important}
.page-cta-plain>div:first-child{display:flex;flex-direction:column;align-items:center}
.page-cta-plain .cta-actions{flex-direction:row !important;justify-content:center}
.page-cta-plain .section-kicker{font-size:24px}
.page-cta-plain h2{font-size:clamp(44px,4.2vw,64px) !important}
.page-cta-plain p{font-size:22px;line-height:1.6}
@media(max-width:1050px){.media-split,.media-split.reverse{grid-template-columns:1fr}.media-split.reverse>.media-frame{order:0}.feature-grid,.product-family-grid,.download-grid,.commitment-grid{grid-template-columns:repeat(2,1fr)}.asset-gallery{grid-template-columns:repeat(2,1fr)}.spec-grid{grid-template-columns:repeat(2,1fr)}.page-cta,.pricing-login-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:1050px){.bracket-assembly-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.feature-grid,.product-family-grid,.download-grid,.commitment-grid,.mini-commitment-row,.key-features-columns,.asset-gallery,.spec-grid,.video-grid,.faq-list{grid-template-columns:1fr}.asset-gallery > figure:nth-child(4):last-child{grid-column:auto}.asset-gallery img{height:220px}.page-cta,.notice-blue.pricing-login-cta{padding:30px 22px}}
@media(max-width:680px){.bracket-assembly-gallery{grid-template-columns:1fr}.bracket-assembly-card img{height:220px}}

/* Metallic royal-blue heading treatment uses the global ring-blue tokens defined above. */

/* Fallback colour first, then metallic-blue text treatment where supported. */
:is(
  .section,
  .section-title,
  .panel,
  .product-card,
  .feature-card,
  .family-card,
  .download-card,
  .form-wrap,
  .master-form,
  .auth-card,
  .legal,
  .content-narrow,
  .copy-stack,
  .resource-link-grid,
  .spec-box,
  .faq-list,
  .product-detail,
  .product-toolbar,
  .tech-table-wrap
) :is(h1,h2,h3,h4,h5,h6){
  color:var(--ring-blue-base);
}

@supports ((-webkit-background-clip:text) or (background-clip:text)){
  :is(
    .section,
    .section-title,
    .panel,
    .product-card,
    .feature-card,
    .family-card,
    .download-card,
    .form-wrap,
    .master-form,
    .auth-card,
    .legal,
    .content-narrow,
    .copy-stack,
    .resource-link-grid,
    .spec-box,
    .faq-list,
    .product-detail,
    .product-toolbar,
    .tech-table-wrap
  ) :is(h1,h2,h3,h4,h5,h6){
    background-image:var(--ring-blue-heading-gradient);
    background-clip:text;
    -webkit-background-clip:text;
    color:transparent;
    -webkit-text-fill-color:transparent;
  }
}

.about-response-section .copy-stack h2{
  display:inline-block;
  color:#1467c8 !important;
  -webkit-text-fill-color:#1467c8 !important;
  background:none !important;
  background-image:none !important;
}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .about-response-section .copy-stack h2{
    color:var(--heading-blue-middle) !important;
    background-image:var(--heading-metallic-blue) !important;
    background-clip:text !important;
    -webkit-background-clip:text !important;
    -webkit-text-fill-color:transparent !important;
    background-size:100% 125% !important;
    background-position:center center !important;
    background-repeat:no-repeat !important;
  }
}

/* Preserve white headings in every approved dark/blue surface. */
:is(
  .hero,
  .merged-hero,
  .page-hero,
  .technical-page-hero,
  .blue-panel,
  .distributor-process-section,
  .final-home-cta,
  .page-cta,
  .footer,
  .site-footer,
  .topbar,
  .notice-dark,
  .video-card
) :is(h1,h2,h3,h4,h5,h6){
  background:none;
  color:var(--color-white);
  -webkit-text-fill-color:var(--color-white);
}

/* Global inner-page hero dimensions are controlled by the tokens defined above. */

/* All public/page heroes share the requested desktop canvas. */
.page-hero,
.technical-page-hero{
  width:var(--global-hero-width);
  max-width:100%;
  height:var(--global-hero-height);
  min-height:var(--global-hero-height);
  margin-inline:auto;
  box-sizing:border-box;
}

/* Standard inner-page heroes */
.page-hero,
.technical-page-hero{
  padding-block:0;
}
.page-hero > .container,
.technical-page-hero > .container{
  height:100%;
  min-height:100%;
}
.page-hero > .container:not(.page-hero-grid),
.technical-page-hero > .container:not(.page-hero-grid){
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.page-hero-grid{
  height:100%;
  min-height:0;
  align-items:center;
}
.page-hero-image{
  height:min(340px,calc(var(--global-hero-height) - 80px));
}



/* Responsive: preserve the 2058 x 480 desktop design without horizontal overflow. */
@media(max-width:1050px){
  .page-hero,
  .technical-page-hero{
    width:100%;
    height:auto;
    min-height:420px;
  }
  .page-hero-grid{
    height:auto;
    min-height:420px;
    padding-block:36px;
  }
}

@media(max-width:680px){
  .page-hero,
  .technical-page-hero{
    min-height:360px;
  }
  .page-hero-grid{
    min-height:360px;
  }
  .page-hero-grid{
    padding-block:28px;
  }
  .page-hero-image{
    height:200px;
  }
}

/* Technical bearing image replacement for the "Without Earthrings" comparison card. */
.danger-technical-image{
  width:100%;
  margin:22px auto 18px;
  overflow:hidden;
  background:var(--color-white);
  aspect-ratio:4 / 3;
}
.danger-technical-image img,
.danger-technical-image video{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:right;
}
@media (max-width:720px){
  .danger-technical-image{aspect-ratio:16 / 11;}
}


/* ==================================================
   GLOBAL UTILITIES
   Small reusable helpers replacing repeated inline styles.
   ================================================== */
.flex-between-wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.mt-18{margin-top:18px}.mt-24{margin-top:24px}.text-center{text-align:center}.center-actions{justify-content:center}
.spacer-36{height:36px}.text-small-muted{font-size:var(--small-size);color:var(--color-muted)}
.success-icon-large{font-size:64px}.grid-full{grid-column:1/-1}.cart-qty-input{width:70px;padding:9px;border:1px solid var(--border-medium);border-radius:var(--button-radius)}
.demo-note{color:var(--color-muted);font-size:var(--small-size);margin-top:20px}
.footer-logo-heading{color:var(--color-white)!important;-webkit-text-fill-color:var(--color-white)!important;background:none!important}
/* Edit this value to move the footer logo up or down. */
.footer{
  --footer-logo-margin-top:98px;
  --footer-logo-margin-left:40px;
  --footer-wordmark-width:425px;
  --footer-products-margin-top:80px;
  --footer-resources-margin-top:80px;
  --footer-distributors-margin-top:150px;
  --footer-contact-margin-top:150px;
  --footer-column-gap:24px;
  --footer-copy-wordmark-indent:calc(var(--footer-logo-margin-left) + var(--header-logo-size) + 12px);
}
@media(min-width:1051px){
  .footer .footer-grid{
    grid-template-columns:410px 240px 250px 230px 230px;
    column-gap:10px;
    justify-content:start;
  }
  /* Shift all footer information columns 80px to the right while keeping their internal gaps unchanged. */
  .footer .footer-grid > div:nth-child(n+2){
    transform:translateX(80px);
  }
}
.footer .footer-grid > div:nth-child(n+2){align-self:end}
.footer .logo{margin-top:var(--footer-logo-margin-top);margin-left:var(--footer-logo-margin-left)}
.footer .footer-grid > div:nth-child(2){margin-top:var(--footer-products-margin-top)}
.footer .footer-grid > div:nth-child(3){margin-top:var(--footer-resources-margin-top)}
.footer .footer-grid > div:nth-child(4){order:4;margin-top:var(--footer-distributors-margin-top)}
.footer .footer-grid > div:nth-child(5){order:5;margin-top:var(--footer-contact-margin-top)}
.footer .logo-text{width:min(var(--footer-wordmark-width),100%);height:auto;min-height:74px;display:flex;flex-direction:column;justify-content:center}
.footer .logo-text strong{font-size:40px;line-height:1;letter-spacing:.15px}
.footer .logo-text small{font-size:11px;line-height:1.2;margin-top:8px;letter-spacing:1.65px}
.footer .footer-grid > div:first-child > p{width:min(var(--footer-wordmark-width),calc(100% - var(--footer-copy-wordmark-indent)));margin-left:var(--footer-copy-wordmark-indent);text-align:left}
@media(max-width:680px){
  .footer{--footer-logo-margin-top:40px;--footer-logo-margin-left:0px}
}
.toast{position:fixed;right:20px;bottom:20px;background:var(--color-blue-dark);color:var(--color-white);padding:12px 16px;border-radius:var(--radius-control);z-index:9999;box-shadow:var(--shadow-toast)}

/* ==================================================
   REUSABLE DESIGN-SYSTEM COMPONENTS
   These aliases are available for new pages/components.
   Existing .cta markup remains supported for compatibility.
   ================================================== */
.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--button-padding-y) var(--button-padding-x);border:0;border-radius:var(--button-radius);font-family:var(--font-heading);font-size:var(--button-font-size);font-weight:var(--button-font-weight);text-decoration:none;cursor:pointer;transition:var(--button-transition)}
.btn-primary{background:linear-gradient(180deg,var(--button-primary-bg-start),var(--button-primary-bg-end));color:var(--button-primary-text);box-shadow:0 8px 18px rgba(11,99,206,.22)}
.btn-secondary{background:var(--button-secondary-bg);color:var(--button-secondary-text)}
.btn-outline{background:transparent;color:var(--color-primary);border:1px solid var(--button-border)}
.btn-light{background:var(--button-light-bg);color:var(--button-light-text)}
.btn-dark{background:var(--button-dark-bg);color:var(--button-dark-text)}
.btn:hover{filter:brightness(1.06)}.btn:focus-visible{outline:var(--focus-outline);outline-offset:var(--focus-offset)}.btn:disabled,.btn[aria-disabled="true"]{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}

.section-white{background:var(--bg-white)}.section-light{background:var(--bg-light)}.section-blue{background:var(--bg-light-blue)}.section-navy,.section-dark{background:var(--bg-dark);color:var(--color-white)}
.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:var(--card-padding)}
.field input::placeholder,.field textarea::placeholder,.master-form input::placeholder,.master-form textarea::placeholder,.auth-card input::placeholder{color:var(--form-placeholder)}
.field input:disabled,.field select:disabled,.field textarea:disabled,.master-form input:disabled,.master-form select:disabled,.master-form textarea:disabled,.auth-card input:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;background:var(--bg-mobile-subtle)}

/* ==================================================
   EARTHRINGS INSTALLATION GUIDE - STEP CARD LAYOUT
   Scoped to earthrings-installation-guide only
   ================================================== */
.installation-guide-page .installation-process-section{background:#f5f8fb}
.installation-guide-page .installation-process-intro{max-width:860px;margin-bottom:32px}
.installation-guide-page .installation-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:stretch}
.installation-guide-page .installation-step-card{position:relative;display:flex;flex-direction:column;min-width:0;background:var(--color-white);border:1px solid #dbe3eb;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px rgba(6,27,51,.08)}
.installation-guide-page .installation-step-media{height:190px;overflow:hidden;background:#e7edf3}
.installation-guide-page .installation-step-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.installation-guide-page .installation-step-number{position:absolute;top:168px;left:50%;transform:translateX(-50%);display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#071E3D;border:4px solid var(--color-white);box-shadow:0 4px 12px rgba(6,27,51,.18);color:#fff;font:700 17px var(--font-primary);z-index:2}
.installation-guide-page .installation-step-copy{padding:34px 20px 22px;text-align:center;flex:1}
.installation-guide-page .installation-step-copy h3{margin:0 0 10px;color:var(--color-navy);font:700 22px/1.08 var(--font-heading);text-transform:uppercase;letter-spacing:.01em}
.installation-guide-page .installation-step-copy p{margin:0;color:var(--color-body);font-size:15px;line-height:1.58}
.installation-guide-page .installation-complete-panel{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);margin-top:24px;background:var(--color-white);border:1px solid #dbe3eb;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px rgba(6,27,51,.08)}
.installation-guide-page .installation-complete-panel>img{width:100%;height:100%;min-height:300px;object-fit:cover;display:block}
.installation-guide-page .installation-complete-copy{display:flex;align-items:center;gap:20px;padding:34px;background:linear-gradient(135deg,var(--color-navy),var(--color-blue-dark));color:#fff}
.installation-guide-page .installation-complete-icon{display:grid;place-items:center;flex:0 0 auto;width:64px;height:64px;border:2px solid rgba(255,255,255,.9);border-radius:50%;font-size:34px;line-height:1}
.installation-guide-page .installation-complete-copy .eyebrow{color:#9ed7ff}
.installation-guide-page .installation-complete-copy h2{margin:5px 0 8px;color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;}
.installation-guide-page .installation-complete-copy p{margin:0;color:#dceeff;line-height:1.6}
@media(max-width:1180px){.installation-guide-page .installation-step-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:860px){.installation-guide-page .installation-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.installation-guide-page .installation-complete-panel{grid-template-columns:1fr}.installation-guide-page .installation-complete-panel>img{min-height:260px;max-height:360px}}
@media(max-width:560px){.installation-guide-page .installation-step-grid{grid-template-columns:1fr}.installation-guide-page .installation-step-media{height:220px}.installation-guide-page .installation-step-number{top:198px}.installation-guide-page .installation-step-copy{padding-inline:18px}.installation-guide-page .installation-complete-copy{align-items:flex-start;flex-direction:column;padding:26px 22px}}


/* ======================================================================
   INDEX HOME DARK THEME - metallic blue concept
   Scoped to index only via body.home-dark-theme.
   Hero artwork/layout remains unchanged; only surrounding UI treatment
   and the two sections directly below the hero are themed here.
   ====================================================================== */
.home-dark-theme{
  --home-midnight:#020b18;
  --home-navy:#04152b;
  --home-navy-2:#06264b;
  --home-metal:#0a4fa8;
  --home-metal-bright:#087cff;
  --home-electric:#25a6ff;
  --home-steel:#9fb9d2;
  --home-ice:#f4f8fc;
  --home-line:rgba(49,142,255,.34);
  background:var(--home-midnight);
}

/* Header: dark industrial chrome matching the hero without changing hero geometry */
.home-dark-theme .topbar{
  background:linear-gradient(90deg,#020813 0%,#06162b 48%,#03101f 100%);
  border-bottom:1px solid rgba(38,134,255,.20);
  color:#cfe3f8;
}
.home-dark-theme .header{
  background: rgb(5 49 115 / 96%);
  border-bottom:1px solid rgba(38,134,255,.28);
  box-shadow:0 10px 28px rgba(0,0,0,.22);
  backdrop-filter:blur(12px);
}
.home-dark-theme .logo-text strong,
.home-dark-theme .logo-text small,
.home-dark-theme .menu>a,
.home-dark-theme .nav-dropbtn{color:#f4f8fc}
.home-dark-theme .menu>a:hover,
.home-dark-theme .menu>a.active,
.home-dark-theme .nav-dropdown.active>.nav-dropbtn{color:#39a7ff}
.home-dark-theme .login-btn{
  color:#d9ecff;
  border-color:rgba(66,154,255,.55);
  background:linear-gradient(180deg,rgba(9,45,86,.75),rgba(4,20,40,.82));
}
.home-dark-theme .apply-btn{
  background:linear-gradient(180deg,#087cff 0%,#064ca8 100%);
  border-color:#2e9cff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 0 18px rgba(8,124,255,.18);
}
.home-dark-theme .mobile-toggle{color:#dbeeff}

/* HERO LOCK: preserve current art, image sizing, content placement and height. */
.home-dark-theme .merged-hero{
  /* intentionally keeps all existing .merged-hero background/layout rules intact */
  border-bottom:none;
  box-shadow:0 18px 52px rgba(0,0,0,.28);
}
.home-dark-theme .merged-hero .cta:not(.outline){
  background:linear-gradient(180deg,#0b82ff 0%,#0753b8 100%);
  border-color:#35a1ff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 8px 18px rgba(0,76,174,.30);
}
.home-dark-theme .merged-hero .cta.outline{
  border-color:rgba(109,185,255,.75);
  background:rgba(2,13,28,.48);
  color:#eef7ff;
}
.home-dark-theme .merged-hero .hero-login-link{
  background:linear-gradient(180deg,rgba(9,111,228,.94),rgba(6,69,151,.94));
  border-color:#2999ff;
}

/* SECTION 1 BELOW HERO: intentional white contrast panel */
.home-dark-theme .problem-solution-section{
  position:relative;
  background:
    radial-gradient(circle at 82% 12%,rgba(17,113,223,.08),transparent 28%),
    linear-gradient(180deg,#ffffff 0%,#f6f9fd 100%);
  color:#0a1a30;
  padding-top:82px;
  border-bottom:1px solid #cbd9e7;
}
.home-dark-theme .problem-solution-section:before{
  content:none;
}
.home-dark-theme .problem-copy .eyebrow-dark{
  color:#0a67c8;
}
.home-dark-theme .problem-copy h2{
  color:#071d3c;
  text-shadow:none;
}
.home-dark-theme .problem-copy p{color:#344b63}
.home-dark-theme .problem-copy p strong{color:#075ab7}
.home-dark-theme .problem-copy .cta{
  background:linear-gradient(180deg,#0b82ff,#0754ba);
  border-color:#2696f9;
  box-shadow:0 8px 18px rgba(9,91,184,.18);
}
.home-dark-theme .problem-visual{
  gap:14px;
}
.home-dark-theme .current-card{
  min-height:390px;
  border:1px solid #adc7e4;
  border-radius:12px;
  background:linear-gradient(180deg,#ffffff 0%,#f5f8fb 100%);
  box-shadow:0 16px 34px rgba(3,28,56,.12);
}
.home-dark-theme .current-card:before{height:7px}
.home-dark-theme .danger-current{
  border-color:#9eaebb;
}
.home-dark-theme .danger-current:before{
  background:linear-gradient(90deg,#2b3542,#5e7184);
}
.home-dark-theme .protected-current{
  border-color:#378ae1;
  box-shadow:0 16px 34px rgba(5,92,190,.16),0 0 0 1px rgba(20,122,231,.10) inset;
}
.home-dark-theme .protected-current:before{
  background:linear-gradient(90deg,#073c8b,#0983f6,#47b5ff);
}
.home-dark-theme .current-label{
  background:#eaf3fd;
  color:#0a376c;
  border:1px solid #c4daf0;
  border-radius:999px;
}
.home-dark-theme .protected-current .current-label{
  background:linear-gradient(180deg,#0a6fd5,#074b9f);
  border-color:#258ff0;
  color:#fff;
  box-shadow:0 5px 12px rgba(0,92,194,.16);
}
.home-dark-theme .current-card h3{color:#092b55}
.home-dark-theme .current-card p{color:#566b80}
.home-dark-theme .current-arrow{
  color:#0b6fd5;
  filter:drop-shadow(0 0 10px rgba(14,123,235,.22));
}
.home-dark-theme .danger-technical-image{
  background:#fff;
  border-radius:8px;
  overflow:hidden;
}

/* SECTION 2 BELOW HERO: dark metallic-blue product family with white cards */
.home-dark-theme .proposal-products-section.ice-soft{
  position:relative;
  background:
    radial-gradient(circle at 50% -12%,rgba(25,131,255,.22),transparent 32%),
    linear-gradient(180deg,#031426 0%,#020b17 58%,#041226 100%);
  border-top:0px solid rgba(60, 148, 255, 0);
  border-bottom:0px solid rgba(50, 135, 238, 0);
  padding-top:72px;
  padding-bottom:78px;
}
.home-dark-theme .proposal-products-section.ice-soft:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(60,142,225,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(60,142,225,.035) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(180deg,black,transparent 88%);
}
.home-dark-theme .proposal-products-section .container{position:relative;z-index:1;padding-top: 40px; }
.home-dark-theme .proposal-products-section .eyebrow-dark{color:#92cffd}
.home-dark-theme .proposal-products-section .section-title h2,
.home-dark-theme .proposal-products-section .proposal-title h2{
  color:#f5f9ff;
  text-shadow:0 0 24px rgba(31,135,246,.16);
}
.home-dark-theme .proposal-products-section .section-title p,
.home-dark-theme .proposal-products-section .proposal-title p{
  color:#afc4d8;
}
.home-dark-theme .proposal-product-grid{gap:18px}
.home-dark-theme .proposal-product-card{
  background:linear-gradient(180deg,#ffffff 0%,#f5f8fc 100%);
  border:1px solid rgba(74,154,239,.70);
  border-radius:12px;
  box-shadow:0 14px 30px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.9);
  overflow:hidden;
  min-height:380px;
  padding:14px 14px 18px;
}
.home-dark-theme .proposal-product-card:hover{
  transform:translateY(-5px);
  border-color:#45adff;
  box-shadow:0 18px 38px rgba(0,0,0,.34),0 0 0 1px rgba(30,140,255,.10),0 0 24px rgba(17,110,223,.14);
}
.home-dark-theme .resources-cta-overlay-zone .merged-resource-grid em{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:flex-start;
  width:max-content;
  max-width:100%;
  margin-top:auto;
  padding:10px 14px;
  border:1px solid var(--button-border);
  border-radius:var(--button-radius);
  font-family:var(--font-heading);
  font-size:var(--button-font-size);
  font-style:normal;
  font-weight:var(--button-font-weight);
  text-transform:uppercase;
  background:linear-gradient(180deg,var(--button-metallic-top) 0%,var(--button-metallic-upper) 28%,var(--button-metallic-mid) 60%,var(--button-metallic-bottom) 100%) !important;
  color:var(--button-primary-text) !important;
  -webkit-text-fill-color:var(--button-primary-text) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(0,25,70,.30),0 5px 14px rgba(0,70,160,.20);
  line-height:1.15;
  transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.home-dark-theme .resources-cta-overlay-zone .merged-resource-grid em:is(:hover,:focus-visible){
  background:var(--button-hover-background) !important;
  color:var(--button-hover-text) !important;
  -webkit-text-fill-color:var(--button-hover-text) !important;
  border-color:var(--button-hover-border);
  box-shadow:var(--secondary-button-hover-shadow);
  transform:translateY(-2px);
}
.home-dark-theme .proposal-product-card img{
  height:170px;
  background:#ffffff;
  border:1px solid #d7e2ec;
  border-radius:8px;
  object-fit:cover;
  padding:6px;
}
.home-dark-theme .proposal-product-card h3{color:#092e62;font-size:22px}
.home-dark-theme .proposal-product-card p{color:#425970}
.home-dark-theme .proposal-product-card .card-link{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  margin-top:auto;
  padding:10px 13px;
  border-radius:6px;
  color:#fff;
  background:linear-gradient(180deg,#0b82ff 0%,#0750b0 100%);
  border:1px solid #2796ef;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 7px 16px rgba(0,78,168,.20);
}
.home-dark-theme .proposal-product-card:hover .card-link{background:linear-gradient(180deg,#1693ff,#0863ce)}
.home-dark-theme .proposal-products-section .proposal-center .cta{
  margin-top:12px;
  background:transparent;
  border:1px solid rgba(93,171,255,.76);
  color:#e7f4ff;
}
.home-dark-theme .proposal-products-section .proposal-center .cta:hover{
  background:#0a68cf;
  border-color:#39a9ff;
}

/* Begin the following content on a dark base so the visual transition feels intentional. */
.home-dark-theme .how-section{
  background:#092449;
  border-top:0px solid rgba(47, 140, 239, 0);
}
.home-dark-theme .how-content h2{color:#fff}
.home-dark-theme .how-content .eyebrow-dark{color:#46b5ff}
.home-dark-theme .how-content p,
.home-dark-theme .process-step p{color:#b8cce0}
.home-dark-theme .process-step h3{color:#eef7ff}

@media(max-width:1180px){
  .home-dark-theme .mobile-menu.open,
  .home-dark-theme .mobile-group-toggle,
  .home-dark-theme .mobile-submenu.open{background:#07182d;color:#e6f3ff}
  .home-dark-theme .mobile-menu>a,
  .home-dark-theme .mobile-group-toggle{color:#e6f3ff;border-color:rgba(96,162,230,.22)}
  .home-dark-theme .mobile-submenu a{color:#aec8e0}
}
@media(max-width:680px){
  .home-dark-theme .problem-solution-section{padding-top:58px}
  .home-dark-theme .proposal-products-section.ice-soft{padding-top:56px;padding-bottom:58px}
  .home-dark-theme .current-card{min-height:0}
}


/* ======================================================================
   GLOBAL DARK METALLIC-BLUE THEME
   Applies to the entire public website. The index hero artwork/layout is
   intentionally left untouched; this block themes the shared UI around it.
   ====================================================================== */
html{background:#020b17}
body{
  background:
    radial-gradient(circle at 84% 8%,rgba(14,111,225,.08),transparent 26%),
    linear-gradient(180deg,#020b17 0%,var(--bg-page-tint) 48%,#030F20 100%);
  color:var(--color-body-base);
}

/* Shared header/navigation */
.topbar{
  background:linear-gradient(90deg,#010711 0%,#04172d 48%,#06264b 100%);
  color:#cde2f6;
  border-bottom:1px solid rgba(50,136,238,.16);
}
.header{
  background: rgb(5 49 115 / 96%);
  border-bottom:1px solid rgba(50,136,238,.28);
  box-shadow:0 10px 28px rgba(0,0,0,.28);
  backdrop-filter:blur(12px);
}
.logo-text strong,.logo-text small,.menu>a,.nav-dropbtn{color:#f4f8fc}
.logo-text strong span{color:#2f9fff}
.menu a:hover,.menu a.active,.nav-dropdown.active>.nav-dropbtn{color:#39a7ff}
.cart-link,.login-btn{
  color:#d9ecff;
  border-color:rgba(66,154,255,.48);
  background:linear-gradient(180deg,rgba(10,46,84,.78),rgba(4,20,40,.88));
}
.apply-btn{
  background:linear-gradient(180deg,#0b82ff 0%,#0753b8 100%);
  border-color:#35a1ff;
  color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 8px 18px rgba(0,76,174,.25);
}
.mobile-toggle{color:#dbeeff}

/* Inner-page heroes */
.page-hero,.technical-page-hero{
  background:
    radial-gradient(circle at 78% 30%,rgba(20,132,255,.28),transparent 30%),
    linear-gradient(112deg,#020b17 0%,#06264b 54%,#0a55b7 100%);
  border-bottom:1px solid rgba(58,150,247,.32);
}
.page-hero h1,.technical-page-hero h1{color:#fff!important;-webkit-text-fill-color:#fff!important;background:none!important}
.breadcrumbs{color:#b9d8f5}

/* Global sections */
.section,.section.alt,.section-white,.section-light,.section-blue,.ice,.ice-soft{
  background: linear-gradient(180deg, #092449);
  color:var(--color-body-base);
}
.section.alt,.section-light,.ice-soft{
  background:
    radial-gradient(circle at 82% 18%,rgba(14,111,225,.07),transparent 28%),
    #ffffff;
}
.section-blue,.ice{
 
}
.section-navy,.section-dark{background:#020b17;color:#fff}
.section-title h2,.copy-stack h2,.copy-stack h3,.problem-copy h2,.how-content h2{color:#f3f8ff}
.section-title p,.copy-stack p,.copy-stack li,.problem-copy p,.how-content p{color:#ffffff}
.eyebrow-dark,.section-kicker{color:#42adff}

/* Dark metallic cards/panels */
.panel,.card,.product-card,.feature-card,.family-card,.download-card,
.resource-link-grid a,.merged-resource-grid a,.process-list article,.faq-list details,
.order-card,.account-nav,.form-wrap,.master-form,.auth-card,.spec-box,
.tech-table-wrap,.payment-option,.legal,.content-narrow{
  background:#0A67C8;
  border-color:rgba(76,151,226,.34);
  color:#dceafb;
  box-shadow:0 14px 34px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.025);
}
.panel h1,.panel h2,.panel h3,.panel h4,
.card h1,.card h2,.card h3,.card h4,
.product-card h1,.product-card h2,.product-card h3,.product-card h4,
.feature-card h3,.family-card h3,.download-card strong,
.resource-link-grid strong,.merged-resource-grid strong,.process-list h3,
.faq-list summary,.spec-box strong,.master-form h2,.form-section h3,.auth-card h2{
  color:#f3f8ff;
  -webkit-text-fill-color:#f3f8ff;
  background:none;
}
.product-card p,.feature-card p,.family-card p,.download-card span,
.resource-link-grid span,.merged-resource-grid span,.process-list p,
.faq-list details p,.auth-card p,.spec-box span{color:#ffffff}
.card-link,.download-card em,.auth-card a,.text-link{color:#45adff}

/* Preserve clean white product/technical image wells for contrast */
.product-card img,.proposal-product-card img,.family-card img,
.media-frame.contain img,.asset-gallery .contain,.danger-technical-image,
.proposal-industry-card img{background:#233247}
.media-frame{background:#091d33;border-radius: 18px;}

/* Forms */
.field label,.master-form label,.auth-card label{color:#dceafb}
.field input,.field select,.field textarea,
.master-form input,.master-form textarea,.master-form select,.auth-card input,
.cart-qty-input{
  background:#091d33;
  color:#eef7ff;
  border-color:rgba(92,162,231,.48);
}
.field input:focus,.field select:focus,.field textarea:focus,
.master-form input:focus,.master-form select:focus,.master-form textarea:focus,.auth-card input:focus{
  border-color:#2f9fff;
  box-shadow:0 0 0 3px rgba(37,150,255,.16);
}
select option{background:#091d33;color:#eef7ff}
.note,.notice-blue{
  background:#0a2849;
  color:#c9dcee;
  border-left-color:#2e9dff;
  border-radius: 10px;
}

/* Tables */
.tech-table th{background:#031224;color:#fff;border-color:rgba(82,151,219,.34)}
.tech-table td{color:#c3d4e5;border-color:rgba(82,151,219,.24);background:#081a2e}
.tech-table tr:nth-child(even) td{background:#0a1f36}

/* Buttons */
.cta,.btn-primary{
  background:linear-gradient(180deg,#0b82ff 0%,#0753b8 100%);
  border:1px solid #319cff;
  color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 8px 18px rgba(0,76,174,.24);
}
.cta.outline,.btn-outline{background:rgba(2,13,28,.38);border-color:rgba(109,185,255,.72);color:#eef7ff}
.cta.ghost,.btn-secondary{background:#0b2847;color:#9fd3ff}

/* Value strips and shared content blocks */
.merged-value-strip{background:#06182b;border-color:rgba(76,151,226,.28)}
.value-grid article{border-color:rgba(76,151,226,.25)}
.value-grid strong{color:#f3f8ff}.value-grid span{color:#98afc5}

/* Keep the homepage comparison section intentionally light for contrast. */
.problem-solution-section,
.home-dark-theme .problem-solution-section{
  background:linear-gradient(180deg,#ffffff 0%,#f5f8fc 100%);
  color:#0a1a30;
}
.problem-solution-section .problem-copy h2,
.problem-solution-section .current-card h3{color:#092b55!important;-webkit-text-fill-color:#092b55!important;background:none!important}
.problem-solution-section .problem-copy p{color:#344b63}
.problem-solution-section .problem-copy p strong{color:#075ab7}
.problem-solution-section .current-card{
  background:linear-gradient(180deg,#fff 0%,#f5f8fb 100%);
  border-color:#adc7e4;
  color:#102a43;
}
.problem-solution-section .current-card p{color:#566b80}

/* Product-family sections: dark shell with crisp light product cards on homepage. */
.proposal-products-section.ice-soft,
.home-dark-theme .proposal-products-section.ice-soft{
  background:
    #092449;
}
.proposal-products-section .proposal-product-card{
  background:#0A67C8;
  border-color:rgba(74,154,239,.70);
  color:#1c3249;
}
.proposal-products-section .proposal-product-card h3{color:#092e62!important;-webkit-text-fill-color:#092e62!important;background:none!important}
.proposal-products-section .proposal-product-card p{color:#000000}

/* Installation guide follows the same global dark system. */
.installation-guide-page .installation-process-section{background:var(--bg-page-tint)}
.installation-guide-page .installation-step-card,
.installation-guide-page .installation-complete-panel{
  background:linear-gradient(180deg,#0a1e35 0%,#06172a 100%);
  border-color:rgba(76,151,226,.34);
  box-shadow:0 14px 34px rgba(0,0,0,.28);
}
.installation-guide-page .installation-step-media{background:#0b2037}
.installation-guide-page .installation-step-number{border-color:#07182b}
.installation-guide-page .installation-step-copy h3{color:#f3f8ff!important;-webkit-text-fill-color:#f3f8ff!important;background:none!important}
.installation-guide-page .installation-step-copy p{color:#aebfd0}

/* Mobile navigation */
@media(max-width:1180px){
  .mobile-menu.open,.mobile-group-toggle,.mobile-submenu.open{background:#07182d;color:#e6f3ff}
  .mobile-menu>a,.mobile-group-toggle{color:#e6f3ff;border-color:rgba(96,162,230,.22)}
  .mobile-submenu a{color:#aec8e0}
}

/* ======================================================================
   GLOBAL DARK-SURFACE TITLE CONTRAST
   Eyebrows on dark/metallic-blue surfaces use light blue #89CFFD.
   Section/page headings on dark/metallic-blue surfaces render white.
   Light/white contrast sections and light cards keep their existing colors.
   ====================================================================== */
:is(
  .hero,
  .merged-hero,
  .page-hero,
  .technical-page-hero,
  .section-dark,
  .section-navy,
  .section-blue,
  .ice,
  .ice-soft,
  .blue-panel,
  .distributor-process-section,
  .final-cta-section,
  .final-home-cta,
  .page-cta,
  .notice-dark,
  .video-card,
  .footer,
  .site-footer
) :is(.eyebrow,.eyebrow-dark,.section-kicker){
  color:#89CFFD !important;
  -webkit-text-fill-color:#89CFFD !important;
  background:none !important;
}

:is(
  .hero,
  .merged-hero,
  .page-hero,
  .technical-page-hero,
  .section-dark,
  .section-navy,
  .section-blue,
  .ice,
  .ice-soft,
  .blue-panel,
  .distributor-process-section,
  .final-cta-section,
  .final-home-cta,
  .page-cta,
  .notice-dark,
  .video-card,
  .footer,
  .site-footer
) :is(.section-title,.proposal-title,.copy-stack,.problem-copy,.how-content,.distributor-intro) > :is(h1,h2,h3),
:is(.page-hero,.technical-page-hero,.hero,.merged-hero) h1{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  background:none !important;
  background-image:none !important;
}

/* Homepage metallic product-family title: enforce the same global dark-surface rule. */
.home-dark-theme .proposal-products-section .eyebrow-dark{
  color:#89CFFD !important;
  -webkit-text-fill-color:#89CFFD !important;
}
.home-dark-theme .proposal-products-section :is(.section-title,.proposal-title) > h2{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  background:none !important;
  background-image:none !important;
}


/* ======================================================================
   FINAL GLOBAL DARK-SECTION HEADING / EYEBROW OVERRIDE
   Every normal dark website section uses:
   - eyebrow / kicker: #89CFFD
   - primary section heading: white
   The intentionally light homepage comparison section is excluded.
   ====================================================================== */
.section:not(.problem-solution-section) :is(.eyebrow,.eyebrow-dark,.section-kicker){
  color:#0A67C8 !important;
  -webkit-text-fill-color:#89CFFD !important;
  background:none !important;
  background-image:none !important;
  padding-top: 40px;
}

.section:not(.problem-solution-section) :is(
  .section-title,
  .proposal-title,
  .copy-stack,
  .how-content,
  .distributor-intro,
  .final-home-cta,
  .installation-complete-copy
) > :is(h1,h2){
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF ;
  background:none !important;
  background-image:none !important;
}

/* Direct section headings used by some pages/templates */
.section:not(.problem-solution-section) > .container > :is(h1,h2),
.section:not(.problem-solution-section) > .container > div > :is(h1,h2):first-child{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  background:none !important;
  background-image:none !important;
}

/* Keep the intentionally light comparison section readable. */
.problem-solution-section :is(.eyebrow,.eyebrow-dark,.section-kicker){
  color:#0A67C8 !important;
  -webkit-text-fill-color:#0A67C8 !important;
}
.problem-solution-section :is(.problem-copy,.section-title,.proposal-title) > :is(h1,h2){
  color:#092B55 !important;
  -webkit-text-fill-color:#092B55 !important;
}

/* Homepage industries heading colors requested for this light section. */
.home-dark-theme .proposal-industries .proposal-title > .eyebrow{
  color:#1467C8 !important;
  -webkit-text-fill-color:#1467C8 !important;
  background:none !important;
  background-image:none !important;
  text-shadow:none !important;
  padding-top: 40px;
}
.home-dark-theme .proposal-industries .proposal-title > h2{
  color:#092B55 !important;
  -webkit-text-fill-color:#092B55 !important;
  background:none !important;
  background-image:none !important;
  text-shadow:none !important;
}
.home-dark-theme .proposal-industries .proposal-industry-card h3{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  background:none !important;
  background-image:none !important;
}

/* Supplied industrial artwork behind Technical Resources and the final CTA. */
.resources-cta-overlay-zone{
  position:relative;
  isolation:isolate;
  background:#020a14;
   
   
}
.resources-cta-overlay-zone::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(4,25,47,.22),rgba(10,73,145,.12));
  pointer-events:none;
}
.resources-cta-overlay-zone .merged-resources,
.resources-cta-overlay-zone .final-cta-section{background:#092449}
.resources-cta-overlay-zone .merged-resource-grid a{background: #0A67C8;backdrop-filter:blur(2px)}
.resources-cta-overlay-zone .final-home-cta{background:linear-gradient(110deg,#041226,#041226);padding-bottom: 40px; }

/* ======================================================================
   GLOBAL PRIMARY CTA — METALLIC BLUE
   Color-only system: dimensions, spacing, typography and layout unchanged.
   ====================================================================== */
:is(
  .cta:not(.outline):not(.ghost):not(.danger):not(.gold):not(.light-cta),
  .btn-primary,
  .primary-btn,
  .apply-btn,
  .card-link,
  button.primary
){
  background:linear-gradient(
    180deg,
    var(--button-metallic-top) 0%,
    var(--button-metallic-upper) 28%,
    var(--button-metallic-mid) 60%,
    var(--button-metallic-bottom) 100%
  ) !important;
  color:var(--button-primary-text) !important;
  border:1px solid var(--button-border) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -1px 0 rgba(0,25,70,.30),
    0 5px 14px rgba(0,70,160,.20) !important;
  transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
:is(
  .cta:not(.outline):not(.ghost):not(.danger):not(.gold):not(.light-cta),
  .btn-primary,
  .primary-btn,
  .apply-btn,
  .card-link,
  button.primary
):hover{
  background:var(--button-hover-background) !important;
  color:var(--button-hover-text) !important;
  border-color:var(--button-hover-border) !important;
  filter:none;
}
:is(
  .cta:not(.outline):not(.ghost):not(.danger):not(.gold):not(.light-cta),
  .btn-primary,
  .primary-btn,
  .apply-btn,
  .card-link,
  button.primary
):hover :is(span,i,strong,em,svg,path){
  color:var(--button-hover-text) !important;
  fill:var(--button-hover-text) !important;
  stroke:var(--button-hover-text) !important;
}

/* Keep every header navigation link consistent, including dropdowns. */
.header .menu > a,
.header .nav-dropbtn,
.header .dropdown-menu a,
.header .mobile-menu > a,
.header .mobile-group-toggle,
.header .mobile-submenu a{
  color:#ffffff;
}

.header .menu > a:hover,
.header .menu > a.active,
.header .nav-dropbtn:hover,
.header .nav-dropdown.active > .nav-dropbtn,
.header .dropdown-menu a:hover,
.header .dropdown-menu a.active{
  color:#78b4ea;
}

/* Homepage industries introduction only. */
.proposal-industries .industries-intro{
  color:#000000;
}

/* Metallic-blue headings on the website's explicitly light surfaces. */
:is(.section.alt,.section-light,.ice-soft):not(.proposal-products-section)
  :is(.section-title,.proposal-title,.copy-stack,.problem-copy,.how-content,.distributor-intro)
  > :is(h1,h2,h3,h4,h5,h6),
.problem-solution-section
  :is(.section-title,.proposal-title,.problem-copy,.copy-stack)
  > :is(h1,h2,h3,h4,h5,h6),
.problem-solution-section .current-card :is(h1,h2,h3,h4,h5,h6),
.proposal-products-section .proposal-product-card :is(h1,h2,h3,h4,h5,h6){
  color:var(--heading-blue-middle) !important;
  background:var(--heading-metallic-blue) !important;
  background-color:var(--heading-blue-bottom) !important;
  background-size:100% 125% !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  background-clip:text !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
}

/* Image-overlay cards remain dark even when their parent section is light. */
.proposal-industries .proposal-industry-card :is(h1,h2,h3,h4,h5,h6){
  color:#ffffff !important;
  background:none !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* Shared interaction for white-secondary and dark blue-outline buttons. */
:is(.light-cta,.btn-light,.cta.outline,.btn-outline,.login-btn){
  transition:
    background .2s ease,
    color .2s ease,
    border-color .2s ease,
    box-shadow .2s ease,
    transform .2s ease;
}

:is(.light-cta,.btn-light,.cta.outline,.btn-outline,.login-btn):is(:hover,:focus-visible){
  background:var(--secondary-button-hover-bg) !important;
  color:var(--secondary-button-hover-text) !important;
  border-color:var(--secondary-button-hover-border) !important;
  box-shadow:var(--secondary-button-hover-shadow) !important;
  transform:translateY(-2px);
  filter:none;
}

:is(.light-cta,.btn-light,.cta.outline,.btn-outline,.login-btn):focus-visible{
  outline:var(--focus-outline);
  outline-offset:var(--focus-offset);
}

:is(.light-cta,.btn-light,.cta.outline,.btn-outline,.login-btn):is(:hover,:focus-visible)
  :is(span,i,strong,em,svg){
  color:var(--secondary-button-hover-text) !important;
}

:is(.light-cta,.btn-light,.cta.outline,.btn-outline,.login-btn):is(:hover,:focus-visible)
  svg [fill]:not([fill="none"]){
  fill:var(--secondary-button-hover-text) !important;
}

:is(.light-cta,.btn-light,.cta.outline,.btn-outline,.login-btn):is(:hover,:focus-visible)
  svg [stroke]:not([stroke="none"]){
  stroke:var(--secondary-button-hover-text) !important;
}

:is(.light-cta,.btn-light,.cta.outline,.btn-outline,.login-btn):is(:hover,:focus-visible)::before,
:is(.light-cta,.btn-light,.cta.outline,.btn-outline,.login-btn):is(:hover,:focus-visible)::after{
  color:var(--secondary-button-hover-text) !important;
  border-color:var(--secondary-button-hover-text) !important;
}

/* Full-bleed artwork for every inner-page hero. The index hero is separate. */
.page-hero{
  position:relative;
  overflow:hidden;
  background-image:var(--page-hero-image) !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}

.page-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg,rgba(2,15,31,.58) 0%,rgba(2,15,31,.24) 48%,rgba(2,15,31,.08) 72%);
  pointer-events:none;
}

.page-hero > .container{
  position:relative;
  z-index:1;
}

.page-hero .page-hero-grid,
.page-hero > .page-hero-grid{
  grid-template-columns:1fr;
}

.page-hero .page-hero-grid > div:first-child,
.page-hero > .page-hero-grid > div:first-child{
  max-width:900px;
}

.page-hero .page-hero-image{
  display:none;
}

/* Homepage five-card product family section: color changes only. */
.home-dark-theme .proposal-products-section .proposal-product-card > h3{
  color:#FFFFFF !important;
  -webkit-text-fill-color:#FFFFFF !important;
  background:none !important;
  background-image:none !important;
}

.home-dark-theme .proposal-products-section .proposal-product-card > p{
  color:#FFFFFF !important;
}

.home-dark-theme .proposal-products-section .proposal-product-card > .card-link{
  background:#020D25 !important;
}

/* Preserve the section's existing card-hover button treatment. */
.home-dark-theme .proposal-products-section .proposal-product-card:hover > .card-link{
  background:linear-gradient(180deg,#1693ff,#0863ce) !important;
}

/* Preserve the existing direct button hover treatment. */
.home-dark-theme .proposal-products-section .proposal-product-card > .card-link:hover{
  background:var(--button-hover-background) !important;
  color:var(--button-hover-text) !important;
  border-color:var(--button-hover-border) !important;
  filter:none;
}

/* About page: Practical Response section only. */
.about-response-section{
  background:#ffffff !important;
  padding-top: 120px;
}
.about-response-section .copy-stack .section-kicker{
  color:#1467c8 !important;
  -webkit-text-fill-color:#1467c8 !important;
  background:none !important;
}
.about-response-section .copy-stack h2{
  color:var(--heading-blue-middle) !important;
  -webkit-text-fill-color:var(--heading-blue-middle) !important;
  background:none !important;
  background-image:none !important;
}
.about-response-section.about-response-section .copy-stack h2{
  display:block;
  height:auto;
  overflow:visible;
  line-height:1.08;
  padding:4px 0 6px;
  color:var(--heading-blue-middle) !important;
  background:var(--heading-metallic-blue) !important;
  background-image:var(--heading-metallic-blue) !important;
  background-clip:text !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  background-size:100% 125% !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}
.about-response-section .copy-stack p{
  color:#344b63 !important;
}

.hv-earthrings-classic-page main > section:nth-of-type(2){
  background:#ffffff !important;
}
.hv-earthrings-classic-page main > section:nth-of-type(2) .copy-stack h2,
.hv-earthrings-classic-page main > section:nth-of-type(2) .copy-stack h3{
  color:#0a67c8 !important;
  -webkit-text-fill-color:#0a67c8 !important;
  background:none !important;
  background-image:none !important;
}
.hv-earthrings-classic-page main > section:nth-of-type(2) .copy-stack p,
.hv-earthrings-classic-page main > section:nth-of-type(2) .copy-stack li{
  color:#092b55 !important;
}

/* About page: USA-Focused Platform section only. */
.about-platform-section{
  background:#092449 !important;
  padding-bottom: 120px;
}
.about-platform-section .feature-card{
  text-align:center;border-radius:18px;
}
.about-engineering-section .feature-card{
  text-align:center;border-radius:18px;
}
.about-engineering-section .feature-card h3{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  background:none !important;
  background-image:none !important;
}

.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section{
  background:#ffffff !important;
}
.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section .copy-stack .section-kicker{
  color:#1467c8 !important;
  -webkit-text-fill-color:#1467c8 !important;
  background:none !important;
}
.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section .copy-stack h2{
  color:#0a67c8 !important;
  -webkit-text-fill-color:#0a67c8 !important;
  background:none !important;
  background-image:none !important;
}
.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section .copy-stack p{
  color:#092b55 !important;
  text-align:center;
}
.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section .family-body{
  text-align:center;
}
.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section .family-body > strong.cta{
  align-self:center;
}

/* Blue Protection page: Visible Product Identity section only. */
.technical-page-hero:has(.page-hero-image img[src$="Earthring-german-tech.webp"]){
  --page-hero-image:url("hero_images/About2.webp");
  background-color:#020B17 !important;
  background-size:auto 115% !important;
  background-position:right center !important;
}

.technical-page-hero:has(.page-hero-image img[src$="Earthring-german-tech.webp"])
  + .section{
  background:#0A66C7 !important;
  padding-top:80px;
  border-bottom:0 !important;
  box-shadow:none !important;
}
.technical-page-hero:has(.page-hero-image img[src$="Earthring-german-tech.webp"])
  + .section{
  background:#ffffff !important;
}
.technical-page-hero:has(.page-hero-image img[src$="Earthring-german-tech.webp"])
  + .section .copy-stack .section-kicker{
  color:#1467c8 !important;
  -webkit-text-fill-color:#1467c8 ;
  background:none !important;
}
.technical-page-hero:has(.page-hero-image img[src$="Earthring-german-tech.webp"])
  + .section .copy-stack h2{
  display:block;
  height:auto;
  overflow:visible;
  line-height:1.08;
  padding:4px 0 6px;
  color:var(--heading-blue-middle) !important;
  background:var(--heading-metallic-blue) !important;
  background-clip:text !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  background-size:100% 125% !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}
.technical-page-hero:has(.page-hero-image img[src$="Earthring-german-tech.webp"])
  + .section .copy-stack p{
  color:#092b55 !important;
}

/* Blue Protection page: Promise / Guarantee / Warranty section only. */
.technical-page-hero:has(.page-hero-image img[src$="Earthring-german-tech.webp"])
  + .section + .section{
  background:#ffffff !important;
  border-top:0 !important;
  box-shadow:none !important;
}

/* Products page: IEC / NEMA / ARC sizing links section only. */
.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section + .section{
  background:#092449 !important;
}

/* Center only the introductory copy in these two About sections. */
:is(.about-engineering-section,.about-platform-section)
  > .container > .copy-stack
  > :is(.section-kicker,h2,p){
  text-align:center;
}

/* Global typography: mirror the established index-page hierarchy. */
body{
  font-family:var(--font-primary);
  font-weight:var(--body-weight);
}

h1,h2,h3,h4,h5,h6,
.section-title h2,
.proposal-title h2,
.copy-stack h2,
.copy-stack h3,
.problem-copy h2,
.how-content h2,
.feature-card h3,
.family-card h3,
.product-card h3{
  font-family:var(--font-heading);
  font-weight:var(--h1-weight);
}

.eyebrow,
.eyebrow-dark,
.section-kicker{
  font-family:var(--font-heading);
  font-size:20px !important;
  font-weight:var(--eyebrow-font-weight);
  letter-spacing:var(--eyebrow-letter-spacing);
  line-height:1.2;
  text-transform:var(--eyebrow-text-transform);
}

main :is(p,li),
.page-hero p,
.technical-page-hero p{
  font-family:var(--font-primary);
  font-weight:var(--body-weight);
}

/* Products page: convert Product Family and sizing links to primary buttons. */
.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section{
  padding-top:80px;
}

.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section .copy-stack > :is(.section-kicker,h2){
  text-align:center;
}

/* Products page sizing cards: keep equal text-to-button spacing and align CTAs. */
.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section + .section .feature-card{
  display:flex;
  flex-direction:column;
}

.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section + .section .feature-card > p{
  margin-bottom:24px;
}
.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section + .section .feature-card{
  text-align:center;border-radius: 18px;
}

.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section + .section .feature-card > a{
  margin-top:auto;
  align-self:center;
}

:is(
  .technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"]) + .section
    .product-family-grid .family-card strong,
  .technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"]) + .section + .section
    .feature-card > a
){
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:100%;
  padding:10px 14px;
  border:1px solid var(--button-border);
  border-radius:var(--button-radius);
  background:linear-gradient(
    180deg,
    var(--button-metallic-top) 0%,
    var(--button-metallic-upper) 28%,
    var(--button-metallic-mid) 60%,
    var(--button-metallic-bottom) 100%
  );
  color:var(--button-primary-text);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -1px 0 rgba(0,25,70,.30),
    0 5px 14px rgba(0,70,160,.20);
  font-family:var(--font-heading);
  font-style:normal;
  font-weight:var(--button-font-weight);
  line-height:1;
  text-decoration:none;
  text-transform:uppercase;
  transition:
    background .2s ease,
    color .2s ease,
    border-color .2s ease,
    box-shadow .2s ease,
    transform .2s ease;
}

:is(
  .technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"]) + .section
    .product-family-grid .family-card strong,
  .technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"]) + .section + .section
    .feature-card > a
):is(:hover,:focus-visible){
  background:var(--button-hover-background);
  color:var(--button-hover-text);
  border-color:var(--button-hover-border);
}

.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"]) + .section
  .family-card:focus-visible strong{
  background:var(--button-hover-background);
  color:var(--button-hover-text);
  border-color:var(--button-hover-border);
}

/* Products page hero artwork override. */
.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"]){
  --page-hero-image:url("hero_images/products-hero.webp");
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}


/* GLOBAL INNER-PAGE ABOUT-STYLE CONTENT GRADIENT
   Applied to normal inner pages only through the body class added in HTML.
   Excluded pages: index, about, products, blue-protection.
   Header, hero and footer retain their existing backgrounds. */
body.site-content-gradient main{
  background:linear-gradient(
    180deg,
    #1675d1 0%,
    #1269bd 30%,
    #0b3f78 55%,
    #051b33 72%,
    #030F20 100%
  );
}

/* Let the single main-content gradient flow continuously through page sections.
   Component/card/form backgrounds are intentionally not changed. */
body.site-content-gradient main > :is(
  .section,
  .section.alt,
  .section-white,
  .section-light,
  .section-blue,
  .section-navy,
  .section-dark,
  .ice,
  .ice-soft
):not(.page-hero):not(.technical-page-hero){
  background:#092449 ;
}

/* HV Earthrings Classic hero artwork. */
.hv-earthrings-classic-page .page-hero{
  --page-hero-image:url("hero_images/product1_hero.webp");
}

/* HV ARC hero artwork. */
.technical-page-hero:has(.page-hero-image img[src$="hv-earthring-slide.webp"]){
  --page-hero-image:url("hero_images/product2_hero.webp");
}

/* e-Earthrings content: light overview followed by a continuous navy finish. */
body:has(.technical-page-hero .page-hero-image img[src$="e-earthrings2.jpg"])
  .technical-page-hero + .section{
  background:#ffffff !important;
}
body:has(.technical-page-hero .page-hero-image img[src$="e-earthrings2.jpg"])
  .technical-page-hero + .section .copy-stack :is(h2,h3){
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 !important;
  background:none !important;
}
body:has(.technical-page-hero .page-hero-image img[src$="e-earthrings2.jpg"])
  .technical-page-hero + .section .copy-stack :is(p,li){
  color:#233247 !important;
  -webkit-text-fill-color:#233247 !important;
}
body:has(.technical-page-hero .page-hero-image img[src$="e-earthrings2.jpg"])
  .technical-page-hero + .section ~ .section{
  background:#0A2449 !important;
}
body:has(.technical-page-hero .page-hero-image img[src$="e-earthrings2.jpg"])
  .technical-page-hero + .section + .section .copy-stack h2{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  background:none !important;
}
body:has(.technical-page-hero .page-hero-image img[src$="e-earthrings2.jpg"])
  .technical-page-hero + .section + .section .section-kicker{
  color:#42adff !important;
  -webkit-text-fill-color:#42adff !important;
}
body:has(.technical-page-hero .page-hero-image img[src$="e-earthrings2.jpg"])
  .technical-page-hero + .section ~ .section .page-cta :is(h2,p){
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* e-Earthrings hero artwork. */
.e-earthrings-page .technical-page-hero{
  --page-hero-image:url("hero_images/product3_hero.webp")!important;  
  background-image:url("hero_images/product3_hero.webp") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* Classic IEC Sizes hero artwork. */
.classic-iec-sizes-page .technical-page-hero{
  --page-hero-image:url("hero_images/product41_hero.webp") !important;
  background-image:url("hero_images/product41_hero.webp") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* Classic NEMA Sizes hero artwork. */
.classic-nema-sizes-page .technical-page-hero{
  --page-hero-image:url("hero_images/product4_hero.webp") !important;
  background-image:url("hero_images/product4_hero.webp") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* LV Earthrings Classic hero artwork. */
.lv-earthrings-classic-page .technical-page-hero{
  --page-hero-image:url("hero_images/product5_hero.webp") !important;
  background-image:url("hero_images/product5_hero.webp") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* LV ARC hero artwork. */
.lv-arc-page .technical-page-hero{
  --page-hero-image:url("hero_images/product61_hero.webp") !important;
  background-image:url("hero_images/product61_hero.webp") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* Earthrings Seal X hero artwork. */
.earthrings-seal-x-page .technical-page-hero{
  --page-hero-image:url("hero_images/product7_hero.webp") !important;
  background-image:url("hero_images/product7_hero.webp") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* How Earthrings Work hero artwork. */
.how-earthrings-work-page .technical-page-hero{
  --page-hero-image:url("hero_images/product91_hero.webp") !important;
  background-image:url("hero_images/product91_hero.webp") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* Earthrings Mounting and Installation Kits hero artwork. */
.earthrings-kits-page .technical-page-hero{
  --page-hero-image:url("hero_images/product8_hero.webp") !important;
  background-image:url("hero_images/product8_hero.webp") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* Shaft Currents and VFD Bearing Damage hero artwork. */
.shaft-currents-page .technical-page-hero{
  --page-hero-image:url("hero_images/10_hero.webp") !important;
  background-image:url("hero_images/10_hero.webp") !important;
  background-position:center center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

/* Blue Protection promise, guarantee and warranty cards. */
.blue-protection-page .feature-grid .feature-card{
  text-align:center;border-radius:18px;
}

/* Blue Guarantee options and key-conditions sections. */
.blue-guarantee-page .section.ice{
  text-align:center;
}

/* Blue Guarantee exclusions and claims section. */
.blue-guarantee-page main > .section:last-of-type .copy-stack{
  text-align:center;
}

.blue-guarantee-page main > .section:last-of-type .cta-actions{
  justify-content:center;
}

/* Blue Guarantee hero image. */
.blue-guarantee-page .technical-page-hero{
  --page-hero-image:url("hero_images/guarantee.webp") !important;
  background-image:url("hero_images/guarantee.webp") !important;
}

/* Blue Warranty hero image. */
.blue-warranty-page .technical-page-hero{
  --page-hero-image:url("hero_images/warranty.webp") !important;
  background-image:url("hero_images/warranty.webp") !important;
}

/* Blue Warranty certificate section. */
.blue-warranty-page .section:has(.download-grid){
  text-align:center;
}

/* Blue Warranty coverage section. */
.blue-warranty-page .section:has(.feature-grid){
  text-align:center;
}

/* Blue Warranty claims and verification section. */
.blue-warranty-page main > .section:last-of-type .copy-stack{
  text-align:center;
  align-items:center;
}

.blue-warranty-page main > .section:last-of-type .copy-stack > p{
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
}

.blue-warranty-page main > .section:last-of-type .cta-actions{
  justify-content:center;
  align-items:center;
}

/* How Earthrings Work technical test material copy. */
.how-earthrings-work-page .section:has(.asset-gallery) .copy-stack{
  text-align:center;
  align-items:center;
}

/* Shaft currents damage mechanism section. */
.shaft-currents-page .technical-page-hero + .section .copy-stack{
  text-align:center;
  align-items:center;
}

/* Installation guide process introduction. */
.installation-guide-page .technical-page-hero{
  --page-hero-image:url("hero_images/installguide-hero.webp") !important;
  background-image:url("hero_images/installguide-hero.webp") !important;
}

.installation-guide-page .installation-process-intro{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
  align-items:center;
}

.blue-warranty-page .section:has(.download-grid) .download-card{
  align-items:center;
  text-align:center;
      border-radius: 18px;
}

.blue-warranty-page .section:has(.download-grid) .download-card em{
  align-self:center;
}

/* Installation page feature image. */
.installation-page .technical-page-hero{
  --page-hero-image:url("hero_images/install-hero.webp") !important;
  background-image:url("hero_images/install-hero.webp") !important;
}

.installation-page .technical-page-hero + .section .family-body{
  text-align:center;
}

.installation-page .family-card .family-body > strong.cta{
  align-self:center;
  font-family:var(--font-heading);
  font-size:var(--button-font-size);
  font-weight:var(--button-font-weight);
}

@media (min-width:1051px){
  .installation-page .section .media-frame{
    height:500px;
    min-height:500px;
  }

  .installation-page .section .media-frame img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
}

/* Product Overview images: use a consistent 500px height on desktop. */
@media (min-width:1051px){
  .technical-page-hero + .section .media-split > .media-frame{
    height:500px;
    min-height:500px;
    align-self:start;
  }
  .technical-page-hero + .section .media-split > .media-frame img{
    height:500px;
    min-height:0;
  }
}

/* Media-split subheadings on dark gradient pages. */
.site-content-gradient .media-split .copy-stack > h3{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  background:none!important;
}

/* Global button typography: preserve every existing visual and interaction style. */
:is(
  button,
  input[type="button"],
  input[type="submit"],
  input[type="reset"],
  [role="button"],
  .btn,
  .btn-primary,
  .btn-secondary,
  .btn-outline,
  .btn-light,
  .btn-dark,
  .button,
  .cta,
  .cta-button,
  .light-cta,
  .hero-button,
  .hero-login-link,
  .product-button,
  .technical-button,
  .distributor-button,
  .checkout-button,
  .login-btn,
  .apply-btn,
  .card-link,
  .cart-link,
  .technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
    + .section .product-family-grid .family-card strong,
  .technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
    + .section + .section .feature-card > a
){
  font-weight:400 !important;
}

/* Homepage distributor section: light presentation with dark readable copy. */
.home-dark-theme .distributor-process-section{
  background:#ffffff !important;
  color:#092449 !important;
}
.home-dark-theme .distributor-process-section .eyebrow{
  color:#0a67c8 !important;
  -webkit-text-fill-color:#0a67c8 !important;
}
.home-dark-theme .distributor-process-section .distributor-intro h2{
  font-size:clamp(42px,4vw,58px);
  line-height:1.08;
  margin:8px 0 18px;
  padding:4px 0 6px;
  overflow:visible;
  color:var(--heading-blue-middle) !important;
  background-image:var(--heading-metallic-blue) !important;
  background-color:transparent !important;
  background-clip:text !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  background-size:100% 125% !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}
.home-dark-theme .distributor-process-section .distributor-intro p{
  color:#344b63 !important;
}
.home-dark-theme .distributor-process-section .approval-steps article{
  background:#0A67C8;
  border-color:#c7d8ea;
  border-radius:6px;
  box-shadow:0 8px 20px rgba(9,36,73,.08);
}
.home-dark-theme .distributor-process-section .approval-steps strong{
  color:#ffffff;
}
.home-dark-theme .distributor-process-section .approval-steps p{
  color:#ffffff;
}
.home-dark-theme .distributor-process-section .cta.outline{
  color:#092449 !important;
  border-color:#0a67c8 !important;
  
}
.home-dark-theme .distributor-process-section .cta{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:68px;
  font-family:var(--font-heading) !important;
  font-size:16px !important;
  font-weight:600 !important;
  line-height:1.15;
  text-decoration:none;
  background:linear-gradient(180deg,var(--button-metallic-top) 0%,var(--button-metallic-upper) 28%,var(--button-metallic-mid) 60%,var(--button-metallic-bottom) 100%) !important;
  color:var(--button-primary-text) !important;
  -webkit-text-fill-color:var(--button-primary-text) !important;
  border:1px solid var(--button-border) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(0,25,70,.30),0 5px 14px rgba(0,70,160,.20) !important;
  transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.home-dark-theme .distributor-process-section .cta:is(:hover,:focus-visible){
  background:var(--button-hover-background) !important;
  color:var(--button-hover-text) !important;
  -webkit-text-fill-color:var(--button-hover-text) !important;
  border-color:var(--button-hover-border) !important;
  box-shadow:var(--secondary-button-hover-shadow) !important;
  transform:translateY(-2px);
}
.home-dark-theme .distributor-process-section .distributor-intro > p{
  font-size:var(--body-size-large);
  font-weight:var(--body-weight);
  line-height:var(--body-line-height-large);
  color:#000000 !important;
}
@media(max-width:1050px){
  .home-dark-theme .distributor-process-grid .approval-steps{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:680px){
  .home-dark-theme .distributor-process-grid .approval-steps{
    grid-template-columns:1fr;
  }
}

/* Legal content presentation: scoped to the five primary legal pages only. */
.legal-page main > .section:not(.technical-page-hero):not(.legal-end-strip){
  background:#ffffff !important;
  background-color:#ffffff !important;
  background-image:none !important;
  border-color:transparent !important;
  box-shadow:none !important;
}
.legal-page .legal.content-narrow{
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  border-color:transparent !important;
  box-shadow:none !important;
}

.legal-page .legal,
.legal-page .legal :is(p,li,ol,ul,strong,span){
  color:#233247 !important;
}

.legal-page .legal h3{
  margin:32px 0 10px;
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 !important;
  background:none !important;
  background-image:none !important;
  font-family:var(--font-heading);
  font-size:clamp(24px,2.2vw,28px);
  font-weight:700;
  line-height:1.15;
}

.legal-page .legal a{
  color:#0e5bd7 !important;
  text-decoration:underline;
  text-underline-offset:3px;
}

/* Legal pages: thin dark-navy divider strip before the footer. */
.legal-page .legal-end-strip{
  height:80px;
  min-height:0;
  padding:0 !important;
  background:#0A2449 !important;
}

/* Fit the installation-complete panel beside step 17. */
.installation-guide-page .installation-step-grid > .installation-complete-panel{
  grid-column:span 3;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);
  margin-top:0;
  min-width:0;
  height:423px;
}

.installation-guide-page .installation-step-grid > .installation-step-card-wide:nth-last-child(2){
  height:423px;
}

.installation-guide-page .installation-step-grid > .installation-complete-panel > img{
  min-height:0;
  height:100%;
}

.installation-guide-page .installation-step-grid > .installation-complete-panel .installation-complete-copy{
  justify-content:center;
}

@media(max-width:1180px){
  .installation-guide-page .installation-step-grid > .installation-step-card-wide:nth-last-child(2),
  .installation-guide-page .installation-step-grid > .installation-complete-panel{
    height:auto;
  }

  .installation-guide-page .installation-step-grid > .installation-complete-panel{
    grid-column:span 1;
    grid-template-columns:1fr;
  }

  .installation-guide-page .installation-step-grid > .installation-complete-panel > img{
    height:190px;
    min-height:190px;
    max-height:190px;
  }

  .installation-guide-page .installation-step-grid > .installation-complete-panel .installation-complete-copy{
    align-items:center;
    flex-direction:column;
    gap:12px;
    padding:24px 20px;
    text-align:center;
  }
}

@media(max-width:560px){
  .installation-guide-page .installation-step-grid > .installation-complete-panel > img{
    height:220px;
    min-height:220px;
    max-height:220px;
  }
}

/* Final global eyebrow color override. */
:is(.eyebrow,.eyebrow-dark,.section-kicker){
  color:#7BC9F8 !important;
  -webkit-text-fill-color:#7BC9F8 !important;
  background:none !important;
  background-image:none !important;
}

.technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"])
  + .section .copy-stack .section-kicker{
  color:var(--eyebrow-color) !important;
  -webkit-text-fill-color:var(--eyebrow-color) !important;
  background:none !important;
  background-image:none !important;
}

.hv-earthrings-classic-page .technical-page-hero + .section{
  background:#ffffff !important;
  background-image:none !important;
}
.hv-earthrings-classic-page .technical-page-hero + .section .copy-stack h2,
.hv-earthrings-classic-page .technical-page-hero + .section .copy-stack h3{
  color:#0a67c8 !important;
  -webkit-text-fill-color:#0a67c8 !important;
  background:none !important;
  background-image:none !important;
}
.hv-earthrings-classic-page .technical-page-hero + .section .copy-stack p,
.hv-earthrings-classic-page .technical-page-hero + .section .copy-stack li{
  color:#092b55 !important;
}

/* e-Earthrings body sections: reference light overview / dark imagery colors. */
.technical-page-hero:has(.page-hero-image img[src$="e-earthrings2.webp"])
  + .section{
  background:#ffffff !important;
  background-image:none !important;
}
.technical-page-hero:has(.page-hero-image img[src$="e-earthrings2.webp"])
  + .section .copy-stack :is(h2,h3){
  color:#0a67c8 !important;
  -webkit-text-fill-color:#0a67c8 !important;
  background:none !important;
  background-image:none !important;
}
.technical-page-hero:has(.page-hero-image img[src$="e-earthrings2.webp"])
  + .section .copy-stack :is(p,li){
  color:#092b55 !important;
}
.technical-page-hero:has(.page-hero-image img[src$="e-earthrings2.webp"])
  + .section + .section{
  background:#092449 !important;
  background-image:none !important;
  color:#ffffff !important;
}
.technical-page-hero:has(.page-hero-image img[src$="e-earthrings2.webp"])
  + .section + .section .copy-stack :is(h2,h3,p,li){
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  background:none !important;
  background-image:none !important;
}

/* LV Earthrings Classic body sections: reference light overview / dark imagery colors. */
.technical-page-hero:has(.page-hero-image img[src$="lv-earthrings.webp"])
  + .section{
  background:#ffffff !important;
  background-image:none !important;
}
.technical-page-hero:has(.page-hero-image img[src$="lv-earthrings.webp"])
  + .section .copy-stack :is(h2,h3){
  color:#0a67c8 !important;
  -webkit-text-fill-color:#0a67c8 !important;
  background:none !important;
  background-image:none !important;
}
.technical-page-hero:has(.page-hero-image img[src$="lv-earthrings.webp"])
  + .section .copy-stack :is(p,li){
  color:#092b55 !important;
}
.technical-page-hero:has(.page-hero-image img[src$="lv-earthrings.webp"])
  + .section + .section{
  background:#092449 !important;
  background-image:none !important;
  color:#ffffff !important;
}
.technical-page-hero:has(.page-hero-image img[src$="lv-earthrings.webp"])
  + .section + .section .copy-stack :is(h2,h3,p,li){
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  background:none !important;
  background-image:none !important;
}

/* HV ARC body sections: match the reference light overview / dark imagery rhythm. */
.technical-page-hero:has(.page-hero-image img[src$="hv-earthring-slide.webp"])
  + .section{
  background:#ffffff !important;
  background-image:none !important;
}
.technical-page-hero:has(.page-hero-image img[src$="hv-earthring-slide.webp"])
  + .section .copy-stack :is(h2,h3){
  color:#0a67c8 !important;
  -webkit-text-fill-color:#0a67c8 !important;
  background:none !important;
  background-image:none !important;
}
.technical-page-hero:has(.page-hero-image img[src$="hv-earthring-slide.webp"])
  + .section .copy-stack :is(p,li){
  color:#092b55 !important;
}
.technical-page-hero:has(.page-hero-image img[src$="hv-earthring-slide.webp"])
  + .section + .section{
  background:#092449 !important;
  background-image:none !important;
  color:#ffffff !important;
}
.technical-page-hero:has(.page-hero-image img[src$="hv-earthring-slide.webp"])
  + .section + .section .copy-stack :is(h2,h3,p,li){
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  background:none !important;
  background-image:none !important;
}

/* Global CTA panel treatment. */
:is(.final-home-cta,.page-cta,.merged-distributor-cta,.pricing-login-cta){
  background:#020b17 !important;
  border-top:4px solid #0e5bd7 !important;border-radius: 18px;
}

/* earthrings-kits: light section behind hero, dark navy copy. */
.kits-body-content main > .section:nth-of-type(2){
  background:#ffffff !important;
}
.kits-body-content main > .section:nth-of-type(2) .copy-stack h2,
.kits-body-content main > .section:nth-of-type(2) .copy-stack h3{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 !important;
  background:none !important;
}
.kits-body-content main > .section:nth-of-type(2) .copy-stack p,
.kits-body-content main > .section:nth-of-type(2) .copy-stack li{
  color:#233247 !important;
  -webkit-text-fill-color:#233247 !important;
}
.kits-body-content main > .section:nth-of-type(2) .section-kicker,
.kits-body-content main > .section:nth-of-type(2) .eyebrow{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 !important;
}
.kits-body-content main > .section:nth-of-type(2) .copy-stack a:not(.cta){
  color:#0e5bd7 !important;
}

/* ======================================================================
   ABSOLUTE GLOBAL EYEBROW COLOR — wins over every page/section override.
   Repeated class selectors are used only to out-rank other !important
   rules in the cascade; this is the single source of truth for eyebrow
   color across the whole site.
   ====================================================================== */
.eyebrow.eyebrow.eyebrow.eyebrow.eyebrow,
.eyebrow-dark.eyebrow-dark.eyebrow-dark.eyebrow-dark.eyebrow-dark,
.section-kicker.section-kicker.section-kicker.section-kicker.section-kicker{
  color:#2F9FFF !important;
  -webkit-text-fill-color:#2F9FFF ;
  background:none !important;
  background-image:none !important;
}

/* how-earthrings-work: light sections (non-.ice) get light-blue
   background with readable dark-blue copy; .ice sections stay dark navy
   with white/light text as already handled globally. */
.how-earthrings-work-page main > .section:nth-of-type(2),
.how-earthrings-work-page main > .section:nth-of-type(4){
  background:#ffffff !important;
}
.how-earthrings-work-page main > .section:nth-of-type(2) .copy-stack h2,
.how-earthrings-work-page main > .section:nth-of-type(2) .copy-stack h3,
.how-earthrings-work-page main > .section:nth-of-type(4) .copy-stack h2,
.how-earthrings-work-page main > .section:nth-of-type(4) .copy-stack h3{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 !important;
  background:none !important;
}
.how-earthrings-work-page main > .section:nth-of-type(2) .copy-stack p,
.how-earthrings-work-page main > .section:nth-of-type(2) .copy-stack li,
.how-earthrings-work-page main > .section:nth-of-type(4) .copy-stack p,
.how-earthrings-work-page main > .section:nth-of-type(4) .copy-stack li{
  color:#233247 !important;
  -webkit-text-fill-color:#233247 !important;
}
.how-earthrings-work-page main > .section:nth-of-type(2) .copy-stack a:not(.cta),
.how-earthrings-work-page main > .section:nth-of-type(4) .copy-stack a:not(.cta){
  color:#0e5bd7 !important;
}
.how-earthrings-work-page main > .section:nth-of-type(2) .section-kicker.section-kicker.section-kicker.section-kicker.section-kicker,
.how-earthrings-work-page main > .section:nth-of-type(4) .section-kicker.section-kicker.section-kicker.section-kicker.section-kicker{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 ;
}

/* shaft-currents-vfd-bearing-damage: first (non-.ice) section gets
   light-blue background with readable dark-blue copy; .ice section and the
   dark CTA panel stay dark navy with white/light text as already handled
   globally. */
.shaft-currents-page main > .section:nth-of-type(2){
  background:#ffffff !important;
}
.shaft-currents-page main > .section:nth-of-type(2) > .container > .copy-stack > h2{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 !important;
  background:none !important;
}
.shaft-currents-page main > .section:nth-of-type(2) > .container > .copy-stack > p{
  color:#233247 !important;
  -webkit-text-fill-color:#233247 !important;
}
.shaft-currents-page main > .section:nth-of-type(2) > .container > .copy-stack a:not(.cta){
  color:#0e5bd7 !important;
}

/* installation: first (non-.ice) section gets light-blue background;
   the .ice section stays dark navy with white/light text as already
   handled globally. Family cards are a self-contained white component
   already readable on either background, so they are left untouched. */
.installation-page main > .section:nth-of-type(2){
  background:#ffffff !important;
}

/* earthrings-installation-guide: this page's only content section
   currently renders via the global dark-theme override (dark background,
   dark step cards). Restore it to the light treatment so it matches the
   light-section pattern used across the other technical pages, with
   readable dark-blue heading/body/eyebrow text and light step cards. */
.installation-guide-page .installation-process-section{
  background:#ffffff !important;
}
.installation-guide-page .installation-process-intro h2{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 !important;
  background:none !important;
}
.installation-guide-page .installation-process-intro p{
  color:#233247 !important;
  -webkit-text-fill-color:#233247 !important;
}
.installation-guide-page .installation-step-card,
.installation-guide-page .installation-complete-panel{
  background:#0A67C8 !important;
  border-color:#dbe3eb !important;
}
.installation-guide-page .installation-step-media{
  background:#e7edf3 !important;
}
.installation-guide-page .installation-step-copy h3{
  color:var(--color-navy) !important;
  -webkit-text-fill-color:var(--color-navy);
  background:none !important;
}
.installation-guide-page .installation-step-copy p{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff ;
}
.installation-guide-page .installation-process-intro .eyebrow.eyebrow.eyebrow.eyebrow.eyebrow{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 ;
}

/* arc-imperial-adjustment-guide: first (non-.ice) section gets
   light-blue background with readable dark-blue copy; the .ice gallery
   section stays dark navy (figcaptions are already dark text on white
   figure backgrounds, so no change needed there). */
.arc-imperial-adjustment-guide-page main > .section:nth-of-type(2){
  background:#ffffff !important;
}
.arc-imperial-adjustment-guide-page main > .section:nth-of-type(2) .copy-stack h2{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 !important;
  background:none !important;
}
.arc-imperial-adjustment-guide-page main > .section:nth-of-type(2) .copy-stack li{
  color:#233247 !important;
  -webkit-text-fill-color:#233247 !important;
}
.arc-imperial-adjustment-guide-page main > .section:nth-of-type(2) .copy-stack a:not(.cta){
  color:#0e5bd7 !important;
}

/* arc-metric-adjustment-guide: first (non-.ice) section gets
   light-blue background with readable dark-blue copy; the .ice gallery
   section stays dark navy (figcaptions are already dark text on white
   figure backgrounds, so no change needed there). */
.arc-metric-adjustment-guide-page main > .section:nth-of-type(2){
  background:#ffffff !important;
}
.arc-metric-adjustment-guide-page main > .section:nth-of-type(2) .copy-stack h2{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 !important;
  background:none !important;
}
.arc-metric-adjustment-guide-page main > .section:nth-of-type(2) .copy-stack li{
  color:#233247 !important;
  -webkit-text-fill-color:#233247 !important;
}
.arc-metric-adjustment-guide-page main > .section:nth-of-type(2) .copy-stack a:not(.cta){
  color:#0e5bd7 !important;
}

/* download-centre: center an incomplete last row of download-grid
   cards (e.g. the Installation Guides & Drawings grid, which ends with
   two cards) instead of leaving them flush left. */
.download-grid.center-tail-row{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:30px;
}
.download-grid.center-tail-row .download-card{
  flex:0 1 calc((100% - 60px)/3);
}
@media(max-width:1050px){
  .download-grid.center-tail-row .download-card{flex:0 1 calc((100% - 30px)/2)}
}
@media(max-width:680px){
  .download-grid.center-tail-row .download-card{flex:0 1 100%}
}

/* download-centre: give every h2 heading the metallic-blue gradient
   overlay used elsewhere on light surfaces, sized to hug the text itself
   rather than stretching across the full section width. Scoped to this
   page only (products shares the same hero image / selector chain). */
body.download-centre-page .technical-page-hero:has(.page-hero-image img[src$="Earthrings-box.webp"]) + .section .copy-stack h2,
body.download-centre-page .copy-stack h2{
  display:inline-block;
  color:var(--heading-blue-middle) !important;
  background:var(--heading-metallic-blue) !important;
  background-image:var(--heading-metallic-blue) !important;
  background-clip:text !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  background-size:100% 100% !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}

/* download-centre: thin divider strip before the footer. */
body.download-centre-page .download-centre-end-strip{
  height:90px;
  min-height:0;
  padding:0 !important;
  background:#0A2449 !important;
}

/* faq: section background behind the FAQ list. */
body.faq-page main > .section{
  background:#0A2449 !important;
}

/* faq: thin divider strip before the footer. */
body.faq-page main > .faq-end-strip{
  height:80px;
  min-height:0;
  padding:0 !important;
  background:#0A2449 !important;
}

/* blue-guarantee: light (non-.ice) sections get light-blue background
   with readable dark-blue copy; .ice sections stay dark navy with white/
   light text as already handled globally. */
body.blue-guarantee-page main > .section:nth-of-type(2),
body.blue-guarantee-page main > .section:nth-of-type(4){
  background:#ffffff !important;
}
body.blue-guarantee-page main > .section:nth-of-type(2) .copy-stack h2,
body.blue-guarantee-page main > .section:nth-of-type(4) .copy-stack h2{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 !important;
  background:none !important;
}
body.blue-guarantee-page main > .section:nth-of-type(2) .copy-stack > p,
body.blue-guarantee-page main > .section:nth-of-type(4) .copy-stack > p{
  color:#233247 !important;
  -webkit-text-fill-color:#233247 !important;
}
body.blue-guarantee-page main > .section:nth-of-type(2) .copy-stack a:not(.cta),
body.blue-guarantee-page main > .section:nth-of-type(4) .copy-stack a:not(.cta){
  color:#0e5bd7 !important;
}
body.blue-guarantee-page main > .section:nth-of-type(2) .section-kicker.section-kicker.section-kicker.section-kicker.section-kicker,
body.blue-guarantee-page main > .section:nth-of-type(4) .section-kicker.section-kicker.section-kicker.section-kicker.section-kicker{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 ;
}

/* blue-guarantee: final "Exclusions & Claims" section — dark navy
   background with light text for contrast. */
body.blue-guarantee-page main > .section:nth-of-type(6){
  background:#0A2449 !important;
}
body.blue-guarantee-page main > .section:nth-of-type(6) .copy-stack h2{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  background:none !important;
}
body.blue-guarantee-page main > .section:nth-of-type(6) .copy-stack > p{
  color:#dceeff !important;
  -webkit-text-fill-color:#dceeff !important;
}
body.blue-guarantee-page main > .section:nth-of-type(6) .section-kicker.section-kicker.section-kicker.section-kicker.section-kicker{
  color:#7BC9F8 !important;
  -webkit-text-fill-color:#7BC9F8 !important;
}

/* blue-warranty: light (non-.ice) sections get white background with
   readable dark-blue copy; .ice sections stay dark navy with white/light
   text as already handled globally. The final "Warranty Claims and
   Verification" section is dark navy, matching the blue-guarantee
   pattern for the closing section. */
body.blue-warranty-page main > .section:nth-of-type(2),
body.blue-warranty-page main > .section:nth-of-type(4){
  background:#ffffff !important;
}
body.blue-warranty-page main > .section:nth-of-type(2) .copy-stack h2,
body.blue-warranty-page main > .section:nth-of-type(4) .copy-stack h2{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 !important;
  background:none !important;
}
body.blue-warranty-page main > .section:nth-of-type(2) .copy-stack > p,
body.blue-warranty-page main > .section:nth-of-type(4) .copy-stack > p{
  color:#233247 !important;
  -webkit-text-fill-color:#233247 !important;
}
body.blue-warranty-page main > .section:nth-of-type(2) .copy-stack a:not(.cta),
body.blue-warranty-page main > .section:nth-of-type(4) .copy-stack a:not(.cta){
  color:#0e5bd7 !important;
}
body.blue-warranty-page main > .section:nth-of-type(2) .section-kicker.section-kicker.section-kicker.section-kicker.section-kicker,
body.blue-warranty-page main > .section:nth-of-type(4) .section-kicker.section-kicker.section-kicker.section-kicker.section-kicker{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 ;
}

body.blue-warranty-page main > .section:nth-of-type(6){
  background:#0A2449 !important;
}
body.blue-warranty-page main > .section:nth-of-type(6) .copy-stack h2{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  background:none !important;
}
body.blue-warranty-page main > .section:nth-of-type(6) .copy-stack > p{
  color:#dceeff !important;
  -webkit-text-fill-color:#dceeff !important;
}
body.blue-warranty-page main > .section:nth-of-type(6) .section-kicker.section-kicker.section-kicker.section-kicker.section-kicker{
  color:#7BC9F8 !important;
  -webkit-text-fill-color:#7BC9F8 !important;
}

/* distributor-program: light (non-.ice) sections get white background
   with readable dark-blue copy; the .ice feature-grid section stays dark
   navy with white text as already handled globally. The process-list and
   feature-card components are self-contained blue cards readable on
   either background, so they are left untouched. */
body.distributor-program-page main > .section:nth-of-type(2),
body.distributor-program-page main > .section:nth-of-type(5){
  background:#ffffff !important;
}
body.distributor-program-page main > .section:nth-of-type(2) .copy-stack h2,
body.distributor-program-page main > .section:nth-of-type(5) .copy-stack h2{
  color:#0e5bd7 !important;
  -webkit-text-fill-color:#0e5bd7 ;
  background:none !important;
}
body.distributor-program-page main > .section:nth-of-type(2) .copy-stack li{
  font-size:17px;
  line-height:1.5;
}
body.distributor-program-page main > .section:nth-of-type(2) .copy-stack > p{
  color:#000000 !important;
  -webkit-text-fill-color:#000000 !important;
}
body.distributor-program-page .who-should-apply-list{
  display:flex;
  align-items:stretch;
  gap:40px;
}
body.distributor-program-page .who-should-apply-list ul.card{
  flex:1;
  margin:0;
  padding-left:44px;
}
body.distributor-program-page .who-should-apply-list li{
  margin-bottom:14px;
}
body.distributor-program-page .who-should-apply-list li:last-child{
  margin-bottom:0;
}
body.distributor-program-page main > .section:nth-of-type(4) .feature-card{
  text-align:center;
}
body.distributor-program-page main > .section:nth-of-type(5){
  background:#0A2449 !important;
}

/* apply-as-distributor: compact printed distributor application form. */
.distributor-application-section{
  background:#ffffff !important;
  padding:82px 0 38px;
  padding-bottom: 80px;
}
.distributor-app-form{
  max-width:1100px;
  margin:0 auto;
  padding:0;
  background:#ffffff !important;
  border:2px solid #8fa3b8;
  border-radius:6px;
  box-shadow:0 0 0 4px rgba(14,91,215,.14),0 18px 40px rgba(14,91,215,.22) !important;
  color:#1d2935;
  overflow:hidden;
}
.distributor-app-heading{
  display:flex;
  align-items:center;
  gap:20px;
  padding:18px 18px 2px;
}
.distributor-app-logo{
  width:300px;
  height:120px;
  object-fit:contain;
  flex-shrink:0;
}
.distributor-app-heading-text{
  flex:1;
}
.distributor-app-heading h2{
  margin:0;
  padding:0;
  font-family:var(--font-heading);
  font-size:46px;
  line-height:1.08;
  font-weight:700;
  letter-spacing:.02em;
  text-transform:uppercase;
  text-align:right;
  color:#0A2449 !important;
  background:none !important;
  -webkit-text-fill-color:#0A2449 !important;
}
.distributor-app-intro{
  margin:4px 0 16px;
  text-align:right;
  font-size:12px;
  line-height:1.35;
  color:#4b5967 !important;
}
@media(max-width:560px){
  .distributor-app-heading{flex-direction:column;align-items:flex-start;gap:10px}
  .distributor-app-heading h2,
  .distributor-app-intro{text-align:left}
}
.distributor-app-form .form-section{
  min-width:0;
  margin:0;
  padding:0;
  border:0;
  border-top:1px solid #d6dce3;
}
.distributor-app-form .form-section legend{
  width:100%;
  display:block;
  float:left;
  margin:0;
  padding:7px 12px;
  border:0;
  border-radius:0;
  background:#0A2449;
  color:#ffffff;
  font-family:var(--font-ui);
  font-size:18px;
  line-height:1.2;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.distributor-app-form .form-section legend + *{clear:both}
.distributor-app-form .paper-row{
  display:grid;
  gap:2px;
  padding:2px;
  border-top:1px solid #d6dce3;
}
.distributor-app-form .form-section legend + .paper-row,
.distributor-app-form .form-section legend + .agreement-text{
  border-top:0;
}
.distributor-app-form .paper-row-1{grid-template-columns:1fr}
.distributor-app-form .paper-row-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.distributor-app-form .paper-row-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.distributor-app-form .paper-row-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.distributor-app-form .company-year-row{grid-template-columns:minmax(0,2.25fr) minmax(220px,.75fr)}
.distributor-app-form .paper-row > label,
.distributor-app-form .paper-row > .field-block{
  min-width:0;
  margin:0;
  padding:6px 9px;
  border:1px solid #e1e7ed;
  border-radius:6px;
  background:#f7fafc !important;
}
.distributor-app-form label{
  display:flex !important;
  flex-direction:row !important;
  align-items:center;
  gap:7px;
  color:#26384a !important;
  font-size:16px;
  line-height:1.35;
  font-weight:600;
  text-transform:none;
  letter-spacing:0;
}
.distributor-app-form .textarea-label{align-items:flex-start}
.distributor-app-form input:not([type="radio"]):not([type="checkbox"]),
.distributor-app-form textarea{
  flex:1 1 auto;
  width:auto;
  min-width:50px;
  min-height:27px;
  height:27px;
  margin:0;
  padding:2px 8px;
  border:1px solid #b5c0cc !important;
  border-radius:6px !important;
  outline:0;
  background:#ffffff !important;
  box-shadow:inset 0 2px 4px rgba(10,36,73,.16) !important;
  color:#172536 !important;
  font-size:12px;
  line-height:1.25;
}
.distributor-app-form textarea{
  height:35px;
  min-height:35px;
  resize:vertical;
}
.distributor-app-form input::placeholder,
.distributor-app-form textarea::placeholder{color:#8b97a3}
.distributor-app-form input:focus,
.distributor-app-form textarea:focus{
  border-color:#0A2449 !important;
  box-shadow:inset 0 2px 4px rgba(10,36,73,.16),0 0 0 3px rgba(14,91,215,.16) !important;
}
.distributor-app-form .field-block{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:5px 14px;
  color:#26384a;
}
.distributor-app-form .field-label{
  margin:0;
  color:#26384a !important;
  font-size:16px;
  line-height:1.25;
  font-weight:600;
  text-transform:none;
  letter-spacing:0;
}
.distributor-app-form .check-row{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:4px 18px;
  padding-left:40px;
  padding-bottom:40px;
}
.distributor-app-form .check{
  display:inline-flex !important;
  flex-direction:row !important;
  align-items:center;
  gap:5px;
  width:auto;
  margin:0;
  padding:1px 0;
  border:0 !important;
  background:transparent !important;
  color:#26384a !important;
  font-size:12px;
  line-height:1.2;
  font-weight:500;
  white-space:nowrap;
  cursor:pointer;
}
.distributor-app-form .check input{
  position:static;
  opacity:1;
  width:14px;
  min-width:14px;
  height:14px;
  min-height:14px;
  margin:0;
  accent-color:#0A2449;
  cursor:pointer;
}
.distributor-app-form .agreement-text{
  clear:both;
  margin:0;
  padding:9px 11px;
  border-top:1px solid #d6dce3;
  background:#ffffff;
  color:#26384a !important;
  font-weight:700;
  font-size:18px;
 line-height:1.45;
}
.distributor-app-form .date-row label{max-width:360px}
.distributor-app-cta{
  background:#0A2449 !important;
  padding:80px 0 !important;
}
.distributor-app-cta-inner{text-align:center}
.distributor-app-cta-inner .cta-actions{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:16px;
}
.distributor-app-cta-inner .cta-actions .cta{min-width:210px}
@media(max-width:860px){
  .distributor-app-form .paper-row-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .distributor-app-form .company-year-row{grid-template-columns:minmax(0,1.7fr) minmax(190px,.8fr)}
}
@media(max-width:680px){
  .distributor-application-section{padding:28px 0}
  .distributor-app-heading{padding:16px 12px 2px}
  .distributor-app-heading h2{font-size:23px}
  .distributor-app-form .paper-row-2,
  .distributor-app-form .paper-row-3,
  .distributor-app-form .paper-row-4,
  .distributor-app-form .company-year-row{grid-template-columns:1fr}
  .distributor-app-form .paper-row > label,
  .distributor-app-form .paper-row > .field-block{
    padding:8px 10px;
  }
  .distributor-app-form label,
  .distributor-app-form .textarea-label{
    flex-direction:column !important;
    align-items:stretch;
    gap:5px;
    font-size:13px;
  }
  .distributor-app-form input:not([type="radio"]):not([type="checkbox"]),
  .distributor-app-form textarea{width:100%;font-size:16px;min-height:36px;height:36px}
  .distributor-app-form textarea{min-height:54px;height:54px}
  .distributor-app-form .field-block{align-items:flex-start;gap:8px}
  .distributor-app-form .field-label{font-size:13px}
  .distributor-app-form .check-row{gap:9px 18px}
  .distributor-app-form .check{font-size:13px;min-height:28px}
  .distributor-app-form .check input{width:18px;min-width:18px;height:18px;min-height:18px}
  .distributor-app-form .date-row label{max-width:none}
  .distributor-app-cta-inner .cta-actions{flex-direction:column;align-items:stretch;gap:12px}
  .distributor-app-cta-inner .cta-actions .cta{width:100%;min-width:0}
}
body.distributor-program-page main > .section:nth-of-type(5) .copy-stack{
  text-align:center;
}
body.distributor-program-page main > .section:nth-of-type(5) .process-list{
  grid-template-columns:repeat(2,1fr);
}
body.distributor-program-page main > .section:nth-of-type(5) .process-list article{
  height:122px;
  overflow:hidden;border-radius:18px;
}

/* distributor-login: white section background behind the login card,
   and a thin dark-navy divider strip before the footer. */
body.distributor-login-page main > .section:not(.distributor-login-end-strip){
  background:#ffffff !important;
}
body.distributor-login-page .auth-card h2,
body.distributor-login-page .auth-card > p{
  text-align:center;
}
body.distributor-login-page .auth-card p:not(:first-of-type),
body.distributor-login-page .auth-card p:not(:first-of-type) a{
  font-weight:600;
  color:#ffffff !important;
}
body.contact-page main > .section:nth-of-type(3) .feature-card{
  text-align:center;
}
body.contact-page .contact-enquiry-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px;
  align-items:center;
}
body.contact-page .contact-enquiry-split .panel{
  margin:0;
}
body.contact-page .contact-enquiry-image{
  display:flex;
  align-items:center;
  justify-content:center;
}
body.contact-page .contact-enquiry-image img{
  width:100%;
  height:auto;
  display:block;
}
@media(max-width:1050px){
  body.contact-page .contact-enquiry-split{
    grid-template-columns:1fr;
  }
  body.contact-page .contact-enquiry-image{
    order:-1;
  }
}
body.contact-page main > .contact-end-strip{
  height:80px;
  min-height:0;
  padding:0 !important;
  background:#0A2449 !important;
}
/* contact: light section behind the contact-details cards; the
   .ice enquiry-form section stays dark navy with white text as already
   handled globally. Feature cards are a self-contained blue component
   already readable on either background, so they are left untouched. */
body.contact-page main > .section:nth-of-type(3){
  background:#ffffff !important;
}

/* contact: white enquiry-form section with a metallic-blue heading. */
body.contact-page main > .section:nth-of-type(2){
  background:#ffffff !important;
}
body.contact-page main > .section:nth-of-type(2) > .container > .copy-stack{
  text-align:left;
}
body.contact-page main > .section:nth-of-type(2) > .container > .copy-stack h2{
  display:inline-block;
  color:#0862BE !important;
  -webkit-text-fill-color:#0862BE !important;
  background:none !important;
  background-image:none !important;
  text-shadow:none !important;
  filter:none !important;
}
body.distributor-login-page .distributor-login-end-strip{
  height:80px;
  min-height:0;
  padding:0 !important;
  background:#0A2449 !important;
}
body.distributor-program-page main > .section:nth-of-type(2) .copy-stack a:not(.cta),
body.distributor-program-page main > .section:nth-of-type(5) .copy-stack a:not(.cta){
  color:#0e5bd7 !important;
}

/* Global: every h1 and h2 on the site renders uppercase. */
h1, h2{
  text-transform:uppercase !important;
}

/* Global: floating WhatsApp + back-to-top buttons, present on every page. */
.floating-actions{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:1300;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  opacity:0;
  transform:translateY(16px);
  pointer-events:none;
  transition:opacity .35s ease,transform .35s ease;
  margin-bottom:80px;
}
.floating-actions.is-visible{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}
.whatsapp-fab{
  display:flex;
  align-items:center;
  justify-content:center;
  width:58px;
  height:58px;
  border-radius:50%;
  background:#25D366;
  box-shadow:0 10px 24px rgba(0,0,0,.28);
  transition:transform .2s ease,box-shadow .2s ease;
}
.whatsapp-fab img{
  width:34px;
  height:34px;
  object-fit:contain;
}
.whatsapp-fab:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 30px rgba(0,0,0,.34);
}
.back-to-top{
  display:flex;
  align-items:center;
  justify-content:center;
  width:50px;
  height:50px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.35);
  background:linear-gradient(
    180deg,
    var(--button-metallic-top) 0%,
    var(--button-metallic-upper) 28%,
    var(--button-metallic-mid) 60%,
    var(--button-metallic-bottom) 100%
  );
  color:#ffffff;
  font-size:20px;
  line-height:1;
  cursor:pointer;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.3),
    inset 0 -1px 0 rgba(0,25,70,.3),
    0 10px 24px rgba(0,70,160,.28);
  transition:transform .2s ease,box-shadow .2s ease;
}
.back-to-top:hover{
  transform:translateY(-3px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.3),
    inset 0 -1px 0 rgba(0,25,70,.3),
    0 14px 30px rgba(0,70,160,.34);
}
@media(max-width:680px){
  .floating-actions{right:16px;bottom:16px;gap:10px}
  .whatsapp-fab{width:50px;height:50px}
  .whatsapp-fab img{width:28px;height:28px}
  .back-to-top{width:44px;height:44px;font-size:18px}
}

/* ================================================================
   GLOBAL VIEWPORT REVEAL MOTION
   Progressive enhancement only: no layout, color, spacing, sizing,
   border or shadow values are changed by this animation layer.
   Header/navigation/footer/fixed floating UI are intentionally excluded.
   ================================================================ */
.reveal-enabled .reveal-item {
  --reveal-delay: 0ms;
  opacity: 0;
  transform: translate3d(0, 46px, 0) scale(.985);
  transition-property: opacity, transform;
  transition-duration: .95s;
  transition-timing-function: cubic-bezier(.22, 1, .36, 1);
  transition-delay: var(--reveal-delay);
  will-change: opacity, transform;
}

.reveal-enabled .reveal-item.is-visible {
  opacity: 1;
  transform: none;
  will-change: auto;
}

@media (prefers-reduced-motion: reduce) {
  .reveal-enabled .reveal-item,
  .reveal-enabled .reveal-item.is-visible {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }
}

/* Distributor application: keep option questions and controls on one row */
@media (min-width:681px){
  .distributor-app-form .option-row > .field-block,
  .distributor-app-form .split-options > .field-block{
    display:flex;
    flex-wrap:nowrap;
    align-items:center;
    gap:20px;
    width:100%;
  }
  .distributor-app-form .option-row .field-label,
  .distributor-app-form .split-options .field-label{
    flex:1 1 auto;
    min-width:0;
    margin:0;
  }
  .distributor-app-form .option-row .check-row,
  .distributor-app-form .split-options .check-row{
    flex:0 0 auto;
    flex-wrap:nowrap;
    margin-left:auto;
    padding:0;
    gap:10px 24px;
  }
  .distributor-app-form .option-row .check,
  .distributor-app-form .split-options .check{
    flex:0 0 auto;
    min-height:0;
  }
}

@media (max-width:680px){
  .distributor-app-form .option-row > .field-block,
  .distributor-app-form .split-options > .field-block{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
  }
  .distributor-app-form .option-row .check-row,
  .distributor-app-form .split-options .check-row{
    margin-left:0;
    padding:0;
  }
}

/* ======================================================================
   SITE-WIDE MOBILE SAFETY LAYER
   Kept last so legacy page-specific desktop rules cannot cause overflow.
   ====================================================================== */
@media(max-width:760px){
  :root{
    --page-gutter:16px;
    --page-gutter-tablet:16px;
    --page-gutter-mobile:16px;
    --section-padding-y:46px;
    --section-padding-y-large:52px;
    --section-padding-y-mobile:46px;
    --card-padding:20px;
    --h1-size:clamp(34px,10vw,44px);
    --h1-size-mobile:clamp(34px,10vw,44px);
    --h2-size:clamp(28px,8vw,36px);
    --h3-size:clamp(22px,6.5vw,28px);
  }

  html,body{max-width:100%;overflow-x:clip}
  body{font-size:16px;line-height:1.6}
  img,video,canvas,svg,iframe{max-width:100%}
  iframe{width:100%}
  :where(h1,h2,h3,h4,h5,h6,p,li,a,span,strong,td,th,label){overflow-wrap:anywhere}
  .container{width:calc(100% - 32px);max-width:none}
  main{min-width:0}
  .section{padding-block:46px}
  .section-title{margin-bottom:24px;text-align:left}
  .section-title p{margin-inline:0}
  h1{font-size:clamp(34px,10vw,44px)!important;line-height:1.02!important}
  h2{font-size:clamp(28px,8vw,36px)!important;line-height:1.08!important}
  h3{line-height:1.15}
  .eyebrow,.eyebrow-dark,.section-kicker{font-size:14px!important;line-height:1.35;letter-spacing:.06em}

  .topbar-inner{padding-block:7px;align-items:center}
  .topbar .top-links:first-child{display:none}
  .topbar .top-links:last-child{width:100%;justify-content:center;gap:12px;text-align:center}
  .topbar .top-links:last-child span{font-size:11px}
  .nav{min-height:70px;padding-block:10px;gap:10px}
  .logo{gap:8px;min-width:0}
  .logo-mark{width:42px;height:42px;flex-basis:42px}
  .logo-text{min-width:0}
  .logo-text strong{font-size:20px;white-space:nowrap}
  .logo-text small{display:none}
  .mobile-toggle{display:inline-grid;place-items:center;min-width:46px;min-height:46px;padding:7px;color:#fff}
  .mobile-menu.open{max-height:calc(100dvh - 70px);overflow-y:auto;padding:8px 16px 18px;margin-inline:-16px;width:calc(100% + 32px)}
  .mobile-menu a,.mobile-group-toggle{min-height:44px;display:flex;align-items:center}

  .hero-grid,.proposal-hero-grid,.page-hero-grid{min-height:auto!important;padding-block:48px!important;grid-template-columns:minmax(0,1fr)!important}
  .merged-hero{min-height:560px;background-position:65% center}
  .merged-hero:before{
    content:"";
    display:block;
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
    background:linear-gradient(
      to bottom,
      rgba(6,27,51,.80) 0%,
      rgba(6,27,51,.60) 50%,
      rgba(6,27,51,0) 100%
    );
  }
  .page-hero::after{
    background:linear-gradient(
      to bottom,
      rgba(2,15,31,.80) 0%,
      rgba(2,15,31,.60) 50%,
      rgba(2,15,31,0) 100%
    );
  }
  .merged-hero .proposal-hero-grid{min-height:560px!important;align-content:center}
  .hero-copy,.page-hero-copy{min-width:0;max-width:100%!important;padding-right:0!important}
  .hero-actions,.cta-actions,.page-cta,.pricing-login-cta,.portal-actions,.card-actions{width:100%;align-items:stretch;flex-direction:column}
  .hero-actions .cta,.cta-actions .cta,.page-cta .cta,.pricing-login-cta .cta{width:100%;min-width:0}

  :is(.grid-2,.grid-3,.grid-4,.product-grid,.product-detail,.cart-layout,.checkout-grid,.account-grid,.contact-grid,
      .media-split,.media-split.reverse,.feature-grid,.product-family-grid,.download-grid,.asset-gallery,.spec-grid,
      .video-grid,.faq-list,.resource-link-grid,.proposal-product-grid,.proposal-industry-grid,.proposal-why-grid,
      .problem-solution-grid,.how-grid,.distributor-process-grid,.value-grid,.process-list,.contact-enquiry-split,
      .installation-step-grid,.merged-resource-grid){
    grid-template-columns:minmax(0,1fr)!important;
  }
  :is(.grid-2,.grid-3,.grid-4,.product-grid,.feature-grid,.product-family-grid,.download-grid,.asset-gallery,
      .spec-grid,.video-grid,.resource-link-grid,.proposal-product-grid,.proposal-industry-grid){gap:18px}
  .media-split.reverse>.media-frame{order:0}
  .problem-visual{grid-template-columns:minmax(0,1fr)!important}
  .current-arrow{transform:rotate(90deg);justify-self:center}
  .problem-copy > .cta{display:flex;width:max-content;max-width:100%;margin-inline:auto}
  .how-content > .cta{display:flex;width:max-content;max-width:100%;margin-inline:auto}
  .proposal-industries .section-title{text-align:center}
  .proposal-industries .section-title p{margin-inline:auto}
  .about-response-section .copy-stack{text-align:center}
  .blue-protection-page main > .section .copy-stack{text-align:center}
  .shaft-currents-page main > .section .copy-stack{text-align:center}
  .installation-page main > .section .media-split .copy-stack{text-align:center}
  .product-overview-page main > .section .media-split .copy-stack > h2:first-child,
  .product-overview-page main > .section .media-split .copy-stack > h2:first-child + p{text-align:center}
  .lv-earthrings-classic-page main > .section .media-split .copy-stack{text-align:center}
  .lv-earthrings-classic-page main > .section .media-split .copy-stack h3{text-align:left}
  .lv-earthrings-classic-page main > .section .media-split .copy-stack ul{padding-left:22px;list-style-position:outside;text-align:left}
  .approval-steps article{text-align:center}
  .approval-steps article > span{margin-inline:auto}
  body.distributor-program-page .who-should-apply-list{flex-direction:column;gap:18px}
  body.distributor-program-page .who-should-apply-list ul.card{width:100%;flex:none}
  body.why-be-a-distributor-page .who-should-apply-list ul.card{width:100% !important;flex:none !important;box-sizing:border-box}
  .proposal-product-card img,.proposal-industry-card img{height:auto;max-height:240px;object-fit:cover}
  .media-frame,.media-frame img,.media-frame video{min-height:220px}

  /* Why Be a Distributor: mobile-only hero overlay (readable full-width text) and un-cropped cartoon artwork. */
  body.why-be-a-distributor-page .page-hero::after{
    background:linear-gradient(180deg,rgba(2,11,26,.88) 0%,rgba(2,11,26,.68) 45%,rgba(2,11,26,.3) 80%) !important;
  }
  body.why-be-a-distributor-page .page-hero .page-hero-grid > div:first-child{max-width:none}
  body.why-be-a-distributor-page main > .section:nth-of-type(1) .media-frame{background:none;min-height:0}
  body.why-be-a-distributor-page main > .section:nth-of-type(1) .media-frame img{min-height:0;height:auto;object-fit:contain;border-radius:12px}
  .detail-art{min-height:300px}

  .panel,.blue-panel,.form-wrap,.master-form,.auth-card,.contact-card,.summary-card,.page-cta,.notice-blue{padding:20px 16px}
  .form-grid,.master-form .form-grid{grid-template-columns:minmax(0,1fr)!important}
  .field.full{grid-column:auto}
  input:not([type="checkbox"]):not([type="radio"]),select,textarea{max-width:100%;font-size:16px!important}
  .distributor-app-form .agreement-checks{width:100%;padding-left:0;padding-right:0}
  .distributor-app-form .agreement-checks .check{
    display:flex!important;
    width:100%;
    min-width:0;
    align-items:flex-start;
    white-space:normal;
    overflow-wrap:anywhere;
    line-height:1.4;
  }
  .distributor-app-form .agreement-checks .check input{flex:0 0 18px;margin-top:1px}
  .distributor-app-heading{align-items:center;text-align:center}
  .distributor-app-logo{max-width:100%;margin-inline:auto}
  .distributor-app-heading-text{width:100%}
  .distributor-app-heading h2,.distributor-app-intro{text-align:center}
  button,.btn,.cta,input[type="submit"],input[type="button"]{min-height:44px}
  .search-box{min-width:0;width:100%;flex-direction:column}
  .product-toolbar{display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch}
  .product-toolbar select,.product-toolbar .cta{width:100%}

  .table-wrap,.tech-table-wrap,.responsive-table{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  table:not(.cart-table){display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  table:not(.cart-table) th,table:not(.cart-table) td{white-space:nowrap}
  .summary-card{position:static}
  .account-nav{display:flex;gap:6px;max-width:100%;overflow-x:auto;padding:8px}
  .account-nav a{min-width:max-content;min-height:44px;display:flex;align-items:center}

  .footer{
    --footer-logo-margin-top:0;
    --footer-logo-margin-left:0;
    --footer-products-margin-top:0;
    --footer-resources-margin-top:0;
    --footer-distributors-margin-top:0;
    --footer-contact-margin-top:0;
    padding-block:36px 24px;
    background-color:#203D85;
    background-image:url("footer-background.webp");
    background-size:contain;
    background-position:top center;
    background-repeat:no-repeat;
  }
  .footer-grid,.expanded-footer{grid-template-columns:minmax(0,1fr)!important;gap:28px}
  .footer .footer-grid > div{align-self:start;width:100%;margin-top:0!important;text-align:center}
  .footer .logo{width:max-content;max-width:100%;justify-content:center;gap:8px;margin:0 auto}
  .footer .logo-text{width:auto;min-height:0;text-align:left}
  .footer .logo-text strong{font-size:clamp(28px,9vw,36px);white-space:nowrap}
  .footer .footer-grid > div:first-child > p{width:100%;margin:18px 0 0;text-align:center}
  .footer .footer-grid h4,.footer .footer-grid ul,.footer .footer-grid li{text-align:center}
  .footer p{font-size:13px}
  .footer-bottom{flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}
  .footer-bottom > span{display:block;width:100%}
  .footer-powered{display:block;margin-top:4px}
  .floating-actions{right:12px;bottom:12px;margin-bottom:0}
  .whatsapp-fab{width:50px;height:50px}
  .back-to-top{width:44px;height:44px}
}

@media(max-width:420px){
  :root{--page-gutter:12px;--page-gutter-mobile:12px}
  .container{width:calc(100% - 24px)}
  .topbar .top-links:last-child span:first-child{display:none}
  .mobile-menu.open{padding-inline:12px;margin-inline:-12px;width:calc(100% + 24px)}
  .merged-hero{min-height:520px}
  .merged-hero .proposal-hero-grid{min-height:520px!important}
  .panel,.blue-panel,.form-wrap,.master-form,.auth-card,.contact-card,.summary-card{padding-inline:14px}
}

/* Products mega menu (desktop). Spans the header container; mobile keeps the accordion. */
.header .nav{position:relative}
.nav-dropdown.has-mega{position:static}
.dropdown-menu.mega-menu{left:0;right:0;top:100%;min-width:0;width:auto;padding:22px;display:grid;grid-template-columns:260px 1fr;gap:26px;border-top:2px solid #2f9fff}
.nav-dropdown.has-mega>.dropdown-menu.mega-menu{margin-top:-1px}
.mega-intro{display:flex;flex-direction:column;gap:8px;padding-right:22px;border-right:1px solid rgba(80,151,224,.30)}
.mega-intro>strong{font-family:var(--font-heading);font-size:24px;line-height:1.1;text-transform:uppercase;color:#fff}
.mega-intro>p{margin:0 0 6px;font-size:14px;line-height:1.5;color:#b8d4ee}
.header .dropdown-menu .mega-all{display:inline-block;padding:11px 14px;border:1px solid #69b9ff;border-radius:6px;background:linear-gradient(180deg,#46a9ff 0%,#0068d6 55%,#00489d 100%);color:#fff;font-family:var(--font-heading);font-size:16px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;text-align:center}
.header .dropdown-menu .mega-all:hover{color:#fff;filter:brightness(1.1)}
.header .dropdown-menu .mega-sub{padding:7px 0;font-size:14px;color:#cfe6fb;border-left:0}
.header .dropdown-menu .mega-sub:hover{background:none;color:#78b4ea;border-left:0}
.mega-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px}
.header .dropdown-menu .mega-card{display:flex;align-items:center;gap:14px;padding:10px 12px;border:1px solid transparent;border-left:3px solid transparent;border-radius:8px}
.header .dropdown-menu .mega-card:hover,.header .dropdown-menu .mega-card.active{background:rgba(57,167,255,.12);border-color:rgba(80,151,224,.30);border-left-color:#39a7ff}
.mega-card img{flex:0 0 64px;width:64px;height:64px;object-fit:cover;border-radius:8px;background:#0b2a4a}
.mega-card>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.mega-card strong{font-size:15px;font-weight:600;line-height:1.25;color:#fff}
.mega-card small{font-size:12.5px;line-height:1.4;color:#a9c8e6}
.mega-card:hover strong{color:#78b4ea}
@media(max-width:1380px){.dropdown-menu.mega-menu{grid-template-columns:220px 1fr}.mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1180px){.dropdown-menu.mega-menu{display:none}}
/* Mega panel for all nav groups (text-only cards for non-product groups) */
.mega-card.no-img{padding:14px 16px}
.mega-simple .mega-grid{align-content:start}
/* Distributor portal nav: "Products" opens the same mega panel as the header */
@media(min-width:1181px){
.portal-nav,.portal-nav .portal-nav-inner{position:relative;overflow:visible!important}
.portal-nav .portal-mega{position:static}
.portal-nav .dropdown-menu.mega-menu{top:100%;margin-top:0;background:#0a1b30;border:1px solid rgba(80,151,224,.30);border-top:2px solid #2f9fff;z-index:1200}
.portal-nav .dropdown-menu a{white-space:normal}
.portal-nav .dropdown-menu .mega-all{display:inline-block;padding:11px 14px;border:1px solid #69b9ff;border-radius:6px;background:linear-gradient(180deg,#46a9ff 0%,#0068d6 55%,#00489d 100%);color:#fff;font-family:var(--font-heading);font-size:16px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;text-align:center}
.portal-nav .dropdown-menu .mega-sub{padding:7px 0;font-size:14px;color:#cfe6fb}
.portal-nav .dropdown-menu .mega-sub:hover,.portal-nav .dropdown-menu .mega-all:hover{background:none;color:#78b4ea}
.portal-nav .dropdown-menu .mega-all:hover{color:#fff;filter:brightness(1.1)}
.portal-nav .dropdown-menu .mega-card{display:flex;align-items:center;gap:14px;padding:10px 12px;border:1px solid transparent;border-left:3px solid transparent;border-radius:8px;color:#fff}
.portal-nav .dropdown-menu .mega-card:hover{background:rgba(57,167,255,.12);border-color:rgba(80,151,224,.30);border-left-color:#39a7ff}
}
@media(max-width:1180px){.portal-nav .portal-mega>.mega-menu{display:none}}
.portal-nav .portal-mega>a.active{color:#78b4ea}
/* Keep hover continuous between the Products link and its panel */
@media(min-width:1181px){.portal-nav .portal-mega{align-self:stretch;display:flex;align-items:center}}
.portal-nav .dropdown-menu.mega-menu,.portal-nav .dropdown-menu.mega-menu a{font-family:var(--font-heading)}
.portal-nav .mega-card img{flex:0 0 64px;width:64px;height:64px;object-fit:cover;border-radius:8px;background:#0b2a4a}
.portal-nav .mega-card>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.portal-nav .mega-card strong{font-size:15px;font-weight:600;line-height:1.25;color:#fff}
.portal-nav .mega-card small{font-size:12.5px;line-height:1.4;color:#a9c8e6}
.portal-nav .mega-intro>strong{font-size:24px;line-height:1.1;text-transform:uppercase;color:#fff}
.portal-nav .mega-intro>p{margin:0 0 6px;font-size:14px;line-height:1.5;color:#b8d4ee}
/* Product price pages shown inside the distributor dashboard via iframe (?embed=1): hide the page's own header/footer. */
.dashboard-product-frame{display:block;width:100%;border:0;min-height:600px;background:#0a2449}
.embed-view .topbar,.embed-view .header,.embed-view .site-wide-footer,.embed-view .floating-actions,.embed-view #site-header,.embed-view #site-footer{display:none!important}
/* No pre-footer band under an embedded product page: the page already ends in its own section. */
body:has(#product-price) .distributor-prefooter-band{display:none!important}
/* Embedded product pages: navy base (no white seam) and a short bottom edge. */
html.embed-view,html.embed-view body{background:#0a2449!important;margin:0}
.embed-view main>.section:last-of-type{padding-bottom:60px!important}

/* Complete Earthrings USA wordmark used in the shared header and footer. */
.logo-image{display:block;height:auto;object-fit:contain}
.header .logo-image{width:clamp(240px,20vw,310px)}
.footer .logo-image{width:min(var(--footer-wordmark-width),100%)}
.footer .footer-grid > div:first-child > p{width:min(var(--footer-wordmark-width),calc(100% - var(--footer-logo-margin-left)));margin-left:var(--footer-logo-margin-left)}
@media(max-width:680px){
  .header .logo-image{width:clamp(190px,56vw,240px)}
  .footer .logo-image{width:min(380px,100%)}
  .footer .footer-grid > div:first-child > p{width:100%;margin:18px 0 0}
}

/* Homepage product shortcuts above the shaft-voltage comparison. */
html,body{width:100%;max-width:100%;overflow-x:hidden}
main,.merged-hero,.home-product-shortcuts,.problem-solution-section{width:100%;max-width:100%;min-width:0}
.merged-hero .proposal-hero-grid,.merged-hero .hero-copy,.merged-hero .hero-copy>*{max-width:100%;min-width:0}
.home-product-shortcuts{position:relative;background:#fff!important;background-image:none!important;padding:28px clamp(16px,2.5vw,48px)}
.product-shortcut-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;width:100%;max-width:100%;min-width:0}
.product-shortcut-card{position:relative;height:150px;min-width:0;margin:0;border-radius:14px;perspective:1100px}
.product-shortcut-inner{position:relative;width:100%;height:100%;border-radius:inherit;transform-style:preserve-3d;transition:transform .62s cubic-bezier(.2,.72,.2,1);will-change:transform}
.product-shortcut-card:hover .product-shortcut-inner,.product-shortcut-card:focus-within .product-shortcut-inner,.product-shortcut-card.is-active .product-shortcut-inner{transform:rotateY(180deg)}
.product-shortcut-face{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:16px;overflow:hidden;border:1px solid transparent;border-radius:inherit;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.product-shortcut-front{padding:12px 18px;background:#092449;color:#fff}
.product-shortcut-back{flex-direction:column;gap:6px;padding:12px 18px;background:#061a36;border-color:#2f9fff;color:#fff;text-align:center;transform:rotateY(180deg);pointer-events:none;box-shadow:0 14px 30px rgba(9,36,73,.24)}
.product-shortcut-card:hover .product-shortcut-back,.product-shortcut-card:focus-within .product-shortcut-back,.product-shortcut-card.is-active .product-shortcut-back{pointer-events:auto}
.product-shortcut-card:focus-within{outline:3px solid #2f9fff;outline-offset:3px}
.product-shortcut-front img{width:46%;height:126px;flex:0 1 46%;object-fit:contain}
.product-shortcut-card h2{margin:0;min-width:0;color:#fff!important;-webkit-text-fill-color:#fff!important;background:none!important;font-family:var(--font-heading);font-size:clamp(18px,1.45vw,25px);font-weight:700;line-height:1.05;text-transform:none;overflow-wrap:anywhere}
.product-shortcut-back p{margin:0;color:#d7e9fa;font-size:13px;line-height:1.25}
.product-shortcut-back .product-shortcut-cta{min-height:34px;margin-top:3px;padding:8px 16px;background:#fff;color:#092449;font-size:12px;line-height:1;box-shadow:none}
.product-shortcut-back:hover .product-shortcut-cta,.product-shortcut-back:focus-visible .product-shortcut-cta{background:#2f9fff;color:#fff}
@media(max-width:900px){
  .product-shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
}
@media(max-width:520px){
  .product-shortcut-grid{grid-template-columns:minmax(0,1fr)}
  .home-product-shortcuts .container{width:100%;max-width:100%;padding-inline:16px}
  .product-shortcut-card{width:100%;max-width:100%;min-width:0}
  .product-shortcut-front img{width:40%;flex-basis:40%}
  .product-shortcut-front h2{flex:1;font-size:22px}
  .merged-hero .proposal-hero-grid,.merged-hero .hero-copy{width:100%;max-width:100%;min-width:0}
  .merged-hero .hero-copy{padding-right:0}
  .merged-hero .hero-copy h1{width:100%;font-size:clamp(34px,10vw,40px)!important;white-space:normal;overflow-wrap:anywhere}
  .merged-hero .hero-lead{width:100%;max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .merged-hero .hero-actions,.merged-hero .hero-login-link{width:100%;max-width:100%}
}

/* Centered homepage shaft-voltage message after removing the comparison cards. */
.problem-solution-section .problem-solution-grid{grid-template-columns:minmax(0,1fr)}
.problem-solution-section .problem-copy{display:flex;flex-direction:column;align-items:center;width:100%;max-width:none;margin-inline:auto;text-align:center}
.problem-solution-section .problem-copy h2{max-width:900px}
.problem-solution-section .problem-copy p{width:100%;max-width:none;margin-inline:auto}
.problem-solution-section .problem-copy .cta{width:max-content;max-width:100%;margin-inline:auto}

/* Keep the transition below the homepage hero and behind the product cards pure white. */
.home-dark-theme .merged-hero{box-shadow:none}
@media(prefers-reduced-motion:reduce){
  .product-shortcut-inner{transition:none}
}

.commitment-card .commitment-warranty-highlight{margin:18px 0 0;color:#0a67c8!important;-webkit-text-fill-color:#0a67c8!important;font-family:var(--font-heading);font-size:clamp(17px,1.35vw,21px);font-weight:800;line-height:1.2;letter-spacing:.05em;text-align:center;text-transform:uppercase}
.commitment-card .commitment-body{text-align:center}
.commitment-card .commitment-line{margin-inline:auto}
.commitment-card-cover{position:relative;overflow:visible}
.commitment-card-cover img{border-radius:14px 14px 0 0}
.commitment-card-cover::after{content:"NEW";position:absolute;z-index:3;top:-12px;right:-12px;display:grid;place-items:center;min-width:64px;min-height:36px;padding:4px 9px;border-radius:6px;background:#d62839;color:#fff;font-family:var(--font-heading);font-size:28px;font-weight:800;line-height:1;letter-spacing:.06em;text-align:center;box-shadow:0 8px 18px rgba(148,12,25,.3)}

/* Three-column product showcase */
.home-product-showcase{background:radial-gradient(circle at 50% -10%,rgba(25,131,255,.35),transparent 45%),linear-gradient(180deg,#031a3a 0%,#06306b 55%,#041c40 100%);padding:48px clamp(16px,2.5vw,48px) 56px}
.showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch;width:100%;max-width:100%}
.showcase-card{position:relative;display:flex;align-items:stretch;min-width:0;border-radius:10px;overflow:visible;color:#0b1f3f;background:linear-gradient(115deg,#fff 0%,#eef5ff 55%,#dbe9fb 100%);border:1px solid rgba(255,255,255,.65);box-shadow:0 18px 40px rgba(0,0,0,.35)}
.showcase-media{flex:0 0 45%;width:45%;display:flex;align-items:center;justify-content:center;padding:14px 8px;border-radius:10px 0 0 10px;background:radial-gradient(ellipse at 45% 50%,#3d8df0 0%,#1456b8 45%,#0a2c66 100%);-webkit-mask-image:linear-gradient(90deg,#000 78%,transparent 100%);mask-image:linear-gradient(90deg,#000 78%,transparent 100%)}
.showcase-media img{display:block;width:100%;height:auto;max-height:100%;object-fit:contain;filter:drop-shadow(0 14px 18px rgba(0,10,40,.5))}
.showcase-body{flex:1 1 55%;min-width:0;display:flex;flex-direction:column;align-self:stretch;padding:24px 22px 22px 8px}
.showcase-card h2{margin:0 0 12px;padding-bottom:12px;position:relative;background:none!important;font-family:var(--font-heading);line-height:1}
.showcase-card h2:after{content:"";position:absolute;left:0;bottom:0;width:90px;height:3px;background:linear-gradient(90deg,#8fb0d8,transparent)}
.showcase-brand{display:block;color:#0b1220;-webkit-text-fill-color:#0b1220;font-size:clamp(16px,1.3vw,22px);font-weight:700;letter-spacing:.01em}
.showcase-name{display:block;color:#0a4fb4;-webkit-text-fill-color:#0a4fb4;font-size:clamp(38px,3.6vw,60px);font-weight:800;line-height:.95}
.showcase-card p{margin:0 0 10px;color:#1c2f4f;font-size:14px;line-height:1.5}
.showcase-cta{align-self:flex-start;margin-top:auto}
.showcase-badge{position:absolute;top:-14px;right:-8px;z-index:2;display:flex;flex-direction:column;align-items:center;padding:7px 16px;border-radius:8px;background:linear-gradient(180deg,#f0243a,#c1121f);color:#fff;line-height:1.15;text-align:center;box-shadow:0 8px 18px rgba(0,0,0,.35)}
.showcase-badge strong{font-size:20px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.showcase-badge small{font-size:12px;font-weight:600}
.showcase-card-new .showcase-body{padding-top:34px}
@media(max-width:1199px){
  .showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .showcase-card-new{grid-column:1/-1}
}
@media(max-width:767px){
  .showcase-grid{grid-template-columns:minmax(0,1fr)}
  .showcase-card{flex-direction:column}
  .showcase-media{flex:none;width:100%;border-radius:10px 10px 0 0;padding:18px;-webkit-mask-image:linear-gradient(180deg,#000 80%,transparent 100%);mask-image:linear-gradient(180deg,#000 80%,transparent 100%)}
  .showcase-media img{width:70%;max-width:300px}
  .showcase-body{padding:8px 20px 22px}
  .showcase-badge{right:8px}
}

/* Showcase: compact cards, no blue image panel */
.showcase-media{background:none;-webkit-mask-image:none;mask-image:none;padding:10px 6px 10px 14px}
.showcase-media img{width:auto;max-width:100%;max-height:170px;filter:drop-shadow(0 8px 10px rgba(0,20,60,.35))}
.showcase-body{padding:14px 18px 14px 6px}
.showcase-card h2{margin-bottom:8px;padding-bottom:7px}
.showcase-brand{font-size:clamp(13px,1vw,16px)}
.showcase-name{font-size:clamp(28px,2.4vw,38px)}
.showcase-card p{font-size:13px;line-height:1.4;margin-bottom:6px}
.showcase-card .showcase-cta{min-height:var(--button-height-small);padding:var(--button-padding-small-y) var(--button-padding-small-x);font-size:var(--button-font-size-small);margin-top:auto}
.showcase-card-new .showcase-body{padding-top:22px}
@media(max-width:767px){
  .showcase-media{padding:16px 16px 0}
  .showcase-media img{max-height:200px}
}
@media(min-width:1200px){
  .showcase-media{flex:0 0 36%;width:36%;padding:8px 0 8px 12px}
  .showcase-media img{max-height:150px}
  .showcase-body{padding:12px 16px 12px 10px}
  .showcase-card h2{margin-bottom:6px;padding-bottom:0}
  .showcase-card h2:after{display:none}
  .showcase-name{font-size:clamp(26px,2.1vw,32px)}
  .showcase-card p{font-size:12.5px;line-height:1.35;margin-bottom:4px}
  .showcase-card .showcase-cta{margin-top:8px}
  .showcase-card-new .showcase-body{padding-top:18px}
}
@media(min-width:1200px){
  .showcase-card .showcase-cta{margin-top:auto}
  .showcase-body{gap:0}
  .showcase-card p:last-of-type{margin-bottom:8px}
  .showcase-media img{max-height:140px}
  .showcase-card p{font-size:12px;line-height:1.3}
}
.nav-dropdown>a.nav-droplink{display:inline-block;text-decoration:none}

/* Product ranges information section (products page) */
.product-ranges-info{background:#fff;padding:48px 0 40px}
.product-ranges-info .ranges-intro{text-align:center;max-width:980px;margin:0 auto 28px}
.product-ranges-info .ranges-eyebrow,.product-ranges-info .ranges-group-label{color:#39a7ff;font-family:var(--font-heading);font-weight:600;letter-spacing:.04em}
.product-ranges-info .ranges-eyebrow{font-size:16px}
.product-ranges-info .ranges-intro h2{margin:6px 0 12px;color:#0a3d91;font-size:clamp(32px,3.4vw,48px);line-height:1.05;text-transform:uppercase}
.product-ranges-info .ranges-intro p{margin:0;color:#14305c;font-size:16px;line-height:1.55}
.product-ranges-info .ranges-group-label{margin:26px 0 10px;font-size:15px}
.product-ranges-info .ranges-grid{display:grid;gap:16px;align-items:stretch}
.product-ranges-info .ranges-core{grid-template-columns:repeat(4,minmax(0,1fr))}
.product-ranges-info .ranges-additional{grid-template-columns:repeat(3,minmax(0,1fr))}
.product-ranges-info .range-card{position:relative;display:flex;align-items:flex-start;gap:14px;min-width:0;padding:20px 18px;border-radius:14px;background:#eef3fb;border:1px solid #dbe6f6;color:#14305c;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease}
.product-ranges-info .range-card:hover,.product-ranges-info .range-card:focus-visible{transform:translateY(-3px);box-shadow:0 12px 26px rgba(10,61,145,.16)}
.product-ranges-info .range-card:focus-visible{outline:3px solid #2f9fff;outline-offset:3px}
.product-ranges-info .range-card-text{flex:1 1 auto;min-width:0}
.product-ranges-info .range-card h3{margin:0 0 4px;color:#0b2a63;font-size:clamp(22px,1.7vw,28px);line-height:1.05;text-transform:uppercase}
.product-ranges-info .range-label{display:block;margin-bottom:8px;color:#2f8fe8;font-size:13px;font-weight:700}
.product-ranges-info .range-card p{margin:0;color:#14305c;font-size:14px;line-height:1.5}
.product-ranges-info .range-arrow{flex:0 0 auto;align-self:center;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#0b63ce;color:#fff;transition:transform .3s ease,background .3s ease}
.product-ranges-info .range-card:hover .range-arrow,.product-ranges-info .range-card:focus-visible .range-arrow{transform:translateX(4px);background:#0a4fb4}
.product-ranges-info .ranges-guidance{margin-top:30px;padding-top:22px;border-top:1px solid #dbe6f6;text-align:center}
.product-ranges-info .ranges-guidance h3{margin:0 0 8px;color:#0b2a63;font-size:20px}
.product-ranges-info .ranges-guidance p{max-width:900px;margin:0 auto 10px;color:#14305c;font-size:14px;line-height:1.55}
.product-ranges-info .ranges-guidance-link{color:#0b63ce;font-weight:700;font-size:14px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1199px){
  .product-ranges-info .ranges-core,.product-ranges-info .ranges-additional{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-ranges-info .ranges-additional .range-card:last-child{grid-column:1/-1}
}
@media(max-width:767px){
  .product-ranges-info{padding:34px 0 28px}
  .product-ranges-info .ranges-core,.product-ranges-info .ranges-additional{grid-template-columns:minmax(0,1fr)}
  .product-ranges-info .range-card{padding:16px}
}
@media(prefers-reduced-motion:reduce){.product-ranges-info .range-card,.product-ranges-info .range-arrow{transition:none}}
.product-ranges-info .ranges-group-title{text-align:center;font-size:clamp(22px,2vw,30px);margin:26px 0 14px;line-height:1.1}
.product-ranges-info .ranges-group-title-additional{padding-top:80px}
.product-ranges-info .ranges-group-title{padding-top:80px}
.product-ranges-info .ranges-guidance{border-top:0}
.product-ranges-info+.section .copy-stack{text-align:center}.product-ranges-info+.section .copy-stack p{margin-left:auto;margin-right:auto}
@media(min-width:1051px){.product-ranges-info+.section .product-family-grid>.family-card:last-child:nth-child(3n+1){grid-column:2}}
@media(min-width:681px) and (max-width:1050px){.product-ranges-info+.section .product-family-grid>.family-card:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc(50% - 11px)}}
.product-ranges-info .ranges-guidance h3{font-size:clamp(26px,2.4vw,36px)}.product-ranges-info .ranges-guidance p{max-width:none;width:100%;font-size:clamp(16px,1.25vw,19px);line-height:1.6}

.video-holder{position:relative;width:100%;height:100%;min-height:320px;background:#091d33;border-radius:18px;overflow:hidden}
.media-frame .video-holder video{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:contain;background:#091d33}
.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:76px;height:76px;border:0;border-radius:50%;background:rgba(21,94,217,.92);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 28px rgba(0,0,0,.35);transition:transform .2s,background .2s}
.video-play:hover,.video-play:focus-visible{background:#1a6cf0;transform:translate(-50%,-50%) scale(1.08)}
.video-play svg{width:34px;height:34px;fill:currentColor;margin-left:4px}
.video-holder.is-playing .video-play{display:none}
@media(max-width:700px){.video-holder{min-height:220px}.video-play{width:60px;height:60px}}
.media-frame.contain img{object-fit:contain;background:#233247}
.asset-gallery img.contain{object-fit:contain;height:auto;max-height:none}
.asset-gallery figure:has(img.contain){display:flex;flex-direction:column}
.asset-gallery img.contain{margin:auto 0}
.asset-gallery figure:has(img[src*="earthrings-lv-arc.webp"]){display:flex;flex-direction:column}
.asset-gallery img[src*="earthrings-lv-arc.webp"]{flex:1 1 auto;height:auto;min-height:250px;object-fit:cover;object-position:center}
.media-stack{display:flex;flex-direction:column;gap:24px}
.media-stack .media-frame:first-child{min-height:0}
.media-stack .media-frame:first-child img{min-height:0;height:330px;object-fit:cover}
