/*
 * GoTroppo site-wide custom CSS (plugin-owned).
 * Migrated 2026-07-03 from WP Customizer "Additional CSS" (verbatim, 15702 bytes).
 * Verbatim archive copy: customizer-backup-2026-07-03.css (do not edit the archive).
 * Enqueued site-wide at wp_enqueue_scripts priority 999 (handle: nbn-site-custom)
 * by services/core/class-hook-registrar.php to preserve the Customizer late-cascade position.
 * Cache busting is via filename rename (Perfmatters strips ?ver=): bump -v1 on change.
 */
.animated-entrance > * { 
opacity: 100!important;
}
.nbn-address-search-container[data-theme="premium"] {
	background: transparent!important;
	
}

.nbn-popular-tag {
	margin: 78px 0 0 0;
	width: 180px!important;
}

#nbn-step-2 div.nbn-popular-badge {
	margin: 60px 0 0 0;
	
}
.nbn-plan-category-badge,.nbn-plan-filters {
display:none!important;
}
.nbn-plan-details { 
margin: 0px 0 0 0!important;
	top: 0px!important;
}	

.nbn-payment-filters button {
margin: 0 5px!important;
}
.nbn-loading-overlay {
display: none;
}

.nbn-search-subtitle {
	margin-bottom: 5px;
	padding-bottom: 20px;
	
}

.nbn-search-main-card {
	transform: none!important;
	
}

.nbn-search-main-card {
margin: 0px!important;
	
}
.nbn-floating-label {
	
	display: none!important;
}

.woocommerce-notices-wrapper {
	top:50px;
	position:relative;
	
}

body.nbn-cart-visible {
	padding-top:0px!important;
	
}

.nbn-plugin-wrapper {
    min-height: 0px !important;
    background-color:!important;
}

/* Override background for /nbn-plans-order/ page */
body[class*="nbn-plans-order"] .nbn-plugin-wrapper,
body.page-template-nbn-plans-order .nbn-plugin-wrapper,
[class*="nbn-plans-order"] .nbn-plugin-wrapper {
    background-color: white!important;
    /* Or specify a specific color like: background-color: #ffffff !important; */
}
.nbn-modem-card {
    width: calc(33.333% - 20px);
    border-radius: 8px;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.1);
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    background-color: transparent!important;
    border: 1px white solid;
}

.nbn-modem-price {
	color: white!important;
}
.nbn-modem-features h4 {
	color: white!important;
	
}

.nbn-step-section-title {
	color: white;
	
}

.nbn-hardware-intro { color: white;}

.nbn-qualification-success, .nbn-qualification-success-content p { color: white;}

.nbn-address-summary { display: none;}

.nbn-qualification-success {
	border: 1px white solid;
	
}

.content-area {
	margin: 0px !important;
	
}

body.admin-bar.nbn-cart-visible {
	padding-top: 0px!important;
	
}
.nbn-plan-description, .nbn-plan-slogan, .nbn-plan-ideal {
	color: white!important;
	
}

.nbn-device-card {
	
	color:white!important;
}

.nbn-info-box {
	background:rgba(26, 26, 46, 0.9)!important;
	
}
.nbn-plan-card  { transform: none!important;}

.troppo-theme-container {
	padding-top: 100px!important;}
.nbn-plans-title h2 {
	color: white;
	
}

.nbn-plan-tier { display: none!important;}

.nbn-plan-description {
	padding: 20px;
min-height: 200px!important;
	
}

.nbn-plan-pricing {
	margin-top: 0px
}
.nbn-address-check-cta {
	display: none!important;
	
}
.nbn-features-list {
	padding-left: 0px!important;
}
.nbn-features-list img {
	max-width: 40px;
	background: white;
border-radius: 40px;
	padding: 5px;
}

.nbn-header-top { min-height: 150px!important; }

.nbn-plan-category-badge {
	font-weight: 800;
	color: #efdb61;
	background: #1f2031; 
	font-size: 20px;
	letter-spacing: 2px;
}

.nbn-features-toggle {
	color: white;
	
}

.troppo-heading .troppo-highlight {
    background: var(--troppo-gradient-sunset);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: troppoGradientShift 8s infinite;
} 

.nbn-address-input { background: #2c3566!important;
color: white!important;}

.nbn-success-icon { display:none!important;}.nbn-success-message {
	color: white!important;
	
}
.nbn-flow-content {background: initial;}
.nbn-cart-summary {background: initial!important;}
.nbn-success-message h3 { color: white;}

#menu-footer-menu-1 li a {
	color: white!important;
}
.nbn-flow-section {
	width:100%
}
.nbn-modem-card { 
	width: 100%!important;}

.nbn-toggle-icon { color: white!important;}
h3.nbn-plan-name { color: white;
font-size: 2rem;}

.modem-image { width: 100%!important;}
.modem-details, h3.modem-name, .modem-description { color: white!important;}
.modem-price { font-size: 1.6rem;
font-weight: 700;}

.nbn-plan-info-links { font-size: 1.4em;
text-align: center;
padding-bottom: 20px;
}

.nbn-plan-info-links a:hover {
	color: var(--global-palette2, #2B6CB0);
}

.nbn-plan-info-links a {
	text-decoration: none;
}

.nbn-success-message, .nbn-success-subtitle, .nbn-address-details p { color: white!important;}

.nbn-change-address {
	color: white;
}
.nbn-plan-filters { width: 100%;}

.nbn-plan-details { 
background: transparent!important;}
li.nbn-feature-item {
	text-align: left;
	
}
.nbn-plan-description { display:none!important;}
.nbn-plan-tagline { min-height: 90px;}

.nbn-users-box {
	margin-top: -30px;
	margin-bottom: 20px;
	
}

.nbn-plan-features {
	
}
input#nbn-address-input { color: white;
background-color:#100f1d;
	margin-bottom: 20px;
}
.nbn-plugin-wrapper .troppo-theme-container { 
min-height: 0vh!important;
}
.nbn-plans-base .troppo-theme-container { 
min-height: 0vh!important;
	padding-top: 0px!important;
}
.home-header .nbn-address-search, .home-header .nbn-search-subtitle {
	color: white!important;
	
}

.nbn-typical-speeds-text, .nbn-typical-speeds-indicators {
font-size: 1.1em!important;
	font-weight: 700!important;
	color: white!important;
}
.wc-block-components-product-metadata__description { display: none!important;}

.nbn-address-details { border: none!important;}
.nbn-upgrade-message { background: none!important; padding: 0!important; border: none!important;}

.nbn-qualification-info { display: none!important;}

.wc-block-components-totals-footer-item-tax { display: none; }

.nbn-modem-quantity {
	 flex-direction: column;
}

.nbn-modem-qty-btn {
	background-color: #474655;
font-size: 1.2rem;
	border-radius: 5px;
padding-top: 13px;
padding-bottom: 13px;
}
.modem-actions {
	padding-top: 0px;
	}

.modem-details {
	padding-bottom:5px;
margin-bottom: 0px;	
}

/**** PRICING PLANS ****/
.nbn-plans-grid.can-scroll-left::before, .nbn-plans-grid.can-scroll-right::after {
	position: relative !important;
}

.nbn-scroll-arrow, .nbn-plans-container .nbn-scroll-arrow, body .nbn-scroll-arrow
{
	top: 58% !important;
	padding: 0 !important;
	width: 40px !important;
  height: 40px !important;
}

/* Mobile devices: up to 767px width */
@media (max-width: 767px) {
  .nbn-flow-section {
		padding: 1rem !important;
	}
	.nbn-plan-card, .troppo-theme-container .nbn-plans-display .nbn-plan-card, .nbn-plugin-wrapper .troppo-theme-container .nbn-plans-display .nbn-plan-card, body .nbn-plugin-wrapper .nbn-plan-card, body .nbn-plans-display .nbn-plan-card {
	    min-width: 305px !important;
    max-width: 305px !important;
}
}

/* Tablet devices: 768px to 1024px width */
@media (min-width: 768px) and (max-width: 1024px) {
  .nbn-flow-section {
		padding: 1rem !important;
	}
	
.nbn-typical-speeds-indicators { 
gap:.5em!important;
}
	
}
.nbn-critical-info-statement a {  
border: 1px solid white;
	color: white!important;
}

.includes_tax { display: none!important;}

.woocommerce-NoticeGroup { display: show;}

#post-3840 .nbn-flow-content > div.nbn-flow-section.nbn-plans-section > .nbn-plans-container .nbn-plan-card{
	padding: 25px 0 0 0!important;
	
}


.nbn-promotional-badge {
	top: 0px!important;
	
}
.woocommerce-shipping-totals.shipping th {
    font-size: 0; /* Hide original text */
}

.woocommerce-shipping-totals.shipping th::before {
    content: "Shipping";
    font-size: 1rem; /* Restore normal font size */
}
tr.shipping.recurring-total {
    display: none;
}

.nbn-header-top { padding-top:50px!important; }
.nbn-popular-badge {
    position: absolute;
    top: 20px;
    right: 0;
    z-index: 10000;
	    background: var(--nbn-flow-secondary);
    color: var(--nbn-flow-dark);
    padding: 5px 12px;
    border-radius: var(--nbn-flow-radius-lg);
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 4px var(--nbn-flow-shadow);
}
.woocommerce-shipping-totals.shipping td:not(:has(ul.woocommerce-shipping-methods)) {
    display: none;
}

/* Hide shipping row when no options available */
.woocommerce-shipping-totals.shipping:not(:has(ul.woocommerce-shipping-methods)) {
    display: none;
}

/* Change "Initial Shipment" to "Shipping" when options exist */
.woocommerce-shipping-totals.shipping:has(ul.woocommerce-shipping-methods) th {
    font-size: 0;
}

.woocommerce-shipping-totals.shipping:has(ul.woocommerce-shipping-methods) th::before {
    content: "Shipping";
    font-size: 1rem;
}
.troppo-btn-secondary {
    background: var(--troppo-glass), #3f3d4a;
    color: var(--troppo-text-primary);
    border: 1px solid var(--troppo-glass-border);
    backdrop-filter: blur(10px);
}




.woocommerce-error {
	border: 1px solid #b81c23!important;
	
}

#nbn_avcid-description {margin-top: 5px!important;
top: 15px!important; padding-top: 7px; padding-bottom: 7px; padding-left: 0px;}

/* GoTroppo Speed Tables - Global Styles v3 */
.gt-speed-section{padding:40px 20px;max-width:1480px;margin:0 auto}
.gt-table-wrapper{width:100%;overflow-x:auto;margin:24px 0;border-radius:12px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}
.gt-speed-table{width:100%;min-width:1000px;border-collapse:collapse;font-family:inherit;font-size:14px;background:#fff}
.gt-speed-table thead{background:#0f172a}
.gt-speed-table th{padding:20px 16px;color:#94a3b8;font-weight:500;text-align:center;font-size:12px;text-transform:uppercase;letter-spacing:.5px}
.gt-speed-table th:first-child{text-align:left;padding-left:24px;min-width:220px}
.gt-speed-table th .speed-tier{display:block;color:#2dd4bf;font-weight:700;font-size:18px;margin-top:4px;letter-spacing:0}
.gt-speed-table th.recommended{background:linear-gradient(180deg,#134e4a 0%,#0f172a 100%)}
.gt-speed-table th .recommended-badge{display:inline-block;background:#f97316;color:#fff;font-size:9px;padding:3px 8px;border-radius:10px;margin-bottom:6px;font-weight:700}
.gt-speed-table td.recommended{background:rgba(20,184,166,.08)}
.gt-fttp-badge{display:inline-block;font-size:9px;background:#f97316;color:#fff;padding:2px 6px;border-radius:4px;margin-left:4px;vertical-align:middle;font-weight:600}
.gt-speed-table .plan-row{background:linear-gradient(135deg,#134e4a 0%,#115e59 100%)!important}
.gt-speed-table .plan-row td{padding:16px 16px;border-bottom:3px solid #f97316}
.gt-speed-table .plan-row td:first-child{color:#fff;font-weight:600;padding-left:24px}
.gt-speed-table .plan-name{color:#5eead4;font-weight:700;font-size:15px}
.gt-speed-table .plan-row td.recommended{background:rgba(20,184,166,.15)}
.gt-speed-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .15s ease}
.gt-speed-table tbody tr:nth-child(even){background-color:#f8fafc}
.gt-speed-table tbody tr:hover{background-color:#ecfdf5}
.gt-speed-table td{padding:14px 16px;text-align:center;vertical-align:middle}
.gt-speed-table td:first-child{text-align:left;font-weight:500;color:#334155;padding-left:24px}

/* Rating badges - WIDER for longer text like "Month-to-Month" */
.gt-rating{display:inline-flex;align-items:center;justify-content:center;gap:5px;font-weight:600;font-size:12px;padding:6px 14px;border-radius:20px;white-space:nowrap;min-width:100px}
.gt-rating.good{color:#059669;background:#d1fae5}
.gt-rating.good::before{content:"\2713";margin-right:2px}
.gt-rating.great{color:#047857;background:#a7f3d0}
.gt-rating.great::before{content:"\2605";margin-right:2px}
.gt-rating.excellent{color:#065f46;background:#6ee7b7}
.gt-rating.excellent::before{content:"\2605\2605";margin-right:2px}
.gt-rating.limited{color:#b45309;background:#fef3c7}
.gt-rating.limited::before{content:"\26A0";margin-right:2px}
.gt-rating.okay{color:#4b5563;background:#f3f4f6}
.gt-rating.okay::before{content:"\25CB";margin-right:2px}

.gt-value{font-weight:600;color:#1e293b}
.gt-value.speed{color:#0f766e;font-size:14px}
.gt-time{font-weight:600;font-size:13px}
.gt-time.fast{color:#059669}
.gt-time.medium{color:#0369a1}
.gt-time.slow{color:#64748b}
.gt-section-title{font-size:32px;font-weight:700;color:#0f172a;margin:0 0 8px;text-align:center}
.gt-section-title span{color:#14b8a6}
.gt-section-subtitle{font-size:16px;color:#64748b;margin:0 0 28px;text-align:center}
.gt-notes{margin-top:20px;padding:16px 24px;background:#f1f5f9;border-radius:8px;font-size:12px;color:#64748b;line-height:1.7}
.gt-notes p{margin:0 0 6px}
.gt-notes p:last-child{margin-bottom:0}
.gt-notes strong{color:#334155}
.gt-callout{margin-top:20px;padding:18px 24px;background:linear-gradient(135deg,#0f766e 0%,#115e59 100%);border-radius:10px;font-size:14px;color:#ccfbf1}
.gt-callout strong{color:#5eead4}

/* ============================================
   TABLET RESPONSIVE (768px - 1024px)
   ============================================ */
@media screen and (max-width:1024px){
  .gt-speed-section{padding:30px 15px}
  .gt-section-title{font-size:26px}
  .gt-section-subtitle{font-size:14px;margin-bottom:20px}
  .gt-speed-table{font-size:13px}
  .gt-speed-table th{padding:14px 10px;font-size:11px}
  .gt-speed-table th .speed-tier{font-size:15px}
  .gt-speed-table td{padding:12px 10px}
  .gt-speed-table td:first-child{padding-left:14px;min-width:160px}
  .gt-speed-table th:first-child{padding-left:14px;min-width:160px}
  .gt-rating{font-size:11px;padding:5px 10px;min-width:80px}
  .gt-plan-name{font-size:13px}
}

/* ============================================
   MOBILE RESPONSIVE (below 768px)
   ============================================ */
@media screen and (max-width:767px){
  .gt-speed-section{padding:20px 10px}
  .gt-section-title{font-size:22px}
  .gt-section-subtitle{font-size:13px;margin-bottom:16px}
  .gt-table-wrapper{border-radius:8px;margin:16px 0}
  .gt-speed-table{min-width:800px;font-size:12px}
  .gt-speed-table th{padding:12px 8px;font-size:10px}
  .gt-speed-table th .speed-tier{font-size:13px}
  .gt-speed-table th .recommended-badge{font-size:8px;padding:2px 6px}
  .gt-fttp-badge{font-size:8px;padding:2px 4px}
  .gt-speed-table td{padding:10px 6px}
  .gt-speed-table td:first-child{padding-left:10px;min-width:130px;font-size:11px}
  .gt-speed-table th:first-child{padding-left:10px;min-width:130px}
  .gt-speed-table .plan-row td{padding:12px 6px}
  .gt-speed-table .plan-name{font-size:12px}
  .gt-rating{font-size:10px;padding:4px 8px;min-width:70px;gap:3px}
  .gt-value{font-size:12px}
  .gt-value.speed{font-size:11px}
  .gt-time{font-size:11px}
  .gt-notes{padding:12px 14px;font-size:11px}
  .gt-callout{padding:14px 16px;font-size:12px}
}

/* ============================================
   SMALL MOBILE (below 480px)
   ============================================ */
@media screen and (max-width:479px){
  .gt-section-title{font-size:20px}
  .gt-section-subtitle{font-size:12px}
  .gt-speed-table{min-width:700px}
  .gt-speed-table th{padding:10px 6px;font-size:9px}
  .gt-speed-table th .speed-tier{font-size:12px}
  .gt-speed-table td{padding:8px 5px}
  .gt-speed-table td:first-child{min-width:110px;font-size:10px}
  .gt-rating{font-size:9px;padding:3px 6px;min-width:60px}
}

/* ============================================
   SCROLL HINT FOR MOBILE
   ============================================ */
@media screen and (max-width:1000px){
  .gt-table-wrapper{position:relative}
  .gt-table-wrapper::after{
    content:"Scroll \2192";
    position:absolute;
    top:50%;
    right:10px;
    transform:translateY(-50%);
    background:rgba(15,23,42,.8);
    color:#fff;
    padding:8px 12px;
    border-radius:20px;
    font-size:11px;
    font-weight:600;
    pointer-events:none;
    opacity:0;
    transition:opacity .3s ease;
  }
  .gt-table-wrapper:not(:hover)::after{
    animation:scrollHint 2s ease-in-out 1s 2;
  }
}
@keyframes scrollHint{
  0%,100%{opacity:0}
  50%{opacity:1}
}

.terms-list li {
	padding-bottom: 30px !important;
}
