/*!
Theme Name: FiberAtMyAddress
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.1
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: fiberatmyaddress
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

FiberAtMyAddress is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */


/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */


/* === Local Fonts: Space Grotesk === */
/* === Poppins (local) === */
:root{
--color-primary: #C23A7A;
  --color-secondary: #102A72;
  --color-text: #344054;
  --color-text-dark: #101828;
  --color-text-light: #667085;
}




body,
button,
input,
select,
optgroup,
textarea {
	color: var(--color-text);
	font-family: "Poppins", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	line-height: 1.2;
	margin: 0 0 .4em 0;
	color: var(--color-secondary);
}

p {
	margin-bottom: 1.5em;
}


h1 {
	font-size: 50px;
	font-weight: 600;

}

h2 {
	font-size: 40px;
	font-weight: 500;
}

h3 {
	font-size: 22px;
	font-weight: 500;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
	padding-inline-start: 0px;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li>ul,
li>ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	color: var(--color-primary);
}

a:visited {
	color: #800080;
}

a:hover,
a:focus,
a:active {
	color: #191970;
}

a:focus {
	outline: none;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color:var(--color-secondary);
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover>ul,
.main-navigation ul ul li.focus>ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover>ul,
.main-navigation ul li.focus>ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0 ;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}


/** Custom */

.visually-hidden {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

.btn {
	font-weight: 500;
	font-size: 16px;
	color: #fff;
	padding: 12px 24px;
	border-radius: 8px;
	border: 1px solid var(--color-primary);
	background: var(--color-primary);
	text-decoration: none;
	display: inline-block;
	min-width: 140px;
	text-align: center;
	cursor: pointer;
}

.btn.primary-btn:hover {
	color: #fff;
	background: var(--color-secondary)
}

.btn:visited {
	color: #fff
}

.btn.secondary-btn {
	background: transparent;
	color: var(--color-primary);
}

.btn.secondary-btn:visited {
	color: var(--color-primary);
}


#masthead {
	display: flex;
	padding: 15px 40px;
	border-bottom: 0px solid #FFFFFF33;
	position: relative;
	z-index: 99;
	min-height:105px;
	margin-bottom: -105px;
}

#masthead #menu-item-321{display:none}

#masthead a:focus {
	outline: none
}

#masthead .current_page_item a:after {
	content: "";
	position: absolute;
	bottom: -10px;
	left: 50%;
	transform: translate(-50%, 0);
	width: calc(100% + 5px);
	height: 10px;
	background: url(/wp-content/uploads/2026/01/tapered-divider.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

#masthead .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#masthead .site-branding, #masthead .menu-toggle{
	z-index:999
}

#masthead .custom-logo {
	max-width: 265px
}

#masthead #primary-menu {
	gap: 50px;
	width: fit-content
}

#masthead #primary-menu li a {
	font-weight: 500;
	font-size: 16px;
	color: #fff;
}

#masthead .header-cta.btn {
	font-size: 16px;
	color: #fff;
	padding: 12px 24px;
	border-radius: 8px;
	text-decoration: none;
	background: var(--color-primary);



}

#masthead .header-cta.btn:hover {
	background-color: var(--color-primary)
}

section,
.section {
	padding: 100px 40px;
}

.container {
	width: 100%;
	margin: 0 auto;
	max-width: 1210px;
	position: relative;
}


.columns {
	display: flex;
	gap: 40px;
	position: relative;
	align-items: center;
}


.columns .column {
	flex: 1;
	width:100%;
	min-width: 0;
	position: relative;
}





.home .hero-section {
	padding-top: 120px;
	padding-bottom: 00px;
	background: linear-gradient(135deg, #102A72 0%, #183C96 60%, #6D7CFF 100%);
    overflow:hidden;

	position:relative;

}

.home .hero-section:after{content:"";
position:absolute;
width:50vw;
height:100%;
	right:0;
	top:0;
background-image:url("/wp-content/uploads/2026/01/hero-network-lines.png"),
  url("/wp-content/uploads/2026/01/mask-shape-hero.svg")
  ;
	background-size:cover, contain;
	background-position:-25% 0, top;
	background-repeat:no-repeat;
pointer-events:none;
	display:none;
	
}

.home .hero-section:before{content:"";
position:absolute;
width:20vw;
height:100%;
	right:0;
	top:0;
background:#0f0d1d;
	pointer-events:none;
	display:none;
	
}
.home .hero-section > div{z-index:1}
.home .hero-section .columns{    align-items: self-end;}
.home .hero-section .column-content{padding:80px 0;
    align-self: flex-start;
flex:60%}

.home .hero-section .column-media{
	flex:40%
}

.home .hero-section .hero-section-media{display:flex;
    align-items: flex-end;
}

.home .hero-section .hero-section-media img{
	width:100%;
	max-width:430px;
pointer-events:none;
margin:auto;}

.home .hero-section h1 {
	color:#fff;
}

.home .hero-section h1 span {
	position: relative;
}

.home .hero-section h1 span:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 2px;
	width: 100%;
	height: 5px;
	background: url(/wp-content/uploads/2026/01/tapered-divider.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center
}

.home .hero-section .section-intro p {
	font-size: 17px;
	color: #fff;
}


.home .hero-section .zip-search .zip-search-bar{box-shadow: 0 10px 30px rgba(63, 94, 245, 0.12);}


.zip-error {
  margin-top: 0.5rem;
  font-size: 0.9rem;
  color: #DC2626; 
	position:absolute;
	    background: white;
    padding: 0 5px;
    border-radius: 2px;
    font-weight: 500;
}

.zip-search .zip-search-bar {
	width: 100%;
	max-width: 550px;
	padding: 0px;
	border-radius: 8px;
	background: #fff;
	display: flex;
	margin-top:20px;
	position: relative;
	overflow: hidden;
}


.zip-search-bar::before {
  content: "";
  position: absolute;
  left: 24px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background: url("/wp-content/uploads/2025/10/location-pin.svg") no-repeat center;
  background-size: contain;
  pointer-events: none; /* don’t block clicks/typing */
}

/* Input styling */
.zip-search-bar .zip-input {
  font-size: 16px;
  font-weight: 500;
  border: none;
  outline: none;
  flex: 1 1 auto;
  min-width: 0;
  padding: 18px 24px 18px 52px; /* space for the icon */
  background-color: #fff;
}
.zip-search-bar ::placeholder{opacity:1}

/* Autofill styling (optional, just for colors) */
.zip-search-bar .zip-input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fff inset;
  box-shadow: 0 0 0 1000px #fff inset;
  -webkit-text-fill-color: #000;
}

.zip-search button {
	flex: 0 0 auto;
	display: flex;
    align-items: center;
    gap: 5px;
}

.home .hero-section .hero-benefits-cards{
  margin-top:18px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.home .hero-section .hero-benefit-card{
  padding:10px 14px 10px 30px;
  border-radius:999px;
  background:rgba(255,255,255,0.08);
  border:1px solid rgba(255,255,255,0.14);
  color:#fff;
  font-size:10px;
  line-height:1;
  font-weight:500;
  position:relative;
}

.home .hero-section .hero-benefit-card::before{
  content:"";
  position:absolute;
  left:12px;
  top:50%;
  transform:translateY(-50%);
  width:14px;
  height:14px;
  background:url("/wp-content/uploads/2026/03/circle-tick.svg") no-repeat center;
  background-size:contain;
	filter: brightness(0) invert(1);

}



.providers-inline-wrap{
  margin-top:48px;
}

.providers-inline-text{
  margin-bottom:10px;
  font-size:12px;
  line-height:1.4;
  font-weight:500;
  color:rgba(255,255,255,0.75);
}

.providers-inline-logos{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:18px;
}

.provider-inline-logo{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}

.provider-inline-logo img{
  display:block;
  width:auto;
  height:24px;
  max-width:90px;
  object-fit:contain;
  filter:brightness(0) invert(1);
  opacity:0.95;
}

.provider-inline-more{
  font-size:12px;
  line-height:1;
  font-weight:600;
  color:#fff;
  white-space:nowrap;
}





.home .top-plans-widget{
  width:100%;
  max-width:200px;
  background:#fff;
  border-radius:14px;
  padding:10px;
  box-shadow:0 10px 25px rgba(0,0,0,0.15);
  font-family:inherit;
	position:absolute;
	top: 92px;
    right: -20px;
}

.home .top-plans-widget h3{
  margin:0 0 8px;
  font-size:14px;
  font-weight:700;
  line-height:1.2;
  color:#1b2559;
}

.home .top-plans-list{
  display:flex;
  flex-direction:column;
  gap:6px;
}

.home .top-plan-item{
  display:grid;
  grid-template-columns:26px 1fr auto;
  align-items:center;
  gap:6px;
  padding:7px 7px;
  background:#fff;
  border:1px solid #eef1f6;
  border-radius:9px;
}

.home .top-plan-logo{
  width:22px;
  height:22px;
  object-fit:contain;
  display:block;
}

.home .top-plan-content{
  min-width:0;
}

.home .top-plan-name{
  margin:0;
  font-size:10px;
  line-height:1.15;
  font-weight:700;
  color:#1b2559;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.home .top-plan-meta{
  margin:2px 0 0;
  font-size:8px;
  line-height:1.2;
  color:#6f7894;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.home .top-plan-price{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  line-height:1;
  white-space:nowrap;
}

.home .top-plan-price-label{
  font-size:7px;
  font-weight:600;
  color:#6f7894;
  margin-bottom:2px;
  text-transform:uppercase;
  letter-spacing:0.02em;
}

.home .top-plan-price-value{
  font-size:10px;
  font-weight:700;
  color:#1b2559;
}






.how-it-works-section .section-title, .how-it-works-section .section-intro {
	text-align: center
}

.how-it-works-section .section-intro {max-width:840px;
margin-left:auto;
margin-right:auto}

.how-it-works-section .columns {
	gap: 24px;
	margin-top: 48px;
	align-items:stretch;
}

.how-it-works-section .icon-grid-item {
	padding: 42px 24px 0 24px;
	border-radius: 12px;
	border: 1px solid #dbdcdd;
	text-align:center;
}

.how-it-works-section .icon-grid-number {
	position: absolute;
	right: 24px;
	top: 24px;
	font-size: 40px;
	font-weight: 600;
	line-height: 1em;
	opacity: .9
}

.how-it-works-section .icon-grid-media {
	display:flex;
}

.how-it-works-section .icon-grid-media img {
	width: 100%;
	height:230px;
	object-fit:cover;
	object-position: top center;
	margin-top:-20px;
	
}

.how-it-works-section .icon-grid-title {

}

.how-it-works-section .icon-grid-content {
	color: var(--color-text-light);
	font-size:15px;
}

.general-section-media {
	text-align: center
}

.general-section-media img {
	width: 100%;
	border-radius:12px;
}

body:not(.home) .general-section-media img {
	max-width: 500px;
}

.home .general-section-image-left {
padding-bottom: 10px
}

.home .general-content-section.full-width{
	padding-top:50px
}

.home .general-section-image-right {
	padding-top: 50px
}

.home main>section:nth-child(2 of .general-section-image-left) {
	padding-bottom: 100px;
	padding-top: 50px
}

.home .general-section-image-right {
	padding-bottom: 10px
}


.why-choose-us-section {
	background: #F8F6FF80;
}


.why-choose-us-section .columns {
	gap: 24px;
	align-items: stretch;
}

.why-choose-us-section .container>.columns>.column-left {
	max-width: 400px
}


.why-choose-us-section .columns-defer {
	flex-wrap: wrap
}

.why-choose-us-section .columns-defer .column {
	flex: 0 0 calc(50% - 12px);
	box-sizing: border-box;
	padding: 24px;
	border: 1px solid #6E3EF414;
	border-radius: 12px;
	background: #fff;
}

.why-choose-us-section .columns-defer .column .icon-grid-media img {
	width: 40px
}

.why-choose-us-section .columns-defer .column .icon-grid-title {
	margin-top: 48px
}

.why-choose-us-section .columns-defer .column .icon-grid-content p {
	color: var(--color-text-light)
}

.why-choose-us-section .section-buttons {
	margin-top: 32px
}




.faq-section .section-title {
	text-align: center;
}





.faq-section {
  --primary-blue: #1a3a8a;
  --dark-navy: #0a1a44;
  --accent-orange: #C23A7A;
  --border-color: #e1e8f5;
}

.faq-section .container {
  max-width: 840px;
}


.faq-section .section-intro {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 40px;
}

.faq-section .section-buttons {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
}

.faq-section .faqs {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 0;
  max-width: 100%;
}

.faq-section .faq-item {
  margin: 0;
}

.faq-section .faqs details {
  border: 1px solid var(--border-color);
  border-radius: 12px;
  background: #fff;
  transition: all 0.3s ease;
  padding: 0;
  user-select: none;
  overflow: hidden;
}

.faq-section .faqs details[open] {
  border-color: var(--primary-blue);
  box-shadow: 0 10px 20px rgba(26, 58, 138, 0.05);
}

.faq-section summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 24px;
  font-weight: 700;
  color: var(--primary-blue);
  transition: background-color 0.3s ease;
}

.faq-section summary:hover {
  background-color: #f8faff;
}

.faq-section summary::-webkit-details-marker {
  display: none;
}

.faq-section .faq-question {
  line-height: 1.35;
  margin: 0;
  color: var(--primary-blue);
  flex: 1;
}

.faq-section summary::after {
  content: '+';
  flex: 0 0 auto;
  font-size: 30px;
  line-height: 1;
  color: var(--accent-orange);
  font-weight: 400;
  transition: transform 0.3s ease;
}

.faq-section details[open] > summary::after {
  content: '−';
  transform: rotate(180deg);
}

.faq-section .faq-answer-wrap {
  overflow: hidden;
  max-height: 0;
  transition: max-height 250ms ease;
}

.faq-section .faq-answer {
  padding: 0 24px 20px 24px;
  color: #555;
  line-height: 1.6;
  font-size: 16px;
  max-width: 100%;
}

.faq-section .faq-answer p:last-child {
  margin-bottom: 0;
}





.internet-providers-section {
	background: #f4f6ff
}

.internet-providers-section .section-title {
	text-align: center
}
.internet-providers-section .section-intro{
	max-width: 840px;
    margin-left: auto;
    margin-right: auto;
	text-align:center
}

.internet-providers-section .providers-list {
	margin: 48px auto 40px;
	max-width: 1010px;
}

.internet-providers-section .provider-card {
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 4px 13px 0 #c1c1c10a;
	padding: 22px 28px;
}

.internet-providers-section .provider-card:not(:last-of-type) {
	margin-bottom: 16px;
}

.internet-providers-section .provider-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
}

.internet-providers-section .provider-col {
	min-width: 0;
}

.internet-providers-section .provider-col-logo {
	flex: 0 0 150px;
	max-width: 150px;
}

.internet-providers-section .provider-col-content {
	flex: 1 1 auto;
}

.internet-providers-section .provider-col-cta {
	flex: 0 0 250px;
	max-width: 250px;
}

.internet-providers-section .provider-logo {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.internet-providers-section .provider-card .provider-logo img,
.internet-providers-section .provider-logo-img {
	height: 54px;
	width: 135px;
	object-fit: contain;
	object-position: left center;
	display: block;
}

.internet-providers-section .provider-card .provider-title {
	margin: 0 0 10px;
	font-size: 19px;
	line-height: 1.3;
	font-weight: 600;
	color: var(--color-secondary);
	margin-bottom: 5px;
}

.internet-providers-section .provider-specs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 24px;
}

.internet-providers-section .provider-spec-item {
	margin: 0;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;
}

.internet-providers-section .provider-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 20px;
	width: 100%;
}

.internet-providers-section .provider-price {
	text-align: right;
	flex: 1 1 auto;
}

.internet-providers-section .provider-price-label {
	display: block;
	margin-bottom: 4px;
	font-size: 12px;
	line-height: 1.4;
	font-weight: 500;
	color: #6b7280;
}

.internet-providers-section .provider-price-value {
	display: block;
	font-size: 24px;
	line-height: 1.1;
	font-weight: 700;
	color: #111827;
	white-space: nowrap;
}

.internet-providers-section .provider-col-cta .provider-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 140px;
	padding: 14px 24px;
	margin: 0;
	float: none;
	width: auto;
	max-width: 100%;
}

.internet-providers-section .provider-description,
.internet-providers-section .provider-description p {
	margin: 0;
}
.internet-providers-section .providers-view-all {
	text-align: center
}

.internet-providers-section .providers-view-all a {
	color: var(--color-primary);
	text-decoration: underline;
	background: transparent;
	padding: 0;
	border: none
}

.internet-providers-section .providers-view-all a:hover {
	background: transparent;
	color: var(--color-secondary)
}



.home .general-section-title-left {
	background: #f4f6ff;
	padding-top: 50px;
	padding-bottom: 50px;
}

.general-section-title-left .column-left {
	flex: 0 0 40%
}


.home .about-us-stats-section .section-intro h2:last-of-type {
	margin-top: 50px
}

.location-search-cta-section {
	padding: 0px
}

.location-search-cta-section h2{
	color:#fff;
}

.location-search-cta-section .section-intro{max-width:900px}




.location-search-cta-section .container {
	padding: 50px 50px;
	border-radius: 5px;
	background: #000;
	border-radius: 15px;
	color: #fff;
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.location-search-cta-section .container:after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: url(/wp-content/uploads/2026/03/check-fibre-availability-bg.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	z-index: -1;
	opacity: .3
}

.location-search-cta-section .zip-search .zip-search-bar {
	margin-top: 30px
}


footer {
	background: #0a1a44;
	padding: 64px 40px 20px;
}

footer .footer-menu ul {
	padding: 0px;
	margin: 0px;
	display: flex;
	gap: 40px;
	justify-content: flex-end;
	list-style: none;
}

footer .footer-menu ul li a {
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	text-decoration: none
}


footer .legal-menu ul {
	padding: 0px;
	margin: 0px;
	display: flex;
	gap: 40px;
	justify-content: flex-end;
	list-style: none;
}

footer .legal-menu ul li a {
	color: #FFFFFFCC;
	font-size: 16px;
	font-weight: 400;
	text-decoration: none
}

footer .footer-top {
	padding-bottom: 48px
}

footer .footer-bottom {
	padding-top: 20px;
	border-top: solid 1px #FFFFFF33
}

footer .site-copyright {
	color: #FFFFFFCC
}

footer .footer-brand {
	display: flex;
	align-items: center;
	gap: 20px;
	flex-wrap: wrap;
}

footer .footer-brand .footer-logo{max-width:250px}

footer .footer-badge {
	color: var(--color-text-dark);
	font-size: 12px;
	font-weight: 600;
	text-decoration: none;
	padding: 5px 10px;
	border-radius: 8px;
	border: 1px solid #6E3EF426;
	background: #fff;
	line-height: 1.2
}

footer .column-left {
	max-width: 400px
}




/** Subpages hero **/
body:not(.home) #masthead {
	background: transparent
}

body:not(.home) #masthead #primary-menu a{color: #fff;}

.hero-section.subpage {
	background: #0a1a44;
	position: relative;
	z-index: 1;
	min-height: 320px;
	padding-bottom: 50px;
	padding-top: 150px;
}

.hero-section.subpage:after {
	content: "";
	position: absolute;
	width: 100%;
	height: calc(100% + 102px);
	top: -102px;
	left: 0;
	z-index: -1;
	background: linear-gradient(to bottom right,
			#050318 0%,
			/* top-left */
			#050318 30%,
			/* left side continuation */
			#040f23 60%,
			/* top-right tone */
			#19265b 100%
			/* bottom-right */
		);
}

.hero-section.subpage:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: url(/wp-content/uploads/2026/03/check-fibre-availability-bg.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: 96% 4%;
	opacity: .3;


}


.hero-section.subpage h1 {
	color: #fff;
	margin-bottom: 15px
}

.hero-section.subpage .section-intro {
	max-width: 700px
}

.hero-section.subpage .section-intro p {
	color: #fff
}

.hero-section.subpage .breadcrumbs {
	color: #fff
}

.hero-section.subpage .breadcrumbs a {
	text-decoration: none;
	color: #fff
}

.hero-section.subpage .breadcrumbs a:hover {
	color: var(--color-primary)
}

.hero-section.subpage .last-updated svg {
	width: 12px;
	fill: #fff
}

.hero-section.subpage .last-updated-text {
	color: #fff
}



.page-id-37 .general-content-section {
	padding-bottom: 20px;
	padding-top: 80px
}

.page-id-37 .internet-providers-cards-section {
	padding-top: 20px
}

.internet-providers-cards-section .columns {
	align-items: flex-start;
	margin-top: 30px
}

.internet-providers-cards-section .column-left {
	flex: 0 0 65%
}

.internet-providers-cards-section .column-right {
	position: sticky;
	top: 20px
}

.internet-providers-cards-section .provider-card {
	scroll-margin-top: 20px;
}


.internet-providers-cards-section .providers-list {display:flex;
flex-direction:column;
gap:24px}

.internet-providers-cards-section .provider-card {
	padding: 24px;
	border-radius: 12px;
	border: 1px solid #09071B14;
}

.internet-providers-cards-section .provider-card-header {
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
}

.internet-providers-cards-section .provider-logo img {
	width: 160px;
	height: 60px;
	object-fit: contain;
	object-position: left center;
}

.internet-providers-cards-section .provider-plans {
	margin-top: 20px
}

.internet-providers-cards-section .provider-title {
	font-size: 27px
}


.internet-providers-cards-section .providers-sticky-sidebar {
	padding: 24px;
	border-radius: 12px;
	border: 1px solid #09071B14;

}

.internet-providers-cards-section .providers-sticky-sidebar .providers-anchor-list {
	margin: 0;
	padding: 0;
	padding-left: 15px;
	padding-top: 20px
}


.internet-providers-cards-section .providers-sticky-sidebar .providers-anchor-list a {
	color: var(--color-text);
	text-decoration: none;
	font-size: 20px
}

.internet-providers-cards-section .providers-sticky-sidebar .providers-anchor-list a:hover {
	color: var(--color-primary)
}

.internet-providers-cards-section .providers-sticky-sidebar .sidebar-title {
	font-size: 24px;
	font-weight: 600
}




/** About Page **/

.page-id-181 .about-us-stats-section {
	padding-bottom: 10px;
	padding-top: 80px
}

.about-us-stats-section .columns-icons {
	margin-top: 40px
}

.about-us-stats-section .icon-grid-title {
	color: var(--color-primary);
	font-size: 26px;
	margin-bottom: 10px
}

.about-us-stats-section .icon-grid-content p {
	margin: 0px
}


.page-id-181 .general-section-image-left {
	padding-bottom: 10px
}


.page-id-181 .team-members-section {
	padding-bottom: 10px
}

.team-members-section .team-members-list {
	margin-top: 40px
}


.team-members-section .team-member-row {
	align-items: flex-start;
}

.team-members-section .team-members-list .team-member {
	margin-bottom: 30px;
}

.team-members-section .team-members-list .team-member:last-of-type {
	margin-bottom: 0;
}

.team-members-section .team-member-row .column-left {
	flex: 0 0 270px
}

.team-members-section .tm-photo img {
	width: 270px;
	height: 350px;
	object-fit: cover;
	object-position: top center;
	border-radius: 5px
}

.team-members-section .tm-name {
	font-size: 30px;
	font-weight: 600;
	
}

.team-members-section .tm-position {
	font-weight: 600
}

.team-members-section .tm-bio {
	max-width: 700px
}


.page-id-181 .faq-section {
	padding-top: 80px
}

.page-id-181 .faq-section .section-title {
	text-align: left
}

.page-id-181 .faq-section .faqs {
	margin-left: 0px
}



/** Contact Page **/

.page-id-208 .contact-form-section {
	padding-top: 80px
}

.contact-form-section .columns {
	align-items: flex-start
}

.contact-form-section .social-grid {
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
	gap: 10px;
	margin-top: 15px
}

.contact-form-section .social-label {
	display: none
}



.contact-form-section .social-grid a svg.social-icon {
	width: 30px;
	height: 30px;
	object-fit: contain;
	object-position: center;
	fill: var(--color-primary)
}

.contact-form-section .social-grid .social-facebook svg.social-icon {
	width: 27px
}

.contact-form-section .social-grid a:hover svg.social-icon {
	fill: var(--color-secondary)
}


.wpcf7-form .columns {
	gap: 24px 10px;
}

.wpcf7-form .row {
	margin-bottom: 25px
}

.wpcf7-form p {
	margin: 0px
}

.wpcf7-form input,
.wpcf7-form textarea {
	width: 100%;
	background: #f4f6ff;
	border-radius: 4px;
	padding: 10px 16px;
	border: none;
	line-height: 1.5em
}

.wpcf7-form .wpcf7-submit {
	width: fit-content;
	font-weight: 600;
	font-size: 16px;
	color: #fff;
	padding: 12px 24px;
	border-radius: 4px;
	border: 1px solid var(--color-primary);
	background: var(--color-primary);
	text-decoration: none;
	display: inline-block;
}

.wpcf7-form label {
	font-weight: 500
}


/** Privacy Policy **/

.page-id-108 .general-content-section {
	padding-top: 80px
}



/** Blog Page **/

.blog-listing-section {
	padding-top: 80px
}

.blog-listing-section .columns {
	align-items: flex-start;
}

.blog-listing-section .column-left {
	flex: 0 0 75%;
}

.blog-listing-section .blog-posts-list {display:flex;
flex-direction:column;
gap:24px}

.blog-listing-section .blog-posts-list article {
	display: flex;
	gap: 24px;
	padding: 24px;
	border-radius: 12px;
	border: 1px solid #09071B14;
	margin: 0px;
}

.blog-listing-section .blog-card-media {
	flex: 0 0 35%;
}

.blog-listing-section .blog-card-media img {
	border-radius: 5px
}

.blog-listing-section .blog-card-title {
	font-size: 30px;
	margin-bottom: 5px;
}


.blog-listing-section .blog-card-title a {
	font-size: 30px;
	text-decoration: none;
	color: var(--color-text)
}

.blog-listing-section .blog-card-meta {
	margin-bottom: 16px
}

.blog-listing-section .blog-card-excerpt {
	margin-bottom: 16px
}

.blog-listing-section .blog-sticky-sidebar {
	padding: 24px;
	border-radius: 12px;
	border: 1px solid #09071B14;
}


.blog-listing-section .sidebar-title {
	font-size: 27px
}

.blog-listing-section .top-posts-list {
	list-style: none;
	margin: 15px 0 0 0;
	display: flex;
	flex-direction: column;
	gap: 15px
}

.blog-listing-section .top-post-link {
	text-decoration: none;
	color: var(--color-text);
	font-weight: 600
}

.blog-listing-section .top-post-date {
	font-size: 12px;
	line-height: 1em
}



/** Single Blog **/
.single-post .post-meta-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	/* spacing between each meta item */
	margin-top: 10px;
	font-size: 16px;
	color: #fff;
}

.single-post .post-meta-item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	/* space between icon and text */
}

.single-post .post-meta-item svg {
	width: 12px;
	height: 12px;
	fill: #fff;
	flex-shrink: 0;
}

.single-post .post-meta-item a {
	color: #fff;
	text-decoration: none;
}

.single-post .post-meta-item a:hover {
	text-decoration: underline;
}

.single-post .single-post-media img {
	width: 100%;
	margin-bottom: 40px;
	border-radius: 10px
}

.single-post .single-post-content-section .columns {
	align-items: flex-start;
}

.single-post .single-post-content-section .column-left {
	flex: 0 0 75%;

}

.single-post .single-post-content-section .column-left article {
	padding: 24px;
	border-radius: 12px;
	border: 1px solid #09071B14;
}

.single-post .single-post-content-section {
	padding-top: 80px
}



.single-post .blog-sticky-sidebar {
	padding: 24px;
	border-radius: 12px;
	border: 1px solid #09071B14;
}


.single-post .sidebar-title {
	font-size: 27px
}

.single-post .top-posts-list {
	list-style: none;
	margin: 15px 0 0 0;
	display: flex;
	flex-direction: column;
	gap: 15px
}

.single-post .top-post-link {
	text-decoration: none;
	color: var(--color-text);
	font-weight: 600
}

.single-post .top-post-date {
	font-size: 12px;
	line-height: 1em
}

.single-post .nav-links a {
	text-decoration: none;
	color: var(--color-secondary)
}

.single-post .nav-links a:hover {
	color: var(--color-primary)
}


.check-availability-hero .zip-search .zip-search-bar {
	margin-top:10px
}

.check-availability-result {padding-top: 80px}


.page-id-289 .general-content-section.full-width{padding-top:80px}


/** Tablet View **/

@media (max-width: 1024px) {
	
	h1 { font-size: 40px}
	h2 { font-size: 32px}
	#masthead ul li {width:fit-content}
	
	#masthead .header-cta-wrap {display:none}
	#masthead #menu-item-321{display:block;
	margin-top: 30px}
	
	#masthead #menu-item-321 a {font-weight: 600;
    font-size: 16px;
    color: #fff;
    padding: 12px 24px;
    border-radius: 4px;
    border: 1px solid var(--color-primary);
    background: var(--color-primary);
    text-decoration: none;
    display: inline-block;
    min-width: 140px;
    text-align: center;
    cursor: pointer;}
	
	#masthead #menu-item-321 a::after{display:none !important}
	
	#masthead .menu-toggle {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	width: 44px;
	height: 44px;
	background: transparent;
	border: 0;
	cursor: pointer;
}

#masthead .menu-toggle span {
	position: absolute;
	width: 26px;
	height: 3px;
	background: #fff; /* adjust to your theme */
	border-radius: 3px;
	left: 50%;
	transform: translateX(-50%);
	transition: transform 0.25s ease, opacity 0.25s ease;
}
	.home	#masthead .menu-toggle span{background: #fff}

/* three bars */
#masthead .menu-toggle .menu-toggle-bar:nth-child(1) {
	top: 12px;
}
#masthead .menu-toggle .menu-toggle-bar:nth-child(2) {
	top: 20px;
}
#masthead .menu-toggle .menu-toggle-bar:nth-child(3) {
	top: 28px;
}

/* OFF-CANVAS MENU */
#masthead .main-navigation ul {
	list-style: none;
	margin: 0;
	padding: 160px 20px 20px;
	position: fixed;
	top: 0px;
	right: -100vw; /* hidden state */
	width: 100vw;
	height: 100vh;
	background: #0a1a44; /* adjust */
	transition: right 0.3s ease;
	display: block; /* we’ll control visibility via off-canvas movement */
	z-index: 99;
	border-top: 1px solid #FFFFFF33;
}
	#masthead #primary-menu {width: 100vw;}	
	
#masthead .main-navigation ul li {
	margin-bottom: 12px;
}
#masthead #primary-menu li a {
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 8px 10px;
}

/* When toggled, slide panel in */
#masthead .main-navigation.toggled ul {
	right: 0;
}

/* Animate hamburger to X when nav is toggled */
#masthead .main-navigation.toggled .menu-toggle .menu-toggle-bar:nth-child(1) {
	transform: translate(-50%, 8px) rotate(45deg);
}
#masthead .main-navigation.toggled .menu-toggle .menu-toggle-bar:nth-child(2) {
	opacity: 0;
}
#masthead .main-navigation.toggled .menu-toggle .menu-toggle-bar:nth-child(3) {
	transform: translate(-50%, -8px) rotate(-45deg);
}
	
	
	.home .hero-section .column-content {
		padding: 50px 0px;
	}
	
}
	
/** Mobile View **/

@media (max-width: 768px) {
	
	#masthead {padding: 12px 20px}
	#masthead .custom-logo {width: 210px;
	margin-bottom:-10px}
	
	
	
	
	
	
	footer {padding:60px 30px}	
	footer .footer-brand {gap:5px}
	footer .footer-menu ul, footer .legal-menu ul {flex-direction:column;
	gap:5px}
	footer .footer-bottom {flex-direction:column-reverse}
	
	
	
	h1{font-size:32px}
	h2{font-size:27px}
	h3{font-size:20px}
	section, .section {padding: 80px 30px}
	.columns {flex-direction:column}
	
	.home .hero-section {padding-top:150px;
	padding-bottom: 00px}
	.home .hero-section .section-intro p{font-size:16px}
	.home .hero-section:before{display:none}
	.home .hero-section:after{
		width:100vw;
		background-size:cover, 0;
	background-position: bottom, center}
	.home .hero-section .column-content{padding: 0 0 20px 0}
	.zip-search .zip-search-bar {margin-top:30px}
	
	.internet-providers-section .provider-row {align-items: flex-start;
	gap: 25px}
	
	.internet-providers-section .provider-col-cta .provider-cta {float: inline-start}
	
	.home .general-section-image-right .columns {flex-direction: column-reverse}
	
	.home main>section:nth-child(2 of .general-section-image-left) {padding-bottom:80px}
	
	.home .general-content-section.full-width {
		padding-top: 30px;
		padding-bottom: 50px;
	}
	
	.general-section-title-left .columns{gap:00px}
	
	.about-us-stats-section .columns-icons {gap:20px}
	.about-us-stats-section .icon-grid-title {margin-bottom:0px}
	
	.location-search-cta-section .container {padding:50px 24px}
	.location-search-cta-section {padding: 0px 10px }
	
	
	.hero-section.subpage {min-height:0px}
	
	.internet-providers-cards-section .columns {flex-direction:column-reverse}
	.internet-providers-cards-section .column-right {position:relative}
	.internet-providers-cards-section .provider-card-header {flex-direction:column-reverse;
	align-items: flex-start;}
	.internet-providers-cards-section .provider-card-header-right {margin-left:auto;
	margin-bottom:10px}
	.internet-providers-cards-section .provider-title {font-size:20px}
	
	
	.blog-listing-section .columns {}
	.blog-listing-section .blog-posts-list article {flex-direction:column}
	
	
	.single-post .single-post-content-section .column-left article {padding: 0px;
	border:none}
	

	
	.zip-search-bar .zip-input {padding-left:30px;}
	.zip-search-bar::before{left: 10px}
	.zip-search button {min-width:0px; padding: 12px 18px}
	
	
	.internet-providers-section .providers-list {
		margin: 32px auto 24px;
		max-width: 100%;
	}

	.internet-providers-section .provider-card {
		padding: 18px 16px;
		border-radius: 12px;
	}

	.internet-providers-section .provider-card:not(:last-of-type) {
		margin-bottom: 14px;
	}

	.internet-providers-section .provider-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 18px;
	}

	.internet-providers-section .provider-col,
	.internet-providers-section .provider-col-logo,
	.internet-providers-section .provider-col-content,
	.internet-providers-section .provider-col-cta {
		flex: 0 0 100%;
		max-width: 100%;
		width: 100%;
	}

	.internet-providers-section .provider-logo {
		justify-content: flex-start;
	}

	.internet-providers-section .provider-card .provider-logo img,
	.internet-providers-section .provider-logo-img {
		height: 44px;
		width: 120px;
		object-position: left center;
	}

	.internet-providers-section .provider-card .provider-title {
		font-size: 17px;
		line-height: 1.35;
		margin-bottom: 6px;
	}

	.internet-providers-section .provider-specs {
		gap: 8px 16px;
	}

	.internet-providers-section .provider-spec-item {
		font-size: 13px;
		line-height: 1.45;
	}

	.internet-providers-section .provider-actions {
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		gap: 14px;
	}

	.internet-providers-section .provider-price {
		text-align: left;
		width: 100%;
	}

	.internet-providers-section .provider-price-label {
		font-size: 11px;
		margin-bottom: 2px;
	}

	.internet-providers-section .provider-price-value {
		font-size: 22px;
		line-height: 1.15;
	}

	.internet-providers-section .provider-col-cta .provider-cta {
		width: 100%;
		min-width: 0;
		padding: 13px 18px;
	}

	.internet-providers-section .provider-description,
	.internet-providers-section .provider-description p {
		font-size: 14px;
		line-height: 1.55;
	}
	
	
	
	
	
	
	
	.home .top-plans-widget {
    max-width: 150px;
    padding: 7px;
    top: 60px;
    right: 0;
  }

  .home .top-plans-widget h3 {
    font-size: 11px;
    margin-bottom: 5px;
  }

  .home .top-plan-item {
    grid-template-columns: 20px 1fr auto;
    gap: 4px;
    padding: 5px;
  }

  .home .top-plan-logo {
    width: 16px;
    height: 16px;
  }

  .home .top-plan-name {
    font-size: 8px;
  }

  .home .top-plan-meta {
    font-size: 6px;
  }

  .home .top-plan-price-label {
    font-size: 5px;
  }

  .home .top-plan-price-value {
    font-size: 8px;
  }
	
	
	  .providers-inline-logos{
    gap:14px;
  }

  .provider-inline-logo img{
    height:16px;
    max-width:75px;
  }

  .provider-inline-text,
  .provider-inline-more{
    font-size:11px;
  }
	
}



/* Internet At My Address modern redesign overrides - 2026-06 */
:root{
  --iam-navy:#06132d;
  --iam-navy-2:#0a1c45;
  --iam-blue:#315cff;
  --iam-blue-2:#5a54ff;
  --iam-light:#f6f8fc;
  --iam-border:#e5eaf5;
  --iam-text:#081331;
  --iam-muted:#667085;
}

body{
  color:var(--iam-text);
  background:#fff;
}

.btn,
.btn.primary-btn,
#masthead .header-cta.btn,
.zip-search button{
  background:linear-gradient(135deg,var(--iam-blue),var(--iam-blue-2));
  border-color:transparent;
  border-radius:999px;
  box-shadow:0 12px 26px rgba(49,92,255,.20);
  font-weight:700;
  letter-spacing:-.01em;
  transition:transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}

.btn:hover,
.btn.primary-btn:hover,
#masthead .header-cta.btn:hover,
.zip-search button:hover{
  background:linear-gradient(135deg,#244df0,#4e45ef);
  transform:translateY(-1px);
  box-shadow:0 16px 32px rgba(49,92,255,.26);
  color:#fff;
}

#masthead{
  min-height:82px;
  margin-bottom:-82px;
  padding:16px 40px;
  background:linear-gradient(180deg,rgba(6,19,45,.96),rgba(6,19,45,.65) 72%,rgba(6,19,45,0));
  position:relative;
}

#masthead .custom-logo{max-width:168px; height:auto;}
#masthead #primary-menu{gap:36px;}
#masthead #primary-menu li a{
  font-size:14px;
  font-weight:700;
  letter-spacing:-.01em;
  opacity:.94;
}
#masthead .current_page_item a:after{
  width:28px;
  height:2px;
  bottom:-13px;
  background:#fff;
  border-radius:99px;
}
#masthead .header-cta.btn{
  font-size:14px;
  padding:12px 22px;
  min-width:auto;
}

section,.section{padding:86px 40px;}
.container{max-width:1220px;}
.columns{gap:48px;}

.home .hero-section{
  padding-top:116px;
  padding-bottom:92px;
  min-height:600px;
  background:radial-gradient(circle at 74% 18%,rgba(67,92,255,.22),transparent 34%),linear-gradient(110deg,#06132d 0%,#071637 52%,#091b43 100%);
  overflow:hidden;
}
.home .hero-section:before{
  display:block;
  width:60%;
  height:100%;
  left:40%;
  right:auto;
  background:linear-gradient(90deg,var(--iam-navy) 0%,rgba(6,19,45,.90) 15%,rgba(6,19,45,.50) 44%,rgba(6,19,45,.10) 100%);
  z-index:1;
}
.home .hero-section:after{
  display:block;
  inset:auto auto 0 0;
  width:100%;
  height:44%;
  background:linear-gradient(0deg,var(--iam-navy) 0%,rgba(6,19,45,0) 100%);
  z-index:1;
}
.home .hero-section > .container{z-index:2;}
.home .hero-section .columns{align-items:center;}
.home .hero-section .column-content{padding:64px 0 74px; flex:0 0 49%; z-index:4;}
.home .hero-section .column-media{flex:1; align-self:stretch; min-height:430px; z-index:2;}
.home .hero-section .hero-section-media{
  position:absolute;
  inset:0 -60px -92px -80px;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  overflow:hidden;
  pointer-events:none;
}
.home .hero-section .hero-section-media:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,var(--iam-navy) 0%,rgba(6,19,45,.84) 14%,rgba(6,19,45,.18) 42%,rgba(6,19,45,0) 78%);
  z-index:2;
  pointer-events:none;
}
.home .hero-section .hero-section-media:after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:42%;
  background:linear-gradient(0deg,var(--iam-navy),rgba(6,19,45,0));
  z-index:3;
  pointer-events:none;
}
.home .hero-section .hero-section-media img{
  max-width:820px;
  width:118%;
  height:100%;
  object-fit:cover;
  object-position:center right;
  margin:0;
  filter:saturate(1.04) contrast(1.02);
}
.home .hero-section h1{
  font-size:clamp(42px,5vw,70px);
  line-height:1.04;
  max-width:650px;
  letter-spacing:-.055em;
  margin-bottom:18px;
}
.home .hero-section h1 span{
  color:#6777ff;
}
.home .hero-section h1 span:after{display:none;}
.home .hero-section .section-intro p{
  max-width:520px;
  font-size:20px;
  line-height:1.55;
  color:rgba(255,255,255,.88);
}
.zip-search .zip-search-bar{
  max-width:560px;
  min-height:60px;
  border-radius:10px;
  overflow:hidden;
  margin-top:24px;
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 20px 45px rgba(0,0,0,.18);
}
.zip-search-bar .zip-input{
  padding:19px 24px 19px 54px;
  font-size:15px;
  color:#2b344c;
}
.zip-search button{
  border-radius:0 8px 8px 0;
  min-width:172px;
  justify-content:center;
  box-shadow:none;
}
.home .hero-section .hero-benefits-cards{margin-top:18px; gap:18px;}
.home .hero-section .hero-benefit-card{
  background:transparent;
  border:0;
  padding:0 0 0 25px;
  font-size:14px;
  color:rgba(255,255,255,.82);
}
.home .hero-section .hero-benefit-card::before{
  width:16px;
  height:16px;
  left:0;
  filter:none;
  background:radial-gradient(circle,var(--iam-blue) 45%,transparent 47%);
  border:1px solid rgba(114,135,255,.9);
  border-radius:50%;
}
.providers-inline-wrap{
  position:absolute;
  left:40px;
  right:40px;
  bottom:-49px;
  max-width:1210px;
  margin:0 auto;
  padding:24px 34px;
  background:#fff;
  border:1px solid var(--iam-border);
  border-radius:26px;
  box-shadow:0 24px 50px rgba(8,19,49,.12);
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:28px;
  z-index:10;
}
.providers-inline-text{
  margin:0;
  color:#081331;
  font-size:14px;
  font-weight:800;
  line-height:1.15;
  max-width:140px;
}
.providers-inline-logos{
  justify-content:space-between;
  gap:28px;
}
.provider-inline-logo img{
  height:32px;
  max-width:130px;
  filter:none;
  opacity:1;
}
.provider-inline-more{
  color:#4351ff;
}
.home .top-plans-widget{display:none;}

.how-it-works-section{padding-top:112px; background:#fff;}
.how-it-works-section .section-title,
.map-provider-section .section-title,
.internet-providers-section .section-title,
.faq-section .section-title{
  color:#101b48;
  letter-spacing:-.04em;
}
.how-it-works-section .section-intro,
.map-provider-section .section-intro,
.internet-providers-section .section-intro,
.faq-section .section-intro{color:var(--iam-muted);}
.how-it-works-section .columns{max-width:930px; margin:48px auto 0; gap:72px;}
.how-it-works-section .icon-grid-item{
  padding:34px 28px 30px;
  border-radius:18px;
  border:1px solid var(--iam-border);
  background:#fff;
  box-shadow:0 16px 42px rgba(8,19,49,.06);
  min-height:190px;
  overflow:visible;
}
.how-it-works-section .icon-grid-item:not(:last-child)::after{
  content:"--›";
  position:absolute;
  top:50%;
  right:-52px;
  transform:translateY(-50%);
  color:#5368ff;
  font-weight:800;
  letter-spacing:4px;
}
.how-it-works-section .icon-grid-title{font-size:18px; color:#101b48; margin-top:8px;}
.how-it-works-section .icon-grid-content{font-size:14px; color:var(--iam-muted);}
.how-it-works-section .icon-grid-media{justify-content:center; margin-bottom:14px;}
.how-it-works-section .icon-grid-media img{
  width:58px;
  height:58px;
  margin:0;
  object-fit:contain;
  border-radius:50%;
}

.map-provider-section{
  background:#fff;
  padding-top:36px;
  padding-bottom:92px;
  overflow:hidden;
}
.map-provider-shell{
  display:grid;
  grid-template-columns:360px 1fr;
  gap:44px;
  align-items:center;
  position:relative;
}
.map-provider-card{
  padding:34px;
  border-radius:22px;
  background:linear-gradient(180deg,#f8faff 0%,#f2f5ff 100%);
  border:1px solid var(--iam-border);
  box-shadow:0 18px 48px rgba(8,19,49,.07);
  z-index:2;
}
.map-provider-card .section-title{font-size:32px; line-height:1.12; margin-bottom:14px;}
.map-provider-card .section-intro p{font-size:15px; color:var(--iam-muted); margin-bottom:18px;}
.map-provider-features{list-style:none; padding:0; margin:18px 0 24px; display:grid; gap:12px;}
.map-provider-features li{position:relative; padding-left:26px; color:#1b2559; font-weight:700; font-size:15px;}
.map-provider-features li:before{content:""; position:absolute; left:0; top:.25em; width:16px; height:16px; border-radius:50%; background:linear-gradient(135deg,var(--iam-blue),var(--iam-blue-2)); box-shadow:0 0 0 4px rgba(49,92,255,.10);}
.map-provider-visual{min-height:390px; position:relative; display:flex; align-items:center; justify-content:center;}
.map-provider-dots{position:absolute; inset:8% 0 0 22%; background-image:radial-gradient(rgba(49,92,255,.16) 1px, transparent 1px); background-size:12px 12px; mask-image:linear-gradient(90deg,transparent,#000 18%,#000 82%,transparent); opacity:.9;}
.map-provider-map{position:relative; width:100%; max-width:760px; z-index:1;}
.map-provider-map--fallback svg{width:100%; height:auto; display:block; filter:drop-shadow(0 18px 24px rgba(8,19,49,.05));}
.map-provider-map--fallback path{fill:#dfe6f8; stroke:#fff; stroke-width:5;}
.map-provider-img{display:block; width:100%; height:auto; object-fit:contain;}
.map-provider-markers{position:absolute; inset:0; z-index:3; pointer-events:none;}
.map-provider-marker{position:absolute; width:76px; height:76px; transform:translate(-50%,-50%); border-radius:50%; background:#fff; border:1px solid rgba(49,92,255,.16); box-shadow:0 18px 34px rgba(8,19,49,.16); display:flex; align-items:center; justify-content:center; padding:13px; font-weight:900; color:#101b48;}
.map-provider-marker img{max-width:100%; max-height:100%; object-fit:contain;}
.map-provider-marker--text{background:linear-gradient(135deg,#fff,#f3f6ff); font-size:13px; color:#315cff;}

.internet-providers-section{background:#f5f7fd;}
.internet-providers-section .providers-list{max-width:760px; margin:44px auto 0;}
.internet-providers-section .provider-card{
  border:0;
  border-radius:14px;
  background:#fff;
  box-shadow:0 10px 28px rgba(8,19,49,.05);
  margin-bottom:14px;
}
.internet-providers-section .provider-card:not(:last-of-type){border-bottom:0;}
.internet-providers-section .provider-row{padding:18px 22px;}
.internet-providers-section .provider-logo{background:#fff; border:1px solid var(--iam-border); border-radius:14px;}
.internet-providers-section .provider-card .provider-title{font-size:17px; color:#101b48;}
.internet-providers-section .provider-price-value{color:#101b48;}
.internet-providers-section .provider-col-cta .provider-cta{border-radius:10px; background:linear-gradient(135deg,var(--iam-blue),var(--iam-blue-2));}

.home .general-section-image-left,
.home .general-section-image-right,
.home .general-section-title-left{background:#fff;}
.general-section-media img{border-radius:18px; box-shadow:0 18px 38px rgba(8,19,49,.08);}
.location-search-cta-section{background:#fff; padding-top:40px;}
.location-search-cta-section .container{
  border-radius:20px;
  overflow:hidden;
  background:linear-gradient(90deg,rgba(6,19,45,.92),rgba(6,19,45,.72)),url('/wp-content/uploads/2026/01/cta-bg.jpg');
  background-size:cover;
  background-position:center;
}
.location-search-cta-section .zip-search .zip-search-bar{border-radius:10px;}

.faq-section{background:#fff;}
.faq-section .faqs{max-width:780px; margin-left:auto; margin-right:auto;}
.faq-section .faqs details{border-color:var(--iam-border); box-shadow:0 8px 18px rgba(8,19,49,.03);}
.faq-section .faqs details[open]{border-color:#aebcff;}
.faq-section summary{color:#101b48;}

footer{
  background:linear-gradient(135deg,#06132d 0%,#081b42 100%);
  color:rgba(255,255,255,.82);
  padding-top:70px;
}
footer .footer-top{border-bottom:1px solid rgba(255,255,255,.08); padding-bottom:42px;}
footer .footer-bottom{padding-top:26px;}
footer .footer-menu ul li a,
footer .legal-menu ul li a{color:rgba(255,255,255,.82);}
footer .footer-menu ul li a:hover,
footer .legal-menu ul li a:hover{color:#fff;}
footer .footer-badge{background:#fff; color:#06132d; border-radius:99px; padding:5px 10px;}

@media (max-width: 1024px){
  #masthead{padding:14px 24px; min-height:76px; margin-bottom:-76px;}
  .home .hero-section{padding-top:104px;}
  .home .hero-section .columns{display:block;}
  .home .hero-section .column-content{max-width:680px; padding-bottom:40px;}
  .home .hero-section .column-media{min-height:340px;}
  .home .hero-section .hero-section-media{position:relative; inset:auto; min-height:340px; justify-content:center;}
  .home .hero-section .hero-section-media img{width:100%; max-width:760px;}
  .providers-inline-wrap{position:relative; left:auto; right:auto; bottom:auto; margin-top:10px; grid-template-columns:1fr;}
  .how-it-works-section{padding-top:80px;}
  .how-it-works-section .columns{gap:24px;}
  .how-it-works-section .icon-grid-item:not(:last-child)::after{display:none;}
  .map-provider-shell{grid-template-columns:1fr;}
  .map-provider-card{max-width:560px; margin:0 auto; text-align:center;}
  .map-provider-features{max-width:320px; margin-left:auto; margin-right:auto; text-align:left;}
}

@media (max-width: 767px){
  section,.section{padding:64px 22px;}
  #masthead .header-cta-wrap{display:none;}
  .home .hero-section{min-height:auto; padding-bottom:52px;}
  .home .hero-section .column-content{padding:56px 0 26px;}
  .home .hero-section h1{font-size:42px;}
  .home .hero-section .section-intro p{font-size:17px;}
  .zip-search .zip-search-bar{display:block; border-radius:14px; overflow:visible; background:transparent; border:0; box-shadow:none;}
  .zip-search-bar .zip-input{width:100%; border-radius:10px; min-height:56px; margin-bottom:10px; box-shadow:0 14px 34px rgba(0,0,0,.12);}
  .zip-search button{width:100%; border-radius:10px; min-height:54px;}
  .home .hero-section .hero-benefits-cards{gap:12px;}
  .providers-inline-wrap{padding:22px; border-radius:18px;}
  .providers-inline-logos{justify-content:center;}
  .provider-inline-logo img{height:25px; max-width:100px;}
  .how-it-works-section .columns{display:grid; grid-template-columns:1fr; max-width:360px;}
  .map-provider-card{padding:26px;}
  .map-provider-shell{gap:20px;}
  .map-provider-visual{min-height:270px;}
  .map-provider-marker{width:56px; height:56px; padding:10px;}
}

/* Internet At My Address final homepage visual sync - 2026-06-01
   Matches the generated modern UI more closely while keeping the same homepage sections. */
:root{
  --iam-deep:#061229;
  --iam-deep-2:#071936;
  --iam-card:#ffffff;
  --iam-soft:#f7f9fe;
  --iam-line:#e7ecf6;
  --iam-primary:#315cff;
  --iam-primary-2:#5a54ff;
  --iam-heading:#101943;
  --iam-body:#5f6b85;
}

body.home{
  background:#fff;
  font-family:'Space Grotesk', Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.home #masthead{
  min-height:76px;
  margin-bottom:-76px;
  padding:14px 40px;
  background:linear-gradient(180deg,rgba(4,13,32,.92),rgba(4,13,32,.58) 72%,rgba(4,13,32,0));
  position:relative;
  z-index:50;
}
.home #masthead .container{max-width:1210px;}
.home #masthead .custom-logo{max-width:158px; width:auto; height:auto;}
.home #masthead #primary-menu{gap:34px; align-items:center;}
.home #masthead #primary-menu li a{
  color:#fff;
  font-size:14px;
  line-height:1;
  font-weight:700;
  opacity:.92;
  text-decoration:none;
}
.home #masthead #primary-menu li a:hover{opacity:1;}
.home #masthead .current_page_item a:after{
  width:28px;
  height:2px;
  bottom:-14px;
  background:#fff;
  border-radius:99px;
}
.home #masthead .header-cta.btn{
  padding:13px 22px;
  border-radius:999px;
  font-size:14px;
  font-weight:800;
  background:linear-gradient(135deg,#315cff,#6258ff);
  box-shadow:0 14px 28px rgba(49,92,255,.28);
}

.home .hero-section{
  min-height:610px;
  padding:112px 40px 84px;
  background:
    radial-gradient(circle at 78% 10%,rgba(75,92,255,.24),transparent 32%),
    radial-gradient(circle at 100% 100%,rgba(44,108,255,.18),transparent 36%),
    linear-gradient(110deg,#061229 0%,#071632 58%,#091c43 100%);
  position:relative;
  overflow:hidden;
}
.home .hero-section:before{
  content:"";
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  background:linear-gradient(90deg,#061229 0%,rgba(6,18,41,.96) 31%,rgba(6,18,41,.40) 57%,rgba(6,18,41,.10) 100%);
  z-index:2;
  pointer-events:none;
}
.home .hero-section:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  display:block;
  width:100%;
  height:42%;
  background:linear-gradient(0deg,#061229 0%,rgba(6,18,41,0) 100%);
  z-index:3;
  pointer-events:none;
}
.home .hero-section > .container{z-index:4; max-width:1210px;}
.home .hero-section .columns{align-items:center; gap:46px;}
.home .hero-section .column-content{
  flex:0 0 49%;
  padding:64px 0 88px;
  position:static;
  z-index:6;
}
.home .hero-section .column-media{
  flex:1;
  min-height:450px;
  align-self:stretch;
  position:static;
  z-index:1;
}
.home .hero-section .hero-section-media{
  position:absolute;
  inset:76px 0 0 40%;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  pointer-events:none;
  z-index:1;
}
.home .hero-section .hero-section-media:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,#061229 0%,rgba(6,18,41,.82) 20%,rgba(6,18,41,.20) 44%,rgba(6,18,41,0) 74%);
  z-index:2;
}
.home .hero-section .hero-section-media:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:44%;
  background:linear-gradient(0deg,#061229 0%,rgba(6,18,41,0) 100%);
  z-index:3;
}
.home .hero-section .hero-section-media img{
  width:100%;
  max-width:880px;
  height:100%;
  object-fit:cover;
  object-position:center right;
  margin:0;
  filter:saturate(1.03) contrast(1.03);
}
.home .hero-section h1{
  max-width:650px;
  margin:0 0 18px;
  color:#fff;
  font-size:clamp(45px,5.15vw,72px);
  line-height:1.03;
  letter-spacing:-.055em;
  font-weight:800;
}
.home .hero-section h1 span{color:#6374ff;}
.home .hero-section h1 span:after{display:none!important;}
.home .hero-section .section-intro p{
  max-width:530px;
  margin:0;
  color:rgba(255,255,255,.9);
  font-size:20px;
  line-height:1.52;
}
.home .hero-section .zip-search{margin-top:24px;}
.home .hero-section .zip-search .zip-search-bar{
  max-width:560px;
  min-height:60px;
  margin-top:0;
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 20px 45px rgba(0,0,0,.20);
}
.home .zip-search-bar::before{left:22px; opacity:.72;}
.home .zip-search-bar .zip-input{
  min-height:60px;
  padding:19px 24px 19px 54px;
  color:#29324a;
  font-size:15px;
  font-weight:600;
}
.home .zip-search button{
  min-width:175px;
  min-height:60px;
  border-radius:0 8px 8px 0;
  justify-content:center;
  background:linear-gradient(135deg,#315cff,#6258ff);
  box-shadow:none;
  font-size:14px;
  font-weight:800;
}
.home .hero-section .hero-benefits-cards{margin-top:20px; gap:28px;}
.home .hero-section .hero-benefit-card{
  padding:0 0 0 25px;
  border:0;
  background:transparent;
  color:rgba(255,255,255,.82);
  font-size:14px;
  font-weight:600;
  line-height:1.2;
}
.home .hero-section .hero-benefit-card::before{
  left:0;
  width:16px;
  height:16px;
  background:radial-gradient(circle,#315cff 43%,transparent 45%);
  border:1px solid rgba(120,137,255,.95);
  border-radius:50%;
  filter:none;
}
.home .providers-inline-wrap{
  position:absolute;
  left:50%;
  right:auto;
  bottom:-49px;
  width:min(1210px,calc(100vw - 80px));
  max-width:1210px;
  transform:translateX(-50%);
  margin:0;
  padding:24px 34px;
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:28px;
  background:#fff;
  border:1px solid var(--iam-line);
  border-radius:26px;
  box-shadow:0 24px 54px rgba(8,19,49,.14);
  z-index:12;
}
.home .providers-inline-text{
  max-width:146px;
  margin:0;
  color:#111a42;
  font-size:14px;
  line-height:1.15;
  font-weight:800;
}
.home .providers-inline-logos{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  flex-wrap:nowrap;
}
.home .provider-inline-logo img{height:32px; max-width:130px; width:auto; object-fit:contain; opacity:1; filter:none;}
.home .provider-inline-more{color:#4557ff; font-weight:800; white-space:nowrap;}
.home .top-plans-widget{display:none!important;}

.home .how-it-works-section{
  padding-top:116px;
  padding-bottom:38px;
  background:#fff;
}
.home .how-it-works-section .section-title,
.home .map-provider-section .section-title,
.home .internet-providers-section .section-title,
.home .faq-section .section-title{
  color:var(--iam-heading);
  font-weight:800;
  letter-spacing:-.045em;
}
.home .how-it-works-section .section-intro,
.home .map-provider-section .section-intro,
.home .internet-providers-section .section-intro,
.home .faq-section .section-intro{color:var(--iam-body);}
.home .how-it-works-section .columns{
  max-width:930px;
  margin:46px auto 0;
  gap:72px;
}
.home .how-it-works-section .icon-grid-item{
  min-height:190px;
  padding:34px 28px 30px;
  border:1px solid var(--iam-line);
  border-radius:18px;
  background:#fff;
  box-shadow:0 16px 42px rgba(8,19,49,.055);
  text-align:center;
  overflow:visible;
}
.home .how-it-works-section .icon-grid-item:not(:last-child)::after{
  content:"--›";
  position:absolute;
  top:50%;
  right:-52px;
  transform:translateY(-50%);
  color:#5368ff;
  font-weight:800;
  letter-spacing:4px;
}
.home .how-it-works-section .icon-grid-media{justify-content:center; margin-bottom:14px;}
.home .how-it-works-section .icon-grid-media img{
  width:58px;
  height:58px;
  margin:0;
  border-radius:50%;
  object-fit:contain;
}
.home .how-it-works-section .icon-grid-title{margin-top:8px; color:var(--iam-heading); font-size:18px; font-weight:800;}
.home .how-it-works-section .icon-grid-content{color:var(--iam-body); font-size:14px; line-height:1.45;}

.home .map-provider-section{
  padding-top:34px;
  padding-bottom:84px;
  background:#fff;
  overflow:hidden;
}
.home .map-provider-section .container{max-width:1210px;}
.home .map-provider-shell{
  display:grid;
  grid-template-columns:360px minmax(0,1fr);
  gap:44px;
  align-items:center;
}
.home .map-provider-card{
  padding:34px;
  border:1px solid var(--iam-line);
  border-radius:22px;
  background:linear-gradient(180deg,#fbfcff 0%,#f3f6ff 100%);
  box-shadow:0 18px 48px rgba(8,19,49,.075);
  z-index:5;
}
.home .map-provider-card .section-title{
  margin:0 0 14px;
  font-size:32px;
  line-height:1.12;
  text-align:left;
}
.home .map-provider-card .section-intro,
.home .map-provider-card .section-intro p{
  margin:0 0 18px;
  color:var(--iam-body);
  font-size:15px;
  line-height:1.6;
  text-align:left;
}
.home .map-provider-features{
  display:grid;
  gap:12px;
  margin:18px 0 24px;
  padding:0;
  list-style:none;
}
.home .map-provider-features li{
  position:relative;
  padding-left:26px;
  color:#1b2559;
  font-size:15px;
  font-weight:800;
  line-height:1.35;
}
.home .map-provider-features li:before{
  content:"";
  position:absolute;
  left:0;
  top:.25em;
  width:16px;
  height:16px;
  border-radius:50%;
  background:linear-gradient(135deg,#315cff,#6258ff);
  box-shadow:0 0 0 4px rgba(49,92,255,.10);
}
.home .map-provider-card .section-buttons{margin-top:22px; justify-content:flex-start;}
.home .map-provider-card .section-button{
  padding:13px 24px;
  border-radius:6px;
  font-size:14px;
  box-shadow:0 12px 26px rgba(49,92,255,.20);
}
.home .map-provider-visual{
  min-height:392px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
}
.home .map-provider-dots{
  position:absolute;
  inset:5% -6% 0 18%;
  background-image:radial-gradient(rgba(49,92,255,.15) 1px,transparent 1px);
  background-size:12px 12px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 16%,#000 82%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 16%,#000 82%,transparent);
  opacity:.9;
}
.home .map-provider-map{
  position:relative;
  z-index:1;
  width:100%;
  max-width:760px;
}
.home .map-provider-map--fallback svg{
  width:100%;
  height:auto;
  display:block;
  filter:drop-shadow(0 18px 24px rgba(8,19,49,.045));
}
.home .map-provider-map--fallback path{fill:#dfe6f8; stroke:#fff; stroke-width:5;}
.home .map-provider-img{display:block; width:100%; height:auto; object-fit:contain;}
.home .map-provider-markers{position:absolute; inset:0; z-index:4; pointer-events:none;}
.home .map-provider-marker{
  position:absolute;
  width:76px;
  height:76px;
  transform:translate(-50%,-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:13px;
  border:1px solid rgba(49,92,255,.16);
  border-radius:50%;
  background:#fff;
  box-shadow:0 18px 34px rgba(8,19,49,.16);
  color:#101b48;
  font-size:13px;
  font-weight:900;
}
.home .map-provider-marker img{max-width:100%; max-height:100%; object-fit:contain;}
.home .map-provider-marker--text{background:linear-gradient(135deg,#fff,#f3f6ff); color:#315cff;}

.home .internet-providers-section{
  background:#f5f7fd;
  padding-top:86px;
  padding-bottom:86px;
}
.home .internet-providers-section .providers-list{max-width:760px; margin:44px auto 0;}
.home .internet-providers-section .provider-card{
  margin-bottom:14px;
  border:0;
  border-radius:14px;
  background:#fff;
  box-shadow:0 10px 28px rgba(8,19,49,.055);
}
.home .internet-providers-section .provider-card:not(:last-of-type){border-bottom:0;}
.home .internet-providers-section .provider-row{padding:18px 22px;}
.home .internet-providers-section .provider-logo{border:1px solid var(--iam-line); border-radius:14px; background:#fff;}
.home .internet-providers-section .provider-card .provider-title{color:var(--iam-heading); font-size:17px; font-weight:800;}
.home .internet-providers-section .provider-price-value{color:var(--iam-heading);}
.home .internet-providers-section .provider-col-cta .provider-cta{border-radius:10px; background:linear-gradient(135deg,#315cff,#6258ff);}

.home .general-section-image-left,
.home .general-section-image-right,
.home .general-section-title-left{background:#fff;}
.home .general-section-media img{border-radius:18px; box-shadow:0 18px 38px rgba(8,19,49,.08);}
.home .location-search-cta-section{background:#fff; padding-top:42px; padding-bottom:92px;}
.home .location-search-cta-section .container{
  max-width:1210px;
  padding:56px 40px;
  border-radius:20px;
  overflow:hidden;
  background:linear-gradient(90deg,rgba(6,19,45,.93),rgba(6,19,45,.68)),url('/wp-content/uploads/2026/01/cta-bg.jpg');
  background-size:cover;
  background-position:center;
}
.home .location-search-cta-section .zip-search .zip-search-bar{border-radius:10px;}

.home .faq-section{background:#fff; padding-top:82px; padding-bottom:92px;}
.home .faq-section .faqs{max-width:780px; margin-left:auto; margin-right:auto;}
.home .faq-section .faqs details{border-color:var(--iam-line); box-shadow:0 8px 18px rgba(8,19,49,.03);}
.home .faq-section .faqs details[open]{border-color:#aebcff;}
.home .faq-section summary{color:var(--iam-heading);}

.home footer,
footer{
  background:linear-gradient(135deg,#06132d 0%,#081b42 100%);
  color:rgba(255,255,255,.82);
}
footer .footer-top{border-bottom:1px solid rgba(255,255,255,.08);}
footer .footer-menu ul li a,
footer .legal-menu ul li a{color:rgba(255,255,255,.82);}
footer .footer-menu ul li a:hover,
footer .legal-menu ul li a:hover{color:#fff;}
footer .footer-badge{background:#fff; color:#06132d; border-radius:99px; padding:5px 10px;}

@media (max-width:1024px){
  .home #masthead{padding:14px 24px; min-height:74px; margin-bottom:-74px;}
  .home .hero-section{padding-top:100px; padding-bottom:54px;}
  .home .hero-section .columns{display:block;}
  .home .hero-section .column-content{max-width:690px; padding:58px 0 32px;}
  .home .hero-section .column-media{min-height:350px;}
  .home .hero-section .hero-section-media{position:relative; inset:auto; min-height:350px; justify-content:center;}
  .home .hero-section .hero-section-media img{max-width:760px; width:100%;}
  .home .providers-inline-wrap{position:relative; left:auto; bottom:auto; width:100%; transform:none; margin-top:8px; grid-template-columns:1fr;}
  .home .providers-inline-logos{flex-wrap:wrap; justify-content:center;}
  .home .how-it-works-section{padding-top:78px;}
  .home .how-it-works-section .columns{gap:24px;}
  .home .how-it-works-section .icon-grid-item:not(:last-child)::after{display:none;}
  .home .map-provider-shell{grid-template-columns:1fr;}
  .home .map-provider-card{max-width:560px; margin:0 auto; text-align:center;}
  .home .map-provider-card .section-title,
  .home .map-provider-card .section-intro,
  .home .map-provider-card .section-intro p{text-align:center;}
  .home .map-provider-features{max-width:320px; margin-left:auto; margin-right:auto; text-align:left;}
  .home .map-provider-card .section-buttons{justify-content:center;}
}

@media (max-width:767px){
  .home section,.home .section{padding-left:22px; padding-right:22px;}
  .home #masthead .header-cta-wrap{display:none;}
  .home .hero-section{min-height:auto; padding:90px 22px 48px;}
  .home .hero-section .column-content{padding:48px 0 26px;}
  .home .hero-section h1{font-size:42px;}
  .home .hero-section .section-intro p{font-size:17px;}
  .home .hero-section .zip-search .zip-search-bar{display:block; border:0; border-radius:0; overflow:visible; background:transparent; box-shadow:none;}
  .home .zip-search-bar::before{top:28px;}
  .home .zip-search-bar .zip-input{width:100%; border-radius:10px; margin-bottom:10px; box-shadow:0 14px 34px rgba(0,0,0,.12);}
  .home .zip-search button{width:100%; border-radius:10px;}
  .home .hero-section .hero-benefits-cards{gap:13px;}
  .home .providers-inline-wrap{padding:22px; border-radius:18px;}
  .home .provider-inline-logo img{height:25px; max-width:100px;}
  .home .how-it-works-section .columns{display:grid; grid-template-columns:1fr; max-width:360px;}
  .home .map-provider-card{padding:26px;}
  .home .map-provider-shell{gap:20px;}
  .home .map-provider-visual{min-height:270px;}
  .home .map-provider-marker{width:56px; height:56px; padding:10px;}
}

/* Internet At My Address UI refinement pass - 2026-06-01 */
.home #masthead{
  min-height:76px!important;
  margin-bottom:-76px!important;
  padding:14px 40px!important;
  background:linear-gradient(180deg,rgba(6,18,41,.98),rgba(6,18,41,.72) 70%,rgba(6,18,41,0))!important;
}
.home #masthead .custom-logo{max-width:158px!important;}
.home #masthead #primary-menu{gap:34px!important;}
.home #masthead #primary-menu li a{font-size:13px!important;font-weight:650!important;letter-spacing:0!important;}
.home #masthead .header-cta.btn{font-size:13px!important;padding:11px 20px!important;border-radius:999px!important;}

.home .hero-section{
  min-height:560px!important;
  padding-top:98px!important;
  padding-bottom:82px!important;
  background:radial-gradient(circle at 78% 8%,rgba(71,89,255,.18),transparent 32%),linear-gradient(112deg,#061229 0%,#071630 54%,#081b42 100%)!important;
}
.home .hero-section .column-content{
  flex:0 0 47%!important;
  padding:58px 0 72px!important;
}
.home .hero-section .column-media{min-height:390px!important;}
.home .hero-section .hero-section-media{inset:0 -38px -82px -110px!important;}
.home .hero-section .hero-section-media img{
  max-width:780px!important;
  width:112%!important;
  object-position:center right!important;
}
.home .hero-section h1{
  font-size:clamp(42px,4.25vw,56px)!important;
  line-height:1.12!important;
  max-width:590px!important;
  font-weight:780!important;
  letter-spacing:-.035em!important;
  margin-bottom:16px!important;
}
.home .hero-section h1 strong,
.home .hero-section h1 b{font-weight:800!important;}
.home .hero-section h1 span{color:#6372ff!important;font-weight:780!important;}
.home .hero-section .section-intro p{
  max-width:505px!important;
  font-size:18px!important;
  line-height:1.55!important;
  font-weight:400!important;
  color:rgba(255,255,255,.88)!important;
}
.home .hero-section .zip-search .zip-search-bar,
.home .zip-search .zip-search-bar{
  max-width:520px!important;
  min-height:56px!important;
  border-radius:10px!important;
  margin-top:22px!important;
}
.home .zip-search-bar .zip-input{padding-top:17px!important;padding-bottom:17px!important;font-size:14px!important;}
.home .zip-search button{min-width:164px!important;font-size:13px!important;font-weight:750!important;}
.home .hero-section .hero-benefits-cards{margin-top:16px!important;gap:20px!important;}
.home .hero-section .hero-benefit-card{font-size:13px!important;font-weight:500!important;color:rgba(255,255,255,.82)!important;}
.home .providers-inline-wrap{
  bottom:-43px!important;
  padding:22px 32px!important;
  border-radius:24px!important;
  box-shadow:0 22px 50px rgba(6,18,41,.14)!important;
}
.home .providers-inline-text{font-size:13px!important;}
.home .provider-inline-logo img{height:30px!important;max-width:124px!important;}

/* Provider section: switch from narrow rows to a modern featured/grid comparison layout */
.home .internet-providers-section{
  background:linear-gradient(180deg,#f5f7fd 0%,#f8faff 100%)!important;
  padding-top:88px!important;
  padding-bottom:92px!important;
}
.home .internet-providers-section .container{max-width:1180px!important;}
.home .internet-providers-section .providers-list{
  max-width:1060px!important;
  margin:42px auto 0!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
}
.home .internet-providers-section .provider-card{
  margin:0!important;
  padding:0!important;
  border:1px solid #e6ebf5!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 16px 42px rgba(8,19,49,.06)!important;
  overflow:hidden!important;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease!important;
}
.home .internet-providers-section .provider-card:hover{
  transform:translateY(-3px)!important;
  border-color:#ccd5ff!important;
  box-shadow:0 22px 55px rgba(8,19,49,.10)!important;
}
.home .internet-providers-section .provider-card--featured{
  grid-column:1 / -1!important;
  background:linear-gradient(135deg,#fff 0%,#f8faff 100%)!important;
}
.home .internet-providers-section .provider-row{
  display:grid!important;
  grid-template-columns:150px minmax(0,1fr) 230px!important;
  gap:24px!important;
  align-items:center!important;
  padding:24px 28px!important;
}
.home .internet-providers-section .provider-card:not(.provider-card--featured) .provider-row{
  grid-template-columns:110px minmax(0,1fr)!important;
  grid-template-areas:"logo content" "cta cta"!important;
  gap:18px!important;
}
.home .internet-providers-section .provider-card:not(.provider-card--featured) .provider-col-logo{grid-area:logo!important;}
.home .internet-providers-section .provider-card:not(.provider-card--featured) .provider-col-content{grid-area:content!important;}
.home .internet-providers-section .provider-card:not(.provider-card--featured) .provider-col-cta{grid-area:cta!important;max-width:none!important;}
.home .internet-providers-section .provider-col-logo{flex:initial!important;max-width:none!important;}
.home .internet-providers-section .provider-col-content{flex:initial!important;}
.home .internet-providers-section .provider-col-cta{flex:initial!important;max-width:none!important;}
.home .internet-providers-section .provider-logo{
  width:112px!important;
  height:82px!important;
  padding:14px!important;
  justify-content:center!important;
  border-radius:18px!important;
  background:#f9fbff!important;
}
.home .internet-providers-section .provider-card--featured .provider-logo{width:126px!important;height:92px!important;}
.home .internet-providers-section .provider-card .provider-logo img,
.home .internet-providers-section .provider-logo-img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;}
.home .internet-providers-section .provider-meta-line{display:flex!important;align-items:center!important;gap:8px!important;margin-bottom:8px!important;}
.home .internet-providers-section .provider-rank{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:28px!important;
  height:28px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  background:#eef2ff!important;
  color:#315cff!important;
  font-size:12px!important;
  font-weight:850!important;
}
.home .internet-providers-section .provider-badge{
  display:inline-flex!important;
  align-items:center!important;
  height:28px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#315cff,#5a54ff)!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:800!important;
}
.home .internet-providers-section .provider-card .provider-title{
  font-size:20px!important;
  line-height:1.25!important;
  margin-bottom:10px!important;
  font-weight:800!important;
  letter-spacing:-.02em!important;
}
.home .internet-providers-section .provider-specs{gap:8px!important;}
.home .internet-providers-section .provider-spec-item{
  padding:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  color:#667085!important;
  font-size:13px!important;
  font-weight:650!important;
}
.home .internet-providers-section .provider-spec-item:not(:last-child)::after{
  content:"•";
  margin-left:10px;
  color:#c6cede;
}
.home .internet-providers-section .provider-actions{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  align-items:center!important;
  gap:18px!important;
}
.home .internet-providers-section .provider-card:not(.provider-card--featured) .provider-actions{
  padding-top:14px!important;
  border-top:1px solid #eef2f8!important;
}
.home .internet-providers-section .provider-price{text-align:left!important;}
.home .internet-providers-section .provider-price-label{font-size:11px!important;color:#7b8498!important;}
.home .internet-providers-section .provider-price-value{font-size:22px!important;font-weight:850!important;letter-spacing:-.03em!important;}
.home .internet-providers-section .provider-col-cta .provider-cta{
  min-width:118px!important;
  border-radius:999px!important;
  padding:12px 18px!important;
  font-size:13px!important;
}
.home .internet-providers-section .providers-view-all{margin-top:34px!important;}
.home .internet-providers-section .providers-view-all-link{
  background:transparent!important;
  color:#315cff!important;
  box-shadow:none!important;
  text-decoration:underline!important;
  min-width:0!important;
}

/* Image-left content sections: cleaner editorial card layout */
.home .general-section-image-left{
  padding-top:90px!important;
  padding-bottom:34px!important;
  background:#fff!important;
}
.home .general-section-image-left .container{max-width:1180px!important;}
.home .general-section-image-left .columns{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:56px!important;
  align-items:center!important;
}
.home .general-section-image-left .general-section-media{
  position:relative!important;
  border-radius:24px!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#eef3ff,#fff)!important;
  box-shadow:0 22px 55px rgba(8,19,49,.10)!important;
}
.home .general-section-image-left .general-section-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(6,18,41,0) 55%,rgba(6,18,41,.18) 100%);
  pointer-events:none;
}
.home .general-section-image-left .general-section-img{
  width:100%!important;
  min-height:310px!important;
  object-fit:cover!important;
  border-radius:24px!important;
  box-shadow:none!important;
}
.home .general-section-image-left .column-content{
  padding:22px 0!important;
}
.home .general-section-image-left .section-title{
  font-size:clamp(34px,3vw,46px)!important;
  line-height:1.12!important;
  letter-spacing:-.035em!important;
  color:#101b48!important;
  margin-bottom:18px!important;
}
.home .general-section-image-left .section-intro,
.home .general-section-image-left .section-intro p{
  color:#5f6b82!important;
  font-size:16px!important;
  line-height:1.75!important;
}
.home .general-section-title-left,
.home .general-section-image-right{
  padding-top:36px!important;
  padding-bottom:34px!important;
}
.home .general-section-title-left .section-title,
.home .general-section-image-right .section-title{
  color:#101b48!important;
  letter-spacing:-.035em!important;
  font-size:clamp(32px,3vw,44px)!important;
}
.home .general-section-title-left .section-intro,
.home .general-section-title-left .section-intro p,
.home .general-section-image-right .section-intro,
.home .general-section-image-right .section-intro p{
  color:#5f6b82!important;
  font-size:16px!important;
  line-height:1.75!important;
}

/* Footer: closer to generated dark SaaS footer */
footer.site-footer{
  margin-top:0!important;
  padding:70px 40px 28px!important;
  background:radial-gradient(circle at 18% 0%,rgba(49,92,255,.16),transparent 28%),linear-gradient(135deg,#061229 0%,#071936 100%)!important;
  color:rgba(255,255,255,.82)!important;
}
footer.site-footer .container{max-width:1210px!important;}
footer.site-footer .footer-top{
  display:grid!important;
  grid-template-columns:1.15fr 2fr!important;
  gap:70px!important;
  align-items:start!important;
  padding-bottom:46px!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
}
footer.site-footer .footer-brand{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  flex-wrap:wrap!important;
  margin-bottom:18px!important;
}
footer.site-footer .footer-logo{max-width:178px!important;height:auto!important;filter:none!important;}
footer.site-footer .site-title{color:#fff!important;font-size:24px!important;font-weight:800!important;text-decoration:none!important;}
footer.site-footer .footer-badge{
  background:#fff!important;
  color:#061229!important;
  border-radius:999px!important;
  font-size:11px!important;
  font-weight:800!important;
  padding:6px 10px!important;
}
footer.site-footer .footer-menu .menu,
footer.site-footer .footer-menu__list{
  display:flex!important;
  justify-content:flex-end!important;
  gap:44px!important;
  flex-wrap:wrap!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
footer.site-footer .footer-menu a,
footer.site-footer .legal-menu a{
  color:rgba(255,255,255,.80)!important;
  font-size:14px!important;
  font-weight:650!important;
  text-decoration:none!important;
}
footer.site-footer .footer-menu a:hover,
footer.site-footer .legal-menu a:hover{color:#fff!important;}
footer.site-footer .footer-bottom{
  display:grid!important;
  grid-template-columns:1fr auto!important;
  gap:30px!important;
  align-items:center!important;
  padding-top:28px!important;
}
footer.site-footer .site-copyright{font-size:13px!important;color:rgba(255,255,255,.62)!important;}
footer.site-footer .legal-menu .menu,
footer.site-footer .legal-menu__list{
  display:flex!important;
  gap:24px!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
footer.site-footer::before{
  content:"Helping users compare internet options with a simple, secure address lookup.";
  display:block;
  max-width:1210px;
  margin:0 auto -42px;
  padding-top:76px;
  color:rgba(255,255,255,.64);
  font-size:14px;
  line-height:1.65;
  width:300px;
  transform:translateX(calc(-50vw + 190px));
}

@media (max-width:1024px){
  .home .hero-section h1{font-size:clamp(40px,6vw,52px)!important;}
  .home .hero-section .column-content{max-width:620px!important;}
  .home .internet-providers-section .providers-list{grid-template-columns:1fr!important;max-width:760px!important;}
  .home .internet-providers-section .provider-card:not(.provider-card--featured) .provider-row,
  .home .internet-providers-section .provider-row{grid-template-columns:120px minmax(0,1fr)!important;grid-template-areas:"logo content" "cta cta"!important;}
  .home .internet-providers-section .provider-col-logo{grid-area:logo!important;}
  .home .internet-providers-section .provider-col-content{grid-area:content!important;}
  .home .internet-providers-section .provider-col-cta{grid-area:cta!important;}
  .home .general-section-image-left .columns{grid-template-columns:1fr!important;gap:28px!important;}
  footer.site-footer::before{display:none!important;}
  footer.site-footer .footer-top{grid-template-columns:1fr!important;gap:30px!important;}
  footer.site-footer .footer-menu .menu,footer.site-footer .footer-menu__list{justify-content:flex-start!important;}
}
@media (max-width:767px){
  .home #masthead{padding:12px 22px!important;min-height:70px!important;margin-bottom:-70px!important;}
  .home .hero-section{padding-top:86px!important;}
  .home .hero-section h1{font-size:38px!important;line-height:1.13!important;}
  .home .hero-section .section-intro p{font-size:16px!important;}
  .home .internet-providers-section .provider-row,
  .home .internet-providers-section .provider-card:not(.provider-card--featured) .provider-row{display:block!important;padding:22px!important;}
  .home .internet-providers-section .provider-logo{margin-bottom:16px!important;width:112px!important;height:76px!important;}
  .home .internet-providers-section .provider-actions{grid-template-columns:1fr!important;align-items:start!important;}
  .home .internet-providers-section .provider-col-cta .provider-cta{width:100%!important;}
  .home .general-section-image-left .section-title{font-size:32px!important;}
  footer.site-footer{padding:56px 22px 26px!important;}
  footer.site-footer .footer-menu .menu,footer.site-footer .footer-menu__list{display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px 22px!important;}
  footer.site-footer .footer-bottom{grid-template-columns:1fr!important;}
  footer.site-footer .legal-menu .menu,footer.site-footer .legal-menu__list{flex-wrap:wrap!important;}
}

/* === IAM refinement pass: friendlier non-hero content colors + improved content/footer layouts === */
:root{
  --iam-ink:#172554;
  --iam-heading:#1e2a5a;
  --iam-body:#475467;
  --iam-muted:#667085;
  --iam-soft:#f7f9ff;
  --iam-soft-2:#eef4ff;
  --iam-line:#e6ebf5;
  --iam-blue:#315cff;
  --iam-blue-2:#5b4dff;
}

.home main h2:not(.hero-section h2),
.home main h3:not(.hero-section h3),
.home main .section-title:not(.hero-section .section-title){
  color:var(--iam-heading)!important;
  font-weight:760!important;
  letter-spacing:-.025em!important;
}
.home main p:not(.hero-section p),
.home main li:not(.hero-section li),
.home main .section-intro:not(.hero-section .section-intro),
.home main .section-intro p:not(.hero-section .section-intro p){
  color:var(--iam-body)!important;
}
.home main a:not(.hero-section a):not(.primary-btn):not(.provider-cta):not(.section-button){
  color:var(--iam-blue)!important;
}

/* Softer, more readable general image-left sections */
.home .general-section-image-left{
  position:relative!important;
  padding:104px 0 70px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%)!important;
  overflow:hidden!important;
}
.home .general-section-image-left::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-220px;
  top:34px;
  background:radial-gradient(circle,rgba(49,92,255,.085),transparent 67%);
  pointer-events:none;
}
.home .general-section-image-left .columns{
  position:relative!important;
  grid-template-columns:minmax(380px,.92fr) minmax(0,1.08fr)!important;
  gap:64px!important;
}
.home .general-section-image-left .column-media{
  position:relative!important;
}
.home .general-section-image-left .column-media::before{
  content:"";
  position:absolute;
  left:-18px;
  bottom:-18px;
  width:58%;
  height:58%;
  border-radius:28px;
  background:linear-gradient(135deg,rgba(49,92,255,.16),rgba(91,77,255,.08));
  z-index:0;
}
.home .general-section-image-left .general-section-media{
  position:relative!important;
  z-index:1!important;
  border:1px solid rgba(226,232,244,.95)!important;
  border-radius:28px!important;
  padding:10px!important;
  background:#fff!important;
  box-shadow:0 24px 70px rgba(23,37,84,.12)!important;
}
.home .general-section-image-left .general-section-media::after{
  border-radius:22px!important;
  background:linear-gradient(180deg,rgba(23,37,84,0) 58%,rgba(23,37,84,.10) 100%)!important;
}
.home .general-section-image-left .general-section-img{
  display:block!important;
  min-height:340px!important;
  border-radius:20px!important;
  object-fit:cover!important;
}
.home .general-section-image-left .column-content{
  max-width:620px!important;
  padding:0!important;
}
.home .general-section-image-left .section-title{
  color:var(--iam-heading)!important;
  font-size:clamp(30px,2.6vw,42px)!important;
  line-height:1.14!important;
  margin-bottom:20px!important;
}
.home .general-section-image-left .section-title::after{
  content:"";
  display:block;
  width:64px;
  height:4px;
  margin-top:18px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--iam-blue),var(--iam-blue-2));
}
.home .general-section-image-left .section-intro{
  font-size:16px!important;
  line-height:1.8!important;
}
.home .general-section-image-left .section-intro p{
  margin-bottom:16px!important;
}
.home .general-section-image-left .section-buttons{margin-top:28px!important;}

/* Full width content sections: make long copy feel like a designed content block */
.home .general-content-section.full-width{
  padding:48px 0 54px!important;
  background:#fff!important;
}
.home .general-content-section.full-width .container{
  max-width:1180px!important;
  position:relative!important;
  padding:0 28px!important;
}
.home .general-content-section.full-width .container::before{
  content:"";
  position:absolute;
  inset:0 28px;
  border-radius:28px;
  background:linear-gradient(135deg,#f8fbff 0%,#ffffff 54%,#f4f7ff 100%);
  border:1px solid var(--iam-line);
  box-shadow:0 18px 50px rgba(23,37,84,.06);
  z-index:0;
}
.home .general-content-section.full-width .section-title,
.home .general-content-section.full-width .section-intro,
.home .general-content-section.full-width .section-buttons,
.home .general-content-section.full-width .general-section-media{
  position:relative!important;
  z-index:1!important;
}
.home .general-content-section.full-width .section-title{
  max-width:900px!important;
  padding:46px 48px 0!important;
  margin:0!important;
  font-size:clamp(30px,2.5vw,42px)!important;
  line-height:1.15!important;
  color:var(--iam-heading)!important;
}
.home .general-content-section.full-width .section-title::before{
  content:"";
  display:block;
  width:54px;
  height:4px;
  margin-bottom:18px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--iam-blue),var(--iam-blue-2));
}
.home .general-content-section.full-width .section-intro{
  padding:18px 48px 48px!important;
  max-width:none!important;
  color:var(--iam-body)!important;
  font-size:16px!important;
  line-height:1.78!important;
  column-count:2;
  column-gap:54px;
}
.home .general-content-section.full-width .section-intro p{
  break-inside:avoid;
  margin-top:0!important;
  margin-bottom:16px!important;
}
.home .general-content-section.full-width .section-intro ul,
.home .general-content-section.full-width .section-intro ol{
  break-inside:avoid;
  padding-left:22px!important;
}
.home .general-content-section.full-width .section-buttons{
  padding:0 48px 48px!important;
}
.home .general-content-section.full-width .general-section-media{
  margin:0 48px 48px!important;
  border-radius:24px!important;
  overflow:hidden!important;
  box-shadow:0 16px 44px rgba(23,37,84,.10)!important;
}
.home .general-content-section.full-width .general-section-img{
  width:100%!important;
  border-radius:24px!important;
}

/* Image-right/title-left sections get the same friendly typography */
.home .general-section-title-left,
.home .general-section-image-right{
  background:#fff!important;
}
.home .general-section-title-left .container,
.home .general-section-image-right .container{
  max-width:1180px!important;
}
.home .general-section-title-left .section-title,
.home .general-section-image-right .section-title{
  color:var(--iam-heading)!important;
  font-size:clamp(30px,2.5vw,42px)!important;
  line-height:1.16!important;
}
.home .general-section-title-left .section-intro,
.home .general-section-image-right .section-intro{
  color:var(--iam-body)!important;
  line-height:1.78!important;
}

/* Footer rebuild: cleaner, easier to read, no awkward pseudo copy placement */
footer.site-footer{
  position:relative!important;
  padding:76px 32px 30px!important;
  background:radial-gradient(circle at 12% 0%,rgba(49,92,255,.22),transparent 30%),linear-gradient(135deg,#061229 0%,#081936 58%,#071229 100%)!important;
}
footer.site-footer::before{display:none!important;content:none!important;}
footer.site-footer .container{max-width:1200px!important;}
footer.site-footer .footer-top{
  display:grid!important;
  grid-template-columns:minmax(260px,.9fr) minmax(0,1.6fr)!important;
  gap:70px!important;
  padding-bottom:46px!important;
}
footer.site-footer .footer-brand{
  align-items:center!important;
  margin-bottom:16px!important;
}
footer.site-footer .footer-logo{max-width:190px!important;}
footer.site-footer .footer-brand::after{
  content:"Compare internet providers, speeds and plans with a simple address lookup.";
  display:block;
  flex-basis:100%;
  max-width:310px;
  margin-top:18px;
  color:rgba(255,255,255,.68);
  font-size:14px;
  line-height:1.65;
  font-weight:500;
}
footer.site-footer .footer-menu .menu,
footer.site-footer .footer-menu__list{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(120px,1fr))!important;
  gap:14px 34px!important;
  justify-content:stretch!important;
}
footer.site-footer .footer-menu li,
footer.site-footer .legal-menu li{list-style:none!important;}
footer.site-footer .footer-menu a{
  display:inline-flex!important;
  padding:4px 0!important;
  color:rgba(255,255,255,.72)!important;
  font-size:14px!important;
  font-weight:600!important;
}
footer.site-footer .footer-menu a:hover{color:#fff!important;transform:translateX(2px);}
footer.site-footer .footer-bottom{
  border-top:1px solid rgba(255,255,255,.11)!important;
  padding-top:26px!important;
}
footer.site-footer .site-copyright,
footer.site-footer .legal-menu a{
  color:rgba(255,255,255,.62)!important;
}
footer.site-footer .legal-menu a:hover{color:#fff!important;}

@media (max-width:1024px){
  .home .general-section-image-left .columns{grid-template-columns:1fr!important;gap:34px!important;}
  .home .general-section-image-left .column-content{max-width:780px!important;}
  .home .general-content-section.full-width .section-intro{column-count:1!important;}
  footer.site-footer .footer-top{grid-template-columns:1fr!important;gap:34px!important;}
  footer.site-footer .footer-menu .menu,footer.site-footer .footer-menu__list{grid-template-columns:repeat(3,minmax(130px,1fr))!important;}
}
@media (max-width:767px){
  .home .general-section-image-left{padding:64px 0 38px!important;}
  .home .general-section-image-left .general-section-img{min-height:235px!important;}
  .home .general-section-image-left .section-title{font-size:30px!important;}
  .home .general-content-section.full-width{padding:28px 0 34px!important;}
  .home .general-content-section.full-width .container{padding:0 18px!important;}
  .home .general-content-section.full-width .container::before{inset:0 18px;border-radius:22px;}
  .home .general-content-section.full-width .section-title{padding:32px 28px 0!important;font-size:29px!important;}
  .home .general-content-section.full-width .section-intro{padding:16px 28px 34px!important;font-size:15px!important;}
  .home .general-content-section.full-width .section-buttons{padding:0 28px 34px!important;}
  .home .general-content-section.full-width .general-section-media{margin:0 28px 34px!important;}
  footer.site-footer{padding:58px 22px 28px!important;}
  footer.site-footer .footer-menu .menu,footer.site-footer .footer-menu__list{grid-template-columns:1fr 1fr!important;gap:12px 20px!important;}
}

/* === Internet At My Address v1.0.1: blue-accent color sync + overlapping provider logo bar === */
:root{
  --iam-deep:#061229;
  --iam-deep-2:#081a3d;
  --iam-deep-3:#0b214f;
  --iam-primary:#315cff;
  --iam-primary-2:#6258ff;
  --iam-primary-soft:#eef3ff;
  --iam-heading:#0d1b45;
  --iam-body:#58657e;
  --iam-line:#e5ebf7;
}

body.home{
  color:var(--iam-body)!important;
  background:#fff!important;
}

/* Keep all accents in the blue/purple family only */
.home .btn,
.home .primary-btn,
.home .section-button,
.home .zip-search button,
.home .zip-btn,
.home .provider-cta,
.home .provider-col-cta .provider-cta,
.home .location-search-cta-section .zip-btn,
footer.site-footer input[type="submit"],
footer.site-footer button,
footer.site-footer .button{
  background:linear-gradient(135deg,#315cff,#6258ff)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 14px 30px rgba(49,92,255,.26)!important;
}

.home .btn:hover,
.home .primary-btn:hover,
.home .section-button:hover,
.home .zip-search button:hover,
.home .zip-btn:hover,
.home .provider-cta:hover,
.home .provider-col-cta .provider-cta:hover,
footer.site-footer input[type="submit"]:hover,
footer.site-footer button:hover,
footer.site-footer .button:hover{
  background:linear-gradient(135deg,#254fff,#554cff)!important;
  transform:translateY(-1px);
  box-shadow:0 18px 38px rgba(49,92,255,.32)!important;
}

.home #masthead .header-cta,
.home #masthead .header-cta-wrap a,
.home #masthead .custom-logo-link + a,
.home #masthead a[href*="availability"]{
  background:linear-gradient(135deg,#315cff,#6258ff)!important;
  color:#fff!important;
  border-radius:999px!important;
  border:0!important;
}

.home .section-title,
.home .how-it-works-section .section-title,
.home .map-provider-section .section-title,
.home .internet-providers-section .section-title,
.home .general-section-image-left .section-title,
.home .general-content-section.full-width .section-title,
.home .faq-section .section-title{
  color:var(--iam-heading)!important;
}

.home .section-intro,
.home .section-intro p,
.home .general-section-image-left .section-intro,
.home .general-content-section.full-width .section-intro,
.home .faq-section .section-intro{
  color:var(--iam-body)!important;
}

/* Hero uses the new dark blue palette from the approved mockup */
.home .hero-section{
  position:relative!important;
  overflow:visible!important;
  background:
    radial-gradient(circle at 72% 20%,rgba(49,92,255,.22),transparent 34%),
    radial-gradient(circle at 14% 0%,rgba(98,88,255,.18),transparent 30%),
    linear-gradient(135deg,#061229 0%,#071936 48%,#061229 100%)!important;
  padding-bottom:76px!important;
  z-index:2!important;
}
.home .hero-section::after{
  background:linear-gradient(90deg,#061229 0%,rgba(6,18,41,.88) 36%,rgba(6,18,41,.18) 67%,rgba(6,18,41,.82) 100%)!important;
}
.home .hero-section h1 span,
.home .hero-section .section-title span,
.home .hero-section strong{
  color:#6674ff!important;
}
.home .hero-benefit-card::before,
.home .zip-search::before,
.home .map-provider-features li::before,
.home .section-title::before,
.home .section-title::after{
  border-color:rgba(49,92,255,.36)!important;
}
.home .hero-benefit-card::before,
.home .map-provider-features li::before{
  background:linear-gradient(135deg,#315cff,#6258ff)!important;
  color:#fff!important;
}

/* Provider/logo bar: intentionally overlaps hero and the next white section */
.home .hero-section .providers-inline-wrap{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  bottom:-32px!important;
  transform:translateX(-50%)!important;
  width:min(1180px,calc(100% - 48px))!important;
  max-width:1180px!important;
  margin:0!important;
  z-index:40!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  align-items:center!important;
  gap:28px!important;
  padding:18px 28px!important;
  border-radius:18px!important;
  background:#fff!important;
  border:1px solid rgba(229,235,247,.95)!important;
  box-shadow:0 22px 55px rgba(6,18,41,.18)!important;
}
.home .hero-section .providers-inline-text{
  color:#0d1b45!important;
  font-weight:800!important;
  line-height:1.15!important;
  font-size:13px!important;
  max-width:132px!important;
}
.home .hero-section .providers-inline-logos{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:26px!important;
  min-width:0!important;
}
.home .hero-section .provider-inline-logo{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:70px!important;
}
.home .hero-section .provider-inline-logo img{
  max-height:34px!important;
  width:auto!important;
  max-width:118px!important;
  object-fit:contain!important;
}
.home .hero-section .provider-inline-more{
  color:#315cff!important;
  font-weight:800!important;
  white-space:nowrap!important;
}

/* Give the section below enough breathing room for the overlapping bar */
.home .hero-section + .how-it-works-section,
.home .how-it-works-section:first-of-type{
  padding-top:102px!important;
}
.home .how-it-works-section{
  background:#fff!important;
}
.home .how-it-works-section .icon-grid-item .icon-wrap,
.home .how-it-works-section .step-number,
.home .map-provider-marker--text{
  background:linear-gradient(135deg,#315cff,#6258ff)!important;
  color:#fff!important;
}
.home .how-it-works-section .icon-grid-item:not(:last-child)::after{
  border-color:#315cff!important;
  opacity:.48!important;
}

/* Map/provider section color sync */
.home .map-provider-section{
  background:#fff!important;
}
.home .map-provider-card{
  background:linear-gradient(135deg,#061229 0%,#0a1e49 100%)!important;
  color:#fff!important;
  box-shadow:0 24px 60px rgba(6,18,41,.16)!important;
}
.home .map-provider-card .section-title,
.home .map-provider-card h2,
.home .map-provider-card h3,
.home .map-provider-card .section-intro,
.home .map-provider-card p,
.home .map-provider-card li{
  color:#fff!important;
}
.home .map-provider-map--fallback path{fill:#dfe7fa!important;stroke:#fff!important;}
.home .map-provider-marker{
  border-color:rgba(49,92,255,.20)!important;
  box-shadow:0 20px 44px rgba(6,18,41,.18)!important;
}

/* Provider cards and links use approved blue accent */
.home .internet-providers-section{
  background:linear-gradient(180deg,#f5f7fd 0%,#f8faff 100%)!important;
}
.home .internet-providers-section .provider-card,
.home .internet-providers-section .provider-row,
.home .internet-providers-section .provider-item{
  border-color:var(--iam-line)!important;
}
.home .internet-providers-section a:not(.provider-cta),
.home .internet-providers-section .view-all-providers,
.home .internet-providers-section .providers-section-link{
  color:#315cff!important;
}
.home .internet-providers-section .recommended-badge,
.home .internet-providers-section .provider-badge,
.home .internet-providers-section [class*="badge"]{
  background:linear-gradient(135deg,#315cff,#6258ff)!important;
  color:#fff!important;
}

/* General cards: subtle blue decoration only, no pink */
.home .general-section-image-left .column-media::before,
.home .general-section-image-right .column-media::before{
  background:linear-gradient(135deg,rgba(49,92,255,.16),rgba(98,88,255,.08))!important;
}
.home .general-section-image-left .section-title::after,
.home .general-content-section.full-width .section-title::before,
.home .general-section-title-left .section-title::before,
.home .general-section-image-right .section-title::after{
  background:linear-gradient(90deg,#315cff,#6258ff)!important;
}
.home .general-content-section.full-width .container::before{
  background:linear-gradient(135deg,#f8fbff 0%,#fff 52%,#f2f5ff 100%)!important;
}
.home a,
.home .read-more,
.home .section-link{
  color:#315cff;
}

/* CTA block + FAQ */
.home .location-search-cta-section .section-title,
.home .location-search-cta-section .section-intro,
.home .location-search-cta-section p{
  color:#fff!important;
}
.home .faq-section .faqs details[open],
.home .faq-section .faqs details:hover{
  border-color:rgba(49,92,255,.30)!important;
  box-shadow:0 16px 36px rgba(49,92,255,.08)!important;
}
.home .faq-section summary::after,
.home .faq-section summary .icon,
.home .faq-section .faq-icon{
  color:#315cff!important;
}

/* Footer blue palette */
footer.site-footer{
  background:
    radial-gradient(circle at 12% 0%,rgba(49,92,255,.20),transparent 28%),
    radial-gradient(circle at 88% 12%,rgba(98,88,255,.12),transparent 28%),
    linear-gradient(135deg,#061229 0%,#081936 58%,#061229 100%)!important;
}
footer.site-footer a:hover,
footer.site-footer .footer-menu a:hover,
footer.site-footer .legal-menu a:hover{
  color:#dfe5ff!important;
}
footer.site-footer input[type="email"],
footer.site-footer input[type="text"]{
  border-color:rgba(255,255,255,.20)!important;
}

@media (max-width:1024px){
  .home .hero-section{padding-bottom:82px!important;}
  .home .hero-section .providers-inline-wrap{
    bottom:-34px!important;
    width:calc(100% - 36px)!important;
    padding:16px 20px!important;
    gap:20px!important;
  }
  .home .hero-section + .how-it-works-section,
  .home .how-it-works-section:first-of-type{
    padding-top:108px!important;
  }
}

@media (max-width:767px){
  .home .hero-section{
    padding-bottom:96px!important;
    overflow:visible!important;
  }
  .home .hero-section .providers-inline-wrap{
    bottom:-54px!important;
    width:calc(100% - 32px)!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding:14px 16px!important;
    border-radius:16px!important;
  }
  .home .hero-section .providers-inline-text{
    max-width:none!important;
    text-align:left!important;
    font-size:12px!important;
  }
  .home .hero-section .providers-inline-logos{
    justify-content:flex-start!important;
    gap:22px!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:4px!important;
    scrollbar-width:none!important;
  }
  .home .hero-section .providers-inline-logos::-webkit-scrollbar{display:none!important;}
  .home .hero-section .provider-inline-logo{min-width:74px!important;}
  .home .hero-section .provider-inline-logo img{max-height:28px!important;max-width:96px!important;}
  .home .hero-section .provider-inline-more{min-width:max-content!important;}
  .home .hero-section + .how-it-works-section,
  .home .how-it-works-section:first-of-type{
    padding-top:128px!important;
  }
}
