/* Body / UI */
body,
p,
a,
button,
input,
textarea {
font-family: "Inter", sans-serif;
}

:root {
--green: #0f2a1d;
--cream: #f5f5ee;
--white: #ffffff;
}

* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

body {
font-family: "Inter", Arial, sans-serif;
background: #fff;
color: var(--green);
}

.topbar-box {
max-width: 1200px;
margin: 0.9375rem auto 0.9375rem;
background: var(--cream);
border-radius: 0.625rem;
text-align: center;
padding: 14px 16px;
font-size: 13px;
letter-spacing: 1px;
}
a {
text-decoration: none;
}



/* DIRECTION BUTTON */
.dir-btn {
position: relative;
padding: 6px 30px;
border: 1.5px solid #f5f5ee;
border-radius: 999px;
background: transparent;
overflow: hidden;
cursor: pointer;
font-size: 13px;
letter-spacing: 2px;
text-transform: uppercase;
}

/* TEXT */
.dir-btn__text {
position: relative;
z-index: 2;
color: #f5f5ee;
transition: color 0.3s ease;
}

/* FILL */
.dir-btn__bg {
position: absolute;
inset: 0;
background: #f5f5ee;
z-index: 1;
transform: translateX(-100%);
}

/* HOVER TEXT COLOR */
.dir-btn:hover .dir-btn__text {
color: #0f2a1d;
}

.main-box {
max-width: 1200px;
margin: 0 auto;
background: var(--white);
border-radius: 0.625rem;
overflow: hidden;
}

.hero {
position: relative;
height: 560px;
background: url("/assets/img/hero-bg.png?a") center/cover no-repeat;
border-radius: 0.625rem;
}

.hero::after {
content: "";
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.55);
border-radius: 0.625rem;
}




.hero-content h1 {
font-family: "Cormorant Garamond", serif;
font-size: 46px;
color: #f5f5ee;
margin-bottom: 12px;
}

.hero-content p {
font-size: 14px;
line-height: 1.6;
color: #f5f5ee;
letter-spacing: 0.5px;
margin-bottom: 20px;
font-weight: 300;
}

.hero-cta {
display: inline-block;
padding: 12px 28px;
border: 1.5px solid #f5f5ee;
border-radius: 999px;
color: #f5f5ee;
font-size: 13px;
letter-spacing: 2px;
text-transform: uppercase;
transition: all 0.3s ease;
}

.hero-cta:hover {
background: #f5f5ee;
color: #0f2a1d;
}

.mobile-toggle {
display: none;
width: 42px;
height: 42px;
border: 0;
background: transparent;
position: absolute;
left: 18px;
top: 26px;
z-index: 7;
}

.mobile-toggle span,
.mobile-toggle::before,
.mobile-toggle::after {
content: "";
position: absolute;
left: 8px;
right: 8px;
height: 2px;
background: #f5f5ee;
border-radius: 2px;
}

.mobile-toggle::before {
top: 12px;
}
.mobile-toggle span {
top: 20px;
}
.mobile-toggle::after {
top: 28px;
}

.footer-box {
max-width: 1200px;
margin: 30px auto 15px;
background: var(--cream);
border-radius: 0.625rem;
text-align: center;
padding: 22px 16px;
font-size: 13px;
letter-spacing: 1px;
color: var(--green);
}

@media (max-width: 992px) {

.mobile-toggle {
display: block;
}


.hero-content h1 {
font-size: 34px;
}
}

@media (max-width: 576px) {
.topbar-box,
.main-box,.main-box-inner,
.footer-box {
margin-left: 12px;
margin-right: 12px;
}

.hero {
height: 520px;
}

.hero-content h1 {
font-size: 30px;
}
}

.services-section {
margin: 30px auto;
}

.services-box {
max-width: 1200px;
margin: 0 auto;
background: #f5f5ee;
border-radius: 0.625rem;
padding: 0;
position: relative;
}

.services-swiper {
padding: 40px;
}

.service-card {
position: relative;
aspect-ratio: 1/1.1;
border-radius: 0.625rem;
overflow: hidden;
cursor: pointer;
}

.service-card img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.6s ease;
}

.service-card::after {
content: "";
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.15);
transition: opacity 0.4s ease;
}

.service-title {
position: absolute;
top: 24px;
left: 24px;
font-family: "Cormorant Garamond", serif;
font-size: 36px;
color: #f5f5ee;
z-index: 3;
transition: opacity 0.3s ease;
}

.service-overlay {
position: absolute;
inset: 0;
background: rgba(245, 245, 238, 0.92);
opacity: 0;
transition: opacity 0.45s ease;
padding: 28px;
z-index: 4;
}

.service-overlay h3 {
font-family: "Cormorant Garamond", serif;
font-size: 42px;
margin-bottom: 12px;
color: #0f2a1d;
}

.service-overlay p {
font-size: 14px;
line-height: 1.6;
color: #0f2a1d;
font-weight: 300;
}

.service-card:hover img {
transform: scale(1.05);
}

.service-card:hover::after {
opacity: 0;
}

.service-card:hover .service-overlay {
opacity: 1;
}

.service-card:hover .service-title {
opacity: 0;
}

/* ARROWS – LUXURY, PROMINENT */
.service-prev,
.service-next {
width: 56px !important;
height: 56px !important;
background: #f5f5eeb5 !important;
border-radius: 50%;
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18) !important;
color: #0f2a1d !important;
position: absolute;
top: 50% !important;
transform: translateY(-50%) !important;
}

.service-prev {
left: 8px !important;
}

.service-next {
right: 8px !important;
}

.service-prev::after,
.service-next::after {
font-size: 22px !important;
font-weight: 600 !important;
}

.service-prev:hover,
.service-next:hover {
box-shadow: 0 10px 28px rgba(0, 0, 0, 0.25);
}

@media (max-width: 992px) {
.service-title {
font-size: 28px;
}
}

@media (max-width: 576px) {
.services-swiper {
padding: 16px;
}
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
opacity: 0 !important;
}

.swiper.services-swiper.swiper-initialized.swiper-horizontal.swiper-backface-hidden {
border-radius: 0.625rem;
background: #fff;
}





/* ============================= */
/* MOBILE OVERLAY DEFAULT STATE  */
/* ============================= */
@media (max-width: 768px) {

    .service-overlay {
        opacity: 1;
        transition: opacity 0.9s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .service-title {
        opacity: 0;
        transition: opacity 0.9s cubic-bezier(0.4, 0, 0.2, 1);
    }

    /* When interacting */
    .services-swiper.mobile-interacting .service-overlay {
        opacity: 0;
    }

    .services-swiper.mobile-interacting .service-title {
        opacity: 1;
    }

}



.curators-section {
margin: 30px auto;
}

.curators-box {
max-width: 1200px;
margin: 0 auto;
height: 550px;
border-radius: 0.625rem;
position: relative;
overflow: hidden;
}

/* BACKGROUND LAYER */
.curators-bg {
position: absolute;

background: url("/assets/img/hero-bg.png") center/cover no-repeat;

}

/* DARK OVERLAY */
.curators-box::after {
content: "";
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.35);
z-index: 1;
}

.curators-content {
position: relative;
z-index: 2;
height: 100%;
max-width: 640px;
margin: 0 auto;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
padding: 0 24px;
}

.curators-content h2 {
font-family: "Inter", serif;
font-size: 30px;
color: #f5f5ee;
margin-bottom: 14px;
letter-spacing: 0.5px;
}

.curators-content p {
font-size: 16px;
line-height: 1.6;
color: #f5f5ee;
font-weight: 300;
max-width: 400px;

text-align: justify; /* Justifies all lines */
text-align-last: center;
}

.curators-btn {
display: inline-block;
padding: 10px 28px;
border-radius: 999px;
background: #f5f5ee;
color: #0f2a1d;
font-size: 13px;
letter-spacing: 2px;
text-transform: uppercase;
transition: all 0.3s ease;
}

.curators-btn:hover {
background: #f5f5ee;
color: #0f2a1d;
}

@media (max-width: 768px) {
.curators-box {
height: 380px;
}

.curators-content h2 {
font-size: 26px;
}
}



.dir-btn.dark-theme {
border-color: #0f2a1d;
}

.dir-btn.dark-theme .dir-btn__text {
color: #0f2a1d;
}

.dir-btn.dark-theme .dir-btn__bg {
background: #0f2a1d;
}

.dir-btn.dark-theme:hover .dir-btn__text {
color: #f5f5ee;
}

.best-stylist-section {
margin: 30px auto;
}

.best-stylist-box {
max-width: 1200px;
margin: 0 auto;
background: #f5f5ee;
border-radius: 0.625rem;
overflow: hidden;
display: grid;
grid-template-columns: 1fr 1fr;
min-height: 550px;
}

.best-stylist-left {
background: #f5f5ee;
padding: 40px;
display: flex;
align-items: flex-end;
}

.best-stylist-left-inner {
max-width: 420px;
}

.best-stylist-left h4 {
font-size: 32px;
letter-spacing: -2px;
color: #0f2a1d;
margin-bottom: 12px;
font-family: 'Inter';

}

@media (max-width: 600px) {
.best-stylist-left h4 {
font-size: 26px;}
}




.best-stylist-left p {
font-size: 16px;
line-height: 1.6;
color: #0f2a1d;
margin-bottom: 22px;
font-weight: 300;
}

.best-stylist-btn {
display: inline-block;
padding: 10px 26px;
background: #0f2a1d;
color: #f5f5ee;
border-radius: 999px;
font-size: 13px;
letter-spacing: 2px;
text-transform: uppercase;
transition: all 0.3s ease;
}

.best-stylist-btn:hover {
background: #0f2a1d;
color: #f5f5ee;
}

.best-stylist-right {
position: relative;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
}
@media (max-width: 576px) {
.best-stylist-right {
height: 360px;
}
}

.best-stylist-right img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
}

.best-stylist-overlay {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.2);
z-index: 1;
}

.best-stylist-title {
position: relative;
z-index: 2;
font-family: "Cormorant Garamond", serif;
font-size: 40px;
color: #f5f5ee;
letter-spacing: 0.5px;
text-align: center;
display: none;
}




@media (max-width: 992px) {
.best-stylist-box {
grid-template-columns: 1fr;
}

.best-stylist-left {
padding: 24px;
min-height: 260px;
}

.best-stylist-title {
font-size: 42px;
}
}



.connect-section {
margin: 30px auto;
}

.connect-box {
max-width: 1200px;
margin: 0 auto;
background: #f5f5ee;
border-radius: 0.625rem;
padding: 48px;
display: grid;
grid-template-columns: 1fr 1.2fr;
gap: 40px;
}

.connect-left h2 {
font-family: "Inter";
font-size: 42px;
margin-bottom: 32px;
color: #0f2a1d;
font-weight: 600;
}

.connect-item {
margin-bottom: 24px;
}

.connect-item h5 {
font-family: "Cormorant Garamond", serif;
font-size: 18px;
margin-bottom: 6px;
color: #0f2a1d;
font-family: inter;
text-transform: uppercase;
font-weight: 400;
}





.connect-item p {
font-size: 15px;
line-height: 1.6;
color: #0f2a1d;
}

.connect-social {
display: flex;
gap: 12px;
}

.connect-social a {
width: 34px;
height: 34px;
border-radius: 50%;
background: #0f2a1d;
color: #f5f5ee;
display: flex;
align-items: center;
justify-content: center;
font-size: 13px;
text-decoration: none;
}

.connect-right form {
display: flex;
flex-direction: column;
gap: 18px;
}

.form-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 18px;
}

.connect-right input,
.connect-right textarea {
width: 100%;
padding: 10px 12px;
font-size: 14px;
border: 1px solid #0f2a1d;
background: #f5f5ee;
color: #0f2a1d;
outline: none;
}

.connect-right textarea {
min-height: 120px;
resize: none;
}

.connect-right button {
align-self: flex-start;
padding: 12px 36px;
border-radius: 999px;
border: none;
background: #0f2a1d;
color: #f5f5ee;
font-size: 14px;
letter-spacing: 1px;
cursor: pointer;
}

.connect-right button:hover {
background: #0f2a1d;
}

@media (max-width: 992px) {
.connect-box {
grid-template-columns: 1fr;
padding: 24px;
}
}

@media (max-width: 576px) {


.form-row {
grid-template-columns: 1fr;
}
}



span.form-note {
font-size: 14px;
margin-top: -8px;
}
p.form-note {
font-size: 14px;
margin-top: -8px;
}

.luxe-mega {
position: fixed;
top: 100px;
left: 0;
width: 100%;
background: transparent; /* IMPORTANT */
opacity: 0;
visibility: hidden;
transform: translateY(14px);
transition: opacity 0.25s ease, transform 0.25s ease;
z-index: 9999;
display: flex;
justify-content: center;
margin-top:-8px;
}


.luxe-mega.show {
opacity: 1;
visibility: visible;
transform: translateY(0);
}


.luxe-mega-inner {
max-width: 1200px;
width: calc(100% - 48px);
background: #f5f5ee;
border-radius: 0.625rem;
margin: 0 auto;
padding: 60px 36px;
}



.luxe-service-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px;
height: 280px;
margin-top: 40px;
}


.luxe-service-card {
position: relative;
border-radius: 0.625rem;
overflow: hidden;
background: #f5f5ee;
cursor: pointer;
}

.luxe-service-card img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}


.luxe-service-title {
position: absolute;
bottom: 18px;
left: 18px;
font-size: 24px;
font-weight: 500;
color: #f5f5ee;
z-index: 2;
letter-spacing: 0.02em;
}


.luxe-service-overlay {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.75);
color: #f5f5ee;
padding: 28px;
opacity: 0;
transform: translateY(10px);
transition: all 0.3s ease;
display: flex;
flex-direction: column;
justify-content: flex-end;
}

.luxe-service-overlay h3 {
font-size: 20px;
margin-bottom: 8px;
}

.luxe-service-overlay p {
font-size: 12px;
line-height: 1.6;
opacity: 0.9;
}


.luxe-service-card:hover .luxe-service-overlay {
opacity: 1;
transform: translateY(0);
}


@media (max-width: 1024px) {
.luxe-service-grid {
grid-template-columns: repeat(2, 1fr);
}
}

@media (max-width: 640px) {
.luxe-service-grid {
grid-template-columns: 1fr;
}
}
/*.luxe-service-card:hover .luxe-service-title{*/
/* opacity:0;*/
/* visibility:hidden;*/
/*}*/


.luxe-service-card {
position: relative;
overflow: hidden;
border-radius: 0.625rem;
}

.luxe-service-card img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transform: scale(1);
transition: transform 0.6s ease;
}

.luxe-service-card::after {
content: "";
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.3); /* 20% dark overlay */
z-index: 1;
pointer-events: none;
}

.luxe-service-title {
position: absolute;
inset: 0;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
color: #fff;
z-index: 2;
}

.luxe-service-title span {
display: block;
line-height: 1.05;
}

.luxe-service-title .line-1 {
font-weight: 400;
}

.luxe-service-title .line-2 {
font-weight: 400;
}

.luxe-service-card:hover img {
transform: scale(1.08);
}





h3.hhead-custom-s {
font-size: 42px !important;
margin-bottom: 20px;
line-height: 22px;
padding-top: 20%;
font-weight: 300;
letter-spacing: -2px;
}

h3.hhead-custom-s span{
font-weight: 700;
}

.service-title.head-custom-s {
font-size: 42px !important;
margin-bottom: 20px;
line-height: 22px;
padding-top: 18.5%;
font-weight: 300;
letter-spacing: -2px;
padding-left: 1%;
}

.service-title.head-custom-s span{
font-weight: 700;
}





h2.blocksechead{
font-size:42px;
font-weight:500;
font-family: "Inter";
letter-spacing: -2px;
text-transform: uppercase;
}

h3.blocksechead{

text-transform: uppercase;
letter-spacing: -2px;
font-size: 42px;
}





.story-section{
margin:40px auto;
}
p.story-main-text{
font-weight: 300;
}
.story-box{
max-width:1200px;
margin:0 auto;
background:#f5f5ee;
border-radius:.625rem;
padding:64px 72px;
}
.adjusting-text {
position: relative;
top: 7px;
left: -165px;
font-family: 'Cormorant Garamond', serif;
font-weight: 500;
font-size: 42px;
line-height: 24px;
letter-spacing: -2px;
}

span.storry {
font-size: 80px;
}

@media (max-width: 991px) {

.story-box{
padding:48px 40px;
}

.adjusting-text{
left:0;
top:0;
margin-bottom:20px;
font-size:36px;
line-height:1.1;
}

span.storry{
font-size:64px;
}

.story-main-text{
font-size:15px;
line-height:1.7;
}
}


@media (max-width: 575px) {

.story-section{
margin-left:12px;
margin-right:12px;
}

.story-box{
padding:36px 24px;
}

.adjusting-text{
left:0;
top:0;
font-size:28px;
line-height:1.1;
margin-bottom:16px;
}

span.storry{
font-size:48px;
}

.story-main-text{
font-size:14px;
line-height:1.65;
}
}




.team-section{
margin:40px auto;
}

.team-box{
max-width:1200px;
margin:0 auto;
background:#f5f5ee;
border-radius:.625rem;
padding:64px 72px;
}

/* HEADER */
.team-header{
margin-bottom:48px;
}

.team-header h2{
font-family:'Cormorant Garamond', serif;
font-size:42px;
color:#0f2a1d;
}

/* GRID */
.team-grid{
display:grid;
grid-template-columns:repeat(2, 1fr);
gap:48px;
}

/* CARD */
.team-card{
display:flex;
flex-direction:column;
gap:18px;
}

/* IMAGE */
.team-image{
width:100%;
aspect-ratio:1/1.1;
overflow:hidden;
border-radius:.5rem;
}

.team-image img{
width:100%;
height:100%;
object-fit:cover;
}


.team-info h4{
font-family:'Cormorant Garamond', serif;
font-size:34px;
color:#0f2a1d;
margin-bottom:4px;
text-align: center;
letter-spacing: -2px;
font-weight: 300;
}
.team-info h4 span{
font-weight: bold;

}




@media(max-width:991px){
.team-box{
padding:48px 40px;
}

.team-grid{
gap:36px;
}
}

@media(max-width:575px){
.team-section{
margin-left:12px;
margin-right:12px;
}

.team-box{
padding:36px 24px;
}

.team-grid{
grid-template-columns:1fr;
gap:32px;
}

.team-header h2{
font-size:32px;
}
}







span.typo-logo {
font-weight: bold;
font-size: 38px;
margin-top: 17px!important;
text-align: left;
}
/* ===============================
FOOTER WRAPPER
================================ */
.unified-footer-section {
margin: 40px auto 30px;
}

.unified-footer-box {
max-width: 1200px;
margin: 0 auto;
background: #f5f5ee;
border-radius: 0.625rem;
padding: 56px 48px 1px;
}

/* ===============================
PHILOSOPHY
================================ */
.footer-philosophy {
text-align: center;
padding: 20px 0 20px;
}

.footer-philosophy p {
font-family: "Cormorant Garamond", serif;
font-size: 42px;
line-height: 1.4;
letter-spacing: -3px;
}

/* ===============================
SEPARATORS
================================ */
.footer-separator {
height: 1px;
background: rgba(15, 42, 29, 0.2);
margin: 40px 0 16px;
width: calc(100% + 96px);
margin-left: -48px;
}

/* ===============================
FOOTER MAIN GRID
================================ */
.footer-main {
display: grid;
grid-template-columns: 1fr 420px;
gap: 48px;
align-items: stretch;
position: relative;
}
.footer-main {
position: relative;
}

/* FULL-HEIGHT VERTICAL DIVIDER */
.footer-main::after {
content: "";
position: absolute;
top: 0;
left: calc(100% - 424px - 25px);
width: 1px;
background: rgba(15, 42, 29, 0.3);
height: 351px;
margin-top: -56px;
}


button {
text-transform: uppercase !important;
}


/* ===============================
LEFT : FOOTER COLUMNS
================================ */
.footer-columns {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 48px;
}

.footer-col h5 {
font-size: 16px;
letter-spacing: 2px;
margin-bottom: 16px;
}

.footer-col ul {
list-style: none;
padding: 0;
margin: 0;
}

.footer-col ul li {
font-size: 16px;
font-weight: 300;
line-height: 1.8;
}

.footer-col ul li a {
color: inherit;
text-decoration: none;
}

.footer-col ul li a:hover {
text-decoration: underline;
}

/* ===============================
RIGHT : NEWSLETTER
================================ */
.footer-brand {
padding-left: 48px;
display: flex;
flex-direction: column;
justify-content: space-between;
}

.footer-brand p {
font-size: 14px;
max-width: 320px;
line-height: 1.6;
margin-bottom: 16px;
}

.connect-right form {
display: flex;
flex-direction: column;
gap: 12px;
}

.connect-right input {
padding: 10px 12px;
background: transparent;
border: 1px solid rgba(15, 42, 29, 0.4);
outline: none;
}

.connect-right button {
padding: 10px 16px;
background: #0f2a1d;
border: 1px solid rgba(15, 42, 29, 0.6);
cursor: pointer;
}

.footer-brand span {
align-self: flex-end;
opacity: 0.35;
margin-top: 48px;
}

/* ===============================
TAGLINE
================================ */
.footer-tagline {
text-align: center;
font-size: 14px;
letter-spacing: 1px;
}

/* ===============================
RESPONSIVE
================================ */
@media (max-width: 992px) {
.footer-main {
grid-template-columns: 1fr;
}

.footer-brand {
border-left: none;
padding-left: 0;
border-bottom: 1px solid rgba(15, 42, 29, 0.2);
padding-bottom: 5px;
}



.footer-philosophy p {
font-size: 33px;
}
}

@media (max-width: 576px) {
.unified-footer-box {
padding: 40px 24px 28px;
}

.footer-columns {
grid-template-columns: repeat(2, 1fr);
}

.footer-separator {
width: calc(100% + 48px);
margin-left: -24px;
}


}


li.footi{
font-size: 14px!important;
/*font-style:italic;*/
line-height: 20px!important;

}

.site-header{
position:absolute;
top:0;
left:0;
width:100%;
padding:22px 36px;
z-index:10;
}




.service-overlay p {
font-size: 16px;
}



.swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper {
background: #fff!important;
}





span.storry {
font-size: 86px;
letter-spacing: -6px;
}

p.story-main-text {
font-weight: 300;
margin-left: -5px;
}

.adjusting-text {

left: -160px;
}



/* SECTION */
.dual-box-section{
margin:106px auto 40px
}

/* MAIN BOX */
.dual-box{
max-width:1200px;
margin:0 auto;
background:#f5f5ee;
border-bottom-right-radius:0.625rem;
border-bottom-left-radius:0.625rem;

overflow:hidden;

display:grid;
grid-template-columns:1fr 1fr;
height:520px; /* 🔒 fixed height */
}

/* IMAGE */
.dual-media {
position: relative;
height: 100%;
overflow: hidden; /* 🔒 clips zoom */
}

.dual-media img{
width:100%;
height:100%;
object-fit:cover;
display:block;
}

/* CONTENT */
.dual-content{
padding:48px 64px 48px 48px;
display:flex;
flex-direction:column;

height:100%;
min-height:0; /* 🔑 REQUIRED */
}

/* TITLE */
.dual-title{
font-family:"Inter", sans-serif;
font-size:42px;
line-height:1.15;
letter-spacing:-1.5px;
color:#0f2a1d;
margin-bottom:24px;
flex-shrink:0;
line-height: 28px;
}

/* SCROLL AREA */
.dual-scroll{
flex:1;
min-height:0; /* 🔑 REQUIRED */
overflow-y:auto;
padding-right:14px;
}

/* TEXT */
.dual-scroll p{
font-family:"Inter", sans-serif;
font-size:15px;
line-height:1.65;
font-weight:300;
color:#0f2a1d;
margin:0;
}

/* SCROLLBAR (WINTER / RHODE STYLE) */
.dual-scroll::-webkit-scrollbar{
width:6px;
}

.dual-scroll::-webkit-scrollbar-thumb{
background:rgba(15,42,29,.35);
border-radius:6px;
}

.dual-scroll::-webkit-scrollbar-thumb:hover{
background:rgba(15,42,29,.55);
}

.dual-scroll{
scrollbar-width:thin;
scrollbar-color:rgba(15,42,29,.35) transparent;
}

/* RESPONSIVE */
@media(max-width:768px){
.dual-box{
grid-template-columns:1fr;
height:auto;
padding-top: 60px;
}

.dual-media{
height:400px;
}


.dual-content{
height:auto;
}

.dual-scroll{
overflow:visible;
padding-right:0;
}
}

@media(max-width:576px){
.dual-box-section{
margin:31px 0px;
}

.dual-content{
padding:32px 24px;
}

.dual-title{
font-size:35px;
}
}





.faq-section {
margin: 40px auto;
}

.faq-box {
max-width: 1200px;
margin: 0 auto;
background: #f5f5ee;
border-radius: 0.625rem;
padding: 56px;
}

.faq-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: stretch; /* instead of center */
}

/* LEFT */
.faq-title {
font-family: "Inter";
font-size: 42px;
color: #0f2a1d;
margin-bottom: 8px;
}

.faq-subtitle {
font-family: "Inter", sans-serif;
font-size: 16px;
font-weight: 300;
margin-bottom: 32px;
color: #0f2a1d;
}

.faq-list {
border-top: 1px solid rgba(15, 42, 29, 0.25);
}

.faq-item {
border-bottom: 1px solid rgba(15, 42, 29, 0.25);
}

.faq-question {
width: 100%;
background: none;
border: 0;
padding: 18px 0;
text-align: left;
font-family: "Inter", sans-serif;
font-size: 14px;
letter-spacing: 0.5px;
color: #0f2a1d;
display: flex;
justify-content: space-between;
align-items: center;
cursor: pointer;
text-transform: uppercase !important;
}

.faq-question span {
width: 18px;
height: 18px;
border: 1px solid #0f2a1d;
border-radius: 50%;
position: relative;
min-width: 18px;
}

.faq-question span::before,
.faq-question span::after {
content: "";
position: absolute;
background: #0f2a1d;
}

.faq-question span::before {
width: 8px;
height: 1px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

.faq-question span::after {
width: 1px;
height: 8px;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

.faq-item.active .faq-question span::after {
display: none;
}

.faq-answer {
max-height: 0;
overflow: hidden;
font-family: "Inter", sans-serif;
font-size: 14px;
line-height: 1.7;
font-weight: 300;
color: #0f2a1d;
transition: max-height 0.4s ease;
margin-top: -10px;
margin-bottom: 10px;
}

/* RIGHT */
.faq-image {
height: 100%;
min-height: 420px; /* matches visual weight of FAQ */
border-radius: 0.625rem;
overflow: hidden;
display: flex;
}

.faq-image img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center top; /* keeps face visible */
display: block;
}

/* RESPONSIVE */
@media (max-width: 992px) {
.faq-grid {
grid-template-columns: 1fr;
}

.faq-box {
padding: 40px;
}
}

@media (max-width: 576px) {

.faq-box {
padding: 32px 24px;
}
}

@media (max-width: 768px) {
.faq-image {
min-height: 280px;
}
}




.connect-right button{ position: relative;
padding: 6px 30px;

border-radius: 999px;

overflow: hidden;
cursor: pointer;
font-size: 13px;
letter-spacing: 2px;
text-transform: uppercase;
}
.mtm20{
margin-top:-20px;
}




.footer-tagline {
padding-top: 15px;
padding-bottom: 15px;
}


.footer-tagline p{
    margin-bottom:0 ;
}
.footer-main {
padding-bottom: 120px;
}

.footer-main::after {
content: "";
position: absolute;
top: 0;
left: calc(100% - 424px - 25px);
width: 1px;
background: rgba(15, 42, 29, 0.3);
height: 475px;
margin-top: -50px;
}

.footer-col h5 {

margin-bottom: 22px;
}

.footer-tagline {

font-size: 15px;

}


.footer-brand {

padding-top: 18px!important;
}



.service-card:hover img{
transform: scale(1);
/*border: 1px solid #fff;*/
}






.unified-front-box{
padding-top:60px;padding-bottom:60px;
}
.unified-front-section{
max-width: 1200px;
margin: 0 auto;
background: #f5f5ee;
border-radius: 0.625rem;
padding: 50px 50px ;
}
.front-row-text h2{
font-size:38px;

}

.front-row-text span{
text-align: justify;
text-align-last: center;
font-weight: 300;
}

.front-row-text{
position: relative;
z-index: 2;
height: 100%;
max-width: 500px;
margin: 0 auto;
display: flex
;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
padding: 0 24px;
}


/* INITIAL STATE */
.animate-on-scroll .front-row-text{
opacity:0;
transform:translateY(18px);
transition:
opacity .9s ease,
transform .9s ease;
}

/* ACTIVE */
.animate-on-scroll.is-visible .front-row-text{
opacity:1;
transform:translateY(0);
}




.connect-right button{ position: relative;
padding: 6px 30px;

border-radius: 999px;

overflow: hidden;
cursor: pointer;
font-size: 13px;
letter-spacing: 2px;
text-transform: uppercase;
}
.mtm20{
margin-top:-20px;
}




.philotext{
margin:0;
line-height:1.3;
font-family:inherit;
white-space:pre-line;
position:relative;
}

.cursor{
display:inline-block;
margin-left:4px;
animation:blink 1s infinite;
}

@keyframes blink{
50%{opacity:0;}
}

.connect-left a:hover {
text-decoration: underline;
}

.form-consent p a {
color: #0f2a1d;
}
.form-note {
display: flex;
}
.form-consent {
display: flex;
}

input[type="checkbox"] {
width: 12px;
margin-right: 8px;
}
.connect-right input {
padding: 10px 12px;
background: transparent;
border: 1px solid #0f2a1d;
outline: none;
}


img.footerllogo {
margin-left: -70px;
width: 112%;
margin-top: -10px;
}

.footer-separator {

margin-top: 6px;
}




.hero-zoom {
position: relative;
height: 560px;
border-radius: 0.625rem;
overflow: hidden;
background: none !important;
}

/* background image layer */
.hero-zoom .hero-bg,
.zoom-on-scroll .zoom-bg {
position: absolute;
inset: 0;
transform: scale(1);
transform-origin: center center;
will-change: transform;
z-index: 1;
}

/* overlay (unchanged visual) */
.hero-zoom::after {
content: "";
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.55);
z-index: 2;
}

/* content layer */
.hero-zoom .hero-content {
position: absolute;
bottom: 48px;
left: 30px;
z-index: 3;
max-width: 720px;
}

.dual-scroll {
scrollbar-width: thin;
scrollbar-color: rgb(15 42 29) transparent;
}


.section-divider {
    width: 116%;
    height: 1px;
    background-color: rgba(15, 42, 29, 0.2);
    margin-left: -8%;
}


@media (max-width: 576px) {

.service-card {

aspect-ratio: 1/1.3;
}

h3.hhead-custom-s{
padding-top:15px;
font-size:36px!important;
}

.service-title.head-custom-s {
    font-size: 36px !important;
    
}

.service-title.head-custom-s{
padding-top:20px;
}
.service-overlay p {
font-size: 14px;
}



img.footerllogo {
margin-left: -14px;
width: 100%;
margin-top: -12px;
}

.unified-front-section{

padding: 30px 24px;
}
.ifmarmis{
margin-left: 12px;
margin-right: 12px;

}

.footer-brand {
    padding-top: 5px !important;
}

.footer-main {

    gap: 42px;

}
.no-border{
    border: 0!important;
}

.curators-content p {
    
    text-align: center!IMPORTANT;
}
}
/* Desktop First */
.desk-only{
display:block;
}

.mob-only{
display:none;
}

/* Mobile */
@media (max-width: 768px){
.desk-only{
display:none !important;
}

.mob-only{
display:block !important;
}
}


@media (max-width: 768px){
 .hero-zoom .hero-content {
  
    left: 24px;
   
}
 .service-overlay {
    
    padding: 24px;
     
 }
    
    .front-row-text {
        padding: 0;
    }
    
    
     .unified-v2-section {
           
            padding: 50px 24px!important;
        }
        
        .mobbcc{
            
        }
        
        input[type="checkbox"] {
    width: 12px;
        }
}


