/* ML CHANGES  new */ 
:root {
    --primary-colour: #000000;
    --secondary-colour: #009980;
    --tertiary-colour: #009980;
	--tertiary-colour-light: #C7AE7E;
    --quaternary-colour: #0B4D56;
    --quaternary-colour-darker: #06353B;
    --bg-colour: #F1F1F1;
	--light-colour: #CACDD3;

	--base-font: 'Arial', sans-serif;
	--heading-font: 'Spectral', serif;
}
.single-content figure.wp-block-image {
	margin-bottom: 0 !important
}

.alignwide {
	margin-left: 15rem !important;
	margin-right: 15rem !important;
}

html {
	font-size: 16px;
	line-height: 40px!important;
	font-family: var(--base-font); 
}
body {
	line-height: 40px!important;
}
a:where(:not(.wp-element-button)) {
	text-decoration: none!important;
}

@media only screen and (max-width: 1440px) {
	html {
		font-size: 14px;
	}
}

@media only screen and (max-width: 1280px) {
	html, html body {
		font-size: 16px;
		line-height: 31px;
	}
}


@keyframes blink {
	0% {
		transform: scale(initial);
	}

	50% {
		transform: scale(1);
	}

	100% {
		transform: scale(initial);
	}
}

@keyframes shrink-init {
	0% {
		transform: scale(1);
	}

	100% {
		transform: scale(0.5);
	}
}

@keyframes shrink-end {
	0% {
		transform: scale(0.5);
	}

	100% {
		transform: scale(1);
	}
}


body {
	transition: .2s overflow;
	font-family: var(--base-font);
}

.scroll-stars figure img {
	transform: scale(0.5);
}

.scroll-stars figure:nth-of-type(2) img {
	transform: scale(1);
}

.scroll-stars figure:nth-of-type(2) img {
	animation: shrink-init 0.7s ease-in-out, blink 0.7s ease-in-out, shrink-end 0.7s ease-in-out;
	/* -webkit-animation:  shrink-init 0.7s ease-in-out, shrink-end 0.7s ease-in-out, shrink-init 0.7s ease-in-out, shrink-end 0.7s ease-in-out;	 */
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
	animation-delay: 1.5s, 3s, 4.5s;
}

.scroll-stars figure:last-of-type img {
	animation: blink 0.7s ease-in-out, blink 0.7s ease-in-out;
	/* -webkit-animation: blink 0.7s ease-in-out, blink 0.7s ease-in-out; */
	animation-delay: 2s, 3.5s;
}

.scroll-stars figure:first-of-type img {
	animation: blink 0.7s ease-in-out, blink 0.7s ease-in-out;
	/* -webkit-animation: blink 0.7s ease-in-out, blink 0.7s ease-in-out; */
	animation-delay: 2.5s, 4s;
}
body * {
	box-sizing: border-box;
}
body h1, body h2, body h3, body h4, body h5, body h6 {
	font-family: var(--heading-font);
	color: var(--quaternary-colour);
}
body h1 {
	font-size: 4.1rem;
	line-height: 1.1;
}
body h2 {
	font-size: 3.88rem;
	line-height: 1.28;
	margin: 2rem 0;
}
body h3 {
	font-size: 2.7rem;
	line-height: 1.28;
}
body h4 {
	font-size: 2rem;
	line-height: 1.1;
}
body h5 {
	font-size: 1.05rem;
	line-height: 1.1;
}
body h6 {
	font-size: 0.9rem;
	line-height: 1.1;
}
@media (max-width: 1023px) {
	body h1 {
		font-size: 35px;
		line-height: 42px;
	}
	body h2 {
		font-size: 35px;
		line-height: 42px;
		margin: 1rem 0;
	}
	body h3 {
		font-size: 25px;
		line-height: 27px;
	}
	body h4 {
		font-size: 22px;
		line-height: 24px;
	}
	body h5 {
		font-size: 20px;
		line-height: 22px;
	}
	body h6 {
		font-size: 18px;
		line-height: 20px;
	}
}

.main-cont-txt {
  overflow: hidden;
}
.main-cont-txt .table-wrapper {
	overflow: hidden;
    max-width: 100%;
    display: grid;
}
.main-cont-txt .wp-block-table {
  overflow-x: auto;
  padding: 10px 0;
}
.main-cont-txt .wp-block-table::-webkit-scrollbar {
  width: 3px;
  height: 5px;
}
.main-cont-txt .wp-block-table::-webkit-scrollbar-track {
  background: #D1C7AC;
}
.main-cont-txt .wp-block-table::-webkit-scrollbar-thumb {
  background: #987D2D;
}
.main-cont-txt .wp-block-table::-webkit-scrollbar-thumb:hover {
  background: #987D2D;
}
.main-cont-txt .wp-block-table thead {
	border-bottom: 1px solid;
}
.main-cont-txt table {
  border: 1px solid #D1C7AC;
  border-collapse: collapse;
  margin: 0 auto;
}
.wp-block-table .has-fixed-layout {
    table-layout: initial!important;
    width: 100%;
}
.main-cont-txt table thead th,
.main-cont-txt table tfoot th {
  background: #FFFCED;
}
.main-cont-txt table caption {
  padding: 0.5em;
}
.main-cont-txt table th,
.main-cont-txt table td {
  padding: 7px 10px;
  border: 1px solid #D1C7AC;
}
.wp-block-table .has-fixed-layout td, .wp-block-table .has-fixed-layout th {
    word-break: normal;
    min-width: 115px;
}
@media (max-width: 1023px) {
  .main-cont-txt img {
    max-width: 100%;
    height: auto;
  }
}
.main-btn {
	text-transform: uppercase;
	font-size: 1rem;
	line-height: 1.4rem;
	padding: 9.5px 35px;
	border: 1px solid var(--quaternary-colour);
	color: var(--quaternary-colour);
	margin-top: 1rem;
	display: inline-block;
	letter-spacing: 3.6px;
	text-decoration: none;
}
.wp-element-button {
	text-transform: uppercase;
	font-size: 1rem;
	line-height: 1.4rem;
	padding: 10px 35px;
	border: 1px solid var(--quaternary-colour);
	color: var(--quaternary-colour);
	margin-top: 1rem;
	display: inline-block;
	letter-spacing: 3.6px;
}
@media only screen and (min-width: 1024px) {
	.main-btn {
		background: linear-gradient(to left, transparent 50%, var(--quaternary-colour) 50%);
		background-size: 200% 100%;
		background-position: right bottom;
		transition: all 0.4s ease;
	}
	.wp-element-button {
		background: linear-gradient(to left, transparent 50%, var(--quaternary-colour) 50%)!important;
		background-size: 200% 100%!important;
		background-position: right bottom!important;
		transition: all 0.4s ease!important;
	}
	.main-btn:hover {
		color: white;
		background-position: left bottom;
	}
	.wp-element-button:hover {
		color: white;
		background-position: left bottom!important;
	}
}
@media (max-width: 1023px) {
	.main-btn {
		font-size: 16px;
		line-height: 20px;
		padding: 12px 30px;
		text-align: center;
		background: var(--quaternary-colour);
		color: white;
	}
	.wp-element-button {
		font-size: 16px;
		line-height: 20px;
		padding: 12px 30px;
		text-align: center;
	}
}

.main-btn.secondary-btn {
	padding: 10px 35px;
}
@media (max-width: 1023px) {
	.main-btn.secondary-btn {
		font-size: 16px;
		line-height: 20px;
		padding: 12px 30px;
	}
}
.gallery-section {
	background-repeat: repeat-x !important;
}

.wp-block-cover.offers-carousel-content>div {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 20px;
}

.gallery-section .splide__slide img {
	max-width: 390px !important;
}

.gallery-section .kb-splide .splide__arrow.splide__arrow--next {
	background: url(/wp-content/uploads/2024/09/carousel-arrow-right.svg);
	background-repeat: no-repeat;
	width: 80px;
	height: 80px;
	margin-right: 10px;
}

.gallery-section .kb-splide .splide__arrow.splide__arrow--prev {
	background: url(/wp-content/uploads/2024/09/carousel-arrow-left.svg);
	background-repeat: no-repeat;
	width: 80px;
	height: 80px;
	margin-left: 10px;
}

.gallery-section .slick-next:before,
.gallery-section .slick-prev:before {
	content: none;
}

.gallery-section .kb-splide .splide__arrow svg {
	display: none;
}

.gallery-section .splide__track {
	margin: 0 8rem !important;
}
body .gform_wrapper input,
body .gform_wrapper textarea {
  text-align: left; /* Options: left | center | right */
}
button {
    background: transparent;
    border: none;
}
.gform-theme {
width: 100%;
    overflow: hidden;
    max-width: 1100px!important;
    padding: 0 3rem;
    text-align: center;
    margin: 0 auto 4rem!important;
}
.gform-theme fieldset {
	text-align: left!important;
}
p.gform_description, .gform-theme legend, .gform-theme label {
	font-family: var(--base-font);
}
.gform-theme legend, .gform-theme label {
	text-transform: uppercase;
}
.gform-theme .gform-footer input.gform_button {
	text-transform: uppercase!important;
    padding: 14px 30px!important;
	border-radius: 0 !important;
}
.gform-theme h2 {
	font-size: 2rem;
    margin: 1rem 0;
}
.gform-theme .gform_fields {
	gap: 20px!important;
}
.post-password-form {
    padding: 10rem 30px 83px;
    text-align: center;
    background-color: white;
    font-size: 23px;
    font-family: var(--heading-font);
	position: relative;
}
form.post-password-form:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 6.6%;
    height: 100%;
    background-image: url(/wp-content/themes/netaffinity-theme/assets/images/primary-content-pattern.png);
    background-size: 100% auto;
    z-index: 0;
}
.post-password-form input[type="password"] {
    height: 34px;
    display: block;
    margin: 10px auto;
    min-width: 270px;
}
.post-password-form input[type="submit"] {
	text-transform: uppercase;
    font-size: 1rem;
    line-height: 1.4rem;
    padding: 10px 35px;
    border: 1px solid var(--tertiary-colour);
    color: var(--tertiary-colour);
    margin-top: 1rem;
    display: inline-block;
    letter-spacing: 3.6px;
    background: white;
    cursor: pointer;
}
@media only screen and (min-width: 1024px) {
	.post-password-form input[type="submit"]  {
		background: linear-gradient(to left, transparent 50%, var(--tertiary-colour) 50%);
		background-size: 200% 100%;
		background-position: right bottom;
		transition: all 0.4s ease;
	}
	.post-password-form input[type="submit"]:hover {
		color: white;
		background-position: left bottom;
	}
}
@media (max-width: 1023px) {
	.post-password-form input[type="submit"]  {
		font-size: 16px;
		line-height: 20px;
		padding: 12px 30px;
		text-align: center;
	}
}
.gform_button {
	background-color: var(--tertiary-colour)!important;
}
.sitemap {
  background: #fff;
  color: #000;
  text-align: center;
  display: flex;
  justify-content: center;
  position: relative;
}
.sitemap > div {
	min-width: 900px;
	padding-bottom: 3rem;
}
.sitemap__container {
  margin: 68px 50px 67px;
  flex: 0 1 898px;
  z-index: 1;
}
@media screen and (max-width: 1024px) {
  .sitemap__container {
    margin: 0;
    padding: 49px 37px 52px 36px;
  }
}
.sitemap .rank-math-html-sitemap__title {
  margin: 9px 0 0 0;
  text-transform: uppercase;
  display: none;
}
@media screen and (max-width: 1024px) {
  .sitemap .rank-math-html-sitemap__title {
    margin: 16px 0 0 0;
  }
}
.sitemap .rank-math-html-sitemap__list {
  margin: 38px 0 0 0;
}
@media screen and (max-width: 1024px) {
  .sitemap .rank-math-html-sitemap__list {
    margin: 24px 0 0 0;
  }
}
.sitemap ul {
  margin: 0px;
  padding-inline-start: 0;
}
.sitemap ul li {
  padding: 10px;
  border: 1px solid #ccc;
  border-left: 3px solid var(--secondary-colour);
  margin: 10px;
  list-style: none;
}
.sitemap ul li a {
  font-size: 18px;
  font-weight: 300;
  text-transform: uppercase;
  color: #000;
}
.sitemap ul ul li {
  border-left: 4px solid #333;
}
.sitemap ul ul li a {
  font-size: 14px;
  font-weight: 300;
  text-transform: uppercase;
  color: #000;
}
.sitemap ul ul li ul li {
  border-left: 4px solid #333;
}
.sitemap ul ul li ul li a {
  font-size: 12px;
  font-weight: 400;
  text-transform: normal;
  color: #666;
}
/* Example: Adding a visible outline when a field is focused */
.gfield input:focus,
.gfield textarea:focus,
.gfield select:focus {
  outline: 2px solid red; /* Or your preferred color */
}

/* Example: Using :focus-visible for a more refined focus indication */
*:focus-visible, .gfield input:focus-visible,
.gfield textarea:focus-visible,
.gfield select:focus-visible {
  outline: 2px solid red;
}
.main-menu input[type=search]:focus {
	outline: 1px solid black;
}