
/* Package Style 1
-------------------------------------------------------------------- */

table.at-intenet-package{border: 0;}
.at-intenet-package {
	border: 0;
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
.at-intenet-package thead th {
	text-align: center;
	font-size: 12px;
	font-weight: 400;
	padding: 0 20px;
	border-left: 1px solid #dddddd;
}
.at-intenet-package thead th:first-child { border: 0;}
.at-intenet-package thead th.at-int-intro { padding: 20px 0;}
.at-int-intro span { font-size: 2em; line-height:1; vertical-align: middle; font-weight: bold;}
#pack tbody tr:nth-child(even) {
    background-color: #e4ebef;
}
#pack tbody tr:nth-child(odd) {
   background-color:#ffffff;
}

.at-intenet-package tbody td {
	border:1px solid #dddddd;
	font-size: 14px;
	line-height: 20px;
	padding: 15px;
	vertical-align: top;
}
.at-int-speedname {width: 24%;}
.at-int-dl1, .at-int-dl2, .at-int-dl3 {width: 11%;}
.at-int-price {width: 24%;}
.at-int-check {width: 19%;}

.at-int-speedname>h2 {
	font-size: 18px !important;
	margin: 0 0 10px 0 !important;
	color: #323232;
	font-weight:700;
}
.at-int-speedname>h2>span { font-weight:400; }
.at-int-speedname>ul { margin: 0 0 5px 0; color:#777; padding: 0;}
.at-int-speedname>ul>li { font-size: 12px; margin: 0 0 0 15px}

.at-int-dl1, .at-int-dl2, .at-int-dl3, .at-int-check {
    text-align: center;
    vertical-align: middle !important;
}
.at-int-dl1>h2, .at-int-dl2>h2, .at-int-dl3>h2, .at-int-price>h2 {
	font-size: 36px !important;
	line-height: 1 !important;
	font-weight: 600;
	color: #0077DB;
	margin: auto !important;
}
.at-int-dl1>h2>span, .at-int-dl2>h2>span, .at-int-dl3>h2>span {
	font-size: 60%;
	font-weight: 300;margin-left: 5px;
}
.at-int-dl1 .todownload, .at-int-dl2 .todownload, .at-int-dl3 .todownload {
	font-size: 12px;
	color: #777;
}
.at-int-price { vertical-align: middle !important;}
.at-int-price>h2 { color: #323232; margin-bottom: 10px; }
.at-int-price>h2>span {font-weight: 400; font-size: 30px;}
.at-int-price>h2>span.per-month {font-size: 16px; color: #777; }
.at-int-price {color: #777; font-size:12px !important; }
.at-int-price>span.check-info {display: block }

/* Package Style 2
-------------------------------------------------------------------- */

.at-IntPlan-wrapper {
	position: relative;
}

.at-IntPlan-Item:after, .at-IntPlan-Item:before {
    clear: both;
    display: block;
    content: '';
}
.at-IntPlan-Item {
	background: #fff;
	border: 2px Solid #0077DB;
	width: 100%;
	margin-bottom: 30px;
	box-sizing: border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;	
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.s2 .at-IntPlan-Item { display: flex; }
@media only screen and (max-width: 1024px) {
	.s2 .at-IntPlan-Item { display: block; }
}



.at-IntPlan-Item .Plan-Item {
	flex-basis: 77%;
	padding: 30px;
}
.at-IntPlan-Item .Plan-Price {
	flex-basis: 23%;
	background: #0077DB;
  	color: #fff;
  	text-align: center;
}
.at-IntPlan-Item .Plan-Item .items {
  padding: 0;
  border: 0;
  display: flex;
  background: transparent;
	text-align:center;
}
.at-IntPlan-Item .Plan-Item .items ul { list-style: none; }
.at-IntPlan-Item .Plan-Item .items ul li { margin:0; }

.Plan-Item .items .Plan-Title {
	align-items: center;
	flex-basis: 30%;
	text-align:left;
}
.Plan-Title ul{
	list-style: none;
	margin: 0;
	padding: 0;
	color: #222;
	font-size:14px;
	font-weight: 600;
}

.items .Plan-Title>h2 {
	font-size: 36px;
	line-height: 1.1;
	font-weight: 900;
	margin: 0 0 12px 0
}
.items .Plan-Title p {
	font-size: 14px;
	font-weight: 900;
	margin: 0;
	color: #222;
}

.Plan-Item .items .Plan-Service {
  flex-basis: 20%;
  margin-left: 0;
  margin-right: 0%;
}
.Plan-Service .speed {
	font-size:15px;
	color: #222;
	text-align: center;
	font-weight: 700;
	border-left:1px dotted rgba(0,0,0,0.1);
	border-right: 1px dotted rgba(0,0,0,0.1);
}
.Plan-Service .speed span {
	display: block;
	font-size: 42px;
	font-weight: 700;
	line-height: 1.2;
	color: #0077DB;
	letter-spacing: -2px;
}

.Plan-Item .items .Plan-Features {
    flex-basis: 50%;
    margin-left: 0;
    margin-right: 0%;
}
.items .Plan-Features>h3 {
	margin:0 0 10px 0;
	font-size: 14px;
	letter-spacing: 0.04em;
	color: #222;
}
.Plan-Features .features-list {
	font-size: 12px;
	display: inline-block;
	width: 25%;
	margin-left: 2%;
	margin-right: 2%;
	line-height: 1.2;
}
.features-list .sep-time {
	font-size: 32px;
	font-weight: 900;
	color: #0077DB;
	display: block;
	line-height: 1.4;
}
.features-list .sep-time>span {
	font-size:60%;
	font-weight: 300;
	margin-left: 5px;
}

.Plan-Price .price-content {
	position: relative;
	padding: 40px 20px 40px 24px;
  margin-right: 0;
}

.price-content .price-row {
	font-weight: 900;
}
.price-content .price-row sup {
	font-size: 22px;
  font-size: 1.375rem;
  top: -16px;
	line-height: 0;
  position: relative;
  vertical-align: baseline;
}
.price-content .price-row span {
	font-size: 2.25rem;
}
.price-content .check-info {
	font-size: 16px;
	line-height: 24px;
	margin-bottom: 5px;
}
.price-content .extra-txt {
	font-size: 12px;
}
.price-content .extra-txt span {
	display: block;
}
.price-content .check-aval {
	margin-top: 15px;
}
.price-content .check-aval a{color: #ffffff;}
.price-content .check-aval a:hover{color: #0077DB; text-decoration: none; }

.Plan-Price .price-content::after {
content: "";
    position: absolute;
    top: 50%;
    left: -2px;
    margin-left: 0;
    margin-top: -10px;
	transform: rotate(270deg);
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #fff;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-top: 12px solid #fff;
}

/* Package Style 3
-------------------------------------------------------------------- */

.s3 .at-IntPlan {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	margin: 0 -15px;
	gap: 30px;
}

.s3 .at-IntPlan-Item {
	flex: inherit;
	flex-basis: calc(25% - 30px);
	margin-bottom: 0;
	display: flex;
	flex-direction: column;

}
.s3 .at-IntPlan-Item .Plan-Item .items {
	flex-direction: column;
}
.s3 .at-IntPlan-Item .Plan-Item { padding: 40px 0 0 0; flex: 1; }
.s3 .at-IntPlan-Item .Plan-Price { width: 100%; }
.s3 .Plan-Price .price-content::after { display: none; }

.s3 .Plan-Item .items .Plan-Title { width: auto; float: none; text-align: center; padding: 0; }
.s3 .Plan-Item .items .Plan-Service {
	width: auto;
	float: none;
	margin: 30px 0 0 0;
	background-color: rgba(0,0,0,0.05);
}
.s3 .Plan-Item .items .Plan-Features { width: auto; float: none; margin-top:30px;  }

.s3 .Plan-Features .features-list {
	width: auto;
	margin:0;
	display: block;	
	padding: 10px;
	border-bottom:1px solid rgba(0,0,0,0.1);
}
.s3 .Plan-Service .speed span { font-weight: 900; line-height: 1; }
.s3 .Plan-Features .features-list:last-child { border-bottom: 0; }
.s3 .features-list .sep-time { font-size: 16px; line-height: normal; padding: 0 5px; }
.s3 .features-list .sep-time>span { font-size: inherit; margin-left: 3px; }

.s3 .price-content .check-info,
.s3 .price-content .extra-txt,
.s3 .price-content .check-aval,
.s3 .Plan-Price .price-content,
.s3 .price-content .price-row { float: none; width: 100%; }

/*  Form
-------------------------------------------------------------------- */
select,
textarea,
input[type="text"],
input[type="email"],
input[type="password"] {
	display: block;
	color:  #5f5f5f;
	box-sizing: border-box;
	padding: 8px;
	background-color: #f6f6f6;
	border: 1px solid #dddddd;
	border-color: #cccccc #E7E7E7 #E7E7E7 #cccccc;
	overflow: hidden;
	margin-top: 5px;
	margin-bottom: 15px;
	outline: 0;
}

select:focus,
textarea:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus {
	-webkit-transition: all 200ms ease-in 0s;
	-moz-transition: all 200ms ease-in 0s;
	transition: all 200ms ease-in 0s;
}
.availabilityform select,
.availabilityform text,
.availabilityform textarea,
.availabilityform .isppro_form_field{
	width: 100%;
	font-weight: 300;
}
.availabilityform label {
	display: block;
	text-align: left;
	line-height: 32px;
	font-weight: 300;
}
.availabilityform input[type=radio],
.availabilityform input[type=checkbox]{
	box-shadow: none;
	width: auto;
}
.availabilityform textarea{
	width: 100%;
	min-height: 80px;
}
.availabilityform  select{
	box-sizing: border-box;
	padding: 10px 15px;
	width: 100%;
	margin-bottom: 20px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.availabilityform submit{
	background: #3ab54a none repeat scroll 0 0;
	    border-left: 0 none;
	    border-radius: 6px;
	    border-right: 0 none;
	    border-top: 0 none;
	    color: #ffffff;
	    cursor: pointer;
	    font-size: 0.8125rem;
	    line-height: normal;
	    margin: 0 15px 20px 0;
	    outline: 0 none;
	    padding: 10px 20px;
	    transition: background-color 0.2s ease 0s;
}
.at-Int-checkaval-wrapper {
	position: relative;
	clear: both;
	display: flex;
	align-items: stretch;
}
.at-checkaval__fetch {
	background: #0077DB;
	color: #fff;
	text-align: left;
	padding: 50px 60px;
	width: 30%;
}
.at-checkaval__data {
    margin-bottom: 40px;
}
.at-checkaval__data h2 {
	font-size: 30px !important;
	font-weight: 700;
	color: #fff;
	letter-spacing: -0.04em;
	line-height: 36px !important;
	margin:0 0 10px !important;
}
.at-checkaval__data h5 {
	font-size: 50px !important;
	margin:0 0 5px !important;
	color: #fff;
	font-weight: 100;
	letter-spacing: -0.04em;
	line-height: 1 !important;
}
.at-checkaval__data h5 sup {
	font-size: 16px;
	color: #fff;
    top: -20px;
    line-height: 0;
	margin-right: 8px;
    position: relative;
    vertical-align: baseline;
}
.at-checkaval__data p {
	font-size:14px;
	letter-spacing: 2px;
	font-weight: 100;
	text-transform: uppercase;
}
.at-checkaval__fetch ul {
	margin: 0;
	padding: 0;
}
.at-checkaval__fetch ul li {
	list-style: none;
	margin: 0;
}
.at-checkaval__form { margin: 0; width: 66%; margin-left: 4%; }
.at-checkaval__form h2 { margin: 0 0 20px; font-weight: 600; }

.at-checkaval__form .at-checkaval__inputs {
	margin: 0 0 20px 0;
	padding: 0;
	position: relative;
	clear: left;
}
.at-checkaval__inputs label {
	margin: 0 0 10px;
	display: block;
	font-weight: bold;
	line-height: 13px;
	font-size: 13px;
	color:#666;
	display: block;
}
.at-checkaval__inputs label.required:after {
	content: '*';
	display: inline;
	margin-left: 0.5em;
	font-size: 80%;
	color: #da6f5b;
}
.at-checkaval__inputs input[type="text"], .at-checkaval__inputs input[type="password"], .at-checkaval__inputs input[type="number"], .at-checkaval__inputs input[type="search"], .at-checkaval__inputs input[type="email"], .at-checkaval__inputs input[type="url"], .at-checkaval__inputs textarea, .at-checkaval__inputs select {
	width: 100%;
	padding: 1.347em 1.76em;
	background: #F4F6F9;
	font-size: 13px;
  	line-height: 1.2;
	box-sizing: border-box;
	border: 2px solid #F4F6F9;
	margin: 0;
}
.isppro_form_reqsubmit,
.at-checkaval__inputs input[type="button"] {
    padding: 1.2em 2.5em;
    border-radius: 0;
    font-weight: 600;
	background-color: #0077DB;
	background-image: none;
	color: #fff;
}

.isppro_form_reqsubmit:hover,
.at-checkaval__inputs input[type="button"]:hover {
	background-image: none;
	background-color: #222;
	color: #fff;
}
.at-checkaval__inputs input[type="button"]:disabled {
	background-image: none;
	opacity: 0.5;
}

.at-checkaval__inputs input[type="text"]:focus,
.at-checkaval__inputs input[type="password"]:focus,
.at-checkaval__inputs input[type="email"]:focus,
.at-checkaval__inputs input[type="number"]:focus,
.at-checkaval__inputs input[type="tel"]:focus,
.at-checkaval__inputs input[type="search"]:focus,
.at-checkaval__inputs textarea:focus {background-color: #fff; color: #555; border-color:#0077DB;}

.at-checkaval__inputs.mid50 {
	width: 48%;
	float: left;
	clear: none;
	margin-right: 4%;
}
.at-checkaval__inputs.midend {
	margin-right: 0 !important;;
}
.at-checkaval__inputs fieldset {
	border: 0;
	padding: 0
}
.at-checkaval__inputs.check-location label.bold {
	margin: 0 0 10px;
	font-weight: bold;
	line-height: 13px;
	font-size: 13px;
	color:#666;
	margin: 0;
}
.at-checkaval__inputs.check-location label {
	font-weight: 400;
	display: inline-block;
	margin: 0;
}
.at-checkaval__inputs fieldset legend {
	margin-bottom: 15px;
}
.isppro_name.isppro_error,
.isppro_radio.isppro_error,
.isppro_email.isppro_error,
.isppro_phoneno.isppro_error,
.isppro_city.isppro_error,
.isppro_zipcode.isppro_error { 
	border: 1px solid red !important;
}
.at-checkaval__form img#loader {
    display: none;
}
#zipcode_check_status,
#isppro_mail_success {
	background-color: #f6f6f6;
    border-color: #dddddd;
    margin: 20px 0;
    position: relative;
    text-align: center;
}
#zipcode_check_status .success,
#isppro_mail_success
{
	color: #ffffff;
    background-color: #26A65B;
}
#isppro_booking_success.success {
	color: #ffffff;
    background-color: #26A65B;
	padding: 7px 20px;
    margin-top: 20px;
}

#zipcode_check_status .error{
	color: #ffffff;
    background-color: #F22613;
}
.isppro_availabilty {
	display: none;
	 text-align: left;
	 font-size: 14px;
	 font-weight: 600;
	 margin-bottom: 40px;
}
.isppro_availabilty .available {
    padding: 1px 6px;
    background: #4CAF50;
    color: white;
    border-radius: 2px;
    margin: 0;
}
.isppro_availabilty .not-available {
	padding: 1px 6px;
	background: #F64744;
	color: white;
	border-radius: 2px;
	margin: 0;
}
.isppro_availabilty_form_layout{
	display:none;
	margin:0 auto;
}
#isppro_mail_success{
	display:none;
}
.isppro_availabilty_form { display:none; padding:50px 60px; background-color: #eee;}
.isppro_availabilty_form .text { line-height:1.7; font-weight: 600; font-size: 14px; }
.isppro_availabilty_form span { margin-left: 8px; font-weight: 400; }
.isppro_availabilty_text { margin-bottom: 30px; margin-top: 50px}
.isppro_booking_success { display: none; }

.at-int-btn {
    padding: 10px 18px;
    border-radius: 2px;
    color: #ffffff;
    text-decoration: none;
	background: transparent;
    transition: background 0.2s ease-in-out;
    text-decoration: none;
    display: block;
    text-align: center;
    font-weight: 600;
    font-size: 15px;
    border: 2px solid #fff;
}
.at-int-btn:hover {
    background: #fff;
    color: #0077db;
    border: 2px solid #fff;
	text-decoration: none;
}

.at-int-btn:visited {
    color: #0077db;
}

.at-int-btn.dark-btn:visited {
	background: #0077db;
	color: #ffffff;
}
.at-int-btn.dark-btn {
	background: #0077db;
	color: #ffffff;
	border:1px solid transparent;
}
.at-int-btn.dark-btn:hover {
	background: transparent;
	border: 1px solid #0077db;
	color: #0077db;
	text-decoration: none;
}

/* ==============================================================*/
/* Responsive Internet Plan							             */
/* ============================================================= */

@media only screen and (min-width: 320px) and (max-width: 479px) {
	/* Internet Pricing Plan 2 */
	.at-intenet-package thead th h1{ font-size: 1.3em; }
	.at-int-dl1>h2, .at-int-dl2>h2, .at-int-dl3>h2, .at-int-price>h2 { font-size: 32px; }
	.at-int-dl1, .at-int-dl2, .at-int-dl3 { display: none;}
	/* Internet Pricing Plan 2 */
	.at-IntPlan-Item .Plan-Item { padding: 25px 0; width: 100%;	}
	.at-IntPlan-Item .Plan-Price { width: 100%;	}
	.Plan-Price .price-content {
		padding: 10px 20px;
		clear: right;
		width: 100%;
		float: right;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	.price-content .price-row {
		width: 50%;
		clear: right;
		float: left;
		text-align: left;
		margin-left: 0;
		margin-right: 0%;
	}
	.price-content .price-row span { font-size: 1.6rem; }
	.price-content .price-row sup {font-size: 1rem; }
	.price-content .check-info, .price-content .extra-txt{
		width: 50%;
		clear: right;
		float: left;
		text-align: right;
		padding: 6px 0 0 0;
		margin: 0;
	}
	.price-content .extra-txt span {
		margin-left: 8px;
		padding-left: 10px;
		display: inline-block;
		border-left: 1px solid #fff;
	}
	.price-content .check-aval {
		width: 100%;
		clear: right;
		float: left;
		padding: 6px 0 0 0;
		margin: 0 0 15px 0;
	}
	.Plan-Price .price-content:after {
		border-left: 12px solid transparent;
		border-right: 12px solid transparent;
		border-top: 12px solid #fff;
		top: 0;
		left: 50%;
		transform: rotate(360deg);
		margin-top: 0;
	}
	.price-content .check-aval .at-int-btn { display: block; }
	.Plan-Item .items .Plan-Title { width: 100%; }
	.Plan-Item .items .Plan-Features, .Plan-Item .items .Plan-Service {display: none;}

	.s3 .at-IntPlan-Item {
		flex-basis: 100%;
	}
}

@media only screen and (min-width: 480px) and (max-width: 767px) { 
	/* Internet Pricing Plan 2 */
	.at-intenet-package thead th h1{ font-size: 1.3em; }
	.at-int-dl1>h2, .at-int-dl2>h2, .at-int-dl3>h2, .at-int-price>h2 { font-size: 32px; }
	.at-int-dl1, .at-int-dl2, .at-int-dl3 { display: none;}
	/* Internet Pricing Plan 2 */
	.at-IntPlan-Item .Plan-Item { padding: 25px 0; width: 100%;	}
	.at-IntPlan-Item .Plan-Price { width: 100%;	}
	.Plan-Price .price-content {
		padding: 10px 20px;
		clear: right;
		width: 100%;
		float: right;
	}
	.price-content .price-row {
		width: 30%;
		clear: right;
		float: left;
		text-align: left;
		margin-left: 0;
		margin-right: 0%;
	}
	.price-content .check-info, .price-content .extra-txt{
		width: 70%;
		clear: right;
		float: left;
		text-align: right;
		padding: 6px 0 0 0;
		margin: 0 0 15px 0;
	}
	.price-content .extra-txt span {
		margin-left: 8px;
		padding-left: 10px;
		display: inline-block;
		border-left: 1px solid #fff;
	}
	.price-content .check-aval {
		width: 100%;
		clear: right;
		float: left;
		margin-left: 0;
		margin-right: 0;
		padding: 6px 0 0 0;
		margin-top: 0;
	}
	.Plan-Price .price-content:after {
		border-left: 12px solid transparent;
		border-right: 12px solid transparent;
		border-top: 12px solid #fff;
		top: 0;
		left: 50%;
		transform: rotate(360deg);
		margin-top: 0;
	}
	.price-content .check-aval .at-int-btn { display: block; }
	
	.Plan-Item .items .Plan-Service {display : none;}
	.Plan-Item .items .Plan-Title { width: 40%;}
	.items .Plan-Title>h2 {font-size: 26px; }
	.Plan-Item .items .Plan-Features { width: 60%; }
	.features-list .sep-time{ font-size: 30px;}
	.Plan-Features .features-list { width: 27%; margin-left: 3%; margin-right: 3%; }
	/* Check Availability Form */
	.at-checkaval__inputs.mid50 { width: 100%; margin-right: 0;}
	.s3 .at-IntPlan-Item {
		flex-basis: 100%;
	}
	
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	
}

@media only screen and (min-width: 992px) and (max-width: 1999px) { }


/* ===================================================== */
/* #iPad (Landscape)									 */
/* ===================================================== */

@media only screen and (min-width : 960px) and (max-width : 1024px) {
	/* Internet Pricing Plan 2 */
	.at-intenet-package thead th h1{ font-size: 1.3em; }
	.at-int-dl1>h2, .at-int-dl2>h2, .at-int-dl3>h2, .at-int-price>h2 { font-size: 32px; }
	.at-int-dl1, .at-int-dl2, .at-int-dl3 { display: none;}
	/* Internet Pricing Plan 2 */
	.at-IntPlan-Item .Plan-Item { padding: 25px 0; width: 100%;	}
	.at-IntPlan-Item .Plan-Price { width: 100%;	}
	.Plan-Price .price-content {
		padding: 10px 20px;
		clear: right;
		width: 100%;
		float: right;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	.price-content .price-row {
		width: 30%;
		clear: right;
		float: left;
		text-align: left;
		margin-left: 0;
		margin-right: 0%;
	}
	.price-content .check-info, .price-content .extra-txt{
		width: 70%;
		clear: right;
		float: left;
		text-align: right;
		padding: 6px 0 0 0;
		margin: 0;
	}
	.price-content .extra-txt span {
		margin-left: 8px;
		padding-left: 10px;
		display: inline-block;
		border-left: 1px solid #fff;
	}
	.price-content .check-aval {
		width: 100%;
		clear: right;
		float: left;
		padding: 6px 0 15px 0;
	}
	.Plan-Price .price-content:after {
		border-left: 12px solid transparent;
		border-right: 12px solid transparent;
		border-top: 12px solid #fff;
		top: 0;
		left: 50%;
		transform: rotate(360deg);
		margin-top: 0;
	}
	.price-content .check-aval .at-int-btn { display: block; }
	
	/* Check Availability Form */
	.at-checkaval__inputs.mid50 { width: 47.45%; }
	.at-checkaval__fetch { width: 50%; }
	.s3 .at-IntPlan-Item {
		flex-basis: 100%;
	}
}

/* ===================================================== */
/* #iPad (Portrait)									 	 */
/* ===================================================== */

@media only screen and (min-width: 768px) and (max-width: 959px) {
	/* Internet Pricing Plan 2 */
	.at-intenet-package thead th h1{ font-size: 1.3em; }
	.at-int-dl1>h2, .at-int-dl2>h2, .at-int-dl3>h2, .at-int-price>h2 { font-size: 32px; }
	.at-int-dl1, .at-int-dl2, .at-int-dl3 { display: none;}
	/* Internet Pricing Plan 2 */
	.at-IntPlan-Item .Plan-Item { padding: 25px 0; width: 100%;	}
	.at-IntPlan-Item .Plan-Price { width: 100%;	}
	.Plan-Price .price-content {
		padding: 10px 20px;
		clear: right;
		width: 100%;
		float: right;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	.price-content .price-row {
		width: 30%;
		clear: right;
		float: left;
		text-align: left;
		margin-left: 0;
		margin-right: 0%;
	}
	.price-content .check-info, .price-content .extra-txt{
		width: 70%;
		clear: right;
		float: left;
		text-align: right;
		padding: 6px 0 0 0;
		margin: 0;
	}
	.price-content .extra-txt span {
		margin-left: 8px;
		padding-left: 10px;
		display: inline-block;
		border-left: 1px solid #fff;
	}
	.price-content .check-aval {
		width: 100%;
		clear: right;
		float: left;
		padding: 6px 0 15px 0;
	}
	.Plan-Price .price-content:after {
		border-left: 12px solid transparent;
		border-right: 12px solid transparent;
		border-top: 12px solid #fff;
		top: 0;
		left: 50%;
		transform: rotate(360deg);
		margin-top: 0;
	}
	.price-content .check-aval .at-int-btn { display: block; }
	
	/* Check Availability Form */
	.at-checkaval__inputs.mid50 { width: 100%; margin-right: 0; }
	.at-checkaval__fetch { width: 50%; }

}

/* ===================================================== */
/* #Mobile (Landscape)									 */
/* ===================================================== */

@media only screen and (min-width: 480px) and (max-width: 767px) {
	
}

/* ===================================================== */
/* #Mobile (Portrait)									 */
/* ===================================================== */

@media only screen and (min-width: 240px) and (max-width: 479px) {
	/* Check Availability Form */
	.at-checkaval__inputs.mid50 { width: 100%; margin-right: 0; }
	.at-checkaval__fetch {margin-bottom: 40px; }
	.at-checkaval__fetch, .at-checkaval__form { width: 100%;  margin-left: 0;}	
	.at-Int-checkaval-wrapper { display: block;}
}
#inifiniteLoader{  
   display: none;
   width: 100%;
   padding: 50px;
   margin: 0 0 20px;
   background: #fff;
   border: 2px dashed #ccc;
   background: url("../ajax-loader.gif") no-repeat center center;
   transition: all 0.1s ease;
}

/* ============================================================== */
/* MODERN PREMIUM STYLE OVERRIDES FOR STYLES 1, 2, AND 3         */
/* ============================================================== */

/* Apply modern font and box sizing context where appropriate */
.at-intenet-package, 
.at-IntPlan-wrapper {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	box-sizing: border-box;
}

/* ==================== STYLE 1 (Modern Table) ==================== */
table.at-intenet-package {
	border-collapse: separate;
	border-spacing: 0;
	width: 100%;
	background: #ffffff;
	border-radius: 16px;
	box-shadow: 0 10px 30px rgba(15, 23, 42, 0.05), 0 1px 3px rgba(15, 23, 42, 0.02);
	border: 1px solid #e2e8f0;
	overflow: hidden;
	margin-bottom: 40px;
}

.at-intenet-package thead {
	background: #f8fafc;
	border-bottom: 1px solid #e2e8f0;
}

.at-intenet-package thead th {
	color: #475569;
	font-weight: 700;
	font-size: 13px !important;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	padding: 18px 24px !important;
	border-left: 1px solid #e2e8f0;
	border-bottom: 1px solid #e2e8f0;
}

.at-intenet-package thead th:first-child {
	border-left: 0;
}

.at-intenet-package tbody td {
	padding: 24px 20px !important;
	border: 0;
	border-bottom: 1px solid #f1f5f9;
	vertical-align: middle !important;
}

#pack tbody tr:last-child td {
	border-bottom: 0;
}

#pack tbody tr:nth-child(even) {
	background-color: #fbfcfe;
}

#pack tbody tr:nth-child(odd) {
	background-color: #ffffff;
}

#pack tbody tr:hover {
	background-color: #f8fafc;
	transition: background-color 0.2s ease;
}

/* Package Title column */
.at-int-speedname {
	width: 25% !important;
	text-align: left;
}

.at-int-speedname .at-IntHdr {
	font-size: 20px !important;
	font-weight: 800 !important;
	color: #0f172a !important;
	letter-spacing: -0.02em;
	margin: 0 0 12px 0 !important;
	line-height: 1.2 !important;
}

.at-int-speedname ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.at-int-speedname ul li {
	font-size: 13px !important;
	color: #64748b !important;
	margin: 0 0 6px 0 !important;
	padding-left: 16px !important;
	position: relative;
}

.at-int-speedname ul li:before {
	content: "•";
	color: #0066fe;
	font-weight: bold;
	display: inline-block;
	width: 1em;
	margin-left: -16px;
	position: absolute;
}

/* Metric / Download speed guidelines columns */
.at-int-dl1, .at-int-dl2, .at-int-dl3 {
	width: 14% !important;
	text-align: center;
}

.at-int-dl1>h2, .at-int-dl2>h2, .at-int-dl3>h2 {
	font-size: 26px !important;
	font-weight: 800 !important;
	color: #0ea5e9 !important; /* Vibrant cyan/blue */
	margin: 0 0 4px auto !important;
	line-height: 1 !important;
	letter-spacing: -0.02em;
}

/* Time separation and text guidelines */
.time-sep {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #64748b !important;
	margin-left: 3px;
	text-transform: lowercase;
}

.todownload {
	font-size: 11px !important;
	font-weight: 600 !important;
	text-transform: uppercase;
	color: #94a3b8 !important;
	letter-spacing: 0.05em;
	display: block;
}

/* Price column styling */
.at-int-price {
	width: 18% !important;
	text-align: center;
	white-space: nowrap;
}

.at-int-price>h2 {
	font-size: 28px !important;
	font-weight: 800 !important;
	color: #0f172a !important;
	margin: 0 0 4px auto !important;
	line-height: 1.1 !important;
	letter-spacing: -0.02em;
}

.at-int-price>h2>span {
	font-weight: 700;
	font-size: 20px;
	vertical-align: super;
	margin-right: 1px;
}

.at-int-price>h2>span.per-month {
	font-size: 12px;
	font-weight: 600;
	color: #64748b;
	vertical-align: baseline;
	margin-left: 2px;
}

.at-int-price span.check-info {
	display: block;
	font-size: 11px;
	color: #94a3b8;
	line-height: 1.3;
	margin-top: 4px;
	white-space: normal;
}

/* Button column & styling */
.at-int-check {
	width: 15% !important;
	padding-right: 24px !important;
}

.at-int-btn {
	padding: 12px 20px !important;
	border-radius: 8px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.02em;
	transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
	display: inline-block !important;
	width: 100%;
	box-shadow: 0 4px 6px -1px rgba(0, 102, 254, 0.15);
	cursor: pointer;
}

.at-int-btn.dark-btn {
	background: #0066fe !important;
	color: #ffffff !important;
	border: 1px solid #0066fe !important;
}

.at-int-btn.dark-btn:hover {
	background: #0052cc !important;
	border-color: #0052cc !important;
	transform: translateY(-2px);
	box-shadow: 0 10px 15px -3px rgba(0, 102, 254, 0.3);
}

.at-int-btn.white-outline {
	background: transparent !important;
	color: #0066fe !important;
	border: 2px solid #0066fe !important;
}

.at-int-btn.white-outline:hover {
	background: #0066fe !important;
	color: #ffffff !important;
	transform: translateY(-2px);
	box-shadow: 0 10px 15px -3px rgba(0, 102, 254, 0.3);
}


/* ==================== STYLE 2 (Modern Row Card) ==================== */
.at-IntPlan-Item {
	background: #ffffff !important;
	border-radius: 16px !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: 0 4px 20px rgba(15, 23, 42, 0.03) !important;
	margin-bottom: 30px !important;
	overflow: hidden !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: stretch !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.at-IntPlan-Item:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08) !important;
	border-color: #0066fe !important;
}

.at-IntPlan-Item .Plan-Item {
	flex: 1 !important;
	flex-basis: 75% !important;
	padding: 30px !important;
	display: flex !important;
	align-items: center !important;
}

.at-IntPlan-Item .Plan-Item .items {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	width: 100% !important;
	text-align: left !important;
}

/* Plan Title */
.Plan-Item .items .Plan-Title {
	flex-basis: 30% !important;
	width: auto !important;
	float: none !important;
	padding: 0 !important;
	text-align: left !important;
}

.Plan-Item .items .Plan-Title h2 {
	font-size: 24px !important;
	font-weight: 800 !important;
	color: #0f172a !important;
	margin: 0 0 6px 0 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.02em;
}

.Plan-Item .items .Plan-Title p {
	font-size: 13px !important;
	color: #64748b !important;
	margin: 0 !important;
	line-height: 1.4;
}

/* Plan Service (Speed Badge) */
.Plan-Item .items .Plan-Service {
	flex-basis: 22% !important;
	width: auto !important;
	float: none !important;
	margin: 0 20px !important;
	text-align: center !important;
}

.Plan-Service .speed {
	background: #f0f7ff;
	border: 1px solid #e0f2fe;
	border-radius: 12px !important;
	padding: 12px 10px !important;
	display: inline-block;
	min-width: 110px;
}

.Plan-Service .speed span {
	display: block !important;
	font-size: 32px !important;
	font-weight: 800 !important;
	color: #0066fe !important;
	line-height: 1 !important;
	letter-spacing: -0.02em;
}

/* Plan Features List */
.Plan-Item .items .Plan-Features {
	flex-basis: 48% !important;
	width: auto !important;
	float: none !important;
	margin: 0 !important;
	display: flex !important;
	justify-content: space-around !important;
	align-items: center !important;
}

.Plan-Features h3 {
	display: none !important; /* Hide redundant label */
}

.Plan-Features .features-list {
	text-align: center !important;
	margin: 0 5px !important;
	width: auto !important;
	flex: 1;
}

.Plan-Features .features-list .sep-time {
	font-size: 22px !important;
	font-weight: 800 !important;
	color: #0ea5e9 !important;
	display: block;
	line-height: 1.1;
}

.Plan-Features .features-list .sep-time span {
	font-size: 12px !important;
	font-weight: 600;
	color: #64748b;
	margin-left: 2px;
	text-transform: lowercase;
}

/* Style 2 Right Sidebar (Price Box) */
.at-IntPlan-Item .Plan-Price {
	flex-basis: 25% !important;
	background: linear-gradient(135deg, #0066fe 0%, #0052cc 100%) !important;
	padding: 30px 24px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	align-items: center !important;
	text-align: center !important;
	color: #ffffff !important;
	float: none !important;
	width: auto !important;
}

.Plan-Price .price-content {
	width: 100% !important;
	float: none !important;
}

.Plan-Price .price-row {
	font-size: 32px !important;
	font-weight: 800 !important;
	color: #ffffff !important;
	margin-bottom: 4px !important;
	letter-spacing: -0.02em;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	line-height: 1 !important;
}

.Plan-Price .price-row sup {
	font-size: 18px !important;
	font-weight: 700;
	top: 0.1em !important;
	margin-right: 2px;
}

.Plan-Price .price-row span {
	font-size: 32px !important;
	font-weight: 800;
}

.Plan-Price .extra-txt {
	font-size: 12px !important;
	color: rgba(255, 255, 255, 0.8) !important;
	margin-bottom: 16px !important;
	float: none !important;
	width: auto !important;
}

.Plan-Price .check-aval {
	width: 100% !important;
	float: none !important;
	padding: 0 !important;
}

.Plan-Price .check-aval .at-int-btn {
	background: #ffffff !important;
	color: #0066fe !important;
	border: 1px solid #ffffff !important;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05) !important;
}

.Plan-Price .check-aval .at-int-btn:hover {
	background: rgba(255, 255, 255, 0.9) !important;
	color: #0052cc !important;
	transform: translateY(-2px);
	box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1) !important;
}

/* Remove absolute layouts and hacks */
.Plan-Price .price-content:after {
	display: none !important;
}


/* ==================== STYLE 3 (Modern Grid Card) ==================== */
.s3 .at-IntPlan {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
	gap: 30px !important;
	margin: 0 !important;
}

.s3 .at-IntPlan-Item {
	flex-basis: auto !important;
	flex: 1 !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	background: #ffffff !important;
	border-radius: 16px !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: 0 4px 20px rgba(15, 23, 42, 0.03) !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.s3 .at-IntPlan-Item:hover {
	transform: translateY(-6px);
	box-shadow: 0 15px 30px rgba(15, 23, 42, 0.08) !important;
	border-color: #0066fe !important;
}

.s3 .at-IntPlan-Item .Plan-Item {
	padding: 30px !important;
	flex: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
}

.s3 .at-IntPlan-Item .Plan-Item .items {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	height: 100% !important;
}

/* Style 3 Plan Title */
.s3 .Plan-Item .items .Plan-Title {
	text-align: center !important;
	margin-bottom: 20px !important;
}

.s3 .Plan-Item .items .Plan-Title h2 {
	font-size: 22px !important;
	font-weight: 800 !important;
	color: #0f172a !important;
	margin: 0 0 8px 0 !important;
	letter-spacing: -0.02em;
}

/* Style 3 Plan Service (Speed Badge) */
.s3 .Plan-Item .items .Plan-Service {
	margin: 0 auto 20px auto !important;
	background-color: transparent !important;
	width: auto !important;
}

.s3 .Plan-Service .speed {
	background: #f0f7ff;
	border: 1px solid #e0f2fe;
	border-radius: 12px;
	padding: 10px 20px !important;
	display: inline-block;
}

.s3 .Plan-Service .speed span {
	font-size: 28px !important;
	font-weight: 800 !important;
	color: #0066fe !important;
}

/* Style 3 Features List */
.s3 .Plan-Item .items .Plan-Features {
	margin-top: 10px !important;
	width: 100% !important;
	display: flex !important;
	flex-direction: column !important;
}

.s3 .Plan-Features h3 {
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #94a3b8 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	text-align: center !important;
	margin-bottom: 12px !important;
	display: block !important;
}

.s3 .Plan-Features .features-list {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	padding: 10px 0 !important;
	border-bottom: 1px dashed #e2e8f0 !important;
	font-size: 13px !important;
	color: #475569 !important;
	width: 100% !important;
	margin: 0 !important;
}

.s3 .Plan-Features .features-list:last-child {
	border-bottom: 0 !important;
}

.s3 .features-list .sep-time {
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #0ea5e9 !important;
	padding: 0 !important;
}

.s3 .features-list .sep-time span {
	font-size: 11px !important;
	font-weight: 600;
	color: #64748b;
	margin-left: 2px;
}

/* Style 3 Plan Price Footer */
.s3 .at-IntPlan-Item .Plan-Price {
	background: #f8fafc !important;
	border-top: 1px solid #e2e8f0 !important;
	padding: 24px 30px !important;
	text-align: center !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center;
}

.s3 .Plan-Price .price-row {
	font-size: 28px !important;
	color: #0f172a !important;
	font-weight: 800 !important;
	margin-bottom: 4px !important;
}

.s3 .Plan-Price .price-row sup {
	color: #0f172a !important;
	font-size: 16px !important;
}

.s3 .Plan-Price .price-row span {
	font-size: 28px !important;
}

.s3 .Plan-Price .extra-txt {
	font-size: 11px !important;
	color: #94a3b8 !important;
	margin-bottom: 16px !important;
}

.s3 .Plan-Price .check-aval .at-int-btn {
	background: #0066fe !important;
	color: #ffffff !important;
	border: 1px solid #0066fe !important;
	box-shadow: 0 4px 6px -1px rgba(0, 102, 254, 0.15) !important;
}

.s3 .Plan-Price .check-aval .at-int-btn:hover {
	background: #0052cc !important;
	border-color: #0052cc !important;
	transform: translateY(-2px);
	box-shadow: 0 8px 15px rgba(0, 102, 254, 0.3) !important;
}


/* ==================== RESPONSIVE STYLES (Modern Overrides) ==================== */
@media only screen and (max-width: 1024px) {
	/* Style 1 Responsive Collapse */
	table.at-intenet-package,
	.at-intenet-package thead,
	.at-intenet-package tbody,
	.at-intenet-package th,
	.at-intenet-package td,
	.at-intenet-package tr {
		display: block !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	.at-intenet-package thead {
		display: none !important; /* Hide headers on tablet/mobile */
	}

	.at-intenet-package tbody td {
		text-align: left !important;
		border: 0 !important;
		border-bottom: 1px solid #f1f5f9 !important;
		padding: 12px 20px !important;
	}

	.at-intenet-package tbody td:first-child {
		padding-top: 24px !important;
		background: #f8fafc;
	}

	.at-intenet-package tbody td:last-child {
		padding-bottom: 24px !important;
		border-bottom: 2px solid #e2e8f0 !important;
	}

	.at-int-speedname, .at-int-dl1, .at-int-dl2, .at-int-dl3, .at-int-price, .at-int-check {
		width: 100% !important;
	}

	.at-int-dl1, .at-int-dl2, .at-int-dl3 {
		display: flex !important;
		justify-content: space-between !important;
		align-items: center !important;
	}

	.at-int-dl1:before { content: "1 Movie download:"; font-weight: 600; font-size: 13px; color: #475569; }
	.at-int-dl2:before { content: "50 Photos download:"; font-weight: 600; font-size: 13px; color: #475569; }
	.at-int-dl3:before { content: "1 Album download:"; font-weight: 600; font-size: 13px; color: #475569; }

	.at-int-dl1>h2, .at-int-dl2>h2, .at-int-dl3>h2 {
		font-size: 20px !important;
		margin: 0 !important;
	}

	.at-int-dl1 .todownload, .at-int-dl2 .todownload, .at-int-dl3 .todownload {
		display: none !important; /* Hide sub labels */
	}

	.at-int-price {
		display: flex !important;
		justify-content: space-between !important;
		align-items: center !important;
	}

	.at-int-price:before { content: "Pricing:"; font-weight: 600; font-size: 13px; color: #475569; }

	.at-int-price>h2 {
		font-size: 24px !important;
		margin: 0 !important;
	}
	
	.at-int-price span.check-info {
		display: none !important;
	}

	.at-int-check {
		padding-right: 20px !important;
	}

	/* Style 2 Responsive */
	.at-IntPlan-Item {
		flex-direction: column !important;
	}

	.at-IntPlan-Item .Plan-Item {
		flex-basis: auto !important;
		padding: 24px !important;
	}

	.at-IntPlan-Item .Plan-Item .items {
		flex-direction: column !important;
		align-items: stretch !important;
	}

	.Plan-Item .items .Plan-Title {
		text-align: center !important;
		margin-bottom: 16px !important;
	}

	.Plan-Item .items .Plan-Service {
		margin: 0 auto 16px auto !important;
	}

	.Plan-Item .items .Plan-Features {
		flex-direction: column !important;
		width: 100% !important;
	}

	.Plan-Features .features-list {
		display: flex !important;
		justify-content: space-between !important;
		align-items: center !important;
		width: 100% !important;
		padding: 8px 0 !important;
		border-bottom: 1px dashed #e2e8f0;
	}

	.Plan-Features .features-list:last-child {
		border-bottom: 0;
	}

	.Plan-Features .features-list .sep-time {
		font-size: 16px !important;
	}

	.at-IntPlan-Item .Plan-Price {
		flex-basis: auto !important;
		padding: 24px !important;
	}
}

@media only screen and (max-width: 480px) {
	.s3 .at-IntPlan {
		grid-template-columns: 1fr !important;
	}
}

/* Style 4: Premium Modern Packages Grid */
.isppro-modern-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 30px;
    margin: 30px 0;
}

.isppro-modern-card {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    overflow: hidden;
    box-sizing: border-box;
}

.isppro-modern-card * {
    box-sizing: border-box;
}

.isppro-modern-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
}

.isppro-modern-badge {
    position: absolute;
    top: 15px;
    right: 15px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    padding: 6px 14px;
    border-radius: 50px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    letter-spacing: 0.5px;
}

.isppro-modern-service-tag {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    color: #64748b;
    letter-spacing: 1px;
    margin-bottom: 8px;
    display: inline-block;
}

.isppro-modern-title {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    margin: 0 0 4px 0 !important;
    line-height: 1.2 !important;
}

.isppro-modern-subtitle {
    font-size: 14px !important;
    color: #64748b !important;
    margin: 0 0 20px 0 !important;
    font-weight: 500;
    line-height: 1.4 !important;
}

.isppro-modern-divider {
    height: 1px;
    background: #e2e8f0;
    margin: 0 0 20px 0;
    border: 0;
}

.isppro-modern-speed-wrapper {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 20px;
}

.isppro-modern-speed-box {
    flex: 1;
}

.isppro-modern-speed-label {
    font-size: 10px;
	line-height: normal;
    font-weight: 700;
    text-transform: uppercase;
    color: #94a3b8;
    margin-bottom: 2px;
    letter-spacing: 0.5px;
}

.isppro-modern-speed-value {
    font-size: 28px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.1;
}

.isppro-modern-speed-unit {
    font-size: 13px;
    font-weight: 600;
    color: #64748b;
    margin-left: 2px;
}

.isppro-modern-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
}

.isppro-modern-pill {
    font-size: 11px;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    line-height: 1.2;
}

.isppro-modern-pill.symmetrical {
    background: #ecfdf5;
    color: #059669;
    border: 1px solid #a7f3d0;
}

.isppro-modern-pill.unlimited {
    background: #eff6ff;
    color: #2563eb;
    border: 1px solid #bfdbfe;
}

.isppro-modern-description {
    font-size: 14px;
    color: #475569;
    line-height: 1.6;
    margin-bottom: 24px;
}

.isppro-modern-features-list {
    margin: 0 0 24px 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.isppro-modern-feature-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    font-size: 13.5px !important;
    color: #334155 !important;
    margin-bottom: 10px !important;
    line-height: 1.4 !important;
    border: 0 !important;
    padding: 0 !important;
    background: none !important;
    text-align: left !important;
}

.isppro-modern-feature-icon {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #cbd5e1;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    font-weight: bold;
    line-height: 1;
}

.isppro-modern-feature-item.highlighted {
    font-weight: 600 !important;
    color: #0f172a !important;
}

.isppro-modern-price-block {
    margin-bottom: 20px;
    border-top: 1px solid #f1f5f9;
    padding-top: 20px;
}

.isppro-modern-price-flex {
    display: flex;
    align-items: baseline;
    gap: 4px;
    flex-wrap: wrap;
    line-height: 1;
}

.isppro-modern-price-currency {
    font-size: 20px;
    font-weight: 700;
    color: #0f172a;
    align-self: flex-start;
    margin-right: 2px;
}

.isppro-modern-price-promo {
    font-size: 44px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1;
    letter-spacing: -1px;
}

.isppro-modern-price-regular {
    font-size: 16px;
    color: #94a3b8;
    text-decoration: line-through;
    margin-left: 6px;
    margin-right: 2px;
    font-weight: 600;
}

.isppro-modern-price-suffix {
    font-size: 13.5px;
    color: #64748b;
    font-weight: 500;
    margin-left: 2px;
}

.isppro-modern-price-meta {
    font-size: 11.5px;
    color: #64748b;
    margin-top: 6px;
    line-height: 1.5;
}

.isppro-modern-btn {
    display: block;
    width: 100%;
    text-align: center;
    padding: 13px 20px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 700;
    color: #ffffff !important;
    text-decoration: none !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
    transition: all 0.2s ease;
    border: 0;
    cursor: pointer;
}

.isppro-modern-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
    opacity: 0.95;
}

.isppro-modern-btn.view-details-btn {
    background-color: transparent !important;
    border: 2px solid var(--btn-accent, #0066fe) !important;
    color: var(--btn-accent, #0066fe) !important;
    box-shadow: none !important;
    box-sizing: border-box;
}

.isppro-modern-btn.view-details-btn:hover {
    background-color: var(--btn-accent, #0066fe) !important;
    color: #ffffff !important;
}

@media (max-width: 640px) {
    .isppro-modern-grid {
        grid-template-columns: 1fr;
    }
}

.isppro-modern-estimates-title {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    color: #94a3b8;
    margin-bottom: 12px;
    letter-spacing: 0.5px;
}

.isppro-modern-download-estimates {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 24px;
    background: #f8fafc;
    border-radius: 10px;
    padding: 12px 15px;
}

.isppro-modern-download-estimates .estimate-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 12.5px;
    color: #475569;
}

.isppro-modern-download-estimates .estimate-label {
    flex-grow: 1;
    margin-left: 8px;
    color: #64748b;
    text-align: left;
}

.isppro-modern-download-estimates .estimate-val {
    font-weight: 700;
    color: #0f172a;
    text-align: right;
}

/* ==========================================================================
   Modern Packages Comparison Table Addon Styling
   ========================================================================== */
.isppro-comparison-table-wrapper {
    width: 100%;
    overflow-x: auto;
    margin: 30px 0;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.04), 0 1px 3px rgba(15, 23, 42, 0.02);
    border: 0px solid #e2e8f0;
    background: #ffffff;
    -webkit-overflow-scrolling: touch;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
	border: 1px solid rgba(0, 0, 0, 0.05);
	margin: 0 !important;
    font-family: inherit;
}

/* Header Styling */
.isppro-comparison-table-wrapper table.isppro-comparison-table th {
    padding: 20px 24px;
    font-weight: 700;
    font-size: 14px;
    color: #0f172a;
    background: #f8fafc;
    border-bottom: 2px solid #e2e8f0;
    border-top: none;
    border-left: none;
    border-right: 1px solid #e2e8f0;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table th:last-child {
    border-right: none;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table th.col-features {
    text-align: left;
    background: #f1f5f9;
    position: sticky;
    left: 0;
    z-index: 2;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table th.col-package {
    text-align: center;
}

/* Body Cell Styling */
.isppro-comparison-table-wrapper table.isppro-comparison-table td {
    padding: 18px 24px;
    font-size: 14px;
    color: #475569;
    border-bottom: 1px solid #f1f5f9;
    border-top: none;
    border-left: none;
    border-right: 1px solid #f1f5f9;
    vertical-align: middle;
    transition: background-color 0.15s ease;
    background: #ffffff;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table td:last-child {
    border-right: none;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table tr:last-child td {
    border-bottom: none;
}

/* Label Column (First Column) */
.isppro-comparison-table-wrapper table.isppro-comparison-table td.cell-label {
    font-weight: 600;
    color: #334155;
    background: #f8fafc;
    border-right: 1px solid #e2e8f0;
    text-align: left;
    position: sticky;
    left: 0;
    z-index: 2;
}

/* Value Columns (Other Columns) */
.isppro-comparison-table-wrapper table.isppro-comparison-table td.cell-val {
    text-align: center;
}

/* Price Row Styling */
.isppro-comparison-table-wrapper table.isppro-comparison-table tr.row-price td {
    background: #fdfdfd;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table tr.row-price td.cell-val {
    font-size: 20px;
    font-weight: 800;
    color: #2563eb;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table tr.row-price .currency {
    font-size: 14px;
    font-weight: 700;
    vertical-align: super;
    margin-right: 2px;
}

/* Speed Row Styling */
.isppro-comparison-table-wrapper table.isppro-comparison-table tr.row-speed .speed-val {
    font-size: 16px;
    font-weight: 700;
    color: #0f172a;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table tr.row-speed .speed-unit {
    font-size: 12px;
    color: #64748b;
    font-weight: 500;
}

/* Badge Styling for Tech Type */
.isppro-comparison-table-wrapper table.isppro-comparison-table .tech-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 14px;
    font-size: 11px;
    font-weight: 700;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1;
}

/* Dynamic colors for tech type badges */
.isppro-comparison-table-wrapper table.isppro-comparison-table .tech-badge.fiber {
    background-color: #f3e8ff;
    color: #7c3aed;
    border: 1px solid #e9d5ff;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table .tech-badge.broadband,
.isppro-comparison-table-wrapper table.isppro-comparison-table .tech-badge.cable,
.isppro-comparison-table-wrapper table.isppro-comparison-table .tech-badge.dsl {
    background-color: #e0f2fe;
    color: #0284c7;
    border: 1px solid #bae6fd;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table .tech-badge.satellite {
    background-color: #fee2e2;
    color: #dc2626;
    border: 1px solid #fca5a5;
}

/* Contract Column Styling */
.isppro-comparison-table-wrapper table.isppro-comparison-table .contract-val {
    font-weight: 600;
    color: #0f172a;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table .contract-none {
    color: #94a3b8;
    font-style: italic;
}

/* Hover effects */
.isppro-comparison-table-wrapper table.isppro-comparison-table tr:hover td {
    background-color: #f8fafc;
}

.isppro-comparison-table-wrapper table.isppro-comparison-table tr:hover td.cell-label {
    background-color: #f1f5f9;
}

/* =========================================
   ISP Pro Packages Grid Styles
========================================= */

.isppro-packages-grid-wrapper {
	--pkg-default-accent: #005AD4;
}

/* Base Card Style */
.isppro-package-card {
	position: relative;
	background: #ffffff;
	border-radius: 12px;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.04);
	border: 1px solid #e2e8f0;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	/* If --pkg-accent is not set inline, fallback to default */
	--current-accent: var(--pkg-accent, var(--pkg-default-accent));
}
.isppro-package-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08);
}

.isppro-card-top-border {
	height: 6px;
	width: 100%;
	background-color: var(--current-accent);
}

.isppro-package-content-wrap {
	padding: 30px;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	justify-content: space-between;
}

.isppro-package-header {
	margin-bottom: 20px;
}
.isppro-package-badge {
	display: block;
	font-size: 11px;
	font-weight: 700;
	color: #64748b;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 10px;
}
.isppro-package-title {
	font-size: 24px;
	line-height: 1;
	font-weight: 800;
	margin: 0;
}

/* Speeds Layout */
.isppro-package-specs {
	margin-bottom: 20px;
}
.isppro-speed-wrap {
	display: flex;
	gap: 30px;
	margin-bottom: 15px;
}
.isppro-speed-item {
	display: flex;
	flex-direction: column;
}
.isppro-speed-label {
	font-size: 10px;
	line-height: normal;
	font-weight: 600;
	color: rgba(0, 0, 0, 0.5);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 4px;
}
.isppro-speed-value {
	font-size: 22px;
	font-weight: 700;
	color: #0f172a;
	line-height: 1;
}
.isppro-speed-value small {
	font-size: 14px;
	font-weight: 600;
	color: rgba(0, 0, 0, 0.5);
}

.isppro-symm-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #ecfdf5;
	color: #10b981;
	font-size: 12px;
	font-weight: 700;
	padding: 6px 12px;
	border-radius: 20px;
	border: 1px solid #d1fae5;
}
.isppro-symm-badge svg {
	width: 10px;
	height: auto;
}

.isppro-tv-specs {
	font-size: 15px;
	color: #475569;
}

/* Features List */
.isppro-package-features {
	list-style: none;
	padding: 0;
	margin: 0 0 25px 0;
	flex-grow: 1;
}
.isppro-package-features li {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: small;
	line-height: normal;
	color: rgba(0, 0, 0, 0.7);
	margin-bottom: 5px;
}
.isppro-package-features li:last-child {
	margin-bottom: 0;
}

/* Footer / Price */
.isppro-package-footer {
	border-top: 1px solid #f1f5f9;
	padding-top: 25px;
	margin-top: 15px;
}
.isppro-package-price-wrap {
	display: flex;
	align-items: baseline;
}
.isppro-package-currency {
	font-size: 16px;
	font-weight: 700;
	color: #0f172a;
	position: relative;
	top: -15px;
	margin-right: 2px;
}
.isppro-package-price {
	font-size: 48px;
	font-weight: 800;
	color: #0f172a;
	line-height: 1;
}
.isppro-package-suffix {
	font-size: 14px;
	font-weight: 600;
	color: #64748b;
	margin-left: 4px;
}
.isppro-package-contract {
	font-size: 11px;
	color: #94a3b8;
	margin-top: 8px;
	margin-bottom: 20px;
}

.isppro-package-cta {
	display: block;
	text-align: center;
	padding: 14px 24px;
	background-color: var(--current-accent) !important;
	color: #ffffff !important;
	font-weight: 600;
	border-radius: 8px;
	text-decoration: none;
	transition: background-color 0.2s ease, opacity 0.2s ease;
}
.isppro-package-cta:hover {
	opacity: 0.9;
}

/* =========================================
   Style 2: Horizontal List
========================================= */
.isppro-grid-style-2 {
	display: flex !important;
	flex-direction: column !important;
}
.isppro-grid-style-2 .isppro-package-card {
	flex-direction: row;
}
.isppro-grid-style-2 .isppro-card-top-border {
	width: 6px;
	height: 100%;
}
.isppro-grid-style-2 .isppro-package-content-wrap {
	flex-direction: row;
	align-items: center;
	padding: 25px 40px;
	gap: 40px;
}
.isppro-grid-style-2 .isppro-package-header {
	margin-bottom: 0;
	flex: 1 1 25%;
}
.isppro-grid-style-2 .isppro-package-specs {
	margin-bottom: 0;
	flex: 1 1 25%;
}
.isppro-grid-style-2 .isppro-package-features {
	margin-bottom: 0;
	flex: 1 1 30%;
}
.isppro-grid-style-2 .isppro-package-footer {
	border-top: none;
	border-left: 1px solid #f1f5f9;
	padding-top: 0;
	padding-left: 40px;
	margin-top: 0;
	flex: 1 1 20%;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}
@media (max-width: 991px) {
	.isppro-grid-style-2 .isppro-package-card {
		flex-direction: column;
	}
	.isppro-grid-style-2 .isppro-card-top-border {
		width: 100%;
		height: 6px;
	}
	.isppro-grid-style-2 .isppro-package-content-wrap {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		padding: 25px;
	}
	.isppro-grid-style-2 .isppro-package-footer {
		border-left: none;
		border-top: 1px solid #f1f5f9;
		padding-left: 0;
		padding-top: 25px;
		width: 100%;
	}
}

/* Single Package Info */
.ultranet-sp-info-wrapper {
	box-sizing: border-box;
}
.ultranet-sp-info-category {
	display: block;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	margin-bottom: 12px;
	font-size: 14px;
	color: #0066fe;
}
.ultranet-sp-info-title {
	font-size: 48px;
	line-height: 1.15;
	font-weight: 800;
	margin-bottom: 20px;
	color: #0f172a;
}
.ultranet-sp-info-desc {
	font-size: 18px;
	line-height: 1.6;
	margin-bottom: 30px;
	color: #475569;
}
.ultranet-sp-info-checklist {
	list-style: none;
	padding: 0;
	margin: 0 0 35px 0;
}
.ultranet-sp-info-checklist li {
	display: flex;
	align-items: center;
	margin-bottom: 14px;
	font-size: 16px;
	font-weight: 500;
}
.ultranet-sp-info-checklist li i {
	margin-right: 12px;
	font-size: 14px;
	width: 14px;
	height: 14px;
	color: #0066fe;
}
.ultranet-sp-info-action-row {
	display: flex;
	align-items: center;
	gap: 30px;
	margin-bottom: 20px;
}
.ultranet-sp-info-price-wrap {
	display: flex;
	align-items: baseline;
}
.ultranet-sp-info-price {
	font-size: 40px;
	font-weight: 800;
	color: #0f172a;
}
.ultranet-sp-info-suffix {
	font-size: 16px;
	color: #64748b;
	margin-left: 6px;
	font-weight: 600;
}
.ultranet-sp-info-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	font-weight: 700;
	transition: all 0.3s ease;
	background-color: #0066fe;
	color: #ffffff;
}
.ultranet-sp-info-btn i {
	margin-left: 8px;
}
.ultranet-sp-info-btn:hover {
	opacity: 0.95;
}
.ultranet-sp-info-fine {
	display: block;
	font-size: 13px;
	font-weight: 600;
	color: #64748b;
}

/* Single Package Data Info */
.ultranet-sp-data-wrapper {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 20px;
	box-shadow: 0 4px 20px rgba(0,0,0,0.03);
	box-sizing: border-box;
	background-color: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 30px 20px;
}
.ultranet-sp-data-col {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 10px;
	position: relative;
}
.ultranet-sp-data-col:not(:last-child)::after {
	content: '';
	position: absolute;
	right: -10px;
	top: 15%;
	height: 70%;
	width: 1px;
	background-color: #e2e8f0;
}
.ultranet-sp-data-icon-wrap {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background-color: #f1f5f9;
	color: #0066fe;
	font-size: 20px;
	margin-bottom: 15px;
}
.ultranet-sp-data-icon-wrap svg {
	width: 20px !important;
	height: 20px !important;
}
.ultranet-sp-data-label {
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 8px;
	text-transform: capitalize;
	color: #64748b;
}
.ultranet-sp-data-val {
	font-size: 18px;
	font-weight: 800;
	color: #0f172a;
}
@media (max-width: 991px) {
	.ultranet-sp-data-wrapper {
		grid-template-columns: repeat(3, 1fr);
	}
	.ultranet-sp-data-col::after {
		display: none !important;
	}
}
@media (max-width: 575px) {
	.ultranet-sp-data-wrapper {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Single Package Key Features */
.ultranet-sp-features-wrapper {
	box-shadow: none !important;
	box-sizing: border-box;
	background-color: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
}
.ultranet-sp-features-title {
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 25px;
	color: #0f172a;
}
.ultranet-sp-features-table {
	width: 100%;
	border-collapse: collapse !important;
	border: none !important;
	background: transparent !important;
}
.ultranet-sp-features-table tr {
	border-bottom: 1px solid #f1f5f9 !important;
	border-top: none !important;
	border-left: none !important;
	border-right: none !important;
	background: transparent !important;
}
.ultranet-sp-features-table tr:last-child {
	border-bottom: none !important;
}
.ultranet-sp-features-table td {
	padding: 16px 0 !important;
	vertical-align: middle !important;
	border: none !important;
	background: transparent !important;
}
.ultranet-sp-features-table td.feature-lbl {
	font-weight: 700;
	width: 30%;
	color: #0f172a;
}
.ultranet-sp-features-table td.feature-val {
	width: 65%;
	font-weight: 500;
	color: #475569;
}
.ultranet-sp-features-table td.feature-check {
	width: 5%;
	text-align: right;
}
.ultranet-sp-features-table td.feature-check i {
	font-size: 16px;
	color: #0066fe;
}

/* Addons & Extras */
.ultranet-sp-addons-wrapper {
	box-shadow: 0 4px 20px rgba(0,0,0,0.03);
	box-sizing: border-box;
	background-color: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 35px;
}
.ultranet-sp-addons-title {
	font-size: 22px;
	font-weight: 800;
	margin-bottom: 8px;
	color: #0f172a;
}
.ultranet-sp-addons-subtitle {
	font-size: 15px;
	margin-bottom: 30px;
	color: #64748b;
}
.ultranet-sp-addons-list {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.ultranet-sp-addon-item {
	display: flex;
	align-items: center;
	padding: 20px;
	border: 1px solid #f1f5f9;
	border-radius: 8px;
	transition: all 0.3s ease;
}
.ultranet-sp-addon-item:hover {
	border-color: #cbd5e1;
}
.addon-icon-wrap {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	font-size: 18px;
	margin-right: 20px;
	flex-shrink: 0;
	background-color: #f1f5f9;
	color: #0066fe;
}
.addon-icon-wrap svg {
	width: 18px !important;
	height: 18px !important;
}
.addon-content {
	flex-grow: 1;
	padding-right: 20px;
}
.addon-content h4 {
	font-size: 16px;
	font-weight: 700;
	margin: 0 0 5px 0;
	color: #0f172a;
}
.addon-content p {
	font-size: 14px;
	margin: 0;
	line-height: 1.4;
	color: #64748b;
}
.addon-price-wrap {
	text-align: right;
	margin-right: 25px;
	flex-shrink: 0;
}
.addon-price-wrap .price-val {
	display: block;
	font-size: 18px;
	font-weight: 800;
	color: #0f172a;
}
.addon-price-wrap .price-suffix {
	font-size: 12px;
	color: #64748b;
	font-weight: 600;
}
.addon-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 2px solid #0066fe;
	text-decoration: none;
	font-weight: 700;
	font-size: 13px;
	padding: 10px 22px;
	border-radius: 6px;
	transition: all 0.3s ease;
	flex-shrink: 0;
	color: #0066fe;
}
.addon-btn:hover {
	background-color: #0066fe;
	color: #ffffff;
}
@media (max-width: 575px) {
	.ultranet-sp-addon-item {
		flex-direction: column;
		align-items: flex-start;
		gap: 15px;
	}
	.addon-price-wrap {
		text-align: left;
		margin-right: 0;
	}
}

/* ============================================================== */
/* SERVICE AVAILABILITY MAP (V2) STYLES                            */
/* ============================================================== */
.isppro-map-v2-container {
	width: 100%;
	background: #ffffff;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
	overflow: hidden;
	font-family: inherit;
	box-sizing: border-box;
}

.isppro-map-v2-grid {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.isppro-map-v2-left {
	flex: 1 1 360px;
	padding: 40px 35px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
	background: #ffffff;
}

.isppro-map-v2-title {
	font-size: 28px;
	font-weight: 800;
	color: #0f172a;
	margin: 0 0 10px 0;
	line-height: 1.2;
}

.isppro-map-v2-subtitle {
	font-size: 14px;
	color: #64748b;
	margin: 0 0 25px 0;
	line-height: 1.5;
}

.isppro-map-v2-search-form {
	display: flex;
	flex-direction: column;
	gap: 15px;
	margin-bottom: 25px;
}

.isppro-map-v2-input-wrapper {
	position: relative;
	width: 100%;
}

.isppro-map-v2-input {
	width: 100%;
	padding: 14px 45px 14px 16px;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	font-size: 14px;
	color: #1e293b;
	background: #f8fafc;
	transition: all 0.2s ease;
	box-sizing: border-radius;
	outline: none;
}

.isppro-map-v2-input:focus {
	border-color: #0066fe;
	background: #ffffff;
	box-shadow: 0 0 0 3px rgba(0, 102, 254, 0.12);
}

.isppro-map-v2-input-icon {
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	color: #64748b;
	pointer-events: none;
	display: flex;
	align-items: center;
}

.isppro-map-v2-submit-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 14px 28px;
	background: #0066fe;
	color: #ffffff;
	border: none;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.5px;
	cursor: pointer;
	transition: all 0.2s ease;
	box-shadow: 0 4px 14px rgba(0, 102, 254, 0.3);
}

.isppro-map-v2-submit-btn:hover {
	background: #0052cc;
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(0, 102, 254, 0.4);
}

.isppro-map-v2-status-row {
	display: flex;
	gap: 20px;
	align-items: center;
	font-size: 12px;
	color: #64748b;
}

.isppro-status-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-weight: 500;
}

.badge-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	display: inline-block;
}

.badge-dot.green {
	background: #10b981;
	box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.2);
}

.badge-dot.outline {
	border: 1.5px solid #94a3b8;
}

.isppro-map-v2-right {
	flex: 1 1 450px;
	position: relative;
	min-height: 450px;
	background: #f1f5f9;
}

.isppro-map-v2-canvas {
	width: 100%;
	height: 100%;
	min-height: 450px;
	z-index: 1;
}

/* Floating Overlay Result Popup */
.isppro-map-v2-popup-overlay {
	position: absolute;
	top: 25px;
	right: 25px;
	width: 220px;
	background: #ffffff;
	border-radius: 14px;
	padding: 25px 20px;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
	z-index: 999;
	animation: ispproPopupSlide 0.3s ease-out forwards;
	box-sizing: border-box;
}

@keyframes ispproPopupSlide {
	from {
		opacity: 0;
		transform: translateY(15px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.isppro-map-v2-popup-close {
	position: absolute;
	top: 12px;
	right: 15px;
	background: none;
	border: none;
	font-size: 22px;
	color: #94a3b8;
	cursor: pointer;
	line-height: 1;
	padding: 0;
}

.isppro-map-v2-popup-close:hover {
	color: #0f172a;
}

.isppro-map-v2-popup-title {
	font-size: 18px;
	font-weight: 800;
	color: #10b981;
	margin: 0 0 6px 0;
}

.isppro-map-v2-popup-sub {
	font-size: 13px;
	color: #475569;
	margin: 0 0 18px 0;
	line-height: 1.4;
}

.isppro-map-v2-popup-services {
	margin-bottom: 20px;
}

.services-label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	color: #64748b;
	margin-bottom: 10px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.services-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
}

.services-list li {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 13px;
	font-weight: 600;
	color: #1e293b;
}

.isppro-service-check-icon {
	color: #0066fe;
	font-weight: 900;
	font-size: 14px;
}

.isppro-map-v2-view-pkgs-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	padding: 6px 12px;
	border: 1px solid #0066fe;
	border-radius: 5px;
	color: #0066fe;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.5px;
	text-decoration: none;
	transition: all 0.2s ease;
	box-sizing: border-box;
}

.isppro-map-v2-view-pkgs-btn:hover {
	background: #0066fe;
	color: #ffffff;
}

@media (max-width: 768px) {
	.isppro-map-v2-grid {
		flex-direction: column;
	}
	.isppro-map-v2-popup-overlay {
		position: static;
		width: 100%;
		margin-top: 15px;
		border-radius: 0 0 12px 12px;
	}
}


