/* IMPORTING CSS */
/* @import url("bootstrap-reboot.min.css"); */
/* @import url("bootstrap-grid.min.css"); */
@import url("slick.css"); @import url("slick-theme.css"); @import url("regular.min.css"); @import url("bootstrap.min.css"); /* font-family: "Inter", sans-serif; font-family: "Bodoni Moda", serif; font-family: "Josefin Sans", sans-serif; font-family: "Jost", sans-serif; font-family: "Nunito Sans", sans-serif; font-optical-sizing: auto; font-style: normal; */
/* IMPORTING FONTS */
/* @import url("https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,opsz,wght@0,6..96,400..900; 1,6..96,400..900&family=Inter:ital,opsz,wght@0,14..32,100..900; 1,14..32,100..900&family=Josefin+Sans:ital,wght@0,100..700; 1,100..700&family=Jost:ital,wght@0,100..900; 1,100..900&family=Nunito+Sans:ital,opsz,wght@0,6..12,200..1000; 1,6..12,200..1000&display=swap"); VARIABLES */
/* =========================================================================== BASE START */
:root { --col-green: #6d9290; --heading-font-family: "Bodoni Moda", serif; --heading-font-family-secondary: "Josefin Sans", sans-serif; --label-font-family: "Nunito Sans", sans-serif; --link-font-family: "Jost", sans-serif; --menu-font-family: "Inter", sans-serif; --transition-sm: all 0.25s; --transition-md: all 0.5s; }
body { font-optical-sizing: auto; font-style: normal; }
a { display: inline-block; text-decoration: none; }
img { max-width: 100%; }
/* =========================================================================== BASE END */
/* =========================================================================== HEADER START */
.header { position: fixed; top: 0; width: 100%; z-index: 9998; transition: var(--transition-md); background: #ffffff; background: linear-gradient(180deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%); }
.overlay { position: fixed; z-index: 9999; top: 0; left: 0; right: 0; height: 100%; width: 200%; background-color: rgba(83, 148, 141, 0.5); backdrop-filter: blur(10px); }
.header.scrolled { transform: translateY(-100%); }
.header nav { display: flex; align-items: center; justify-content: center; padding-inline: 32px; padding-block: 24px; position: relative; }
.header .menu-open { font-family: var(--menu-font-family); display: flex; align-items: center; gap: 18px; background-color: transparent; border: none; position: absolute; top: 32px; right: 24px; }
.header-menu { position: fixed; top: 0; right: 0; bottom: 0; overflow-y: auto; width: 50%; background-color: rgba(17, 30, 28, 0.5); backdrop-filter: blur(10px); z-index: 10000; clip-path: polygon(0 0, 100% 0%, 100% 100%, 10% 100%); }
.header-menu ul { list-style: none; padding-left: 150px; padding-top: 150px; }
.header-menu ul li:not(:last-child) { margin-bottom: 32px; }
.header-menu ul li a { color: #fff; font-size: 48px; line-height: normal; font-family: var(--heading-font-family-secondary); }
.close-menu { width: 48px; height: 48px; background-color: #fff; position: absolute; top: 32px; right: 32px; border: none; }
/* =========================================================================== HEADER END */
/* =========================================================================== HERO SECTION START */
.section-hero { position: relative; }
.section-hero .banner img { width: 100%; height: 100%; object-fit: cover; }
.section-hero .container .row { padding-top: 600px; align-items: end; padding-bottom: 64px; }
.hero-slide > .banner { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: -1; }
.section-hero .fixed-bottom-right { display: flex; align-items: center; position: absolute; bottom: 45px; right: 80px; z-index: 998; flex-wrap: wrap; max-width: calc(50% - 80px); justify-content: end; }
.section-hero .fixed-bottom-right a { color: #fff; text-align: center; font-family: var(--link-font-family); font-size: 20px; font-style: normal; font-weight: 500; line-height: normal; letter-spacing: 4.32px; text-transform: uppercase; }
.section-hero .fixed-bottom-right a:last-of-type { color: var(--col-green); display: flex; align-items: center; gap: 20px; margin-left: 18px; }
.hero-slide { min-height: 800px; }
.hero-slider .texts { will-change: transform, opacity; }
.hero-slider .texts * { position: relative; will-change: transform, opacity; white-space: nowrap; }
.hero-slide { position: relative; }
.hero-slide .texts { position: absolute; bottom: 45px; left: 280px; /*max-width: calc(50% - 80px); */
  left: 13vw; }
.hero-texts { margin-bottom: 0; line-height: 80px; }
.hero-texts sup { color: #6d9290; font-family: var(--heading-font-family-secondary); font-size: 18px; font-weight: 600; line-height: normal; letter-spacing: 7.56px; text-transform: uppercase; top: -24px; }
.hero-texts strong { color: #fff; font-family: var(--heading-font-family); font-size: 137px; font-style: normal; font-weight: 400; line-height: 137px; }
.hero-texts em { color: #fff; text-align: center; font-family: var(--heading-font-family); font-size: 64px; font-style: normal; font-weight: 400; line-height: 64px; }
.hero-texts span { position: relative; display: inline-block; }
.hero-texts b { color: #fff; font-family: var(--heading-font-family); font-size: 25px; font-style: normal; font-weight: 400; line-height: 25px; }
/* =========================================================================== HERO SECTION END */
/* =========================================================================== GREEN STRIPE SECTION START */
.green-stripe { background-color: rgba(109, 146, 144, 0.4); padding-top: 24px; padding-bottom: 24px; position: relative; padding-left: 200px; padding-right: 80px; display: flex; align-items: center; justify-content: space-between; }
.green-stripe::after { content: ""; position: absolute; left: 0; bottom: 0; background-image: url(../images/green-stripe-bg.webp); background-position: bottom left; background-size: contain; display: block; /*width: 177px; height: 88px; */ width: 207px; height: 100%; max-width: 100%; background-repeat: no-repeat; }
/* .green-stripe::before { content: ""; position: absolute; left: 0; bottom: 0; background-color: var(--col-green); background-position: bottom left; background-size: contain; display: block; width: 190px; height: 100%; background-repeat: no-repeat; clip-path: polygon(0 0, 72% 0, 100% 100%, 0% 100%); }
*/
.green-stripe p,
.green-stripe a { margin-bottom: 0; color: #000; font-family: var(--heading-font-family-secondary); font-size: 13px; font-weight: 600; line-height: normal; letter-spacing: 1.56px; text-transform: uppercase; }
.green-stripe a { display: flex; align-items: center; gap: 24px; }
/* =========================================================================== GREEN STRIPE SECTION END */
/* =========================================================================== DECADES OF EXP. SECTION START */
.decades-of-experience { padding-block: 85px; }
.decades-of-experience h2 { text-align: left; color: #252527; font-family: var(--heading-font-family-secondary); font-size: 50px; font-weight: 700; letter-spacing: -1px; text-transform: uppercase; line-height: 1; }
.decades-of-experience h2 sup { color: #252527; font-family: var(--heading-font-family); font-size: 34px; font-style: italic; font-weight: 700; letter-spacing: -0.68px; text-transform: lowercase; top: -5px; }
.decades-of-experience h2 span:first-of-type { position: relative; right: 65px; }
.decades-of-experience h3 { text-align: right; color: #252527; font-family: var(--heading-font-family-secondary); font-size: 20px; font-weight: 600; text-transform: uppercase; }
.decades-of-experience h2 b { color:#6D9290 }
.decades-of-experience h3 sup { color: #6D9290; font-style: italic; text-transform: none; top: 0; }
.decades-of-experience h3 span:last-of-type { position: relative; right: 150px; }
.content-wrapper p { color: #000; font-family: var(--label-font-family); font-size: 15px; font-style: normal; font-weight: 500; line-height: 24px; }
.text-block { padding-inline: 70px; padding-left: 32px; }
.left-col { display: flex; align-items: center; justify-content: end; gap: 32px; }
/* .left-col img:last-of-type { position: relative; top: 80px; }
*/
/* =========================================================================== DECADES OF EXP. SECTION END */
/* =========================================================================== ZIGZAG SECTION START */
.zigzag img { width: 100%; height: 100%; object-fit: cover; }
.zigzag .content { background-color: #252527; position: relative; display: flex; align-items: center; }
.zigzag .content .inner { min-width: 438px; padding-block: 40px; }
.zigzag .content h2 { color: #fff; font-family: var(--heading-font-family); font-size: 58px; font-style: normal; font-weight: 700; line-height: 57px; /* 98.276% */
  margin-bottom: 22px; }
.zigzag .content h2 span { color: #6D9290; }
.zigzag .content p { color: #fff; font-family: var(--label-font-family); font-size: 15px; font-style: normal; font-weight: 500; line-height: 24px; /* 160% */
  margin-bottom: 20px; }
.zigzag .img-col { padding-left: 0; padding-right: 0; }
.zigzag .content::before { display: block; content: ""; height: 100%; width: 200px; clip-path: polygon(100% 0, 0% 0, 100% 140%); background-color: #252527; position: absolute; right: 100%; top: 0; }
.zigzag .content a { color: var(--col-green); font-family: var(--heading-font-family-secondary); font-size: 20px; font-style: italic; font-weight: 400; line-height: normal; text-transform: capitalize; display: flex; align-items: center; gap: 24px; }
.zigzag-wrapper > .row:nth-child(even) { flex-direction: row-reverse; }
.zigzag-wrapper > .row:nth-child(even) .content::before { right: unset; left: 100%; clip-path: polygon(0 0, 0% 140%, 100% 0); }
/* =========================================================================== ZIGZAG SECTION END */
/* =========================================================================== UNLOCK POTENTIAL SECTION START */
.unlock-potential { padding-block: 85px; /*background-image: url("../images/unlock-potential.webp"); */ background-position: center; background-size: cover; background-repeat: no-repeat; color: #fff; background-color: #6D9290; }
.unlock-potential h2 { max-width: 998px; font-size: 43px; font-weight: 600; line-height: 67px; margin-bottom: 35px; font-family: var(--heading-font-family-secondary); }
.unlock-potential p { max-width: 998px; font-size: 15px; line-height: 24px; /*margin-bottom: 45px; */ font-family: var(--label-font-family); }
.has-btn a:first-of-type { color: #fff; font-family: var(--heading-font-family-secondary); font-size: 20px; font-weight: 400; width: auto; padding: 16px 40px; border: 1px solid #fff; transition: var(--transition-sm); }
.has-btn a:first-of-type:hover { background-color: #0b0f0e; border: 1px solid #0b0f0e; }
/* =========================================================================== UNLOCK POTENTIAL SECTION END */
/* =========================================================================== WHAT WE DO SECTION START */
.what-we-do { padding-top: 94px; padding-bottom: 94px; background-image: url(../images/what-we-do-banner.webp); background-position: center; background-size: cover; }
.what-we-do h2 { color: #252527; text-align: center; font-family: var(--heading-font-family); font-size: 116px; font-weight: 700; line-height: 100px; letter-spacing: -9.59px; margin-bottom: 80px; max-width: max-content; padding-left: 55px; }
.block-content h3 { color: #020101; font-family: var(--heading-font-family-secondary); font-size: 16px; font-weight: 700; line-height: normal; margin-bottom: 23px; }
.block-content p { color: #020101; font-family: var(--label-font-family); font-size: 15px; font-weight: 500; line-height: normal; margin-bottom: 15px; }
.block-content hr { color: var(--col-green); margin-top: 0px; margin-bottom: 15px; }
.profile-card { max-width: 335px; /*margin-top: 85px; */ margin-left: auto; /*position: sticky; top: 85px; */ }
.profile-card img { margin-bottom: 84px; width: 100%; }
.profile-card > p:first-of-type { color: #100707; text-align: center; font-family: var(--heading-font-family-secondary); font-size: 24px; font-weight: 400; line-height: normal; text-transform: uppercase; margin-bottom: 18px; }
.profile-card > p:last-of-type { color: var(--col-green); text-align: center; font-family: var(--heading-font-family-secondary); font-size: 17.5px; font-style: italic; font-weight: 500; line-height: normal; text-transform: capitalize; margin-bottom: 0; }
.what-we-do .content-col { padding-right: 110px; position: relative; }
.vertical-text { position: absolute; transform: translateY(-50%) rotate(-90deg); transform-origin: right; display: flex; align-items: center; gap: 24px; right: 24px; top: 50%; }
.vertical-text p { margin-bottom: 0; }
.vertical-text p:first-of-type { color: #404042; font-family: var(--heading-font-family-secondary); font-size: 27px; font-style: italic; font-weight: 400; line-height: normal; text-transform: capitalize; }
.vertical-text p:last-of-type,
.vertical-text a { color: var(--col-green); text-align: center; font-family: var(--heading-font-family-secondary); font-size: 14px; font-style: normal; font-weight: 600; line-height: normal; letter-spacing: 1.68px; text-transform: uppercase; margin-bottom: 0; }
/* =========================================================================== WHAT WE DO SECTION END */
/* =========================================================================== TESTIMONIALS SECTION START */
.section-testimonials { padding-top: 130px; padding-bottom: 82px; background-image: url(../images/testimonials-bg.webp); background-position: center; background-size: cover; }
.section-testimonials h2 { color: #fff; text-align: center; font-family: var(--heading-font-family-secondary); font-size: 20px; font-style: normal; font-weight: 700; line-height: normal; letter-spacing: 12px; text-transform: uppercase; margin-bottom: 48px; }
.testimonial blockquote { margin-bottom: 40px; color: #fff; text-align: center; font-family: var(--label-font-family); font-size: 22px; font-weight: 700; line-height: normal; }
.testimonial > p { color: #fff; text-align: center; font-family: var(--label-font-family); font-size: 22px; font-weight: 700; line-height: normal; text-transform: uppercase; }
.reviews { text-align: center; color: #fff; text-align: center; font-family: var(--heading-font-family-secondary); font-size: 24px; font-style: normal; font-weight: 700; line-height: normal; /*text-transform: lowercase; */ margin-top: 32px; }
.reviews a { color: #fff; transition: var(--transition-sm); }
.reviews a:hover { color: #111e1c; }
.slick-dotted.slick-slider { margin-bottom: 0; }
.slick-dots { position: static; margin-top: 32px; }
.slick-dots li { width: auto; height: auto; }
.slick-dots li button { width: 7px; height: 7px; border-radius: 50%; background-color: rgba(255, 255, 255, 0.5); padding: 0; }
.slick-dots li button:before { content: none; }
.slick-dots .slick-active button { background-color: rgba(255, 255, 255, 1); }
/* =========================================================================== TESTIMONIALS SECTION END */
/* =========================================================================== FORM SECTION START */
.section-full-height-form { /*min-height: 100vh; */
  background-color: #53948e; padding-top: 100px; padding-bottom: 100px; }
.section-full-height-form h2 { color: #fff; font-family: var(--heading-font-family-secondary); font-size: 84px; font-weight: 700; line-height: 96px; }
label { color: #fff; font-family: var(--label-font-family); font-size: 16px; font-weight: 400; line-height: normal; width: 100%; margin-bottom: 12px; }
label span { font-size: 14px; font-weight: 300; }
input,
textarea { font-size: 16px; padding-block: 12px; padding-inline: 8px; background-color: #f0f4f4; border: none; outline: 2px solid transparent; width: 100%; color: #0b0f0e; transition: var(--transition-sm); }
input:focus,
textarea:focus { background-color: #fff; outline: 2px solid #577573; }
textarea { height: 100px; }
select { font-size: 16px; padding-block: 12px; padding-inline: 8px; outline: 2px solid transparent; border: none; width: 100%; transition: var(--transition-sm); }
select:focus { outline: 2px solid #577573; }
input[type="submit"] { color: var(--col-green); font-family: var(--heading-font-family-secondary); font-size: 20px; font-weight: 400; width: auto; padding: 17px 40px; }
input[type="submit"]:hover { color: var(--col-green); background-color: #0b0f0e; }
.form-row > [class^="col"] { margin-bottom: 18px; }
/* =========================================================================== FORM SECTION END */
/* =========================================================================== FOOTER SECTION START */
.footer { background-image: url(../images/footer-bg.webp); background-position: center; background-size: cover; background-repeat: no-repeat; padding-top: 108px; padding-bottom: 82px; }
.footer-logo { text-align: center; margin-bottom: 150px; }
.footer-nav ul { display: flex; list-style: none; gap: 32px; padding-left: 0; justify-content: center; margin-bottom: 128px; }
.footer-nav a { color: #252527; font-family: var(--heading-font-family-secondary); font-size: 19px; font-weight: 400; line-height: normal; letter-spacing: 1.14px; text-transform: uppercase; }
.footer-nav a:hover { color: #515152; }
.footer-nav ul li:not(:first-child) > a::before { content: "/"; color: #fff; font-size: 19px; font-weight: 400; line-height: normal; letter-spacing: 1.14px; text-transform: uppercase; margin-right: 32px; }
.footer .contact { margin-bottom: 70px; }
.footer .contact > div { display: flex; align-items: center; justify-content: center; }
.footer .contact > div:first-of-type img { margin-right: 10px; }
.footer .contact > div:first-of-type p { color: #252527; font-family: var(--heading-font-family-secondary); font-size: 26px; font-style: italic; font-weight: 500; line-height: 30px; letter-spacing: 0.52px; text-transform: capitalize; margin-bottom: 0; }
.footer .contact > div:nth-child(2) p { color: #252527; text-align: center; font-family: var(--heading-font-family-secondary); font-size: 17px; font-weight: 500; line-height: 30px; letter-spacing: 0.525px; text-transform: capitalize; }
.footer .contact > div:nth-child(2) p a { color: #fff; font-family: var(--heading-font-family-secondary); font-size: 20px; font-weight: 500; line-height: 30px; letter-spacing: 0.6px; text-transform: capitalize; transition: var(--transition-sm); }
.footer .contact > div:nth-child(2) p a:hover { color: #111e1c; }
.footer .copyright { color: #252527; text-align: center; font-family: var(--heading-font-family-secondary); font-size: 17px; font-style: normal; font-weight: 500; line-height: 30px; letter-spacing: 0.525px; text-transform: capitalize; }
.footer .copyright span { color: #fff; font-family: var(--heading-font-family-secondary); font-size: 14px; font-style: normal; font-weight: 500; line-height: 30px; letter-spacing: 0.42px; text-transform: capitalize; }
.footer .copyright a { color: #fff; transition: var(--transition-sm); }
.footer .copyright a:hover { color: #111e1c; }
/* =========================================================================== FOOTER SECTION END */
/* .texts { position: relative; z-index: 2; text-align: center; color: #fff; padding: 0 20px; max-width: 1000px; margin: auto; }
*/
/* Style the containers like h1, p, or div */
/* .texts h1,
.texts p,
.texts div { font-family: 'Segoe UI', sans-serif; font-size: 2.5rem; font-weight: 700; display: flex; flex-wrap: wrap; justify-content: center; gap: 0.6rem; line-height: 1.3; }
*/
/* Style each animated word or element */
/* .texts span { display: inline-block; padding: 4px 8px; background: rgba(255, 255, 255, 0.1); border-radius: 6px; backdrop-filter: blur(2px); color: #ffffff; font-weight: 600; letter-spacing: 0.5px; transition: background 0.3s ease; }
*/
/* Optional hover effect */
/* .texts span:hover { background: rgba(255, 255, 255, 0.25); }
*/
/* Responsive adjustment */
/* @media (max-width: 768px) {
 .texts h1,
  .texts p,
  .texts div { font-size: 1.5rem; }
 }
*/
.innerpage { padding: 10rem 0 5rem 0; min-height: 400px; }
.innerpage h1,.innerpage h2 { font-family: var(--heading-font-family-secondary); color: #6D9290; }
.innerpage h1 { font-family: var(--heading-font-family); text-transform: uppercase; font-size: 40px; }
.section-full-height-form .wpcf7-spinner { position: absolute; }
.footer-socials { margin-bottom: 32px; }
.footer-socials a svg { width: 32px; height: 32px; }
