/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/


/*
COLORS:
Light Blue: #caf0f8
Blue: #0077b6
Nevy Blue: #03045e
Very light blue: #edf6ff

Footer :
#010246
#00013a
#000128
*/

/* Shortcode */
.cta-call-btn-wrapper a:hover {
    background: #00013a !important;
}

/* Home Page */
.isf-wrapper {
    max-width: 275px;
    margin: 0 auto;
}
.cta-style-1 button:hover {
    background: #00013a;
}
.ico-style-1 {
    background: #0077b6;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
	margin-top: -55px;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
	border: 2px solid #03045e;
}
.provider-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 40px;
	max-width: 1250px;
	margin: 0 auto;
	text-align: center;
}
.provider a {
	background: #f7f7f7;
    padding: 15px;
    border-radius: 5px;
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
    text-decoration: none !important;
	display: inline-block;
}
.provider img {
	width: 200px;
	height: auto;
	filter: grayscale(100%);
	transition: filter 0.3s ease;
}
.provider img:hover {
	filter: grayscale(0%);
}
.provider h4 {
	margin-top: 10px;
    margin-bottom: 0px;
	font-size: 1rem;
	color: #333;
}

.home-cities a {
	text-decoration: none !important;
}

.home-review-wrapper .wpmtst-testimonial-inner.testimonial-inner {
    background: #f7f7fa;
    border-radius: 10px;
	border: 1px solid #ddd;
}
.home-review-wrapper .strong-view.wpmtst-modern .wpmtst-testimonial-image img {
    border-radius: 5px;
    margin-top: 10px;
}

/* Footer */
footer .widget-title {
    color: #dddddd;
}
footer a {
    color: #dddddd;
}
footer a:hover, footer a:active, footer a:focus  {
    color: #ffffff;
}

/* Sidebar */
.zipcode-find-wrapper {
    background: #03045e;
    text-align: center;
    padding: 25px;
    color: #dddddd;
}
.zipcode-find-wrapper h3 {
    color: #ffffff;
	margin-bottom: 15px;
}
.zipcode-find-wrapper form.internet-search-form #zipcode {
    max-width: 100%;
}
.zipcode-find-wrapper button {
    width: 100%;
    background: #0077b6;
}
.zipcode-find-wrapper button:hover {
    background: #0472ad;
}

/* Table */
.table-striped tbody tr:nth-of-type(odd) {
    background-color: #f3f3f3;
}
.table-hover tbody tr:hover {
    background-color: #edf6ff; /* slightly darker on hover */
}
.table-bordered {
    border: 1px solid #ddd;
}
.table-bordered td,
.table-bordered th {
    border: 1px solid #ddd;
}
.table-responsive {
    width: 100%;
    overflow-x: auto;
}

/* CPT Providers: single post page */
/*
.single-providers .ast-article-single {
    max-width: 1250px;
    margin: 0 auto;
    padding: 40px;
}
*/
table.style-1 thead {
    background: #0077b6;
    color: #ffffff;
}
.single-providers nav.navigation.post-navigation {
    display: none;
}
.cta-section button:hover {
    background: #00013a;
}
.providers-list-style1 ul {
    column-count: 4;
}
@media (max-width: 1024px) {
    .providers-list-style1 ul {
        column-count: 3;
    }
}

@media (max-width: 767px) {
    .providers-list-style1 ul {
        column-count: 2;
    }
}

@media (max-width: 479px) {
    .providers-list-style1 ul {
        column-count: 1;
    }
}


/* Single Internet CPT page */
.ctm-width-100 {
	width: 100%;
}
#into-sec {
	z-index: 5;
	position: relative;
    padding: 115px 20px;
    background: #edf6ff;
    background: url(https://www.compareinternethub.com/wp-content/uploads/2025/10/155962482_8c98fd81-e1e2-4839-9aac-52be56c5d3cb-2560px.jpg);
    background-size: contain;
    background-position: bottom center;
}
#into-sec::before {
    content: '';
    background: #ffffffa8;
    top: 0px;
    bottom: 0px;
    position: absolute;
    right: 0px;
    left: 0px;
    z-index: -1; 
}
#into-sec h1 {
    text-align: center;
}
@media (max-width: 767px) {
    #into-sec {
		background-size: cover;
	}
}

#details-sec {
    padding: 40px 0px;
}
#details-sec .filter-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin: 20px 10px;
    justify-content: center;
}
.isp-list {
    border: 1px solid #03045e;
    border-radius: 5px;
    overflow: hidden;
}
.isp-list:not(:last-child) {
    margin-bottom: 10px;
}
.isp-intro {
    display: flex;
	gap: 15px;
    flex-wrap: wrap;
	align-items: center;
    justify-content: space-between;
	background: #03045e;
    color: #ffffff;
    padding: 10px 20px;
    font-weight: bold;
}
.isp-details {
    display: flex;
	gap: 15px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-around;
    padding: 20px 5px;
}
a.isp-btn-style1 {
    display: block;
    background: #03045e;
    color: #ffffff;
    text-align: center;
    padding: 10px 15px;
    border-radius: 5px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
}
a.isp-btn-style1:hover {
    background: #0077b6;
}
a.isp-btn-style2 {
    display: block;
	background: #ffffff;
	border: 2px solid #03045e;
    color: #03045e;
    text-align: center;
    padding: 8px 15px;
    border-radius: 5px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
}
a.isp-btn-style2:hover {
    background: #0077b6;
	border-color: #0077b6;
    color: #ffffff;
}
.isp-cta a.isp-btn-style1 {
	margin-bottom: 10px;
}
.isp-con {
    display: block;
    font-weight: bold;
}
.isp-price, .isp-speed {
    font-weight: bold;
    font-size: 40px;
}
.isp-note {
    padding: 10px 20px;
    background: #efefef;
}
#internet-tabs {
    border: none;
    padding: 0px;
	margin-bottom: 20px;
}
#internet-tabs ul.ui-tabs-nav {
    background: transparent;
    border: none;
	padding: 0px;
}
#internet-tabs .ui-tabs-panel {
    border: 1px solid #ddd !important;
}
#internet-tabs .ui-tabs-active .ui-tabs-anchor {
    background: #0077b6;
    color: #ffffff;
}
#internet-tabs .ui-state-active, #internet-tabs .ui-widget-content .ui-state-active, #internet-tabs .ui-widget-header .ui-state-active, #internet-tabs a.ui-button:active, #internet-tabs .ui-button:active, #internet-tabs .ui-button.ui-state-active:hover {
	border: 1px solid #0077b6;
}
#residential table, #business table {
    text-align: center;
	margin-bottom: 0px;
}
#residential thead, #business thead, #fast-isp-wrapper thead {
    background: #0077b6;
    color: #ffffff;
}
a.isp-page {
    color: #0077b6;
}
a.isp-page:hover {
    text-decoration: underline;
}
#connection-type-sec {
    padding: 20px 0px;
}
#fast-isp-wrapper table, #fast-isp-wrapper p {
	margin-bottom: 0px;
}
#stores-sec {
    padding: 20px 0px;
}
#isp-stores-wrapper .store-filter-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
    margin: 20px 10px;
    justify-content: center;
}
#isp-stores-wrapper .store-filter-result-wrapper {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
#isp-stores-wrapper .store-loc {
    background: #f3f3f3;
    padding: 20px;
    border-radius: 3px;
}
#isp-stores-wrapper address {
    margin-bottom: 0px;
	font-style: normal;
}
#isp-stores-wrapper address a {
    font-weight: bold;
} 
#zipcodes-sec {
    padding: 20px 0px 40px;
}
#zip-codes-wrapper .zip-code-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
    gap: 10px;
    padding: 0;
    margin: 0;
    list-style: none;
}
#zip-codes-wrapper .zip-code-list li {
    text-align: center;
    background: #f3f3f3;
	border-radius: 3px;
}
#zip-codes-wrapper .zip-code-list a {
    padding: 5px 10px;
    display: block;
    color: #1e293b;
}

#speed-need-sec {
    padding: 20px 0px;
}
.speed-range-wrap {
    border: 1px solid #ddd;
    padding: 16px;
    margin-bottom: 20px;
    border-radius: 8px;
    background: #f9f9f9;
	overflow: hidden;
}
.speed-range-wrap h3 {
    background: #0077b6;
    color: #fff;
    margin: -17px -17px 20px -17px;
    padding: 10px 17px;
}
.speed-range-wrap h4 {
    margin-bottom: 8px;
    color: #27ae60;
}
.speed-range-wrap h4.do-not {
    color: #df3a4f;
}
.speed-range-wrap ul {
    margin-top: 0;
    padding-left: 20px;
    margin: 0px;
}
.speed-range-wrap ul li {
    margin-bottom: 5px;
}
#speed-need-wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 10px;
    padding: 0;
    margin: 0;
    list-style: none;
}

@media (min-width: 768px) {
    .speed-range-wrap ul.do {
		min-height: 300px;
	}
}

/* Zipcode page */
.zipcode-template #primary {
	width: 100%;
}
.zipcode-template .ast-archive-entry-banner {
	display: none;
}
.zipcode-template.ast-separate-container {
	background-color: #ffffff;
}
.zipcode-template #primary {
    margin: 0px !important;
	padding: 0;
}
.zipcode-template .ast-container {
    max-width: 100%;
    padding: 0px !important;
}
.zipcode-template section .ast-container, .zipcode-template header .ast-container {
    max-width: 1250px;
    padding: 0em 1.08em !important;
}