/**
 * Theme Name:     Child Theme
 * Author:         OHPNK Studio
 * Template:       generatepress
 * Text Domain:	   child-theme
 * Description:    A Contemporary Theme for Creative Business
 * Theme URI:      https://ohpnk.com/
 * Author URI:     http://OHPNK%20Studio
 * Version:        1.1
 * License:        GNU General Public License v2 or later
 * License URI:    http://licence/GPL.txt
 * Tags:           one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-menu, featured-images, flexible-header, post-formats, sticky-post, threaded-comments, translation-ready
 */



/* ============= General Styles =============*/
/* Font Faces */
@font-face {font-family: 'Optima Regular'; src: url('./fonts/Optima-Regular.woff2') format('woff2'), url('./fonts/Optima-Regular.woff') format('woff'); font-style: normal; font-display: swap;}
@font-face {font-family: 'Optima Medium'; src: url('./fonts/Optima-Medium.woff2') format('woff2'),	 url('./fonts/Optima-Medium.woff') format('woff'); font-display: swap;}
@font-face{font-family: 'Optima Bold'; src: url('./fonts/Optima-Bold.woff2') format('woff2'), url('./fonts/Optima-Bold.woff') format('woff'); font-style: normal; font-display: swap;}
@font-face{font-family: 'Optima Italic'; src: url('./fonts/Optima_Italic.woff2') format('woff2'), url('./fonts/Optima_Italic.woff') format('woff'); font-weight:300; font-display: swap;}
@font-face{font-family: 'Optima Roman'; src: url('./fonts/Optima_Roman.woff2') format('woff2'), url('./fonts/Optima_Roman.woff') format('woff'); font-display: swap; font-weight:300;}
.optima-italic{font-family: 'Optima Italic';}

/* Color Variables */
:root {
    --color-base: #f9f7f2;
    --color-contrast: #343a34;
    --color-primary: #6d6b04;
    --color-white: #ffffff;
    --color-light: #f5f0e7;
	
	--color-gray-brown: #7b6f4b;
    --color-gray-orange: #ca9766;
    --color-gray-brown-dark: #8f652d;
    --color-dark-brown: #371c00;
    --color-light-blue: #cfd8e7;
    --color-brown: #ac4c17;
    --color-pastel-orange: #e0cfb3;
}

/* WordPress Admin Bar */
body.admin-bar .site-header {top: 32px;}
@media (max-width: 782px) {body.admin-bar .site-header{top: 46px;}}


/* Page Header */
.site-header{position: sticky; top: 0; z-index: 9999; background-color: transparent; border-bottom: 1px solid color-mix(in srgb, var(--color-base) 40%, transparent); transition: background-color 0.3s ease, box-shadow 0.3s ease;transition: 0.2s all ease-in-out;}
.site-header.is-scrolled{background-color: var(--color-base); box-shadow: 0 2px 10px rgba(0, 0, 0, 0.07); border-bottom-color: transparent;}
.site-header.is-scrolled .main-navigation .main-nav ul li a, .site-header.is-scrolled .main-navigation .menu-toggle, .site-header.is-scrolled .main-navigation .menu-bar-items {color: var(--color-contrast);}
.site-header.is-scrolled .site-logo img{height:45px;}
.site-header.is-scrolled a{display:block;}
@media (min-width: 1025px) {.inside-header{padding:6px 40px;}}
.site-header .header-cta{position:relative;}
.site-header .header-cta a{background-color:var(--color-contrast) !important; width:200px; height:auto; padding:12px 12px !important; color:var(--color-base) !important; text-decoration:none; text-transform:uppercase; letter-spacing:1.3px; font-size:12px; line-height:12px !important; display:inline-block; text-align:center; transition: background-color 0.3s ease, color 0.3s ease;}
.site-header .header-cta a:hover{background-color:var(--color-light) !important;color:var(--color-contrast) !important;}
.main-navigation .main-nav>ul{gap:40px;}
.site-header.is-scrolled .header-cta a:hover{background-color:var(--color-primary) !important;color:var(--color-base) !important;}

@media (max-width: 1024px) {
	.inside-header{padding:14px 40px;}
	.menu-open .inside-header{background-color:var(--color-base);}
	.menu-open .toggled button.menu-toggle{color:var(--color-contrast);}
	.site-logo, .site-branding{margin-bottom:0 !important;}
	.main-navigation .gp-icon svg{width:32px !important; height:32px !important;}
	.main-navigation .menu-toggle{line-height:12px !important; padding:0 !important;}
	.has-inline-mobile-toggle .main-navigation.toggled{background-color:transparent !important;}
	.main-navigation .main-nav ul li[class*="current-menu-"] > a{color:var(--color-contrast) !important;}
}
@media (max-width: 768px) {
	.main-navigation .gp-icon svg{width:25px !important; height:25px !important;}
	.site-header .header-image{width:180px;}
}

/* Page roow */
.main-row{width:100%; position:relative;}
.inner-row{width: 100%; max-width: 1100px; margin-left: auto !important; margin-right: auto !important; box-sizing: border-box;}
.inner-row .vc_column_container, .inner-row .vc_column_container > .vc_column-inner{padding:0 !important;}

@media (min-width: 1400px) {.inner-row{width:1300px}}
@media (max-width: 1200px) {.inner-row{padding-left: 25px; padding-right: 25px;}}
@media (max-width: 767px) {.inner-row{padding-left: 20px; padding-right: 20px;}}


/* CTA style */
.underline-cta{letter-spacing:1.5px; text-transform:uppercase; text-decoration:underline; text-underline-offset:5px; display:inline-block; text-decoration-thickness: 1px; font-size:12px; transition:0.3s all ease-in-out;}
.text-subtitle{text-transform:uppercase; font-size:11px; letter-spacing:1.5px; margin:0;}

/*===== Custom Loading logo screen =====*/
.page-custom-loader{position: fixed; inset:0; background-color: #fbf7f1; z-index: 999999999999999; display: flex;justify-content: center;align-items: center;pointer-events: none; opacity:1;}
.page-custom-loader.fade-out{opacity: 0; transition: opacity 0.3s ease;}
.page-custom-loader .custom-loader {display: flex; justify-content: center; align-items: center;}
.page-custom-loader .logo-container {position: relative; width: 120px; aspect-ratio: 2 / 1;}
.page-custom-loader .logo-container img {position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; user-select: none; -webkit-user-drag: none;}
.page-custom-loader .brown-submark{animation: fadeBlack 2.5s infinite ease-in-out;}
.page-custom-loader .black-submark{animation: fadeBrown 2.5s infinite ease-in-out;}
@keyframes fadeBlack {0%   { opacity: 1; } 50%  { opacity: 0; } 100% { opacity: 1; }}
@keyframes fadeBrown {0%   { opacity: 0; } 50%  { opacity: 1; } 100% { opacity: 0; }}



/*============== Image Animations ==============*/
/* zoom in transition */
.zoom-in-image {overflow:hidden;}
.zoom-in-image img{opacity: 0; transform: scale(1.12);  transition: opacity 1s ease, transform 3s ease-in-out; transform-origin: center center;}
.zoom-in-image.visible img {opacity: 1;transform: scale(1);}

/* Slide in bottom transition */
.slide-in-image {overflow:hidden;}
.slide-in-image img{opacity: 0; transform: translateY(20px);  transition: opacity 1s ease, transform 3s ease;; transform-origin: center center;}
.slide-in-image.visible img {opacity: 1; transform: translateY(0);}

/* Pulse in bottom transition */
.pulse-in-image img {opacity: 0; transform: scale(1); animation: pulse 2s ease-in-out; transition: opacity 1s ease;}
@keyframes pulse {0%, 100% {transform: scale(1);}50% {transform: scale(1.05); } }
.pulse-in-image.visible img {opacity: 1;animation: pulse 2s ease-in-out;}

/* Image hover transition */
.img-hover-transition img{transition: transform 2.5s ease;}
.img-hover-transition img:hover {transform: scale(1.14);}
.wpb_single_image .vc_figure, .wpb_single_imag .vc_single_image-wrapper{overflow:hidden;}


/* ============= Hero Section =============*/
.hero-mrow{margin-top: calc(var(--header-height, 0px) * -1) !important; margin-left:0 !important; margin-right:0 !important;}
.hero-mrow .vc_column_container>.vc_column-inner{padding:0 !important;}
.hero-mrow .wpb_raw_code{margin-bottom:0 !important;}
.hero-section{position: relative; width: 100%; height:90vh; min-height: 650px; overflow: hidden; display: flex; align-items: center;}
.hero-section .hero-image{position: absolute; inset: 0; z-index: 0;}
.hero-section .hero-image img{display: block; width: 100%; height: 100%; object-fit: cover; object-position: center center;}
.hero-section .hero-content{position: absolute; left:100px; bottom:120px; z-index: 1; width: 100%; max-width:767px;}
.hero-section .hero-content h4{color: var(--color-base); margin:0; font-size:22px; line-height:normal; font-family: 'Optima Italic';}
.hero-section .hero-content h1{color: var(--color-base); margin: 10px 0 24px;}
.hero-section .hero-content p{color: var(--color-base); margin: 0 0 30px; font-size:16px; line-height:22px;}
.hero-section .hero-content .hero-cta{color: var(--color-base); transition: all 0.3s ease-in-out; text-decoration-color:var(--color-base);}
.hero-section .hero-content .hero-cta:hover{color: var(--color-pastel-orange); text-decoration-color: color-mix(in srgb, var(--color-pastel-orange) 50%, transparent);}
.hero-section .hero-content .hero-cta .cta-mobile{display: none;}
@media (min-width: 769px) and (max-width: 1024px){.hero-section{height:600px;}.hero-section .hero-content{max-width:650px; left:50px; bottom:80px;}}
@media (max-width: 767px) {
	.hero-section{height:500px;}
	.hero-section .hero-content{width:90%; left:20px; bottom:50px;}
	.hero-section .hero-content .hero-cta .cta-desktop {display: none;}
	.hero-section .hero-content .hero-cta .cta-mobile{display: inline-block; text-decoration:underline;}
}



/* ============= The Intention Section =============*/
.intention-mrow{margin:0 !important;}
.intention-inner .intention-content{position:relative;}
.intention-inner .intention-content p.text-subtitle{color: color-mix(in srgb, var(--color-primary) 50%, transparent);}
.intention-inner .intention-content p{margin:0;}
.intention-inner .intention-content h2{margin:20px 0 40px;}
.intention-inner .intention-content p.body-text{color:color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.intention-inner .intention-content .body-text:nth-of-type(2){margin-bottom:20px !important;}
.intention-inner .intention-content .intention-cta{margin-top:50px;}
.intention-inner .intention-content .underline-cta{color: color-mix(in srgb, var(--color-contrast) 75%, transparent); transition:0.3s all ease-in-out; text-decoration-color: color-mix(in srgb, var(--color-contrast) 50%, transparent);}
.intention-inner .intention-content .underline-cta:hover{color: var(--color-primary); text-decoration-color: color-mix(in srgb, var(--color-primary) 50%, transparent);}

@media (min-width: 1201px) {.intention-inner .intention-content p.body-text{width:85%;}}

@media (min-width: 768px) {
	.inner-row .right-col{padding-left:20px !important;}	
	.inner-row .left-col{padding-right:20px !important;}
}
@media (max-width: 1024px){
	.intention-inner .content-col{order:1; margin-bottom:40px;}
	.intention-inner .img-col{order:2;}
	.intention-inner .intention-content h2 br{display:none;}
}



/* ============= The Approach Section =============*/
.approach-mrow{margin:0 !important;}
.approach-inner .approach-content{position:relative; margin:50px 0 !important;}
.approach-inner .approach-content p.text-subtitle{color: color-mix(in srgb, var(--color-base) 75%, transparent);}
.approach-inner .approach-content h2{color: var(--color-base); margin:20px 0 30px;}
.approach-inner .approach-content p.body-text{margin:0 0 20px; color: color-mix(in srgb, var(--color-base) 75%, transparent);}
.approach-inner .approach-content .approach-note{margin-top:80px;}
.approach-inner .approach-content .approach-note p.note-subtitle{color: color-mix(in srgb, var(--color-base) 55%, transparent); margin:0;}
.approach-inner .approach-content .approach-note p.note-text{color: color-mix(in srgb, var(--color-base) 55%, transparent); margin:20px 0 0;}

@media (min-width: 1025px) {.approach-inner .approach-content p.body-text, .approach-inner .approach-content .approach-note p.note-text{width:70%;}}
@media (max-width: 767px) {.approach-inner .approach-content h2 br{display:none;}}



/* ============= Expectations Section =============*/
.expectation-mrow{margin:0 !important;}
.expectation-inner .expectation-content{position:relative;}
.expectation-inner .expectation-content p.text-subtitle{color: color-mix(in srgb, var(--color-primary) 50%, transparent);}
.expectation-inner .expectation-content h2{margin:20px 0 30px;}
.expectation-inner .expectation-content p.body-text{margin:0 0 20px; color: color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.expectation-inner .expectation-content .expectation-cta{margin-top:50px;}


.expectation-inner .expectation-content .underline-cta{color: var(--color-contrast); transition:0.3s all ease-in-out; text-decoration-color: color-mix(in srgb, var(--color-contrast) 50%, transparent);}
.expectation-inner .expectation-content .underline-cta:hover{color: var(--color-primary); text-decoration-color: color-mix(in srgb, var(--color-primary) 50%, transparent);}
.expectation-inner .expectation-content .intro-call{display:block; margin-top:10px;}
@media (max-width: 767px) {.expectation-inner .img-col{margin-bottom:20px;}}


/* ============= Who is this for Section =============*/
.who-mrow{margin:0 !important; box-shadow:0 -7px 10px -10px rgba(224, 207, 179, 1);}
.who-inner .who-heading{position:relative;}
.who-inner .who-heading p.text-subtitle{color: color-mix(in srgb, var(--color-primary) 50%, transparent);}
.who-inner .who-heading h2{margin:20px 0 0;}
.who-inner .who-content{position:relative;}
.who-inner .who-content .who-item{border-top:1px solid color-mix(in srgb, var(--color-primary) 50%, transparent); padding:30px 0;}
.who-inner .who-content .who-item p.body-text{margin:0; color: color-mix(in srgb, var(--color-contrast) 75%, transparent);}
@media (max-width: 767px) {.who-inner .who-left-col{margin-bottom:20px;}}

/* ============= The Shift Section =============*/
.shift-mrow{margin:0 !important;}
.shift-inner .shift-content{margin:50px 0 !important;}
.shift-inner .shift-content p.text-subtitle{color: color-mix(in srgb, var(--color-base) 50%, transparent);}
.shift-inner .shift-content h2{margin:20px 0 40px; color: var(--color-base);}
.shift-inner .shift-content p.body-text{color: color-mix(in srgb, var(--color-base) 75%, transparent); margin:0 0 20px;}
.shift-inner .shift-content .shift-cta{margin-top:50px;}
.shift-inner .shift-content .underline-cta{transition:0.3s all ease-in-out; color: color-mix(in srgb, var(--color-base) 75%, transparent); text-decoration-color: color-mix(in srgb, var(--color-base) 50%, transparent);}
.shift-inner .shift-content .underline-cta:hover{color: var(--color-base); text-decoration-color: var(--color-base);}



/* ============= About Teja Section =============*/
.about-teja-mrow{margin:0 !important;}
.about-teja-inner .teja-content{position:relative;}
.about-teja-inner .img-col{padding:0 !important;}
.about-teja-inner .teja-content .text-subtitle{color: color-mix(in srgb, var(--color-primary) 50%, transparent);}
.about-teja-inner .teja-content h2{margin:20px 0 0;}
.about-teja-inner .teja-content p.subtitle{color: color-mix(in srgb, var(--color-gray-brown-dark) 75%, transparent); margin:0;}
.about-teja-inner .teja-content .teja-intro p{margin:30px 0 0; color: color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.about-teja-inner .teja-more-content{display: none;}
.about-teja-inner .teja-more-content p{color: color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.about-teja-inner .teja-more-content.is-visible{display: block;}
.about-teja-inner .teja-content .teja-read-more{margin-top: 15px; background:none; padding:0; outline:unset; text-decoration:underline; text-underline-offset:5px; cursor: pointer; color: color-mix(in srgb, var(--color-contrast) 75%, transparent); text-decoration-color: color-mix(in srgb, var(--color-contrast) 50%, transparent); text-transform:uppercase; letter-spacing:1.5px; font-size:12px;}
@media (max-width: 767px) {.about-teja-inner .img-col{margin-bottom:20px;}}


/* ============= Ways to Connect Section =============*/
.services-mrow{margin:0 !important;}
.services-inner{width: 94%; margin-left: auto !important; margin-right: auto !important; box-sizing: border-box;}
.services-inner .vc_column_container, .services-inner .vc_column_container > .vc_column-inner{padding:0 !important;}
@media (min-width: 1500px) {.services-inner{width: 85%;}}

/* Services heading */
.srvc-heading-inner .srvc-heading-content{position:relative;}
.srvc-heading-inner .srvc-heading-content p.text-subtitle{color: color-mix(in srgb, var(--color-primary) 50%, transparent);}
.srvc-heading-inner .srvc-heading-content h2{margin:20px 0 15px;}
.srvc-heading-inner .srvc-heading-content p.body-text{margin:0; color: color-mix(in srgb, var(--color-contrast) 75%, transparent);}

/* Services boxes */
.services-inner .srvc-item-wrap{padding:25px 22px; border-radius:14px; display:flex; flex-direction:column; min-height:300px;}
.services-inner .individual-srvc .srvc-item-wrap{background:color-mix(in srgb, var(--color-light-blue) 50%, transparent);}
.services-inner .parents-srvc .srvc-item-wrap{background:color-mix(in srgb, var(--color-gray-orange) 50%, transparent);}
.services-inner .group-srvc .srvc-item-wrap{background:color-mix(in srgb, var(--color-gray-brown) 50%, transparent);}
.services-inner .teams-srvc .srvc-item-wrap{background:color-mix(in srgb, var(--color-pastel-orange) 50%, transparent);}
@media (min-width: 1025px) {
	.services-inner .individual-srvc .srvc-item-wrap{margin-right:10px;}
.services-inner .parents-srvc .srvc-item-wrap{margin:0 10px;}
.services-inner .group-srvc .srvc-item-wrap{margin:0 10px;}
.services-inner .teams-srvc .srvc-item-wrap{margin-left:10px;}
}

.services-inner .srvc-item-wrap p.number{margin:0; font-size:10px; line-height:normal; opacity:.7;}
.services-inner .srvc-item-wrap h4{margin:25px 0 30px; font-size:24px;}
.services-inner .srvc-item-wrap p.body-text{margin:0 0 20px; color: color-mix(in srgb, var(--color-contrast) 75%, transparent);}

.services-inner .srvc-item-wrap .srvc-cta p{font-size:12px; font-style:italic; color: color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.services-inner .srvc-item-wrap .srvc-cta a{font-size:10px; line-height:12px;}


/* CTA Section */
.srvc-cta-inner .srvc-cta-content{margin:0 auto; text-align:center;}
.srvc-cta-inner .srvc-cta-content h5{margin:0 0 5px;}
.srvc-cta-inner .srvc-cta-content p.body-text{margin:0; color:color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.srvc-cta-inner .srvc-cta-content .srvc-cta{margin-top:15px;}
.srvc-cta-inner .srvc-cta-content .srvc-cta a{display:inline-block; text-decoration:none; background:var(--color-primary); padding:5px 0; width:260px; height:auto; text-align:center; color:var(--color-base); transition:0.3s all ease-in-out; text-transform:uppercase; font-size:11px; letter-spacing:1.3px;}
.srvc-cta-inner .srvc-cta-content .srvc-cta a:hover{background:var(--color-contrast); }
@media (min-width: 768px) and (max-width: 1024px) {
	.services-inner .srvc-item-col{width:50% !important;}
	.services-inner .individual-srvc .srvc-item-wrap{margin:0 7px 14px 0 !important;}
	.services-inner .group-srvc .srvc-item-wrap{margin:0 7px 0 0;}
	.services-inner .parents-srvc .srvc-item-wrap{margin:0 0 14px 7px !important;}
	.services-inner .teams-srvc .srvc-item-wrap{margin:0 0 0 7px;}
}
@media (max-width: 767px) {
	.services-inner .srvc-item-wrap{margin-bottom:20px !important;}	
}


/* ============= Credentials Section =============*/
.credentials-mrow{margin:0 !important;}
.credentials-heading-content p.text-subtitle{color: color-mix(in srgb, var(--color-primary) 75%, transparent);}
.credentials-heading-content h2{margin:20px 0 0;}
.credentials-content .content-item{border-top:1px solid color-mix(in srgb, var(--color-primary) 50%, transparent); padding:25px 0;}
.credentials-content .content-item p.body-text{margin:0; color:color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.credentials-content .content-item p span.text-strong{font-weight:600;}
.credentials-content .content-item:last-child{border-bottom: 1px solid color-mix(in srgb, var(--color-primary) 50%, transparent);}
@media (max-width: 767px) {.credentials-inner .credentials-left-col{margin-bottom:20px;}}


/* ============= Booking CTA Section =============*/
.booking-mrow{margin:0 !important; background: linear-gradient(180deg, #986334 0%, #cb9767 60%, #d2b894 100%); height:500px;}
.booking-inner .booking-content p.text-subtitle{color: color-mix(in srgb, var(--color-base) 75%, transparent);}
.booking-inner .booking-content h2{margin:20px 0 30px; color:var(--color-base);}
.booking-inner .booking-content p.body-text{margin:0; color:var(--color-base);}
.booking-inner .booking-content p.subtext{color:var(--color-base);}
.booking-inner .booking-content p.subtext a{color:var(--color-base);text-underline-offset:4px; transition:0.3s all ease-in-out; text-decoration-color:color-mix(in srgb, var(--color-base) 65%, transparent);}
.booking-inner .booking-content p.subtext a:hover{color:var(--color-primary); text-decoration-color:var(--color-primary);}
.booking-inner .booking-content .booking-cta{margin:35px 0; display:flex; gap:15px;}
.booking-inner .booking-content .booking-cta a{display:inline-block; padding:12px 30px; text-decoration:none; text-transform:uppercase; letter-spacing:1.3px; font-size:12px; line-height:12px; text-align:center; transition:0.3s all ease-in-out;}
.booking-inner .booking-content .booking-cta .primary-cta{background:var(--color-primary); color:var(--color-base);}
.booking-inner .booking-content .booking-cta .primary-cta:hover{background:var(--color-contrast);}
.booking-inner .booking-content .booking-cta .white-cta{background:var(--color-base); border:1px solid var(--color-base);}
.booking-inner .booking-content .booking-cta .white-cta:hover{background:var(--color-contrast); border:1px solid var(--color-contrast); color:var(--color-base);}
.booking-inner .booking-content .booking-cta .cta-mobile {display: none;}
@media (max-width: 767px) {
	.booking-mrow{height:600px;}
	.booking-inner .booking-content .booking-cta{flex-direction:column;}
	.booking-inner .booking-content .booking-cta br{display:none;}
	.booking-inner .booking-content .booking-cta a{padding:12px 5px;}
	.booking-inner .booking-content .booking-cta .cta-desktop {display: none;}
	.booking-inner .booking-content .booking-cta .cta-mobile{display: inline-block;}
}



/* ============= Page Footer =============*/
.site-footer .footer-widgets-container .inside-footer-widgets{margin:0 !important;}
.site-footer .footer-widgets-container .inner-padding, .footer-widgets-container{padding:0 !important;}
.footer-container{padding:56px 24px 0;}
.footer-container .footer-wrap{margin: 0 auto;}
.footer-container .footer-wrap .footer-top{display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 32px;  padding-bottom: 40px;}
.footer-container .footer-top .brand-badge{position:relative; max-width:280px; margin:0 0 20px;}
.footer-container .footer-top .brand-badge img{width:100%; height:100%; display:block;}
.footer-container .footer-top .brand p{margin:0; color: color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.footer-container .footer-top .brand p a{color: color-mix(in srgb, var(--color-contrast) 75%, transparent); text-decoration-color:color-mix(in srgb, var(--color-contrast) 45%, transparent); text-underline-offset:4px; transition:0.3s all ease-in-out;}
.footer-container .footer-top .brand p a:hover{color:color-mix(in srgb, var(--color-primary) 75%, transparent); text-decoration-color:color-mix(in srgb, var(--color-primary) 35%, transparent);}
.footer-container .footer-top .fcol{background: #fbf9f4; border-radius: 14px; padding: 22px 25px; border: 1px solid color-mix(in srgb, var(--color-gray-brown) 20%, transparent);}
.footer-container .footer-top .fcol p{font-size: 14px; letter-spacing: 1.3px; text-transform: uppercase; color: color-mix(in srgb, var(--color-gray-brown) 90%, transparent);  margin: 0 0 26px;}
.footer-container .footer-top .fcol ul{list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 11px;}
.footer-container .footer-top .fcol ul li{margin-bottom:0 !important;}
.footer-container .footer-top .fcol ul li a{color: color-mix(in srgb, var(--color-contrast) 75%, transparent); text-decoration: none; font-size: 11px; text-transform:uppercase; letter-spacing: 1.3px;}
.footer-container .footer-wrap .disclaimer{border-top: 1px solid color-mix(in srgb, var(--color-gray-brown) 20%, transparent); padding: 24px 0; font-size: 11px; color: color-mix(in srgb, var(--color-contrast) 75%, transparent); max-width: 850px;}
.footer-container .footer-wrap .disclaimer a{text-decoration-color:color-mix(in srgb, var(--color-contrast) 40%, transparent) !important; text-underline-offset:3px; transition:0.3s all ease-in-out;}

.footer-container .footer-bottom{border-top: 1px solid color-mix(in srgb, var(--color-gray-brown) 20%, transparent); padding: 18px 0 26px; display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; font-size: 12px; color: color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.footer-container .footer-bottom p{margin:0;}
.footer-container .footer-bottom p a{color: color-mix(in srgb, var(--color-contrast) 75%, transparent); text-decoration-color:color-mix(in srgb, var(--color-contrast) 45%, transparent); text-underline-offset:4px; transition:0.3s all ease-in-out;}
.footer-container .footer-bottom p a:hover{color:color-mix(in srgb, var(--color-primary) 75%, transparent); text-decoration-color:color-mix(in srgb, var(--color-primary) 35%, transparent);}

/* ---------- Footer Responsive ---------- */
@media (min-width: 1025px) {.footer-container .footer-wrap{width:85%;}}
@media (max-width: 1024px) {
	.footer-container {padding: 48px 0 0;}
	.footer-container .footer-wrap{width: 90%;}
	.footer-container .footer-wrap .footer-top{grid-template-columns: 1.2fr 1fr 1fr;gap: 20px;padding-bottom: 32px;}
	.footer-container .footer-top .brand-badge{max-width: 240px;}
	.footer-container .footer-top .fcol{padding: 20px;}
	.footer-container .footer-top .fcol p{margin-bottom: 22px;}
	.footer-container .footer-wrap .disclaimer{padding: 20px 0;}
}
@media (max-width: 767px) {
	.footer-container{padding: 40px 0 0;}
	.footer-container .footer-wrap .footer-top { grid-template-columns: 1fr; gap: 16px; padding-bottom: 28px;}
	.footer-container .footer-wrap .footer-top .brand{margin-bottom:20px;}
	.footer-container .footer-top .brand-badge{max-width: 220px; margin-bottom: 18px;}
	.footer-container .footer-top .fcol {padding: 20px;}
	.footer-container .footer-top .fcol p {margin-bottom: 18px;}
	.footer-container .footer-wrap .disclaimer {padding: 20px 0;}
	.footer-container .footer-bottom {padding: 16px 0 22px; flex-direction: column; align-items: flex-start; gap: 12px;}
}
@media (max-width: 400px) {.footer-bottom .rights{display: block;}}








/* ============= Contact Form Section =============*/
.contact-mrow{margin:0 !important;}
.contact-inner{max-width:700px; margin-left: auto !important; margin-right: auto !important; box-sizing: border-box;}
.contact-inner .vc_column_container, .contact-inner .vc_column_container > .vc_column-inner{padding:0 !important;}

.cf-wrapper .contact-title-wrap{text-align:center; margin-bottom:40px;}
.cf-wrapper .contact-title-wrap h3{margin:20px 0 15px}
.cf-wrapper .contact-title-wrap p{margin:0;}



.cf-wrapper{margin:0 auto; background:#fbf9f4; border: 1px solid color-mix(in srgb, var(--color-gray-brown) 20%, transparent); border-radius:20px; padding:60px 36px;}
.cf-wrapper .form-row{margin-bottom:18px;}
.cf-wrapper .form-row:has(.form-col){display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.cf-wrapper label{font-size:10px; letter-spacing:1.3px; text-transform:uppercase; color:color-mix(in srgb, var(--color-primary) 75%, transparent); margin-bottom:5px; display:block;}
.cf-wrapper .cf7-consent span{color:color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.cf-wrapper .cf7-consent a{color:color-mix(in srgb, var(--color-contrast) 75%, transparent); text-decoration-color:color-mix(in srgb, var(--color-contrast) 45%, transparent); text-underline-offset:4px;}

/* inputs */
.cf-wrapper input[type="text"], .cf-wrapper input[type="email"], .cf-wrapper input[type="tel"], .cf-wrapper select, .cf-wrapper textarea{ width:100%;border:none; background: color-mix(in srgb, var(--color-gray-orange) 10%, transparent); color: color-mix(in srgb, var(--color-primary) 75%, transparent); padding:13px 16px; font-size:12px; border-radius:12px; box-sizing:border-box;}
.cf-wrapper input::placeholder, .cf-wrapper textarea::placeholder{color: color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.cf-wrapper input:focus, .cf-wrapper select:focus, .cf-wrapper textarea:focus{outline:1px solid color-mix(in srgb, var(--color-gray-brown) 50%, transparent); outline-offset:1px;}
.cf-wrapper textarea{resize:vertical; min-height:60px; height:80px; max-height:120px; overflow-y: auto;}
.cf-wrapper .wpcf7-list-item input[type="checkbox"]{width:16px; height:16px; margin-top:2px; color:color-mix(in srgb, var(--color-gray-brown) 50%, transparent); flex-shrink:0;}
.cf-wrapper .wpcf7-list-item label{display:flex; align-items:flex-start; gap:10px; font-size:12px; color: color-mix(in srgb, var(--color-primary) 75%, transparent); text-transform:none; letter-spacing:0;}
.cf-wrapper .wpcf7-list-item{margin:0;}

/* Telephone Field */
.cf-wrapper .iti .iti__selected-dial-code{font-size:12px !important; color: color-mix(in srgb, var(--color-contrast) 75%, transparent) !important;}
.cf-wrapper .iti__country-container button:hover, .cf-wrapper .iti__country-container button:focus{background-color:unset !important; outline:none !important;}
.cf-wrapper .iti__country-container button::focus-visible{outline:none !important;}
.cf-wrapper .iti__search-input-wrapper .iti__search-input{padding-left:22px !important; border-color:color-mix(in srgb, var(--color-gray-brown) 20%, transparent) !important;} 
.cf-wrapper .iti--inline-dropdown .iti__dropdown-content{border:1px solid color-mix(in srgb, var(--color-gray-brown) 20%, transparent) !important;}

/* select2 dropdown */
.cf-wrapper .select2-container--default .select2-selection--single{background: color-mix(in srgb, var(--color-gray-orange) 10%, transparent); color: color-mix(in srgb, var(--color-primary) 75%, transparent); font-size:12px; border-radius:12px; box-sizing:border-box; border:none; height:44px; display:flex; align-items:center;}
.cf-wrapper .select2-container--default .select2-selection--single .select2-selection__rendered{color: color-mix(in srgb, var(--color-contrast) 75%, transparent);}
.cf-wrapper .select2-container--default .select2-selection--single .select2-selection__arrow{height:44px;}
.select2-dropdown{border:1px solid color-mix(in srgb, var(--color-gray-brown) 20%, transparent);}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable{background-color:color-mix(in srgb, var(--color-gray-orange) 20%, transparent); color: color-mix(in srgb, var(--color-primary) 75%, transparent);}
.select2-container--default .select2-results__option--selected{background-color:color-mix(in srgb, var(--color-contrast) 15%, transparent) !important;}

/* submit button */
.cf-wrapper input[type="submit"]{display:block; width:100%; margin-top:15px; background: color-mix(in srgb, var(--color-contrast) 100%, transparent); color: color-mix(in srgb, var(--color-base) 100%, transparent); border:none; font-size:11px; letter-spacing:1.3px; text-transform:uppercase; padding:7px 0; cursor:pointer;}
.cf-wrapper input[type="submit"]:hover{opacity:0.7;}

.wpcf7 form.sent .wpcf7-response-output{border:1px solid color-mix(in srgb, var(--color-gray-brown) 20%, transparent) !important;}
.wpcf7-not-valid-tip{font-size:11px; color:color-mix(in srgb, var(--color-brown) 95%, transparent); margin-left:5px; letter-spacing:1.3px;}


@media (max-width:480px){.cf-wrapper{padding:32px 22px;}}
@media (max-width:480px){.cf-wrapper .select2-container{width:100% !important;} .cf-wrapper .form-row:has(.form-col){grid-template-columns:1fr;}}






/*-------------------- Other Pages --------------------*/
body:not(.home).page-template-default .main-navigation .main-nav ul li a, body:not(.home).page-template-default .main-navigation .menu-toggle, body:not(.home).page-template-default .main-navigation .menu-bar-items {color: var(--color-contrast);}
body:not(.home).page-template-default .site-header {box-shadow: 0 2px 10px rgba(0, 0, 0, 0.07); border-bottom: transparent;}


/* Privacy Policy, Terms & Conditions, Cookie Policy */
@media (max-width: 768px) {.legal-page-wrapper{width:90%; margin:0 auto !important;}}
.legal-page-wrapper h2{margin:0 0 8px;}
.legal-page-wrapper h3{margin:55px 0 10px !important;}
.legal-page-wrapper p{margin:0 0 15px !important;}
.legal-page-wrapper ul{margin:0 0 15px !important; padding-left:20px;}
.legal-page-wrapper ul li{line-height:22px; font-size:14px; color:#343a34;}
.legal-page-wrapper a{text-decoration-color: color-mix(in srgb, var(--color-primary) 50%, transparent); text-underline-offset:3px;}
.legal-page-wrapper a:hover{text-decoration-color: var(--color-contrast);}







