:root{
  --ink:#1e1b18;--muted:#77716a;--cream:#f6f1e9;--paper:#fbf9f6;--gold:#c59a5a;
  --dark:#171614;--line:rgba(30,27,24,.12);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--paper);overflow-x:hidden}
img{max-width:100%;display:block}.muted{color:var(--muted);line-height:1.8}.light-text{color:#fff}.light-muted{color:rgba(255,255,255,.68);line-height:1.8}
.section-pad{padding:110px 0}.eyebrow{font-size:.72rem;letter-spacing:.25em;font-weight:700;color:var(--gold);margin-bottom:18px}.eyebrow.light{color:#e4c891}
.display-title{font-family:var(--serif);font-size:clamp(2.5rem,5vw,4.5rem);font-weight:500;line-height:1.06;margin:0 0 25px}.display-title em,.hero h1 em,.reel-content h2 em{font-weight:500;color:var(--gold)}
.btn{border-radius:0;padding:13px 23px;font-size:.82rem;font-weight:700;letter-spacing:.03em}.btn-gold{background:var(--gold);border:1px solid var(--gold);color:#fff}.btn-gold:hover{background:#ad8145;border-color:#ad8145;color:#fff;transform:translateY(-2px)}.btn-outline-light:hover{color:var(--ink)}
.navbar{padding:20px 0;transition:.35s;z-index:1000}.navbar.scrolled{background:rgba(251,249,246,.96);box-shadow:0 8px 35px rgba(0,0,0,.06);padding:12px 0}.navbar-brand{font-family:var(--serif);font-size:1.65rem;letter-spacing:.08em;color:inherit;text-decoration:none}.navbar-brand span{color:var(--gold)}.navbar-brand small{font-family:var(--sans);font-size:.45em;letter-spacing:.3em;display:block;margin-top:-5px}.nav-link{color:inherit!important;font-size:.78rem;font-weight:600;position:relative}.nav-link:after{content:'';position:absolute;left:0;bottom:3px;width:0;height:1px;background:var(--gold);transition:.25s}.nav-link:hover:after,.nav-link.active:after{width:100%}.navbar-toggler{color:inherit}
.hero{min-height:100vh;position:relative;display:flex;align-items:center;background:#171614;color:#fff;overflow:hidden}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.25) 65%,rgba(0,0,0,.35))}.hero-content{position:relative;z-index:2;padding-top:80px}.hero h1{font-family:var(--serif);font-size:clamp(3.1rem,7vw,6.8rem);line-height:.98;font-weight:500;max-width:900px;margin:0 0 28px}.hero-copy{font-size:1.05rem;max-width:520px;color:rgba(255,255,255,.8);line-height:1.7;margin-bottom:30px}.scroll-note{position:absolute;z-index:3;bottom:35px;left:5%;font-size:.65rem;letter-spacing:.22em;color:rgba(255,255,255,.7);display:flex;align-items:center;gap:12px}.scroll-note span{width:35px;height:1px;background:var(--gold)}.hero-stat{position:absolute;right:5%;bottom:35px;z-index:3;display:flex;align-items:center;gap:14px}.hero-stat strong{font-family:var(--serif);font-size:2.6rem;font-weight:500}.hero-stat small{font-size:.6rem;line-height:1.5;letter-spacing:.15em;color:rgba(255,255,255,.7)}
.about-section{background:var(--paper)}.image-stack{position:relative;padding:20px 50px 60px 0}.img-main{width:82%;height:580px;object-fit:cover}.img-float{position:absolute;width:42%;height:270px;object-fit:cover;right:0;bottom:0;border:12px solid var(--paper)}.experience-badge{position:absolute;left:-10px;top:55px;background:var(--gold);color:#fff;width:115px;height:115px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.experience-badge strong{font-family:var(--serif);font-size:2.5rem;line-height:1}.experience-badge span{font-size:.52rem;letter-spacing:.13em}.lead{font-size:1.15rem}.signature{font-family:var(--serif);font-size:1.35rem;margin:30px 0}.signature span{font-family:var(--sans);font-size:.72rem;color:var(--muted);margin-left:8px}.text-link{color:var(--ink);font-size:.78rem;font-weight:700;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:6px}
.dark-section{background:var(--dark)}.service-card{height:100%;border:1px solid rgba(255,255,255,.12);padding:32px;position:relative;transition:.35s;min-height:290px}.service-card:hover,.service-card.featured{background:#22201d;border-color:rgba(197,154,90,.5);transform:translateY(-6px)}.service-no{position:absolute;top:25px;right:28px;color:rgba(255,255,255,.35);font-size:.68rem}.service-icon{font-size:1.7rem;color:var(--gold);display:block;margin:25px 0 55px}.service-card h3{font-family:var(--serif);color:#fff;font-size:1.7rem;font-weight:500}.service-card p{color:rgba(255,255,255,.6);line-height:1.7;font-size:.88rem}.service-card a{display:inline-block;color:#fff;text-decoration:none;font-size:.72rem;font-weight:700;margin-top:8px}.service-card a i{color:var(--gold)}
.portfolio-section{background:var(--cream)}.filter-buttons{display:flex;gap:8px;flex-wrap:wrap}.filter-btn{border:1px solid var(--line);background:transparent;padding:9px 15px;font:600 .7rem var(--sans);cursor:pointer}.filter-btn.active,.filter-btn:hover{background:var(--ink);color:#fff}.portfolio-item{transition:.45s}.portfolio-item.hidden{display:none}.work-card{height:370px;position:relative;overflow:hidden;background:#222}.work-card.tall{height:560px}.work-card.wide{height:450px}.work-card img{width:100%;height:100%;object-fit:cover;transition:.7s}.work-card:hover img{transform:scale(1.06)}.work-overlay{position:absolute;inset:auto 0 0;padding:45px 30px 28px;background:linear-gradient(transparent,rgba(0,0,0,.8));color:#fff}.work-overlay span{font-size:.62rem;letter-spacing:.2em;color:#e4c891}.work-overlay h3{font-family:var(--serif);font-size:2rem;margin:5px 0}.work-overlay p{margin:0;color:rgba(255,255,255,.65);font-size:.72rem}
.reel-section{height:650px;position:relative;overflow:hidden;color:#fff;display:flex;align-items:center;justify-content:center}.reel-section>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.reel-overlay{position:absolute;inset:0;background:rgba(0,0,0,.55)}.reel-content{position:relative;z-index:2}.reel-content h2{font-family:var(--serif);font-size:clamp(3rem,7vw,6rem);margin:0}.reel-content p:last-child{color:rgba(255,255,255,.7)}.play-circle{display:inline-flex;width:78px;height:78px;border:1px solid rgba(255,255,255,.65);border-radius:50%;align-items:center;justify-content:center;font-size:1.7rem;transition:.3s}.play-circle:hover{background:var(--gold);border-color:var(--gold);transform:scale(1.08)}
.section-heading{max-width:700px}.process-row{margin-top:60px}.process-card{border-top:1px solid var(--line);padding-top:22px;height:100%}.process-card>span{font-size:.65rem;color:var(--gold);font-weight:700;letter-spacing:.1em}.process-card i{display:block;color:var(--gold);font-size:1.6rem;margin:45px 0 25px}.process-card h3{font-family:var(--serif);font-size:1.55rem}.process-card p{font-size:.85rem;color:var(--muted);line-height:1.8}
.testimonial-section{background:#eee7dc}.quote-card{background:var(--paper);padding:55px 60px;min-height:330px;position:relative}.quote-mark{font-size:3rem;color:var(--gold)}.quote-card p{font:500 1.55rem/1.65 var(--serif);margin:15px 0 25px}.quote-card strong{display:block;font-size:.72rem;letter-spacing:.08em}.quote-card small{color:var(--muted);font-size:.65rem}.carousel-controls{display:flex;gap:8px;margin-top:20px}.carousel-controls button{width:45px;height:45px;border:1px solid var(--line);background:transparent}.carousel-controls button:hover{background:var(--ink);color:#fff}
.contact-section{background:var(--dark);color:#fff}.contact-details{display:flex;flex-direction:column;gap:14px}.contact-details a,.contact-details span{color:rgba(255,255,255,.72);text-decoration:none;font-size:.82rem}.contact-details i{color:var(--gold);width:25px}.socials{display:flex;gap:10px;margin-top:30px}.socials a{width:40px;height:40px;border:1px solid rgba(255,255,255,.2);color:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none}.socials a:hover{background:var(--gold);border-color:var(--gold)}.enquiry-form{background:#211f1c;padding:42px;border:1px solid rgba(255,255,255,.1)}.enquiry-form label{display:block;font-size:.65rem;letter-spacing:.1em;color:rgba(255,255,255,.6);margin-bottom:8px}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;border:1px solid rgba(255,255,255,.15);background:#191816;color:#fff;padding:13px 14px;font:400 .82rem var(--sans);outline:0}.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:var(--gold)}.enquiry-form select option{background:#191816}.form-message{display:none;margin-top:15px;color:#e4c891;font-size:.8rem}
footer{background:#11100f;color:#fff}.footer-copy{font-size:.68rem;color:rgba(255,255,255,.45)}
.back-top{position:fixed;right:25px;bottom:25px;width:45px;height:45px;border:0;background:var(--gold);color:#fff;display:none;z-index:900}.back-top.show{display:block}.success-modal{border:0;border-radius:0;padding:35px;text-align:center}.success-icon{font-size:3.5rem;color:var(--gold);display:block;margin:15px}.success-modal h2{font-family:var(--serif);font-size:2.5rem}.success-modal p{color:var(--muted);line-height:1.7}
#preloader{position:fixed;inset:0;background:var(--dark);z-index:2000;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#fff;gap:15px;transition:.6s}.loader-ring{width:45px;height:45px;border:1px solid rgba(255,255,255,.25);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}#preloader span{font-family:var(--serif);letter-spacing:.25em;font-size:.8rem}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:991px){.navbar{background:rgba(251,249,246,.96);padding:12px 0}.hero-content{padding-top:100px}.hero-stat{display:none}.image-stack{margin-bottom:30px}.section-pad{padding:80px 0}.nav-link{padding:10px 0}.navbar-collapse{padding-top:15px}}
@media(max-width:767px){.hero{min-height:780px}.hero h1{font-size:3.25rem}.scroll-note{display:none}.hero-copy{font-size:.95rem}.image-stack{padding:0 25px 45px 0}.img-main{height:430px;width:90%}.img-float{height:190px;width:45%;border-width:8px}.experience-badge{width:90px;height:90px;left:-5px;top:35px}.experience-badge strong{font-size:2rem}.work-card,.work-card.tall,.work-card.wide{height:390px}.quote-card{padding:35px 28px;min-height:360px}.quote-card p{font-size:1.3rem}.enquiry-form{padding:25px}.reel-section{height:500px}.display-title{font-size:2.7rem}}

/* Country Gem Events branding */
.brand-logo{display:flex;align-items:center;height:58px;padding:0!important}
.brand-logo img{width:150px;height:58px;object-fit:contain;mix-blend-mode:multiply}
.navbar.scrolled .brand-logo img{height:50px}
.whatsapp-float{position:fixed;right:25px;bottom:82px;width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:1.8rem;z-index:950;box-shadow:0 8px 25px rgba(0,0,0,.25);transition:.25s}
.whatsapp-float:hover{color:#fff;transform:translateY(-4px) scale(1.04)}
.instagram-qr{margin-top:28px;padding:18px;border:1px solid rgba(255,255,255,.13);display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:430px}
.instagram-qr h3{font-family:var(--serif);font-size:1.3rem;margin:5px 0;color:#fff}
.instagram-qr p{font-size:.72rem;color:rgba(255,255,255,.55);margin:0}
.instagram-qr img{width:92px;height:92px;background:#fff;padding:5px}
.qr-label{font-size:.58rem;letter-spacing:.18em;color:var(--gold);font-weight:700}
@media(max-width:767px){
  .brand-logo img{width:125px;height:52px}
  .whatsapp-float{right:18px;bottom:75px;width:52px;height:52px}
  .instagram-qr{max-width:100%;padding:15px}
  .instagram-qr img{width:78px;height:78px}
}
