
:root{--red:#E1C16E;--red-dark:#9C7A2D;--red-light:#F0D995;--red-glow:rgba(225,193,110,0.15);--black:#174B46;--dark:#FBF7EF;--dark2:#F4EEDF;--dark3:#ECE2CB;--dark4:#E1D4B4;--white:#FFFFFF;--off-white:#F8F3E6;--grey:#5E645E;--grey-light:#888888;--grey-subtle:#CCCCCC;--serif:'Playfair Display',serif;--sans:'Inter',sans-serif;--ease:cubic-bezier(0.25,0.46,0.45,0.94);}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{font-family:var(--sans);background:var(--white);color:var(--black);overflow-x:hidden;cursor:none;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
button{cursor:none;border:none;background:none;font-family:var(--sans);}
#cursor{width:8px;height:8px;background:var(--red);border-radius:50%;position:fixed;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:transform 0.1s;}
#cursor-ring{width:32px;height:32px;border:1.5px solid rgba(225,193,110,0.5);border-radius:50%;position:fixed;pointer-events:none;z-index:99998;transform:translate(-50%,-50%);transition:all 0.12s ease;}
::-webkit-scrollbar{width:3px;}::-webkit-scrollbar-track{background:#EEE;}::-webkit-scrollbar-thumb{background:var(--red);}
#loader{position:fixed;inset:0;background:var(--white);z-index:99997;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;transition:opacity 0.9s ease,visibility 0.9s ease;}
#loader.gone{opacity:0;visibility:hidden;pointer-events:none;}
.loader-bar{width:180px;height:1px;background:#DDD;position:relative;overflow:hidden;}
.loader-fill{position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--red);animation:fillBar 1.8s ease forwards;}
@keyframes fillBar{to{left:0;}}
@keyframes pulse{0%,100%{opacity:0.4;transform:scale(0.92);}50%{opacity:1;transform:scale(1);}}
#navbar{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:22px 70px;transition:all 0.4s var(--ease);}
#navbar.scrolled{background:rgba(255,255,255,0.97);backdrop-filter:blur(25px);padding:14px 70px;border-bottom:1px solid rgba(225,193,110,0.2);}
.nav-brand{display:flex;align-items:center;gap:18px;}
.nav-brand img{width:88px;height:88px;object-fit:contain;}
.brand-name{font-family:var(--serif);font-size:1.7rem;font-weight:700;letter-spacing:0.5px;display:block;line-height:1.1;}
.brand-tagline{font-size:0.68rem;letter-spacing:5px;text-transform:uppercase;color:var(--red);display:block;margin-top:4px;}
.nav-center{display:flex;gap:34px;align-items:center;}
.nav-link{font-size:0.63rem;letter-spacing:2px;text-transform:uppercase;color:rgba(0,0,0,0.55);font-weight:500;position:relative;padding-bottom:4px;transition:color 0.3s;}
.nav-link::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--red);transition:width 0.3s;}
.nav-link:hover,.nav-link.active{color:var(--black);}
.nav-link:hover::after,.nav-link.active::after{width:100%;}
.nav-cta{font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--red-light);background:var(--black);padding:11px 26px;transition:all 0.3s;}
.nav-cta:hover{background:#123F3B;color:var(--white);}
.hamburger{display:none;flex-direction:column;gap:5px;padding:5px;}
.hamburger span{width:24px;height:1.5px;background:var(--black);transition:all 0.3s;display:block;}
.hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
.mob-menu{position:fixed;inset:0;background:var(--black);z-index:999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transform:translateX(100%);transition:transform 0.5s var(--ease);}
.mob-menu.open{transform:translateX(0);}
.mob-close{position:absolute;top:25px;right:30px;font-size:1.5rem;color:var(--red-light);cursor:pointer !important;}
.mob-menu a{font-family:var(--serif);font-size:2rem;font-weight:400;color:var(--white);letter-spacing:2px;transition:color 0.3s;font-size:21px}
.mob-menu a:hover{color:var(--red);}
.mob-cta{font-family:var(--sans) !important;font-size:0.65rem !important;letter-spacing:3px !important;background:var(--red) !important;padding:14px 40px !important;color:var(--white) !important;margin-top:10px;}
.page-hero{height:72vh;min-height:520px;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding-bottom:80px;}
.page-hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.page-hero .overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.92) 0%,rgba(0,0,0,0.5) 50%,rgba(0,0,0,0.15) 100%);}
.page-hero .overlay-side{position:absolute;inset:0;background:linear-gradient(105deg,rgba(0,0,0,0.88) 30%,transparent 70%);}
.hero-content{position:relative;z-index:2;padding:0 80px;}
.hero-label{font-size:0.57rem;letter-spacing:6px;text-transform:uppercase;color:var(--red);margin-bottom:16px;display:flex;align-items:center;gap:12px;}
.hero-label::before{content:'';width:40px;height:1px;background:var(--red);}
.hero-title{font-family:var(--serif);font-size:clamp(2.8rem,7vw,6rem);font-weight:800;line-height:1.05;}
.hero-title em{color:var(--red);font-style:italic;}
.hero-bc{display:flex;gap:10px;align-items:center;margin-top:18px;font-size:0.6rem;letter-spacing:2px;text-transform:uppercase;color:rgba(0,0,0,0.35);}
.hero-bc span{color:var(--red);}
.sec{padding:110px 80px;}
.sec-alt{background:var(--dark2);}
.sec-white{background:var(--white);color:var(--black);}
.sec-red{background:var(--red);color:var(--white);}
.sec-dark{background:var(--dark);}
.sec-charcoal{background:#F5F0EB;}
.sec-label{font-size:0.57rem;letter-spacing:6px;text-transform:uppercase;color:var(--red);margin-bottom:14px;display:flex;align-items:center;gap:12px;}
.sec-label::before{content:'';width:35px;height:1px;background:var(--red);}
.sec-title{font-family:var(--serif);font-size:clamp(1.9rem,3.5vw,3.2rem);font-weight:800;line-height:1.2;margin-bottom:20px;}
.sec-title em{color:var(--red);font-style:italic;}
.sec-white .sec-title em{color:var(--red);}
.sec-white .sec-label{color:var(--red);}
.sec-text{font-size:0.78rem;line-height:2;color:rgba(0,0,0,0.58);max-width:520px;}
.sec-white .sec-text{color:rgba(0,0,0,0.58);}
.sec-center{text-align:center;}
.sec-center .sec-label{justify-content:center;}
.sec-center .sec-label::before{display:none;}
.sec-center .sec-text{margin:0 auto;}
.red-divider{width:55px;height:3px;background:var(--red);margin:18px 0;}
.red-divider.center{margin:18px auto;}
.btn-red{display:inline-flex;align-items:center;gap:12px;background:var(--black);color:var(--red-light);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;padding:15px 34px;transition:all 0.3s;}
.btn-red:hover{background:#123F3B;color:var(--white);gap:18px;}
.btn-outline-red{display:inline-flex;align-items:center;gap:12px;border:1.5px solid var(--red);color:var(--red);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;padding:14px 34px;transition:all 0.3s;}
.btn-outline-red:hover{background:var(--red);color:var(--white);gap:18px;}
.btn-white{display:inline-flex;align-items:center;gap:12px;background:var(--white);color:var(--black);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;padding:15px 34px;transition:all 0.3s;}
.btn-white:hover{background:var(--off-white);gap:18px;}
.btn-outline-white{display:inline-flex;align-items:center;gap:12px;border:1.5px solid rgba(225,193,110,0.5);color:var(--red);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:500;padding:14px 34px;transition:all 0.3s;}
.btn-outline-white:hover{border-color:var(--white);background:rgba(255,255,255,0.08);gap:18px;}
.btn-outline-black{display:inline-flex;align-items:center;gap:12px;border:1.5px solid var(--black);color:var(--black);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;padding:14px 34px;transition:all 0.3s;}
.btn-outline-black:hover{background:var(--white);color:var(--black);}
.reveal{opacity:0;transform:translateY(35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal.up{opacity:1;transform:translateY(0);}
.reveal-l{opacity:0;transform:translateX(-35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal-l.up{opacity:1;transform:translateX(0);}
.reveal-r{opacity:0;transform:translateX(35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal-r.up{opacity:1;transform:translateX(0);}
footer{background:var(--black);border-top:1px solid rgba(225,193,110,0.18);}
.footer-top{display:grid;grid-template-columns:1.8fr 1fr 1fr 1.4fr;gap:60px;padding:80px;}
.footer-logo{width:72px;height:72px;object-fit:contain;margin-bottom:18px;}
.footer-name{font-family:var(--serif);font-size:1.45rem;font-weight:700;margin-bottom:4px;}
.footer-tagline{font-size:0.53rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:18px;}
.footer-desc{font-size:0.73rem;line-height:1.9;color:rgba(255,255,255,0.72);max-width:260px;}
.footer-socials{display:flex;gap:10px;margin-top:22px;}
.footer-socials a{width:36px;height:36px;border:1px solid rgba(225,193,110,0.28);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.72);transition:all 0.3s;}
.footer-socials a:hover{border-color:var(--red-light);color:var(--red-light);}
.footer-col h4{font-size:0.57rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:26px;font-weight:700;}
.footer-col ul{list-style:none;}
.footer-col ul li{margin-bottom:11px;}
.footer-col ul li a{font-size:0.73rem;color:rgba(255,255,255,0.72);transition:color 0.3s;}
.footer-col ul li a:hover{color:var(--red-light);}
.footer-contact-item{display:flex;gap:14px;margin-bottom:18px;align-items:flex-start;}
.fc-icon{width:34px;height:34px;border:1px solid rgba(225,193,110,0.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--red);}
.fc-icon svg{width:14px;height:14px;}
.footer-contact-item p,.footer-contact-item a{font-size:0.7rem;color:rgba(255,255,255,0.72);line-height:1.7;transition:color 0.3s;}
.footer-contact-item a:hover{color:var(--red-light);}
.footer-bottom{background:#123F3B;border-top:1px solid rgba(225,193,110,0.16);padding:26px 80px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.footer-bottom p{font-size:0.62rem;color:rgba(255,255,255,0.72);letter-spacing:0.5px;}
.footer-bottom span{color:var(--red);}
@media(max-width:1100px){#navbar{padding:18px 40px;}#navbar.scrolled{padding:12px 40px;}.nav-center{gap:20px;}.sec{padding:80px 45px;}.hero-content{padding:0 45px;}.footer-top{grid-template-columns:1fr 1fr;gap:40px;padding:60px 45px;}.footer-bottom{padding:22px 45px;}}
@media(max-width:768px){#navbar{padding:15px 22px;}#navbar.scrolled{padding:12px 22px;}.nav-center,.nav-cta{display:none;}.hamburger{display:flex;}.nav-brand{gap:12px;}.nav-brand img{width:64px;height:64px;}.brand-name{font-size:1.12rem;}.brand-tagline{font-size:0.52rem;letter-spacing:3px;}.sec{padding:55px 22px;}.hero-content{padding:0 22px;}.page-hero{padding-bottom:45px;}.footer-top{grid-template-columns:1fr;padding:45px 22px;gap:32px;}.footer-bottom{padding:20px 22px;flex-direction:column;text-align:center;}#cursor,#cursor-ring{display:none;}body{cursor:auto;}.hamburger,.mob-close{cursor:pointer !important;}}


/* HERO SLIDER */
.hero{height:100vh;position:relative;overflow:hidden;}
.slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease;}
.slide.active{opacity:1;}
.slide img{width:100%;height:100%;object-fit:cover;}
.slide-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,0.75) 0%,rgba(0,0,0,0.4) 60%,rgba(225,193,110,0.05) 100%);}
.slide-content{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:0 100px;max-width:850px;}
.slide-eyebrow{font-size:0.57rem;letter-spacing:7px;text-transform:uppercase;color:var(--red);margin-bottom:20px;opacity:0;animation:sIn 0.7s ease 0.3s forwards;}
.slide-h1{font-family:var(--serif);font-size:clamp(2.8rem,5.5vw,5.5rem);font-weight:800;line-height:1.08;margin-bottom:22px;opacity:0;animation:sIn 0.7s ease 0.5s forwards;}
.slide-h1 em{color:var(--red);font-style:italic;}
.slide-p{font-size:0.8rem;line-height:1.9;color:rgba(0,0,0,0.6);max-width:460px;margin-bottom:38px;opacity:0;animation:sIn 0.7s ease 0.7s forwards;}
.slide-btns{display:flex;gap:16px;opacity:0;animation:sIn 0.7s ease 0.9s forwards;flex-wrap:wrap;}
@keyframes sIn{from{opacity:0;transform:translateY(25px);}to{opacity:1;transform:translateY(0);}}
.slider-nav{position:absolute;bottom:50px;left:100px;display:flex;gap:12px;z-index:10;}
.s-dot{width:28px;height:3px;background:rgba(255,255,255,0.2);cursor:pointer;transition:all 0.3s;}
.s-dot.active{background:var(--red);width:50px;}
.s-arrows{position:absolute;bottom:40px;right:80px;display:flex;gap:10px;z-index:10;}
.s-arrow{width:48px;height:48px;border:1px solid rgba(255,255,255,0.15);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s;font-size:1rem;color:rgba(0,0,0,0.6);}
.s-arrow:hover{border-color:var(--red);color:var(--red);}
.scroll-hint{position:absolute;bottom:45px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:10;}
.scroll-hint span{font-size:0.5rem;letter-spacing:4px;text-transform:uppercase;color:rgba(255,255,255,0.7);}
.scroll-line{width:1px;height:55px;background:linear-gradient(to bottom,var(--red),transparent);animation:sline 2s ease-in-out infinite;}
@keyframes sline{0%{height:0;opacity:1;}100%{height:55px;opacity:0;}}

/* ABOUT STRIP */
.about-strip{display:grid;grid-template-columns:1fr 1fr;gap:0;}
.about-strip-img{position:relative;height:700px;overflow:hidden;}
.about-strip-img img{width:100%;height:100%;object-fit:cover;transition:transform 8s ease;}
.about-strip-img:hover img{transform:scale(1.04);}
.about-img-badge{position:absolute;bottom:40px;right:-30px;background:var(--red);padding:30px 35px;text-align:center;z-index:2;}
.badge-number{font-family:var(--serif);font-size:3.5rem;font-weight:800;line-height:1;color:var(--white);}
.badge-label{font-size:0.55rem;letter-spacing:3px;text-transform:uppercase;color:rgba(0,0,0,0.75);margin-top:5px;}
.about-strip-text{background:var(--dark2);padding:80px 70px;display:flex;flex-direction:column;justify-content:center;}
.about-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(225,193,110,0.15);margin-top:45px;}
.a-stat{background:var(--dark3);padding:28px;text-align:center;}
.a-stat-n{font-family:var(--serif);font-size:2.5rem;font-weight:800;color:var(--red);line-height:1;}
.a-stat-l{font-size:0.58rem;letter-spacing:3px;text-transform:uppercase;color:var(--grey);margin-top:6px;}

/* SERVICES */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(225,193,110,0.08);margin-top:55px;}
.svc-card{background:var(--dark3);padding:48px 38px;position:relative;overflow:hidden;transition:all 0.4s;}
.svc-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(225,193,110,0.06),transparent);opacity:0;transition:opacity 0.4s;}
.svc-card:hover::before{opacity:1;}
.svc-card:hover{transform:translateY(-4px);}
.svc-num{font-family:var(--serif);font-size:5rem;font-weight:800;color:rgba(225,193,110,0.07);position:absolute;top:10px;right:24px;line-height:1;}
.svc-icon{width:48px;height:48px;border:1.5px solid rgba(225,193,110,0.3);display:flex;align-items:center;justify-content:center;margin-bottom:24px;color:var(--red);}
.svc-icon svg{width:22px;height:22px;}
.svc-name{font-family:var(--serif);font-size:1.35rem;font-weight:700;margin-bottom:14px;transition:color 0.3s;}
.svc-card:hover .svc-name{color:var(--red);}
.svc-desc{font-size:0.73rem;line-height:1.9;color:var(--grey);}
.svc-link{display:inline-flex;align-items:center;gap:8px;font-size:0.58rem;letter-spacing:3px;text-transform:uppercase;color:var(--red);margin-top:22px;transition:gap 0.3s;}
.svc-link:hover{gap:15px;}

/* PORTFOLIO GRID */
.port-feature-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:320px 280px;gap:12px;margin-top:55px;}
.pf-item{overflow:hidden;position:relative;cursor:pointer;}
.pf-item:nth-child(1){grid-column:1/8;grid-row:1;}
.pf-item:nth-child(2){grid-column:8/13;grid-row:1;}
.pf-item:nth-child(3){grid-column:1/5;grid-row:2;}
.pf-item:nth-child(4){grid-column:5/9;grid-row:2;}
.pf-item:nth-child(5){grid-column:9/13;grid-row:2;}
.pf-item img{width:100%;height:100%;object-fit:cover;transition:transform 0.7s ease;}
.pf-item:hover img{transform:scale(1.06);}
.pf-overlay{position:absolute;inset:0;background:rgba(0,0,0,0);transition:background 0.4s;display:flex;flex-direction:column;justify-content:flex-end;padding:25px;}
.pf-item:hover .pf-overlay{background:rgba(0,0,0,0.55);}
.pf-info{transform:translateY(15px);opacity:0;transition:all 0.4s;}
.pf-item:hover .pf-info{transform:translateY(0);opacity:1;}
.pf-cat{font-size:0.53rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:4px;}
.pf-name{font-family:var(--serif);font-size:1.3rem;font-weight:600;}

/* WHY US */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(225,193,110,0.08);}
.why-card{background:var(--white);padding:50px 32px;text-align:center;position:relative;overflow:hidden;}
.why-card::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:0;height:3px;background:var(--red);transition:width 0.4s;}
.why-card:hover::after{width:80%;}
.why-icon-wrap{width:64px;height:64px;border:2px solid var(--red);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:1.6rem;}
.why-title{font-family:var(--serif);font-size:1.15rem;font-weight:700;color:var(--black);margin-bottom:12px;}
.why-desc{font-size:0.72rem;line-height:1.85;color:#666;}

/* TESTIMONIALS */
.testi-wrapper{display:grid;grid-template-columns:1fr 2fr;gap:0;min-height:480px;}
.testi-left{background:var(--red);padding:70px 55px;display:flex;flex-direction:column;justify-content:space-between;}
.testi-left-title{font-family:var(--serif);font-size:2.8rem;font-weight:800;line-height:1.2;}
.testi-left-sub{font-size:0.72rem;line-height:1.9;color:rgba(255,255,255,0.75);margin-top:18px;}
.testi-left-cta{margin-top:30px;}
.testi-right{background:var(--dark2);padding:70px 60px;position:relative;overflow:hidden;}
.testi-track{display:flex;gap:30px;transition:transform 0.6s var(--ease);}
.testi-card{min-width:calc(50% - 15px);background:var(--dark4);padding:40px;border-top:3px solid var(--red);flex-shrink:0;}
.testi-stars{display:flex;gap:3px;margin-bottom:18px;}
.testi-star{color:var(--red);font-size:0.9rem;}
.testi-q{font-family:var(--serif);font-size:2rem;color:var(--red);line-height:1;opacity:0.5;margin-bottom:8px;}
.testi-text{font-family:var(--serif);font-style:italic;font-size:1rem;line-height:1.85;color:rgba(0,0,0,0.75);margin-bottom:24px;}
.testi-author{display:flex;align-items:center;gap:14px;}
.testi-avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;border:2px solid var(--red);}
.testi-name{font-size:0.7rem;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;}
.testi-role{font-size:0.6rem;color:var(--red);letter-spacing:1.5px;margin-top:3px;}
.testi-nav{display:flex;gap:8px;margin-top:30px;}
.tn-btn{width:38px;height:38px;border:1px solid rgba(225,193,110,0.3);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s;color:var(--grey);font-size:0.9rem;}
.tn-btn:hover{border-color:var(--red);color:var(--red);}

/* CTA BAND */
.cta-band{background:linear-gradient(135deg,#123F3B 0%,var(--black) 55%,#1E5B54 100%);padding:100px 80px;text-align:center;position:relative;overflow:hidden;}
.cta-band::before{content:'LOOP';font-family:var(--serif);font-size:22rem;font-weight:800;color:rgba(0,0,0,0.06);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);white-space:nowrap;pointer-events:none;line-height:1;}
.cta-band-label{font-size:0.57rem;letter-spacing:6px;text-transform:uppercase;color:rgba(255,255,255,0.7);margin-bottom:16px;}
.cta-band-title{font-family:var(--serif);font-size:clamp(2.2rem,4.5vw,4rem);font-weight:800;line-height:1.2;margin-bottom:22px;}
.cta-band-sub{font-size:0.78rem;color:rgba(255,255,255,0.75);max-width:480px;margin:0 auto 40px;line-height:2;}
.cta-btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}

@media(max-width:1100px){
  .slide-content{padding:0 55px;}.about-strip{grid-template-columns:1fr;}.about-strip-img{height:450px;}.about-img-badge{right:30px;bottom:30px;}.about-strip-text{padding:60px 45px;}.services-grid{grid-template-columns:1fr 1fr;}.why-grid{grid-template-columns:1fr 1fr;}.testi-wrapper{grid-template-columns:1fr;}.testi-left{padding:50px;}.testi-right{padding:50px;}.slider-nav{left:55px;}.s-arrows{right:55px;}.cta-band{padding:80px 45px;}
  .pf-item:nth-child(1){grid-column:1/13;}.pf-item:nth-child(2){grid-column:1/13;}.pf-item:nth-child(3),.pf-item:nth-child(4),.pf-item:nth-child(5){grid-column:span 4;}
}
@media(max-width:768px){
  .slide-content{padding:0 22px;}.services-grid,.why-grid{grid-template-columns:1fr;}.port-feature-grid{grid-template-columns:1fr;grid-template-rows:auto;}.pf-item{height:280px !important;grid-column:1 !important;grid-row:auto !important;}.slider-nav{left:22px;bottom:30px;}.s-arrows{right:22px;bottom:25px;}.cta-band{padding:60px 22px;}.testi-card{min-width:calc(100% - 30px);}.testi-left,.testi-right{padding:40px 22px;}
}
.rev-card.on-dark{background:var(--dark2);}
.rev-card.on-black{background:var(--black);}
.rev-card.on-red{background:var(--red);}
.rev-card.on-charcoal{background:#F2EDE8;}
.rev-stars{display:flex;gap:4px;margin-bottom:20px;}
.rev-star{font-size:1rem;color:var(--red);}
.rev-card.on-red .rev-star,.rev-card.on-red .rev-quote{color:var(--white);}
.rev-quote{font-family:'Playfair Display',serif;font-size:3.5rem;color:var(--red);line-height:1;margin-bottom:6px;opacity:0.4;}
.rev-card.on-white .rev-quote{opacity:0.3;}
.rev-text{font-family:'Playfair Display',serif;font-style:italic;font-size:1.05rem;line-height:1.9;margin-bottom:30px;}
.rev-card.on-white .rev-text{color:rgba(0,0,0,0.75);}
.rev-card.on-dark .rev-text,.rev-card.on-black .rev-text,.rev-card.on-charcoal .rev-text{color:rgba(0,0,0,0.68);}
.rev-card.on-red .rev-text{color:rgba(255,255,255,0.9);}
.rev-author{display:flex;align-items:center;gap:16px;}
.rev-avatar{width:55px;height:55px;border-radius:50%;object-fit:cover;}
.rev-card.on-white .rev-avatar{border:2px solid var(--red);}
.rev-card:not(.on-white) .rev-avatar{border:2px solid rgba(255,255,255,0.2);}
.rev-card.on-red .rev-avatar{border:2px solid rgba(255,255,255,0.5);}
.rev-name{font-size:0.72rem;letter-spacing:2px;text-transform:uppercase;font-weight:700;}
.rev-card.on-white .rev-name{color:var(--black);}
.rev-project{font-size:0.6rem;letter-spacing:1.5px;margin-top:4px;}
.rev-card.on-white .rev-project{color:var(--red);}
.rev-card:not(.on-white) .rev-project{color:rgba(255,255,255,0.5);}
.rev-card.on-red .rev-project{color:rgba(255,255,255,0.7);}

.trust-section{background:var(--white);color:var(--black);padding:80px;}
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:50px;}
.trust-card{border:1px solid rgba(225,193,110,0.12);padding:40px;text-align:center;}
.trust-icon{font-size:2.5rem;margin-bottom:16px;}
.trust-title{font-size:0.72rem;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:var(--black);margin-bottom:12px;}
.trust-desc{font-size:0.73rem;line-height:1.85;color:#666;}

@media(max-width:900px){.testi-hero-strip{grid-template-columns:1fr 1fr;padding:40px;}.reviews-grid{grid-template-columns:1fr;}.trust-grid{grid-template-columns:1fr;}}
@media(max-width:600px){.testi-hero-strip{grid-template-columns:1fr 1fr;padding:30px 22px;}.rev-card{padding:35px 22px;}.trust-section{padding:55px 22px;}}

:root{--red:#E1C16E;--red-dark:#9C7A2D;--red-light:#F0D995;--red-glow:rgba(225,193,110,0.15);--black:#174B46;--dark:#FBF7EF;--dark2:#F4EEDF;--dark3:#ECE2CB;--dark4:#E1D4B4;--white:#FFFFFF;--off-white:#F8F3E6;--grey:#5E645E;--grey-light:#888888;--grey-subtle:#CCCCCC;--serif:'Playfair Display',serif;--sans:'Inter',sans-serif;--ease:cubic-bezier(0.25,0.46,0.45,0.94);}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{font-family:var(--sans);background:var(--white);color:var(--black);overflow-x:hidden;cursor:none;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
button{cursor:none;border:none;background:none;font-family:var(--sans);}
#cursor{width:8px;height:8px;background:var(--red);border-radius:50%;position:fixed;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:transform 0.1s;}
#cursor-ring{width:32px;height:32px;border:1.5px solid rgba(225,193,110,0.5);border-radius:50%;position:fixed;pointer-events:none;z-index:99998;transform:translate(-50%,-50%);transition:all 0.12s ease;}
::-webkit-scrollbar{width:3px;}::-webkit-scrollbar-track{background:#EEE;}::-webkit-scrollbar-thumb{background:var(--red);}
#loader{position:fixed;inset:0;background:var(--white);z-index:99997;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;transition:opacity 0.9s ease,visibility 0.9s ease;}
#loader.gone{opacity:0;visibility:hidden;pointer-events:none;}
.loader-bar{width:180px;height:1px;background:#DDD;position:relative;overflow:hidden;}
.loader-fill{position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--red);animation:fillBar 1.8s ease forwards;}
@keyframes fillBar{to{left:0;}}
@keyframes pulse{0%,100%{opacity:0.4;transform:scale(0.92);}50%{opacity:1;transform:scale(1);}}
#navbar{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:22px 70px;transition:all 0.4s var(--ease);}
#navbar.scrolled{background:rgba(255,255,255,0.97);backdrop-filter:blur(25px);padding:14px 70px;border-bottom:1px solid rgba(225,193,110,0.2);}
.nav-brand{display:flex;align-items:center;gap:18px;}
.nav-brand img{width:88px;height:88px;object-fit:contain;}
.brand-name{font-family:var(--serif);font-size:1.7rem;font-weight:700;letter-spacing:0.5px;display:block;line-height:1.1;}
.brand-tagline{font-size:0.68rem;letter-spacing:5px;text-transform:uppercase;color:var(--red);display:block;margin-top:4px;}
.nav-center{display:flex;gap:34px;align-items:center;}
.nav-link{font-size:0.63rem;letter-spacing:2px;text-transform:uppercase;color:rgba(0,0,0,0.55);font-weight:500;position:relative;padding-bottom:4px;transition:color 0.3s;}
.nav-link::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--red);transition:width 0.3s;}
.nav-link:hover,.nav-link.active{color:var(--black);}
.nav-link:hover::after,.nav-link.active::after{width:100%;}
.nav-cta{font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--red-light);background:var(--black);padding:11px 26px;transition:all 0.3s;}
.nav-cta:hover{background:#123F3B;color:var(--white);}
.hamburger{display:none;flex-direction:column;gap:5px;padding:5px;}
.hamburger span{width:24px;height:1.5px;background:var(--black);transition:all 0.3s;display:block;}
.hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
.mob-menu{position:fixed;inset:0;background:var(--white);z-index:999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transform:translateX(100%);transition:transform 0.5s var(--ease);}
.mob-menu.open{transform:translateX(0);}
.mob-close{position:absolute;top:25px;right:30px;font-size:1.5rem;color:var(--black);cursor:pointer !important;}
.mob-menu a{font-family:var(--serif);font-size:2rem;font-weight:400;color:var(--black);letter-spacing:2px;transition:color 0.3s;}
.mob-menu a:hover{color:var(--red);}
.mob-cta{font-family:var(--sans) !important;font-size:0.65rem !important;letter-spacing:3px !important;background:var(--red) !important;padding:14px 40px !important;color:var(--white) !important;margin-top:10px;}
.page-hero{height:72vh;min-height:520px;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding-bottom:80px;}
.page-hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.page-hero .overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.92) 0%,rgba(0,0,0,0.5) 50%,rgba(0,0,0,0.15) 100%);}
.page-hero .overlay-side{position:absolute;inset:0;background:linear-gradient(105deg,rgba(0,0,0,0.88) 30%,transparent 70%);}
.hero-content{position:relative;z-index:2;padding:0 80px;}
.hero-label{font-size:0.57rem;letter-spacing:6px;text-transform:uppercase;color:var(--red);margin-bottom:16px;display:flex;align-items:center;gap:12px;}
.hero-label::before{content:'';width:40px;height:1px;background:var(--red);}
.hero-title{font-family:var(--serif);font-size:clamp(2.8rem,7vw,6rem);font-weight:800;line-height:1.05;}
.hero-title em{color:var(--red);font-style:italic;}
.hero-bc{display:flex;gap:10px;align-items:center;margin-top:18px;font-size:0.6rem;letter-spacing:2px;text-transform:uppercase;color:rgba(0,0,0,0.35);}
.hero-bc span{color:var(--red);}
.sec{padding:110px 80px;}
.sec-alt{background:var(--dark2);}
.sec-white{background:var(--white);color:var(--black);}
.sec-red{background:var(--red);color:var(--white);}
.sec-dark{background:var(--dark);}
.sec-charcoal{background:#F5F0EB;}
.sec-label{font-size:0.57rem;letter-spacing:6px;text-transform:uppercase;color:var(--red);margin-bottom:14px;display:flex;align-items:center;gap:12px;}
.sec-label::before{content:'';width:35px;height:1px;background:var(--red);}
.sec-title{font-family:var(--serif);font-size:clamp(1.9rem,3.5vw,3.2rem);font-weight:800;line-height:1.2;margin-bottom:20px;}
.sec-title em{color:var(--red);font-style:italic;}
.sec-white .sec-title em{color:var(--red);}
.sec-white .sec-label{color:var(--red);}
.sec-text{font-size:0.78rem;line-height:2;color:rgba(0,0,0,0.58);max-width:520px;}
.sec-white .sec-text{color:rgba(0,0,0,0.58);}
.sec-center{text-align:center;}
.sec-center .sec-label{justify-content:center;}
.sec-center .sec-label::before{display:none;}
.sec-center .sec-text{margin:0 auto;}
.red-divider{width:55px;height:3px;background:var(--red);margin:18px 0;}
.red-divider.center{margin:18px auto;}
.btn-red{display:inline-flex;align-items:center;gap:12px;background:var(--red);color:var(--white);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;padding:15px 34px;transition:all 0.3s;}
.btn-red:hover{background:var(--red-light);gap:18px;}
.btn-outline-red{display:inline-flex;align-items:center;gap:12px;border:1.5px solid var(--red);color:var(--red);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;padding:14px 34px;transition:all 0.3s;}
.btn-outline-red:hover{background:var(--red);color:var(--white);gap:18px;}
.btn-white{display:inline-flex;align-items:center;gap:12px;background:var(--white);color:var(--black);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;padding:15px 34px;transition:all 0.3s;}
.btn-white:hover{background:var(--off-white);gap:18px;}
.btn-outline-white{display:inline-flex;align-items:center;gap:12px;border:1.5px solid rgba(225,193,110,0.5);color:var(--red);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:500;padding:14px 34px;transition:all 0.3s;}
.btn-outline-white:hover{border-color:var(--white);background:rgba(255,255,255,0.08);gap:18px;}
.btn-outline-black{display:inline-flex;align-items:center;gap:12px;border:1.5px solid var(--black);color:var(--black);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;padding:14px 34px;transition:all 0.3s;}
.btn-outline-black:hover{background:var(--white);color:var(--black);}
.reveal{opacity:0;transform:translateY(35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal.up{opacity:1;transform:translateY(0);}
.reveal-l{opacity:0;transform:translateX(-35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal-l.up{opacity:1;transform:translateX(0);}
.reveal-r{opacity:0;transform:translateX(35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal-r.up{opacity:1;transform:translateX(0);}
footer{background:#F2EDE8;border-top:1px solid rgba(225,193,110,0.12);}
.footer-top{display:grid;grid-template-columns:1.8fr 1fr 1fr 1.4fr;gap:60px;padding:80px;}
.footer-logo{width:72px;height:72px;object-fit:contain;margin-bottom:18px;}
.footer-name{font-family:var(--serif);font-size:1.45rem;font-weight:700;margin-bottom:4px;}
.footer-tagline{font-size:0.53rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:18px;}
.footer-desc{font-size:0.73rem;line-height:1.9;color:var(--grey);max-width:260px;}
.footer-socials{display:flex;gap:10px;margin-top:22px;}
.footer-socials a{width:36px;height:36px;border:1px solid rgba(225,193,110,0.2);display:flex;align-items:center;justify-content:center;color:var(--grey);transition:all 0.3s;}
.footer-socials a:hover{border-color:var(--red);color:var(--red);}
.footer-col h4{font-size:0.57rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:26px;font-weight:700;}
.footer-col ul{list-style:none;}
.footer-col ul li{margin-bottom:11px;}
.footer-col ul li a{font-size:0.73rem;color:var(--grey);transition:color 0.3s;}
.footer-col ul li a:hover{color:var(--black);}
.footer-contact-item{display:flex;gap:14px;margin-bottom:18px;align-items:flex-start;}
.fc-icon{width:34px;height:34px;border:1px solid rgba(225,193,110,0.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--red);}
.fc-icon svg{width:14px;height:14px;}
.footer-contact-item p,.footer-contact-item a{font-size:0.7rem;color:var(--grey);line-height:1.7;transition:color 0.3s;}
.footer-contact-item a:hover{color:var(--black);}
.footer-bottom{border-top:1px solid rgba(225,193,110,0.1);padding:26px 80px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.footer-bottom p{font-size:0.62rem;color:#777;letter-spacing:0.5px;}
.footer-bottom span{color:var(--red);}
@media(max-width:1100px){#navbar{padding:18px 40px;}#navbar.scrolled{padding:12px 40px;}.nav-center{gap:20px;}.sec{padding:80px 45px;}.hero-content{padding:0 45px;}.footer-top{grid-template-columns:1fr 1fr;gap:40px;padding:60px 45px;}.footer-bottom{padding:22px 45px;}}
@media(max-width:768px){#navbar{padding:15px 22px;}#navbar.scrolled{padding:12px 22px;}.nav-center,.nav-cta{display:none;}.hamburger{display:flex;}.nav-brand{gap:12px;}.nav-brand img{width:64px;height:64px;}.brand-name{font-size:1.12rem;}.brand-tagline{font-size:0.52rem;letter-spacing:3px;}.sec{padding:55px 22px;}.hero-content{padding:0 22px;}.page-hero{padding-bottom:45px;}.footer-top{grid-template-columns:1fr;padding:45px 22px;gap:32px;}.footer-bottom{padding:20px 22px;flex-direction:column;text-align:center;}#cursor,#cursor-ring{display:none;}body{cursor:auto;}.hamburger,.mob-close{cursor:pointer !important;}}


.filter-bar{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:50px;}
.f-btn{font-size:0.6rem;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;padding:10px 22px;border:1.5px solid rgba(225,193,110,0.2);background:transparent;color:var(--black);cursor:pointer;transition:all 0.3s;font-family:'Inter',sans-serif;}
.f-btn:hover,.f-btn.active{border-color:var(--red);color:var(--red);background:rgba(225,193,110,0.04);}

.port-masonry{columns:3;column-gap:16px;}
.pm-item{break-inside:avoid;margin-bottom:16px;position:relative;overflow:hidden;cursor:pointer;}
.pm-item img{width:100%;display:block;transition:transform 0.65s ease;}
.pm-item:hover img{transform:scale(1.06);}
.pm-overlay{position:absolute;inset:0;background:rgba(0,0,0,0);transition:background 0.4s;display:flex;flex-direction:column;justify-content:flex-end;padding:22px;}
.pm-item:hover .pm-overlay{background:rgba(0,0,0,0.65);}
.pm-info{transform:translateY(12px);opacity:0;transition:all 0.4s;}
.pm-item:hover .pm-info{transform:translateY(0);opacity:1;}
.pm-cat{font-size:0.52rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:4px;}
.pm-title{font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:700;}
.pm-expand{width:36px;height:36px;background:var(--red);display:flex;align-items:center;justify-content:center;margin-top:10px;font-size:1.1rem;color:var(--white);}

.lb{position:fixed;inset:0;background:rgba(0,0,0,0.95);z-index:9999;display:none;align-items:center;justify-content:center;}
.lb.open{display:flex;}
.lb img{max-width:88vw;max-height:88vh;object-fit:contain;}
.lb-close{position:absolute;top:28px;right:35px;font-size:2rem;color:rgba(255,255,255,0.5);cursor:pointer;transition:color 0.3s;line-height:1;}
.lb-close:hover{color:var(--red);}
.lb-info{position:absolute;bottom:35px;left:50%;transform:translateX(-50%);text-align:center;}
.lb-cat{font-size:0.52rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);}
.lb-title{font-family:'Playfair Display',serif;font-size:1.3rem;margin-top:5px;}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);display:flex;justify-content:space-between;left:25px;right:25px;pointer-events:none;}
.lb-arrow{width:48px;height:48px;border:1px solid rgba(255,255,255,0.15);display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:all;transition:all 0.3s;font-size:1.1rem;color:rgba(255,255,255,0.5);}
.lb-arrow:hover{border-color:var(--red);color:var(--red);}

.stats-band{background:var(--red);padding:60px 80px;}
.stats-band-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(0,0,0,0.1);}
.sb-item{background:var(--red);padding:35px;text-align:center;}
.sb-num{font-family:'Playfair Display',serif;font-size:3rem;font-weight:800;color:var(--white);line-height:1;}
.sb-label{font-size:0.57rem;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,0.75);margin-top:7px;}

@media(max-width:900px){.port-masonry{columns:2;}.stats-band{padding:50px 40px;}.stats-band-inner{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.port-masonry{columns:1;}.stats-band{padding:40px 22px;}.stats-band-inner{grid-template-columns:1fr 1fr;}}

:root{--red:#E1C16E;--red-dark:#9C7A2D;--red-light:#F0D995;--red-glow:rgba(225,193,110,0.15);--black:#174B46;--dark:#FBF7EF;--dark2:#F4EEDF;--dark3:#ECE2CB;--dark4:#E1D4B4;--white:#FFFFFF;--off-white:#F8F3E6;--grey:#5E645E;--grey-light:#888888;--grey-subtle:#CCCCCC;--serif:'Playfair Display',serif;--sans:'Inter',sans-serif;--ease:cubic-bezier(0.25,0.46,0.45,0.94);}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{font-family:var(--sans);background:var(--white);color:var(--black);overflow-x:hidden;cursor:none;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
button{cursor:none;border:none;background:none;font-family:var(--sans);}
#cursor{width:8px;height:8px;background:var(--red);border-radius:50%;position:fixed;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:transform 0.1s;}
#cursor-ring{width:32px;height:32px;border:1.5px solid rgba(225,193,110,0.5);border-radius:50%;position:fixed;pointer-events:none;z-index:99998;transform:translate(-50%,-50%);transition:all 0.12s ease;}
::-webkit-scrollbar{width:3px;}::-webkit-scrollbar-track{background:#EEE;}::-webkit-scrollbar-thumb{background:var(--red);}
#loader{position:fixed;inset:0;background:var(--white);z-index:99997;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;transition:opacity 0.9s ease,visibility 0.9s ease;}
#loader.gone{opacity:0;visibility:hidden;pointer-events:none;}
.loader-bar{width:180px;height:1px;background:#DDD;position:relative;overflow:hidden;}
.loader-fill{position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--red);animation:fillBar 1.8s ease forwards;}
@keyframes fillBar{to{left:0;}}
@keyframes pulse{0%,100%{opacity:0.4;transform:scale(0.92);}50%{opacity:1;transform:scale(1);}}
#navbar{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:22px 70px;transition:all 0.4s var(--ease);}
#navbar.scrolled{background:rgba(255,255,255,0.97);backdrop-filter:blur(25px);padding:14px 70px;border-bottom:1px solid rgba(225,193,110,0.2);}
.nav-brand{display:flex;align-items:center;gap:18px;}
.nav-brand img{width:88px;height:88px;object-fit:contain;}
.brand-name{font-family:var(--serif);font-size:1.7rem;font-weight:700;letter-spacing:0.5px;display:block;line-height:1.1;}
.brand-tagline{font-size:0.68rem;letter-spacing:5px;text-transform:uppercase;color:var(--red);display:block;margin-top:4px;}
.nav-center{display:flex;gap:34px;align-items:center;}
.nav-link{font-size:0.63rem;letter-spacing:2px;text-transform:uppercase;color:rgba(0,0,0,0.55);font-weight:500;position:relative;padding-bottom:4px;transition:color 0.3s;}
.nav-link::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--red);transition:width 0.3s;}
.nav-link:hover,.nav-link.active{color:var(--black);}
.nav-link:hover::after,.nav-link.active::after{width:100%;}
.nav-cta{font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--red-light);background:var(--black);padding:11px 26px;transition:all 0.3s;}
.nav-cta:hover{background:#123F3B;color:var(--white);}
.hamburger{display:none;flex-direction:column;gap:5px;padding:5px;}
.hamburger span{width:24px;height:1.5px;background:var(--black);transition:all 0.3s;display:block;}
.hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
.mob-menu{position:fixed;inset:0;background:var(--white);z-index:999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transform:translateX(100%);transition:transform 0.5s var(--ease);}
.mob-menu.open{transform:translateX(0);}
.mob-close{position:absolute;top:25px;right:30px;font-size:1.5rem;color:var(--black);cursor:pointer !important;}
.mob-menu a{font-family:var(--serif);font-size:2rem;font-weight:400;color:var(--black);letter-spacing:2px;transition:color 0.3s;}
.mob-menu a:hover{color:var(--red);}
.mob-cta{font-family:var(--sans) !important;font-size:0.65rem !important;letter-spacing:3px !important;background:var(--red) !important;padding:14px 40px !important;color:var(--white) !important;margin-top:10px;}
.page-hero{height:72vh;min-height:520px;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding-bottom:80px;}
.page-hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.page-hero .overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.92) 0%,rgba(0,0,0,0.5) 50%,rgba(0,0,0,0.15) 100%);}
.page-hero .overlay-side{position:absolute;inset:0;background:linear-gradient(105deg,rgba(0,0,0,0.88) 30%,transparent 70%);}
.hero-content{position:relative;z-index:2;padding:0 80px;}
.hero-label{font-size:0.57rem;letter-spacing:6px;text-transform:uppercase;color:var(--red);margin-bottom:16px;display:flex;align-items:center;gap:12px;}
.hero-label::before{content:'';width:40px;height:1px;background:var(--red);}
.hero-title{font-family:var(--serif);font-size:clamp(2.8rem,7vw,6rem);font-weight:800;line-height:1.05;}
.hero-title em{color:var(--red);font-style:italic;}
.hero-bc{display:flex;gap:10px;align-items:center;margin-top:18px;font-size:0.6rem;letter-spacing:2px;text-transform:uppercase;color:rgba(0,0,0,0.35);}
.hero-bc span{color:var(--red);}
.sec{padding:110px 80px;}
.sec-alt{background:var(--dark2);}
.sec-white{background:var(--white);color:var(--black);}
.sec-red{background:var(--red);color:var(--white);}
.sec-dark{background:var(--dark);}
.sec-charcoal{background:#F5F0EB;}
.sec-label{font-size:0.57rem;letter-spacing:6px;text-transform:uppercase;color:var(--red);margin-bottom:14px;display:flex;align-items:center;gap:12px;}
.sec-label::before{content:'';width:35px;height:1px;background:var(--red);}
.sec-title{font-family:var(--serif);font-size:clamp(1.9rem,3.5vw,3.2rem);font-weight:800;line-height:1.2;margin-bottom:20px;}
.sec-title em{color:var(--red);font-style:italic;}
.sec-white .sec-title em{color:var(--red);}
.sec-white .sec-label{color:var(--red);}
.sec-text{font-size:0.78rem;line-height:2;color:rgba(0,0,0,0.58);max-width:520px;}
.sec-white .sec-text{color:rgba(0,0,0,0.58);}
.sec-center{text-align:center;}
.sec-center .sec-label{justify-content:center;}
.sec-center .sec-label::before{display:none;}
.sec-center .sec-text{margin:0 auto;}
.red-divider{width:55px;height:3px;background:var(--red);margin:18px 0;}
.red-divider.center{margin:18px auto;}
.btn-red{display:inline-flex;align-items:center;gap:12px;background:var(--red);color:var(--white);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;padding:15px 34px;transition:all 0.3s;}
.btn-red:hover{background:var(--red-light);gap:18px;}
.btn-outline-red{display:inline-flex;align-items:center;gap:12px;border:1.5px solid var(--red);color:var(--red);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;padding:14px 34px;transition:all 0.3s;}
.btn-outline-red:hover{background:var(--red);color:var(--white);gap:18px;}
.btn-white{display:inline-flex;align-items:center;gap:12px;background:var(--white);color:var(--black);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;padding:15px 34px;transition:all 0.3s;}
.btn-white:hover{background:var(--off-white);gap:18px;}
.btn-outline-white{display:inline-flex;align-items:center;gap:12px;border:1.5px solid rgba(225,193,110,0.5);color:var(--red);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:500;padding:14px 34px;transition:all 0.3s;}
.btn-outline-white:hover{border-color:var(--white);background:rgba(255,255,255,0.08);gap:18px;}
.btn-outline-black{display:inline-flex;align-items:center;gap:12px;border:1.5px solid var(--black);color:var(--black);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;padding:14px 34px;transition:all 0.3s;}
.btn-outline-black:hover{background:var(--white);color:var(--black);}
.reveal{opacity:0;transform:translateY(35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal.up{opacity:1;transform:translateY(0);}
.reveal-l{opacity:0;transform:translateX(-35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal-l.up{opacity:1;transform:translateX(0);}
.reveal-r{opacity:0;transform:translateX(35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal-r.up{opacity:1;transform:translateX(0);}
footer{background:#F2EDE8;border-top:1px solid rgba(225,193,110,0.12);}
.footer-top{display:grid;grid-template-columns:1.8fr 1fr 1fr 1.4fr;gap:60px;padding:80px;}
.footer-logo{width:72px;height:72px;object-fit:contain;margin-bottom:18px;}
.footer-name{font-family:var(--serif);font-size:1.45rem;font-weight:700;margin-bottom:4px;}
.footer-tagline{font-size:0.53rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:18px;}
.footer-desc{font-size:0.73rem;line-height:1.9;color:var(--grey);max-width:260px;}
.footer-socials{display:flex;gap:10px;margin-top:22px;}
.footer-socials a{width:36px;height:36px;border:1px solid rgba(225,193,110,0.2);display:flex;align-items:center;justify-content:center;color:var(--grey);transition:all 0.3s;}
.footer-socials a:hover{border-color:var(--red);color:var(--red);}
.footer-col h4{font-size:0.57rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:26px;font-weight:700;}
.footer-col ul{list-style:none;}
.footer-col ul li{margin-bottom:11px;}
.footer-col ul li a{font-size:0.73rem;color:var(--grey);transition:color 0.3s;}
.footer-col ul li a:hover{color:var(--black);}
.footer-contact-item{display:flex;gap:14px;margin-bottom:18px;align-items:flex-start;}
.fc-icon{width:34px;height:34px;border:1px solid rgba(225,193,110,0.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--red);}
.fc-icon svg{width:14px;height:14px;}
.footer-contact-item p,.footer-contact-item a{font-size:0.7rem;color:var(--grey);line-height:1.7;transition:color 0.3s;}
.footer-contact-item a:hover{color:var(--black);}
.footer-bottom{border-top:1px solid rgba(225,193,110,0.1);padding:26px 80px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.footer-bottom p{font-size:0.62rem;color:#777;letter-spacing:0.5px;}
.footer-bottom span{color:var(--red);}
@media(max-width:1100px){#navbar{padding:18px 40px;}#navbar.scrolled{padding:12px 40px;}.nav-center{gap:20px;}.sec{padding:80px 45px;}.hero-content{padding:0 45px;}.footer-top{grid-template-columns:1fr 1fr;gap:40px;padding:60px 45px;}.footer-bottom{padding:22px 45px;}}
@media(max-width:768px){#navbar{padding:15px 22px;}#navbar.scrolled{padding:12px 22px;}.nav-center,.nav-cta{display:none;}.hamburger{display:flex;}.nav-brand{gap:12px;}.nav-brand img{width:64px;height:64px;}.brand-name{font-size:1.12rem;}.brand-tagline{font-size:0.52rem;letter-spacing:3px;}.sec{padding:55px 22px;}.hero-content{padding:0 22px;}.page-hero{padding-bottom:45px;}.footer-top{grid-template-columns:1fr;padding:45px 22px;gap:32px;}.footer-bottom{padding:20px 22px;flex-direction:column;text-align:center;}#cursor,#cursor-ring{display:none;}body{cursor:auto;}.hamburger,.mob-close{cursor:pointer !important;}}


.style-block{display:grid;grid-template-columns:1fr 1fr;min-height:600px;}
.style-block.flip{direction:rtl;}
.style-block.flip>*{direction:ltr;}
.style-img{position:relative;overflow:hidden;}
.style-img img{width:100%;height:100%;object-fit:cover;transition:transform 8s ease;display:block;}
.style-img:hover img{transform:scale(1.04);}
.style-badge{position:absolute;top:35px;left:35px;background:var(--red);padding:10px 20px;font-size:0.57rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;color:var(--white);}
.style-block.flip .style-badge{left:auto;right:35px;}
.style-text{padding:80px 70px;display:flex;flex-direction:column;justify-content:center;}
.style-text.on-white{background:var(--white);color:var(--black);}
.style-text.on-dark{background:var(--dark2);}
.style-text.on-black{background:var(--black);}
.style-text.on-red{background:var(--red);}
.style-features{list-style:none;margin-top:24px;}
.style-features li{font-size:0.74rem;padding:10px 0;border-bottom:1px solid rgba(128,128,128,0.12);display:flex;align-items:center;gap:12px;}
.style-features li::before{content:'';width:20px;height:1.5px;background:var(--red);flex-shrink:0;}
.on-white .style-features li{color:#555;border-bottom-color:rgba(0,0,0,0.08);}
.on-dark .style-features li,.on-black .style-features li{color:var(--grey);}
.on-red .style-features li{color:rgba(255,255,255,0.75);border-bottom-color:rgba(255,255,255,0.15);}
.style-num{font-family:'Playfair Display',serif;font-size:7rem;font-weight:800;line-height:1;opacity:0.06;position:absolute;top:20px;right:20px;}
.on-red .style-num{opacity:0.12;color:var(--black);}

.process-section{background:var(--white);color:var(--black);}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(225,193,110,0.1);margin-top:55px;}
.process-card{background:var(--white);padding:50px 35px;position:relative;overflow:hidden;}
.process-card::before{content:'';position:absolute;top:0;left:0;width:3px;height:0;background:var(--red);transition:height 0.5s;}
.process-card:hover::before{height:100%;}
.process-step{font-family:'Playfair Display',serif;font-size:4rem;font-weight:800;color:rgba(225,193,110,0.1);line-height:1;margin-bottom:18px;}
.process-title{font-size:0.75rem;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:var(--black);margin-bottom:14px;}
.process-desc{font-size:0.73rem;line-height:1.9;color:#666;}

@media(max-width:1100px){.style-block,.style-block.flip{grid-template-columns:1fr;direction:ltr;}.style-img{height:450px;}.style-text{padding:60px 45px;}.style-block.flip .style-badge{left:35px;right:auto;}.process-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:768px){.style-img{height:340px;}.style-text{padding:45px 22px;}.process-grid{grid-template-columns:1fr 1fr;}}

:root{--red:#E1C16E;--red-dark:#9C7A2D;--red-light:#F0D995;--red-glow:rgba(225,193,110,0.15);--black:#174B46;--dark:#FBF7EF;--dark2:#F4EEDF;--dark3:#ECE2CB;--dark4:#E1D4B4;--white:#FFFFFF;--off-white:#F8F3E6;--grey:#5E645E;--grey-light:#888888;--grey-subtle:#CCCCCC;--serif:'Playfair Display',serif;--sans:'Inter',sans-serif;--ease:cubic-bezier(0.25,0.46,0.45,0.94);}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{font-family:var(--sans);background:var(--white);color:var(--black);overflow-x:hidden;cursor:none;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
button{cursor:none;border:none;background:none;font-family:var(--sans);}
#cursor{width:8px;height:8px;background:var(--red);border-radius:50%;position:fixed;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:transform 0.1s;}
#cursor-ring{width:32px;height:32px;border:1.5px solid rgba(225,193,110,0.5);border-radius:50%;position:fixed;pointer-events:none;z-index:99998;transform:translate(-50%,-50%);transition:all 0.12s ease;}
::-webkit-scrollbar{width:3px;}::-webkit-scrollbar-track{background:#EEE;}::-webkit-scrollbar-thumb{background:var(--red);}
#loader{position:fixed;inset:0;background:var(--white);z-index:99997;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;transition:opacity 0.9s ease,visibility 0.9s ease;}
#loader.gone{opacity:0;visibility:hidden;pointer-events:none;}
.loader-bar{width:180px;height:1px;background:#DDD;position:relative;overflow:hidden;}
.loader-fill{position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--red);animation:fillBar 1.8s ease forwards;}
@keyframes fillBar{to{left:0;}}
@keyframes pulse{0%,100%{opacity:0.4;transform:scale(0.92);}50%{opacity:1;transform:scale(1);}}
#navbar{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:22px 70px;transition:all 0.4s var(--ease);}
#navbar.scrolled{background:rgba(255,255,255,0.97);backdrop-filter:blur(25px);padding:14px 70px;border-bottom:1px solid rgba(225,193,110,0.2);}
.nav-brand{display:flex;align-items:center;gap:18px;}
.nav-brand img{width:88px;height:88px;object-fit:contain;}
.brand-name{font-family:var(--serif);font-size:1.7rem;font-weight:700;letter-spacing:0.5px;display:block;line-height:1.1;}
.brand-tagline{font-size:0.68rem;letter-spacing:5px;text-transform:uppercase;color:var(--red);display:block;margin-top:4px;}
.nav-center{display:flex;gap:34px;align-items:center;}
.nav-link{font-size:0.63rem;letter-spacing:2px;text-transform:uppercase;color:rgba(0,0,0,0.55);font-weight:500;position:relative;padding-bottom:4px;transition:color 0.3s;}
.nav-link::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--red);transition:width 0.3s;}
.nav-link:hover,.nav-link.active{color:var(--black);}
.nav-link:hover::after,.nav-link.active::after{width:100%;}
.nav-cta{font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--red-light);background:var(--black);padding:11px 26px;transition:all 0.3s;}
.nav-cta:hover{background:#123F3B;color:var(--white);}
.hamburger{display:none;flex-direction:column;gap:5px;padding:5px;}
.hamburger span{width:24px;height:1.5px;background:var(--black);transition:all 0.3s;display:block;}
.hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
.mob-menu{position:fixed;inset:0;background:var(--white);z-index:999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transform:translateX(100%);transition:transform 0.5s var(--ease);}
.mob-menu.open{transform:translateX(0);}
.mob-close{position:absolute;top:25px;right:30px;font-size:1.5rem;color:var(--black);cursor:pointer !important;}
.mob-menu a{font-family:var(--serif);font-size:2rem;font-weight:400;color:var(--black);letter-spacing:2px;transition:color 0.3s;}
.mob-menu a:hover{color:var(--red);}
.mob-cta{font-family:var(--sans) !important;font-size:0.65rem !important;letter-spacing:3px !important;background:var(--red) !important;padding:14px 40px !important;color:var(--white) !important;margin-top:10px;}
.page-hero{height:72vh;min-height:520px;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding-bottom:80px;}
.page-hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.page-hero .overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.92) 0%,rgba(0,0,0,0.5) 50%,rgba(0,0,0,0.15) 100%);}
.page-hero .overlay-side{position:absolute;inset:0;background:linear-gradient(105deg,rgba(0,0,0,0.88) 30%,transparent 70%);}
.hero-content{position:relative;z-index:2;padding:0 80px;}
.hero-label{font-size:0.57rem;letter-spacing:6px;text-transform:uppercase;color:var(--red);margin-bottom:16px;display:flex;align-items:center;gap:12px;}
.hero-label::before{content:'';width:40px;height:1px;background:var(--red);}
.hero-title{font-family:var(--serif);font-size:clamp(2.8rem,7vw,6rem);font-weight:800;line-height:1.05;}
.hero-title em{color:var(--red);font-style:italic;}
.hero-bc{display:flex;gap:10px;align-items:center;margin-top:18px;font-size:0.6rem;letter-spacing:2px;text-transform:uppercase;color:rgba(0,0,0,0.35);}
.hero-bc span{color:var(--red);}
.sec{padding:110px 80px;}
.sec-alt{background:var(--dark2);}
.sec-white{background:var(--white);color:var(--black);}
.sec-red{background:var(--red);color:var(--white);}
.sec-dark{background:var(--dark);}
.sec-charcoal{background:#F5F0EB;}
.sec-label{font-size:0.57rem;letter-spacing:6px;text-transform:uppercase;color:var(--red);margin-bottom:14px;display:flex;align-items:center;gap:12px;}
.sec-label::before{content:'';width:35px;height:1px;background:var(--red);}
.sec-title{font-family:var(--serif);font-size:clamp(1.9rem,3.5vw,3.2rem);font-weight:800;line-height:1.2;margin-bottom:20px;}
.sec-title em{color:var(--red);font-style:italic;}
.sec-white .sec-title em{color:var(--red);}
.sec-white .sec-label{color:var(--red);}
.sec-text{font-size:0.78rem;line-height:2;color:rgba(0,0,0,0.58);max-width:520px;}
.sec-white .sec-text{color:rgba(0,0,0,0.58);}
.sec-center{text-align:center;}
.sec-center .sec-label{justify-content:center;}
.sec-center .sec-label::before{display:none;}
.sec-center .sec-text{margin:0 auto;}
.red-divider{width:55px;height:3px;background:var(--red);margin:18px 0;}
.red-divider.center{margin:18px auto;}
.btn-red{display:inline-flex;align-items:center;gap:12px;background:var(--red);color:var(--white);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;padding:15px 34px;transition:all 0.3s;}
.btn-red:hover{background:var(--red-light);gap:18px;}
.btn-outline-red{display:inline-flex;align-items:center;gap:12px;border:1.5px solid var(--red);color:var(--red);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;padding:14px 34px;transition:all 0.3s;}
.btn-outline-red:hover{background:var(--red);color:var(--white);gap:18px;}
.btn-white{display:inline-flex;align-items:center;gap:12px;background:var(--white);color:var(--black);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;padding:15px 34px;transition:all 0.3s;}
.btn-white:hover{background:var(--off-white);gap:18px;}
.btn-outline-white{display:inline-flex;align-items:center;gap:12px;border:1.5px solid rgba(225,193,110,0.5);color:var(--red);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:500;padding:14px 34px;transition:all 0.3s;}
.btn-outline-white:hover{border-color:var(--white);background:rgba(255,255,255,0.08);gap:18px;}
.btn-outline-black{display:inline-flex;align-items:center;gap:12px;border:1.5px solid var(--black);color:var(--black);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;padding:14px 34px;transition:all 0.3s;}
.btn-outline-black:hover{background:var(--white);color:var(--black);}
.reveal{opacity:0;transform:translateY(35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal.up{opacity:1;transform:translateY(0);}
.reveal-l{opacity:0;transform:translateX(-35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal-l.up{opacity:1;transform:translateX(0);}
.reveal-r{opacity:0;transform:translateX(35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal-r.up{opacity:1;transform:translateX(0);}
footer{background:#F2EDE8;border-top:1px solid rgba(225,193,110,0.12);}
.footer-top{display:grid;grid-template-columns:1.8fr 1fr 1fr 1.4fr;gap:60px;padding:80px;}
.footer-logo{width:72px;height:72px;object-fit:contain;margin-bottom:18px;}
.footer-name{font-family:var(--serif);font-size:1.45rem;font-weight:700;margin-bottom:4px;}
.footer-tagline{font-size:0.53rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:18px;}
.footer-desc{font-size:0.73rem;line-height:1.9;color:var(--grey);max-width:260px;}
.footer-socials{display:flex;gap:10px;margin-top:22px;}
.footer-socials a{width:36px;height:36px;border:1px solid rgba(225,193,110,0.2);display:flex;align-items:center;justify-content:center;color:var(--grey);transition:all 0.3s;}
.footer-socials a:hover{border-color:var(--red);color:var(--red);}
.footer-col h4{font-size:0.57rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:26px;font-weight:700;}
.footer-col ul{list-style:none;}
.footer-col ul li{margin-bottom:11px;}
.footer-col ul li a{font-size:0.73rem;color:var(--grey);transition:color 0.3s;}
.footer-col ul li a:hover{color:var(--black);}
.footer-contact-item{display:flex;gap:14px;margin-bottom:18px;align-items:flex-start;}
.fc-icon{width:34px;height:34px;border:1px solid rgba(225,193,110,0.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--red);}
.fc-icon svg{width:14px;height:14px;}
.footer-contact-item p,.footer-contact-item a{font-size:0.7rem;color:var(--grey);line-height:1.7;transition:color 0.3s;}
.footer-contact-item a:hover{color:var(--black);}
.footer-bottom{border-top:1px solid rgba(225,193,110,0.1);padding:26px 80px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.footer-bottom p{font-size:0.62rem;color:#777;letter-spacing:0.5px;}
.footer-bottom span{color:var(--red);}
@media(max-width:1100px){#navbar{padding:18px 40px;}#navbar.scrolled{padding:12px 40px;}.nav-center{gap:20px;}.sec{padding:80px 45px;}.hero-content{padding:0 45px;}.footer-top{grid-template-columns:1fr 1fr;gap:40px;padding:60px 45px;}.footer-bottom{padding:22px 45px;}}
@media(max-width:768px){#navbar{padding:15px 22px;}#navbar.scrolled{padding:12px 22px;}.nav-center,.nav-cta{display:none;}.hamburger{display:flex;}.nav-brand{gap:12px;}.nav-brand img{width:64px;height:64px;}.brand-name{font-size:1.12rem;}.brand-tagline{font-size:0.52rem;letter-spacing:3px;}.sec{padding:55px 22px;}.hero-content{padding:0 22px;}.page-hero{padding-bottom:45px;}.footer-top{grid-template-columns:1fr;padding:45px 22px;gap:32px;}.footer-bottom{padding:20px 22px;flex-direction:column;text-align:center;}#cursor,#cursor-ring{display:none;}body{cursor:auto;}.hamburger,.mob-close{cursor:pointer !important;}}


.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;}
.story-img-side{position:relative;overflow:hidden;}
.story-img-side img{width:100%;height:100%;object-fit:cover;transition:transform 8s ease;}
.story-img-side:hover img{transform:scale(1.04);}
.story-img-side .red-band{position:absolute;bottom:0;left:0;right:0;background:var(--red);padding:28px 40px;display:flex;align-items:center;justify-content:space-between;}
.story-text-side{background:var(--dark2);padding:90px 70px;display:flex;flex-direction:column;justify-content:center;}

.vm-section{background:var(--white);color:var(--black);}
.vm-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(225,193,110,0.12);margin-top:55px;}
.vm-card{background:var(--white);padding:65px 55px;}
.vm-card.dark{background:var(--white);color:var(--black);}
.vm-num{font-family:'Playfair Display',serif;font-size:5rem;font-weight:800;color:rgba(225,193,110,0.1);line-height:1;margin-bottom:10px;}
.vm-title{font-family:'Playfair Display',serif;font-size:2rem;font-weight:800;color:var(--red);margin-bottom:20px;}
.vm-text{font-size:0.78rem;line-height:2;color:#555;}
.vm-card.dark .vm-text{color:rgba(0,0,0,0.58);}
.vm-points{list-style:none;margin-top:22px;}
.vm-points li{font-size:0.74rem;color:#555;padding:9px 0;border-bottom:1px solid rgba(0,0,0,0.06);display:flex;align-items:center;gap:12px;}
.vm-points li::before{content:'';width:18px;height:2px;background:var(--red);flex-shrink:0;}
.vm-card.dark .vm-points li{color:rgba(0,0,0,0.58);border-bottom-color:rgba(255,255,255,0.06);}

.team-section-bg{background:var(--dark);}
.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:55px;}
.team-card{position:relative;overflow:hidden;cursor:pointer;}
.team-card img{width:100%;height:420px;object-fit:cover;transition:transform 0.7s ease;filter:grayscale(20%);}
.team-card:hover img{transform:scale(1.06);filter:grayscale(0%);}
.team-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.9) 0%,transparent 55%);display:flex;flex-direction:column;justify-content:flex-end;padding:28px;}
.team-name{font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:700;}
.team-role{font-size:0.58rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--red);margin-top:5px;}
.team-socials{display:flex;gap:8px;margin-top:12px;transform:translateY(15px);opacity:0;transition:all 0.4s;}
.team-card:hover .team-socials{transform:translateY(0);opacity:1;}
.team-social{width:28px;height:28px;border:1px solid rgba(255,255,255,0.2);display:flex;align-items:center;justify-content:center;font-size:0.65rem;color:rgba(0,0,0,0.6);transition:all 0.3s;}
.team-social:hover{border-color:var(--red);color:var(--red);}

.milestones{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(225,193,110,0.1);}
.ms-card{background:var(--dark3);padding:50px 35px;text-align:center;position:relative;}
.ms-year{font-family:'Playfair Display',serif;font-size:2.5rem;font-weight:800;color:var(--red);line-height:1;margin-bottom:10px;}
.ms-title{font-size:0.78rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;color:var(--black);}
.ms-desc{font-size:0.7rem;color:var(--grey);line-height:1.8;}

.cta-about{background:linear-gradient(135deg,var(--red-dark),var(--red));padding:100px 80px;text-align:center;position:relative;overflow:hidden;}
.cta-about::before{content:'LOOP';font-family:'Playfair Display',serif;font-size:20rem;font-weight:800;color:rgba(0,0,0,0.07);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;line-height:1;}

@media(max-width:1100px){.story-grid{grid-template-columns:1fr;}.story-text-side{padding:60px 45px;}.vm-grid{grid-template-columns:1fr;}.team-grid{grid-template-columns:1fr 1fr;}.milestones{grid-template-columns:1fr 1fr;}.cta-about{padding:80px 45px;}}
@media(max-width:768px){.team-grid{grid-template-columns:1fr 1fr;}.milestones{grid-template-columns:1fr 1fr;}.cta-about{padding:60px 22px;}.team-card img{height:320px;}.vm-card{padding:40px 25px;}}


:root{--red:#E1C16E;--red-dark:#9C7A2D;--red-light:#F0D995;--red-glow:rgba(225,193,110,0.15);--black:#174B46;--dark:#FBF7EF;--dark2:#F4EEDF;--dark3:#ECE2CB;--dark4:#E1D4B4;--white:#FFFFFF;--off-white:#F8F3E6;--grey:#5E645E;--grey-light:#888888;--grey-subtle:#CCCCCC;--serif:'Playfair Display',serif;--sans:'Inter',sans-serif;--ease:cubic-bezier(0.25,0.46,0.45,0.94);}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{font-family:var(--sans);background:var(--white);color:var(--black);overflow-x:hidden;cursor:none;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
button{cursor:none;border:none;background:none;font-family:var(--sans);}
#cursor{width:8px;height:8px;background:var(--red);border-radius:50%;position:fixed;pointer-events:none;z-index:99999;transform:translate(-50%,-50%);transition:transform 0.1s;}
#cursor-ring{width:32px;height:32px;border:1.5px solid rgba(225,193,110,0.5);border-radius:50%;position:fixed;pointer-events:none;z-index:99998;transform:translate(-50%,-50%);transition:all 0.12s ease;}
::-webkit-scrollbar{width:3px;}::-webkit-scrollbar-track{background:#EEE;}::-webkit-scrollbar-thumb{background:var(--red);}
#loader{position:fixed;inset:0;background:var(--white);z-index:99997;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:24px;transition:opacity 0.9s ease,visibility 0.9s ease;}
#loader.gone{opacity:0;visibility:hidden;pointer-events:none;}
.loader-bar{width:180px;height:1px;background:#DDD;position:relative;overflow:hidden;}
.loader-fill{position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--red);animation:fillBar 1.8s ease forwards;}
@keyframes fillBar{to{left:0;}}
@keyframes pulse{0%,100%{opacity:0.4;transform:scale(0.92);}50%{opacity:1;transform:scale(1);}}
#navbar{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;padding:22px 70px;transition:all 0.4s var(--ease);}
#navbar.scrolled{background:rgba(255,255,255,0.97);backdrop-filter:blur(25px);padding:14px 70px;border-bottom:1px solid rgba(225,193,110,0.2);}
.nav-brand{display:flex;align-items:center;gap:18px;}
.nav-brand img{width:88px;height:88px;object-fit:contain;}
.brand-name{font-family:var(--serif);font-size:1.7rem;font-weight:700;letter-spacing:0.5px;display:block;line-height:1.1;}
.brand-tagline{font-size:0.68rem;letter-spacing:5px;text-transform:uppercase;color:var(--red);display:block;margin-top:4px;}
.nav-center{display:flex;gap:34px;align-items:center;}
.nav-link{font-size:0.63rem;letter-spacing:2px;text-transform:uppercase;color:rgba(0,0,0,0.55);font-weight:500;position:relative;padding-bottom:4px;transition:color 0.3s;}
.nav-link::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--red);transition:width 0.3s;}
.nav-link:hover,.nav-link.active{color:var(--black);}
.nav-link:hover::after,.nav-link.active::after{width:100%;}
.nav-cta{font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--red-light);background:var(--black);padding:11px 26px;transition:all 0.3s;}
.nav-cta:hover{background:#123F3B;color:var(--white);}
.hamburger{display:none;flex-direction:column;gap:5px;padding:5px;}
.hamburger span{width:24px;height:1.5px;background:var(--black);transition:all 0.3s;display:block;}
.hamburger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
.mob-menu{position:fixed;inset:0;background:var(--white);z-index:999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transform:translateX(100%);transition:transform 0.5s var(--ease);}
.mob-menu.open{transform:translateX(0);}
.mob-close{position:absolute;top:25px;right:30px;font-size:1.5rem;color:var(--black);cursor:pointer !important;}
.mob-menu a{font-family:var(--serif);font-size:1rem;font-weight:400;color:var(--black);letter-spacing:2px;transition:color 0.3s;}
.mob-menu a:hover{color:var(--red);}
.mob-cta{font-family:var(--sans) !important;font-size:0.65rem !important;letter-spacing:3px !important;background:var(--red) !important;padding:14px 40px !important;color:var(--white) !important;margin-top:10px;}
.page-hero{height:72vh;min-height:520px;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding-bottom:80px;}
.page-hero img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.page-hero .overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.92) 0%,rgba(0,0,0,0.5) 50%,rgba(0,0,0,0.15) 100%);}
.page-hero .overlay-side{position:absolute;inset:0;background:linear-gradient(105deg,rgba(0,0,0,0.88) 30%,transparent 70%);}
.hero-content{position:relative;z-index:2;padding:0 80px;}
.hero-label{font-size:0.57rem;letter-spacing:6px;text-transform:uppercase;color:var(--red);margin-bottom:16px;display:flex;align-items:center;gap:12px;}
.hero-label::before{content:'';width:40px;height:1px;background:var(--red);}
.hero-title{font-family:var(--serif);font-size:clamp(2.8rem,7vw,6rem);font-weight:800;line-height:1.05;}
.hero-title em{color:var(--red);font-style:italic;}
.hero-bc{display:flex;gap:10px;align-items:center;margin-top:18px;font-size:0.6rem;letter-spacing:2px;text-transform:uppercase;color:rgba(0,0,0,0.35);}
.hero-bc span{color:var(--red);}
.sec{padding:110px 80px;}
.sec-alt{background:var(--dark2);}
.sec-white{background:var(--white);color:var(--black);}
.sec-red{background:var(--red);color:var(--white);}
.sec-dark{background:var(--dark);}
.sec-charcoal{background:#F5F0EB;}
.sec-label{font-size:0.57rem;letter-spacing:6px;text-transform:uppercase;color:var(--red);margin-bottom:14px;display:flex;align-items:center;gap:12px;}
.sec-label::before{content:'';width:35px;height:1px;background:var(--red);}
.sec-title{font-family:var(--serif);font-size:clamp(1.9rem,3.5vw,3.2rem);font-weight:800;line-height:1.2;margin-bottom:20px;}
.sec-title em{color:var(--red);font-style:italic;}
.sec-white .sec-title em{color:var(--red);}
.sec-white .sec-label{color:var(--red);}
.sec-text{font-size:0.78rem;line-height:2;color:rgba(0,0,0,0.58);max-width:520px;}
.sec-white .sec-text{color:rgba(0,0,0,0.58);}
.sec-center{text-align:center;}
.sec-center .sec-label{justify-content:center;}
.sec-center .sec-label::before{display:none;}
.sec-center .sec-text{margin:0 auto;}
.red-divider{width:55px;height:3px;background:var(--red);margin:18px 0;}
.red-divider.center{margin:18px auto;}
.btn-red{display:inline-flex;align-items:center;gap:12px;background:var(--red);color:var(--white);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;padding:15px 34px;transition:all 0.3s;}
.btn-red:hover{background:var(--red-light);gap:18px;}
.btn-outline-red{display:inline-flex;align-items:center;gap:12px;border:1.5px solid var(--red);color:var(--red);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;padding:14px 34px;transition:all 0.3s;}
.btn-outline-red:hover{background:var(--red);color:var(--white);gap:18px;}
.btn-white{display:inline-flex;align-items:center;gap:12px;background:var(--white);color:var(--black);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;padding:15px 34px;transition:all 0.3s;}
.btn-white:hover{background:var(--off-white);gap:18px;}
.btn-outline-white{display:inline-flex;align-items:center;gap:12px;border:1.5px solid rgba(225,193,110,0.5);color:var(--red);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:500;padding:14px 34px;transition:all 0.3s;}
.btn-outline-white:hover{border-color:var(--white);background:rgba(255,255,255,0.08);gap:18px;}
.btn-outline-black{display:inline-flex;align-items:center;gap:12px;border:1.5px solid var(--black);color:var(--black);font-size:0.6rem;letter-spacing:3px;text-transform:uppercase;font-weight:600;padding:14px 34px;transition:all 0.3s;}
.btn-outline-black:hover{background:var(--white);color:var(--black);}
.reveal{opacity:0;transform:translateY(35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal.up{opacity:1;transform:translateY(0);}
.reveal-l{opacity:0;transform:translateX(-35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal-l.up{opacity:1;transform:translateX(0);}
.reveal-r{opacity:0;transform:translateX(35px);transition:opacity 0.75s ease,transform 0.75s ease;}
.reveal-r.up{opacity:1;transform:translateX(0);}
footer{background:#F2EDE8;border-top:1px solid rgba(225,193,110,0.12);}
.footer-top{display:grid;grid-template-columns:1.8fr 1fr 1fr 1.4fr;gap:60px;padding:80px;}
.footer-logo{width:72px;height:72px;object-fit:contain;margin-bottom:18px;}
.footer-name{font-family:var(--serif);font-size:1.45rem;font-weight:700;margin-bottom:4px;}
.footer-tagline{font-size:0.53rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:18px;}
.footer-desc{font-size:0.73rem;line-height:1.9;color:var(--grey);max-width:260px;}
.footer-socials{display:flex;gap:10px;margin-top:22px;}
.footer-socials a{width:36px;height:36px;border:1px solid rgba(225,193,110,0.2);display:flex;align-items:center;justify-content:center;color:var(--grey);transition:all 0.3s;}
.footer-socials a:hover{border-color:var(--red);color:var(--red);}
.footer-col h4{font-size:0.57rem;letter-spacing:4px;text-transform:uppercase;color:var(--red);margin-bottom:26px;font-weight:700;}
.footer-col ul{list-style:none;}
.footer-col ul li{margin-bottom:11px;}
.footer-col ul li a{font-size:0.73rem;color:var(--grey);transition:color 0.3s;}
.footer-col ul li a:hover{color:var(--black);}
.footer-contact-item{display:flex;gap:14px;margin-bottom:18px;align-items:flex-start;}
.fc-icon{width:34px;height:34px;border:1px solid rgba(225,193,110,0.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--red);}
.fc-icon svg{width:14px;height:14px;}
.footer-contact-item p,.footer-contact-item a{font-size:0.7rem;color:var(--grey);line-height:1.7;transition:color 0.3s;}
.footer-contact-item a:hover{color:var(--black);}
.footer-bottom{border-top:1px solid rgba(225,193,110,0.1);padding:26px 80px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.footer-bottom p{font-size:0.62rem;color:#777;letter-spacing:0.5px;}
.footer-bottom span{color:var(--red);}
@media(max-width:1100px){#navbar{padding:18px 40px;}#navbar.scrolled{padding:12px 40px;}.nav-center{gap:20px;}.sec{padding:80px 45px;}.hero-content{padding:0 45px;}.footer-top{grid-template-columns:1fr 1fr;gap:40px;padding:60px 45px;}.footer-bottom{padding:22px 45px;}}
@media(max-width:768px){#navbar{padding:15px 22px;}#navbar.scrolled{padding:12px 22px;}.nav-center,.nav-cta{display:none;}.hamburger{display:flex;}.nav-brand{gap:12px;}.nav-brand img{width:64px;height:64px;}.brand-name{font-size:1.12rem;}.brand-tagline{font-size:0.52rem;letter-spacing:3px;}.sec{padding:55px 22px;}.hero-content{padding:0 22px;}.page-hero{padding-bottom:45px;}.footer-top{grid-template-columns:1fr;padding:45px 22px;gap:32px;}.footer-bottom{padding:20px 22px;flex-direction:column;text-align:center;}#cursor,#cursor-ring{display:none;}body{cursor:auto;}.hamburger,.mob-close{cursor:pointer !important;}}


.contact-main{display:grid;grid-template-columns:1fr 1.5fr;gap:0;min-height:700px;}
.contact-info-side{background:var(--dark2);padding:80px 60px;display:flex;flex-direction:column;justify-content:space-between;}
.contact-form-side{background:var(--white);padding:80px 65px;}

.c-detail{display:flex;gap:18px;margin-bottom:30px;padding-bottom:30px;border-bottom:1px solid rgba(255,255,255,0.06);align-items:flex-start;}
.c-icon{width:46px;height:46px;background:var(--red);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--white);}
.c-icon svg{width:18px;height:18px;}
.c-label{font-size:0.55rem;letter-spacing:3px;text-transform:uppercase;color:var(--red);display:block;margin-bottom:6px;font-weight:700;}
.c-val{font-size:0.75rem;color:var(--grey);line-height:1.8;}
.c-val a{color:var(--grey);transition:color 0.3s;}
.c-val a:hover{color:var(--black);}
.c-hours{background:var(--dark3);padding:25px;margin-top:30px;}
.c-hours-title{font-size:0.57rem;letter-spacing:3px;text-transform:uppercase;color:var(--red);margin-bottom:15px;font-weight:700;}
.c-hours-row{display:flex;justify-content:space-between;font-size:0.72rem;color:var(--grey);padding:6px 0;border-bottom:1px solid rgba(255,255,255,0.04);}
.c-hours-row:last-child{border:none;}

.form-title{font-family:'Playfair Display',serif;font-size:2rem;font-weight:800;color:var(--black);margin-bottom:8px;}
.form-subtitle{font-size:0.72rem;color:#777;margin-bottom:40px;line-height:1.7;}
.fg{margin-bottom:22px;}
.fg label{font-size:0.57rem;letter-spacing:3px;text-transform:uppercase;color:var(--red);display:block;margin-bottom:9px;font-weight:700;}
.fg input,.fg select,.fg textarea{width:100%;background:var(--off-white);border:1.5px solid rgba(225,193,110,0.1);color:var(--black);font-family:'Inter',sans-serif;font-size:0.8rem;padding:15px 18px;transition:border-color 0.3s;outline:none;-webkit-appearance:none;border-radius:0;}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--red);}
.fg input::placeholder,.fg textarea::placeholder{color:#aaa;}
.fg select{color:var(--black);}
.fg textarea{height:140px;resize:none;}
.fg-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.form-submit{width:100%;background:var(--red);border:none;color:var(--white);font-family:'Inter',sans-serif;font-size:0.62rem;letter-spacing:3px;text-transform:uppercase;padding:18px;cursor:pointer;transition:background 0.3s;font-weight:700;margin-top:8px;}
.form-submit:hover{background:var(--red-light);}
.form-note{font-size:0.62rem;color:#aaa;text-align:center;margin-top:14px;}

.map-wrap{height:420px;position:relative;overflow:hidden;}
.map-wrap iframe{width:100%;height:100%;border:none;filter:grayscale(80%) contrast(1.1);}
.map-overlay-bar{position:absolute;top:0;left:0;right:0;background:var(--red);padding:14px 30px;display:flex;align-items:center;gap:12px;}
.mob-label{font-size:0.58rem;letter-spacing:3px;text-transform:uppercase;font-weight:700;color:var(--white);}

.faq-section{background:var(--dark);}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(225,193,110,0.06);margin-top:55px;}
.faq-item{background:var(--dark2);padding:40px;cursor:pointer;}
.faq-q{font-size:0.78rem;font-weight:600;letter-spacing:0.5px;display:flex;justify-content:space-between;align-items:center;gap:15px;}
.faq-icon{width:30px;height:30px;border:1px solid rgba(225,193,110,0.3);display:flex;align-items:center;justify-content:center;color:var(--red);flex-shrink:0;font-size:1.2rem;transition:transform 0.3s;}
.faq-item.open .faq-icon{transform:rotate(45deg);}
.faq-a{font-size:0.73rem;color:var(--grey);line-height:1.9;max-height:0;overflow:hidden;transition:max-height 0.4s ease,margin 0.3s;}
.faq-item.open .faq-a{max-height:200px;margin-top:16px;}

@media(max-width:1100px){.contact-main{grid-template-columns:1fr;}.contact-info-side,.contact-form-side{padding:55px 45px;}.faq-grid{grid-template-columns:1fr;}.fg-row{grid-template-columns:1fr;}}
@media(max-width:768px){.contact-info-side,.contact-form-side{padding:45px 22px;}.map-wrap{height:320px;}}

/* ===== WHITE+RED THEME OVERRIDES ===== */
/* Navbar on white background */
#navbar { background: rgba(255,255,255,0.95); box-shadow: 0 1px 20px rgba(0,0,0,0.06); }
#navbar.scrolled { background: rgba(255,255,255,0.98) !important; box-shadow: 0 2px 30px rgba(0,0,0,0.1); }

/* Nav links on white bg */
.nav-link { color: rgba(0,0,0,0.6) !important; }
.nav-link:hover, .nav-link.active { color: var(--black) !important; }

/* Hamburger on white bg */
.hamburger span { background: var(--black) !important; }

/* Mobile menu on white bg */
.mob-menu { background: #FFFFFF !important; }
.mob-close { color: var(--black) !important; }
.mob-menu a { color: var(--black) !important; }

/* Loader on white bg */
#loader { background: #FFFFFF !important; }
.loader-bar { background: #E0DAD4 !important; }

/* Scrollbar */
::-webkit-scrollbar-track { background: #F2EDE8 !important; }

/* Section text for dark sections that are now light */
.sec-text { color: rgba(0,0,0,0.58) !important; }
body { color: var(--black); }

/* About strip text side */
.about-strip-text { background: #F2EDE8; }

/* Service cards */
.svc-card { background: #EAE4DE; border: 1px solid rgba(225,193,110,0.08); }
.svc-card:hover { background: #E5DFDA; }
.svc-desc { color: #555 !important; }

/* Stats */
.a-stat { background: #EAE4DE; }
.a-stat-l { color: #555 !important; }

/* Services grid bg */
.services-grid { background: rgba(225,193,110,0.1); }

/* Testimonial */
.testi-right { background: #F2EDE8; }
.testi-card { background: #E5DFDA; }
.testi-text { color: rgba(0,0,0,0.75) !important; }
.testi-name { color: var(--black); }
.tn-btn { color: #555; border-color: rgba(225,193,110,0.25); }

/* Portfolio */
.f-btn { color: #555; }

/* FAQ */
.faq-section { background: #F2EDE8 !important; }
.faq-item { background: #EAE4DE !important; }
.faq-q { color: var(--black) !important; }
.faq-a { color: #555 !important; }

/* Contact info side */
.contact-info-side { background: #F2EDE8 !important; }
.c-val { color: #555 !important; }
.c-val a { color: #555 !important; }
.c-val a:hover { color: var(--black) !important; }
.c-hours { background: #EAE4DE !important; }
.c-hours-row { color: #555 !important; }

/* Footer */
footer { background: #F2EDE8 !important; border-top: 1px solid rgba(225,193,110,0.15) !important; }
.footer-desc { color: #555 !important; }
.footer-col ul li a { color: #555 !important; }
.footer-col ul li a:hover { color: var(--black) !important; }
.footer-contact-item p, .footer-contact-item a { color: #555 !important; }
.footer-contact-item a:hover { color: var(--black) !important; }
.footer-socials a { color: #555 !important; }
.footer-bottom { background: #EAE4DE; border-top: 1px solid rgba(225,193,110,0.1) !important; }
.footer-bottom p { color: #777 !important; }

/* Vision/mission dark card → light */
.vm-card.dark { background: #EAE4DE !important; color: var(--black) !important; }
.vm-card.dark .vm-text { color: rgba(0,0,0,0.6) !important; }
.vm-card.dark .vm-points li { color: rgba(0,0,0,0.6) !important; }

/* Team section */
.team-section-bg { background: #F2EDE8 !important; }

/* Milestones */
.ms-card { background: #EAE4DE !important; }
.ms-title { color: var(--black) !important; }
.ms-desc { color: #555 !important; }

/* Story section */
.story-text-side { background: #F2EDE8 !important; }

/* About strip sec title text */
.about-strip-text .sec-text { color: rgba(0,0,0,0.6) !important; }

/* Hero slide overlay - keep text readable on images */
.slide-overlay { background: linear-gradient(135deg,rgba(0,0,0,0.72) 0%,rgba(0,0,0,0.35) 60%,rgba(225,193,110,0.05) 100%) !important; }

/* Lightbox stays dark */
.lb { background: rgba(0,0,0,0.96) !important; }

/* Portfolio masonry overlay */
.pm-overlay { background: rgba(0,0,0,0) !important; }
.pm-item:hover .pm-overlay { background: rgba(0,0,0,0.65) !important; }

/* Review cards */
.rev-card.on-dark, .rev-card.on-black, .rev-card.on-charcoal { background: #EAE4DE !important; }
.rev-card.on-dark .rev-text, .rev-card.on-black .rev-text, .rev-card.on-charcoal .rev-text { color: rgba(0,0,0,0.68) !important; }
.rev-card.on-dark .rev-name, .rev-card.on-black .rev-name, .rev-card.on-charcoal .rev-name { color: var(--black) !important; }

/* Sec-dark, sec-alt */
.sec-dark { background: #F2EDE8 !important; }
.sec-alt { background: #EAE4DE !important; }
.sec-charcoal { background: #F5F0EB !important; }

/* Hero breadcrumb */
.hero-bc { color: rgba(255,255,255,0.55) !important; }

/* Style blocks */
.style-text.on-dark { background: #F2EDE8 !important; }
.style-text.on-black { background: #EAE4DE !important; }

/* Process section already white - fine */

/* Btn outline white - fix for red bg sections */
.sec-red .btn-outline-white, .cta-band .btn-outline-white, .testi-left .btn-outline-white {
  border-color: rgba(255,255,255,0.6) !important;
  color: var(--white) !important;
}

/* Scroll hint on hero - stays white for image bg */
.scroll-hint span { color: rgba(255,255,255,0.6) !important; }

/* Trust section */
.trust-section { background: #FFFFFF !important; }
