/*
Theme Name: ttx
Author: Atwater Media
Author URI: http://www.atwatermedia.com
Description: Theme for TTX
Requires at least: 6.1
Tested up to: 6.3
Requires PHP: 5.6
Version: 1.0.7a
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
Text Domain: atwatertheme
*/

:root {
    --brand-color-yellow-green: #4E6E17;
    --brand-color-dark-gray: #221F20;
}
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    padding-right: 15px;
    padding-left: 15px;
}
.row {
    margin-left: -15px;
    margin-right: -15px;
}
.col {
    padding-right: 15px;
    padding-left: 15px;
}

body {
    font-family: "Albert Sans", sans-serif;
}

h1, h2, h3, .h1, .h2, .h3 {
    font-family: "Saira", sans-serif;
}
h1, .h1 {
    font-size: 3.75rem
}
h2, .h2 {
    font-size: 40px;
    font-weight: 500;
}

.atwm-bg_dark_gray {
    background-color: var( --brand-color-dark-gray );
}
.atwm-color_white {
    color: #ffffff;
}
.atwm-color_white a {
    color: #ffffff;
}

.atwm-dark_gradient_bg {
    background: rgb(40,39,41);
    background: linear-gradient(138deg, rgba(40,39,41,1) 0%, rgba(40,39,41,1) 62%, rgba(61,59,61,1) 100%);
}
.atwm-dark_gradient_image_bg {
    background: rgb(40,39,41);
    background: linear-gradient(90deg, rgba(40,39,41,1) 0%, rgba(40,39,41,1) 16%, rgba(60,58,59,1) 100%);
}
.atwm-dark_gradient_image_bg:after {
    content: "" !important;
    display: block !important;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url(../png/section-background.png);
    background-position: right bottom;
    background-repeat: no-repeat;
    background-size: 400px auto;
}
.atwm-green_gradient_bg {
    background: rgb(67,82,37);
    background: linear-gradient(150deg, rgba(67,82,37,1) 0%, rgba(50,67,22,1) 100%);
}


.atwm-subtitle {
    color: var( --brand-color-yellow-green );
    letter-spacing: 10%;
    text-transform: uppercase;
    font-weight: 800;
}

.atwm-button {
    background: none;
    border: none;
    padding: 10px 20px;
    font-size: 16px;
    border-radius: 10px;
    border: solid 2px #221F20;
    color: #221F20;
    font-weight: 600;
}

/* Structure */
.atwm-section_paddings {
    padding-top: 5rem;
    padding-bottom: 4rem;
}
.atwm-section_top_paddings {
    padding-top: 5rem;
}
.atwm-section_bottom_paddings {
    padding-bottom: 4rem;
}
.atwm-px-0 > .vc_column-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.atwm-pl-1rem > .vc_column-inner {
    padding-left: 1rem !important;
}
.atwm-pr-1rem > .vc_column-inner {
    padding-right: 1rem !important;
}
.atwm-pl-2rem > .vc_column-inner {
    padding-left: 2rem !important;
}
.atwm-pr-2rem > .vc_column-inner {
    padding-right: 2rem !important;
}
.atwm-pl-3rem > .vc_column-inner {
    padding-left: 3rem !important;
}
.atwm-pr-3rem > .vc_column-inner {
    padding-right: 3rem !important;
}

.vc_row-has-fill + .vc_row-full-width + .atwm-full-width-row.vc_row > .vc_column_container > .vc_column-inner {
    padding-top: 0 !important;
}


.atwm-metrics_row {
    max-width: 80%;
    margin-left: auto !important;
    margin-right: auto !important;
}
.atwm-metrics_row > .wpb_column > .vc_column-inner {
    border-left: solid 1px #ffffff;
    padding: 0 35px;
}
.atwm-metrics_row > .wpb_column:first-child > .vc_column-inner {
    border-left: none;
}
.atwm-metrics_row h2 {
    font-size: 3.75rem;
}
.atwm-metrics_row .wpb_text_column {
    margin-bottom: 0 !important;
}


/* Video Overlay */
.atwm-video {
	position: relative;
}
.atwm-video_overlay {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 1;
    cursor: pointer;
}
.atwm-video_overlay::before {
    content: "";
    display: block;
    width: 100px;
    height: 100px;
    border: solid 7px #ffffff;
    border-radius: 50%;
    z-index: 2;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate( -50%, -50% );
}
.atwm-video_overlay::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    border-left: 40px solid #fff;
    z-index: 2;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate( -50%, -50% );
    margin-left: 5px;
    border-radius: 4px;
}
.atwm-video_overlay img {
    width: 100%;
    height: 100%;
}


/* CUSTOM CHECBOX */
/* Style the custom checkbox container */
.atwm-custom_checkbox {
    display: grid;
    grid-template-columns: 1em auto;
    gap: 20px;
    margin-bottom: 10px;
    align-items: center;
}
/* Hide the default checkbox input */
.atwm-custom_checkbox input[type="checkbox"] {
    /* Add if not using autoprefixer */
    -webkit-appearance: none;
    /* Remove most all native input styles */
    appearance: none;
    /* For iOS < 15 */
    background-color: #ffffff;
    /* Not removed via appearance */
    margin: 0;

    font: inherit;
    color: #221F20;
    width: 20px;
    height: 20px;
    border: 1px solid #221F20;
    border-radius: 3px;
    transform: translateY(-0.075em);

    display: grid;
    place-content: center;
}
/* Create custom checkbox using ::before pseudo-element */
.atwm-custom_checkbox input[type="checkbox"]::before {
    content: "";
    width: 0.65em;
    height: 0.65em;
    clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
    transform: scale(0);
    transform-origin: bottom left;
    transition: 120ms transform ease-in-out;
    box-shadow: inset 1em 1em #ffffff;
    /* Windows High Contrast Mode */
    background-color: CanvasText;
}
.atwm-custom_checkbox input[type="checkbox"]:checked {
    background-color: #221F20;
}
.atwm-custom_checkbox input[type="checkbox"]:checked::before {
    transform: scale(1);
}
.atwm-custom_checkbox input[type="checkbox"]:focus {
    outline: max(2px, 0.15em) solid currentColor;
    outline-offset: max(2px, 0.15em);
}
.atwm-custom_checkbox input[type="checkbox"]:disabled {
    --form-control-color: var(--form-control-disabled);
    color: var(--form-control-disabled);
    cursor: not-allowed;
}


/* Video Embeds */
.atwm-video-popup-bg {
    transition: background-color 0.3s ease-in-out;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1002;
    background-color: rgba(0, 0, 0, 0);
    display: none;
}
.atwm-video-popup-bg.active {
    background-color: rgba(0, 0, 0, 0.7);
}
.atwm-video-popup-bg .atwm-video-popup-outer {
    transition: top 0.3s ease-in-out, bottom 0.4s ease-in-out;
    visibility: hidden;
    position: absolute;
    top: 0;
    z-index: 10;
    width: 68%;
    padding: 40px;
	transform: translate( -50%, -50% );
}
.atwm-video-popup-bg .atwm-video-popup {
    overflow: hidden;
    width: 100%;
    max-height: 80vh;
    display: flex;
    justify-content: center;
    border-radius: 14px;
}
.atwm-video-popup-bg.active .atwm-video-popup-outer.open {
    visibility: visible;
    top: 50%;
    left: 50%;
    transform: translate( -50%, -50% );
}
.atwm-video-popup-bg .atwm-close {
	display: block;
	position: absolute;
	z-index: 10;
	top: 10px;
	right: 40px;
	width: 28px;
	height: 28px;
	cursor: pointer;
}
.atwm-video-popup-bg .atwm-close svg line {
    stroke: #ffffff;
    stroke-width: 1;
}
.video-container {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    padding-top: 25px;
	width: 100%;
    height: 0;
}
.video-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.wpb_video_wrapper .video-container {
	padding-bottom: 0;
}

/* TTX Slider */
.atwm-ttx_slider {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-top: 30px;
}
.atwm-mobile-swiper .wpb_single_image,
.atwm-ttx_slider_big_image {
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}
.atwm-mobile-swiper .wpb_single_image::before,
.atwm-ttx_slider_big_image::before {
    content: "";
    display: block;
    position: relative;
    padding-bottom: 44.5%;
    height: 0;
}
.atwm-mobile-swiper .wpb_single_image img,
.atwm-ttx_slider_big_image img {
    display: block;
    position: absolute;
    min-height: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 1;
}


.atwm-ttx_slider .wpb_column .vc_column-inner {
    padding: 0 !important
}
.atwm-ttx_slider .wpb_text_column {
    color: #9A9A9A;
    border-top: 3px solid #9A9A9A;
    padding-top: 20px;
    padding-right: 20px;
    margin-top: 40px;
    cursor: pointer;
}
.atwm-ttx_slider .wpb_column.selected .wpb_text_column {
    border-top: 3px solid #4E6E17;
    color: #000000;
}
.atwm-green_gradient_bg .atwm-ttx_slider .wpb_text_column {
    border-top: 3px solid #ffffff;
}
.atwm-green_gradient_bg .atwm-ttx_slider .wpb_column.selected .wpb_text_column {
    border-top: 3px solid #221F20;
    color: #ffffff;
}
.atwm-ttx_slider .wpb_single_image {
    display: none;
}
.atwm-mobile-swiper {
    margin-left: -15px;
    margin-right: -15px;
    display: none;
}
.atwm-mobile-swiper .wpb_column .wpb_text_column {
    border-top: 3px solid #9A9A9A;
    padding-top: 20px;
}
.atwm-mobile-swiper .swiper-slide-active .wpb_column .wpb_text_column {
    border-top: 3px solid #4E6E17;
}
.atwm-green_gradient_bg .atwm-mobile-swiper .wpb_column .wpb_text_column {
    border-top: 3px solid #ffffff;
}
.atwm-green_gradient_bg .atwm-mobile-swiper .swiper-slide-active .wpb_column .wpb_text_column {
    border-top: 3px solid #221F20;
}


/* VC */
.vc_btn3-shape-rounded {
    border-radius: 10px !important;
    font-size: 1rem !important;
    font-weight: 600;
    border-width: 3px !important;
}
.vc_btn3.vc_btn3-color-green.vc_btn3-style-outline {
    color: #333333 !important;
    border-color: var( --brand-color-yellow-green ) !important;
    background-color: transparent;
}
.vc_btn3.vc_btn3-color-green.vc_btn3-style-outline:hover {
    background-color: var( --brand-color-yellow-green ) !important;
    color: #ffffff !important;
}
.atwm-arrow-right .vc_btn3:after {
    content: "";
    display: inline-block;
    background-image: url( ../svg/button-arrow-right.svg);
    background-size: 100% auto;
    background-position: center;
    width: 15px;
    height: 10px;
    margin-left: 10px;
    transition: all 0.3s;
}
.atwm-arrow-right .vc_btn3:hover:after {
    margin-left: 30px;
    filter: invert(100%);
}

.atwm-vertical-tabs {
	margin-top: 20px;
}
.atwm-vertical-tabs.vc_tta.vc_tta-style-outline.vc_tta-tabs .vc_tta-tab > a {
	border: solid 1px #30430A !important;
	border-radius: 10px !important;
	font-family: "Saira", sans-serif;
	font-weight: 600;
}
.atwm-vertical-tabs.vc_tta.vc_tta-style-outline.vc_tta-tabs .vc_tta-tab.vc_active > a {
	background: linear-gradient(150deg, rgba(67,82,37,1) 0%, rgba(50,67,22,1) 100%);
	color: #ffffff;
}
.atwm-vertical-tabs.vc_tta.vc_tta-style-outline.vc_tta-tabs .vc_tta-panels {
	border: none !important;
}
.atwm-vertical-tabs.vc_tta.vc_tta-style-outline.vc_tta-tabs .vc_tta-panels .vc_tta-panel-body {
	border: none !important;
}
.atwm-vertical-tabs.vc_tta.vc_tta-style-outline.vc_tta-tabs .vc_tta-panels .vc_tta-panel-heading {
	margin-bottom: 5px !important;
	border-radius: 10px !important;
	position: relative;
}
.atwm-vertical-tabs.vc_tta.vc_tta-style-outline.vc_tta-tabs .vc_tta-panels .vc_tta-panel-heading::after {
	content: "";
	position: absolute;
	top: 20px;
	right: 10px;
	width: 16px;
	height: 12px;
	background-image: url( ../svg/arrow-up-white.svg);
	background-position: center;
	background-size: 100% auto;
	background-repeat: no-repeat;
	filter: invert(100%);
	transform: rotate( 180deg );
}
.atwm-vertical-tabs.vc_tta.vc_tta-style-outline.vc_tta-tabs .vc_tta-panels .vc_tta-panel-heading .vc_tta-panel-title {
	font-size: 18px !important;
	font-family: "Saira", sans-serif;
	font-weight: 600;
	line-height: 1.5;
}
.atwm-vertical-tabs.vc_tta.vc_tta-style-outline.vc_tta-tabs .vc_tta-panels .vc_tta-panel.vc_active .vc_tta-panel-heading {
	background: linear-gradient(150deg, rgba(67,82,37,1) 0%, rgba(50,67,22,1) 100%);
	border: none !important;
}
.atwm-vertical-tabs.vc_tta.vc_tta-style-outline.vc_tta-tabs .vc_tta-panels .vc_tta-panel.vc_active .vc_tta-panel-heading::after {
	transform: none;
	filter: none;
}
.atwm-vertical-tabs.vc_tta.vc_tta-style-outline.vc_tta-tabs .vc_tta-panels .vc_tta-panel.vc_active .vc_tta-panel-title > a {
	color: #ffffff !important;
}
.atwm-vertical-tabs .vc_tta-panels .wpb_text_column a {
	color: #000000;
}

/* Gravity Forms */
.ginput_container input[type="text"],
.ginput_container input[type="email"] {
    border-radius: 10px !important;
    padding: 15px 30px !important;
    border: solid 1px #221F20 !important;
}
.gform_button {
    color: #333333;
    border: solid 3px var( --brand-color-yellow-green ) !important;
    background-color: transparent;
    border-radius: 10px;
    font-size: 1rem;
    font-weight: 600;
    padding: 14px 30px;
    padding-right: 50px;
    background-image: url( ../svg/button-arrow-right.svg);
    background-size: 14px auto;
    background-position: right 20px center;
    background-repeat: no-repeat;
}
.gform_button:hover {
    background-color: var( --brand-color-yellow-green ) !important;
    color: #ffffff;
}



/* Tooltips */
.cq-hotspots .hotspot-item a {
    width: 42px !important;
    height: 42px !important;
    border: solid 10px #ffffff !important;
}
.cq-hotspots .hotspot-item a i {
    display: none !important;
}
.tooltipster-sidetip.tooltipster-shadow .tooltipster-box {
    background-color: var(--brand-color-yellow-green) !important;
}
.tooltipster-sidetip.tooltipster-shadow.tooltipster-top .tooltipster-arrow-border {
    border-top-color: var(--brand-color-yellow-green) !important;
}
.tooltipster-sidetip.tooltipster-shadow .tooltipster-content {
    color: #ffffff !important;
	background: #30430a;
    padding: 15px 20px !important;
}

/* Accessibility */
.screen-reader-text {
    clip: rect(0 0 0 0); 
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap; 
    width: 1px;
}