:root{--maroon:#7b1012;--maroon2:#9b1717;--gold:#c8962f;--cream:#fbf6ed;--ink:#2a2422;--muted:#6f6761;--dark:#171817}
html{scroll-behavior:smooth}body{font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fffdf9}.font-serif,h1,h2,h3,h4{font-family:Georgia,'Times New Roman',serif}.topbar{background:var(--maroon);color:#fff;font-size:.82rem}.navbar{background:#fff}.navbar{padding-top:10px;padding-bottom:10px}.navbar-brand{display:flex;align-items:center;margin-right:28px}.navbar-brand img{width:155px;height:78px;object-fit:contain;display:block}.nav-link{color:#3b2a26!important;font-weight:600}.nav-link.active,.nav-link:hover{color:var(--maroon)!important}.btn-brand{background:var(--maroon);border-color:var(--maroon);color:#fff}.btn-brand:hover{background:#5f0b0d;color:#fff}.btn-outline-brand{border-color:var(--maroon);color:var(--maroon)}.btn-outline-brand:hover{background:var(--maroon);color:#fff}
.hero{min-height:560px;background:linear-gradient(90deg,rgba(13,10,8,.9) 0%,rgba(13,10,8,.42) 42%,rgba(13,10,8,.05) 100%),url('../images/hero.jpg') center/cover no-repeat;display:flex;align-items:center;color:#fff}.hero .eyebrow{color:#f6bd43;font-weight:800;letter-spacing:.04em}.hero h1{font-size:clamp(2.5rem,5vw,5rem);line-height:.98}.hero p{max-width:620px;color:#f7f3ee}.section-pad{padding:82px 0}.section-title{color:var(--maroon);font-size:clamp(2rem,3.4vw,3.4rem)}.gold-rule{width:90px;height:2px;background:var(--gold);margin:15px 0 22px}.soft-card{background:var(--cream);border:1px solid #ead4a7;border-radius:24px;box-shadow:0 18px 45px rgba(76,41,20,.08)}
.video-wrap{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.16)}.video-wrap img.story{width:100%;height:100%;min-height:430px;object-fit:cover}.video-wrap:after{content:'';position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(transparent,rgba(0,0,0,.75))}.play-btn{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);z-index:3;width:92px;height:92px;border-radius:50%;background:#fff;color:#c01818;display:grid;place-items:center;font-size:2rem}.since-badge{position:absolute;left:18px;bottom:18px;z-index:4;width:150px;border-radius:12px;box-shadow:0 9px 25px rgba(0,0,0,.25)}.video-caption{position:absolute;left:190px;bottom:26px;z-index:4;color:#fff;font-weight:700;font-size:1.35rem}
.stat{padding:18px 12px;text-align:center}.stat strong{display:block;color:var(--maroon);font-family:Georgia,serif;font-size:2rem}.venue-img{width:100%;height:520px;object-fit:cover;border-radius:0 22px 22px 0}.service-card{height:100%;border:1px solid #eadfce;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 10px 32px rgba(48,33,20,.07);transition:.45s cubic-bezier(.2,.8,.2,1)}.service-card:hover{transform:translateY(-9px);box-shadow:0 18px 44px rgba(48,33,20,.14)}.service-card img{width:100%;height:180px;object-fit:cover}.service-card .card-body{padding:22px}.service-card h5{color:#5a2721}.service-card a{text-decoration:none;color:#b11a1c;font-weight:700;font-size:.85rem}.carousel-control-prev,.carousel-control-next{width:48px;height:48px;top:50%;transform:translateY(-50%);background:var(--maroon);border-radius:50%;opacity:1}.carousel-control-prev{left:-18px}.carousel-control-next{right:-18px}.cta-strip{background:linear-gradient(90deg,#180f0d,#7b1012);color:#fff}.testimonial{background:#fff;border:1px solid #eee2d1;border-radius:14px;padding:28px}.gallery-grid img{width:100%;height:180px;object-fit:cover;border-radius:14px;transition:.35s}.gallery-grid img:hover{transform:scale(1.03)}
.page-hero{padding:125px 0 95px;background:linear-gradient(90deg,rgba(31,11,6,.86),rgba(31,11,6,.42)),url('../images/hero.jpg') center/cover;color:#fff}.page-hero h1{font-size:clamp(2.5rem,5vw,4.5rem)}.content-img{width:100%;height:430px;object-fit:cover;border-radius:22px}.footer{background:#171817;color:#d8d6d1}.footer h5{color:#fff}.footer a{color:#d8d6d1;text-decoration:none}.footer a:hover{color:#f3b84b}.footer-menu a{display:block;padding:5px 0}.footer-menu a::before{content:'›';color:#f3b84b;font-weight:900;margin-right:9px}.backtop{position:fixed;right:22px;bottom:22px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--maroon);color:#fff;text-decoration:none;z-index:30;box-shadow:0 8px 20px rgba(0,0,0,.25)}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.8,.2,1)}.reveal.is-visible{opacity:1;transform:none}.reveal-left{opacity:0;transform:translateX(-40px);transition:.9s cubic-bezier(.2,.8,.2,1)}.reveal-right{opacity:0;transform:translateX(40px);transition:.9s cubic-bezier(.2,.8,.2,1)}.reveal-left.is-visible,.reveal-right.is-visible{opacity:1;transform:none}.float{animation:float 4s ease-in-out infinite}@keyframes float{50%{transform:translateY(-8px)}}
@media(max-width:991.98px){.hero{min-height:520px}.navbar-collapse{padding:18px 0}.video-caption{left:180px}.venue-img{height:400px;border-radius:0 0 22px 22px}.carousel-control-prev{left:4px}.carousel-control-next{right:4px}}@media(max-width:767.98px){.section-pad{padding:58px 0}.hero{min-height:500px;background-position:58% center}.hero h1{font-size:2.8rem}.video-wrap img.story{min-height:340px}.since-badge{width:115px;left:12px;bottom:12px}.video-caption{left:142px;bottom:18px;font-size:1rem}.play-btn{width:72px;height:72px}.service-card img{height:210px}.page-hero{padding:90px 0 65px}.content-img{height:300px}.topbar .container{justify-content:center!important;gap:14px;flex-wrap:wrap}.footer{text-align:center}.footer-menu a::before{margin-right:6px}}


/* ===== Interaction & floating contact fixes ===== */
.navbar .nav-link,.btn,.footer-menu a,.service-card,.gallery-grid img,.soft-card,.video-wrap,.whatsapp-float{transition:transform .35s ease,box-shadow .35s ease,color .3s ease,background-color .3s ease,border-color .3s ease,opacity .3s ease}
.navbar .nav-link:hover{transform:translateY(-2px)}
.btn:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(123,16,18,.18)}
.soft-card:hover{transform:translateY(-4px);box-shadow:0 24px 55px rgba(76,41,20,.13)}
.footer-menu a:hover{transform:translateX(5px)}
.gallery-grid img:hover{transform:scale(1.045);box-shadow:0 14px 30px rgba(0,0,0,.14)}
.video-wrap:hover{transform:translateY(-4px);box-shadow:0 24px 55px rgba(0,0,0,.2)}

.whatsapp-float{position:fixed;right:22px;bottom:82px;z-index:999;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff!important;display:grid;place-items:center;text-decoration:none;font-size:1.9rem;box-shadow:0 10px 28px rgba(0,0,0,.28);animation:waPulse 2s infinite}
.whatsapp-float:hover{transform:translateY(-4px) scale(1.05);background:#1fbd5a;color:#fff!important}
@keyframes waPulse{0%,100%{box-shadow:0 0 0 0 rgba(37,211,102,.32),0 10px 28px rgba(0,0,0,.28)}50%{box-shadow:0 0 0 12px rgba(37,211,102,0),0 10px 28px rgba(0,0,0,.28)}}

/* Working Bootstrap hero slider with CDN imagery */
.hero-carousel{position:relative;color:#fff}
.hero-carousel .carousel-item{min-height:560px;background-size:cover;background-position:center}
.hero-carousel .carousel-item::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,10,8,.92) 0%,rgba(13,10,8,.5) 42%,rgba(13,10,8,.08) 100%)}
.hero-carousel .hero-content{position:relative;z-index:2;min-height:560px;display:flex;align-items:center;padding:65px 0}
.hero-carousel .eyebrow{color:#f6bd43;font-weight:800;letter-spacing:.04em}
.hero-carousel h1{font-size:clamp(2.5rem,5vw,5rem);line-height:.98}
.hero-carousel p{max-width:620px;color:#f7f3ee}
.hero-carousel .carousel-control-prev,.hero-carousel .carousel-control-next{top:50%;width:48px;height:48px;margin:0 18px;transform:translateY(-50%);background:rgba(123,16,18,.92);border-radius:50%}
.hero-carousel .carousel-indicators{margin-bottom:18px}
.hero-carousel .carousel-indicators [data-bs-target]{width:10px;height:10px;border-radius:50%}
.video-link-overlay{position:absolute;inset:0;z-index:2;text-indent:-9999px;overflow:hidden}
.video-wrap .play-btn,.video-wrap .since-badge,.video-wrap .video-caption{pointer-events:none}

@media(max-width:767.98px){
 .hero-carousel .carousel-item,.hero-carousel .hero-content{min-height:500px}
 .hero-carousel h1{font-size:2.75rem}
 .hero-carousel .hero-content{padding:50px 0}
 .whatsapp-float{right:16px;bottom:78px;width:54px;height:54px;font-size:1.7rem}
}

/* ===== Carlton section refinement ===== */
.carlton-card{background:var(--cream);border:1px solid #e4c47f;border-radius:24px;overflow:hidden;box-shadow:0 18px 48px rgba(76,41,20,.09)}
.carlton-copy{padding:46px 34px;display:flex;flex-direction:column;justify-content:center}
.carlton-features{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:26px}
.carlton-features>div{text-align:center;padding:12px 6px;border-right:1px solid #e3cfaa}
.carlton-features>div:last-child{border-right:0}
.carlton-features i{display:block;color:var(--gold);font-size:1.5rem;margin-bottom:8px}
.carlton-features span{font-family:Georgia,'Times New Roman',serif;font-size:.88rem;line-height:1.15;color:#5a4036}
.carlton-visual{position:relative;min-height:520px;height:100%;overflow:hidden}
.carlton-visual .venue-img{height:100%;min-height:520px;border-radius:0;display:block}
.carlton-thumbs{position:absolute;left:24px;right:24px;bottom:22px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;z-index:2}
.carlton-thumbs img{width:100%;height:122px;object-fit:cover;background:#fff;border:5px solid #fff;border-radius:4px;box-shadow:0 10px 24px rgba(0,0,0,.22);transition:transform .35s ease,box-shadow .35s ease}
.carlton-thumbs img:hover{transform:translateY(-6px) rotate(-1deg);box-shadow:0 15px 30px rgba(0,0,0,.28)}

/* ===== Reliable Since 1989 badge ===== */
.since-badge{position:absolute;left:18px;bottom:18px;z-index:6;width:150px;border-radius:12px;overflow:hidden;box-shadow:0 9px 25px rgba(0,0,0,.28);background:#fff;pointer-events:none}
.since-badge img{display:block!important;width:100%!important;height:auto!important;min-height:0!important;object-fit:contain!important;border-radius:0!important}
.video-caption{z-index:6}

/* ===== Guest carousel ===== */
.guest-carousel{padding:8px 58px 0}
.guest-carousel .testimonial{box-shadow:0 12px 34px rgba(73,49,31,.07);transition:transform .35s ease,box-shadow .35s ease;text-align:center}
.guest-carousel .testimonial:hover{transform:translateY(-7px);box-shadow:0 18px 42px rgba(73,49,31,.13)}
.guest-carousel .stars{color:var(--gold);letter-spacing:.12em;font-size:1.05rem}
.guest-carousel .carousel-control-prev,.guest-carousel .carousel-control-next{top:44%;}
.guest-carousel .carousel-control-prev{left:0}.guest-carousel .carousel-control-next{right:0}
.guest-carousel .carousel-indicators [data-bs-target]{width:9px;height:9px;border-radius:50%;background-color:var(--maroon);border:0}

@media(max-width:991.98px){
 .carlton-copy{padding:38px 28px}
 .carlton-visual,.carlton-visual .venue-img{min-height:430px}
 .carlton-thumbs img{height:100px}
}
@media(max-width:767.98px){
 .carlton-features{grid-template-columns:repeat(2,1fr)}
 .carlton-features>div{border-right:0;border-bottom:1px solid #e3cfaa}
 .carlton-visual,.carlton-visual .venue-img{min-height:390px;height:390px}
 .carlton-thumbs{left:12px;right:12px;bottom:12px;gap:8px}
 .carlton-thumbs img{height:72px;border-width:3px}
 .since-badge{width:112px;left:12px;bottom:12px}
 .video-caption{left:138px}
 .guest-carousel{padding:8px 42px 0}
 .guest-carousel .carousel-item .col-md-4:not(:first-child){margin-top:16px}
}
\n/* Premium Services dropdown - icon only, no trailing chevrons */
.premium-services-menu{min-width:300px;border:0;border-radius:16px;padding:10px;background:rgba(255,255,255,.98);box-shadow:0 18px 50px rgba(54,18,12,.18);margin-top:10px;overflow:hidden}
.premium-services-menu .dropdown-item{display:flex;align-items:center;gap:13px;padding:10px 14px;border-radius:11px;color:#241b19;font-weight:500;transition:background .25s ease,color .25s ease,transform .25s ease}
.premium-services-menu .dropdown-item::after{display:none!important;content:none!important}
.premium-services-menu .dropdown-item:hover{background:#fff3ee;color:#9d1717;transform:translateX(3px)}
.service-menu-icon{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px;background:#fff0ed;color:#b31c1c;font-size:16px;transition:transform .25s ease,background .25s ease}
.premium-services-menu .dropdown-item:hover .service-menu-icon{transform:scale(1.08);background:#fde4df}
@media (min-width:992px){.navbar .dropdown:hover>.premium-services-menu{display:block}.navbar .dropdown>.premium-services-menu{margin-top:0}.navbar .dropdown:hover>.nav-link{color:#9d1717}}
@media (max-width:991.98px){.premium-services-menu{min-width:100%;box-shadow:none;border-radius:10px;margin-top:4px;background:#fff8f5}.premium-services-menu .dropdown-item{padding:8px 10px}}

/* ===== Mobile overflow + premium WhatsApp refinement ===== */
html,body{max-width:100%;overflow-x:hidden}
*,*::before,*::after{box-sizing:border-box}
img,svg,video,iframe{max-width:100%}
.row{--bs-gutter-x:1.5rem}
.navbar>.container,.navbar>.container-fluid{max-width:100%}

/* Premium WhatsApp pill */
.whatsapp-float{
  right:22px;bottom:82px;width:auto;height:64px;padding:7px 16px 7px 7px;
  border-radius:999px;display:flex;align-items:center;gap:10px;font-size:inherit;
  background:linear-gradient(135deg,#25D366,#18b957);box-shadow:0 14px 34px rgba(17,97,49,.30);
  animation:waFloat 3s ease-in-out infinite;transform-origin:right center;white-space:nowrap;
}
.whatsapp-float .wa-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#1fbd5a;font-size:1.8rem;flex:0 0 50px;box-shadow:0 5px 14px rgba(0,0,0,.14)}
.whatsapp-float .wa-copy{display:flex;flex-direction:column;line-height:1.08;color:#fff;max-width:160px;overflow:hidden;transition:max-width .35s ease,opacity .3s ease,transform .35s ease}
.whatsapp-float .wa-copy small{font-size:.72rem;opacity:.9;margin-bottom:3px;font-weight:600}
.whatsapp-float .wa-copy strong{font-size:.91rem;font-weight:800}
.whatsapp-float:hover{transform:translateY(-4px) scale(1.025);background:linear-gradient(135deg,#20c85f,#149c47);box-shadow:0 18px 38px rgba(17,97,49,.36)}
.whatsapp-float::before{content:"";position:absolute;inset:-7px;border:1.5px solid rgba(37,211,102,.35);border-radius:999px;animation:waRing 2.2s ease-out infinite;pointer-events:none}
@keyframes waRing{0%{transform:scale(.96);opacity:.65}75%,100%{transform:scale(1.1);opacity:0}}
@keyframes waFloat{0%,100%{translate:0 0}50%{translate:0 -5px}}

@media(max-width:991.98px){
  .navbar-collapse{max-height:calc(100vh - 95px);overflow-y:auto;overflow-x:hidden;padding:14px 2px 18px}
  .navbar-nav,.navbar-nav .nav-item,.navbar-nav .dropdown-menu{max-width:100%}
  .premium-services-menu{width:100%!important;min-width:0!important;position:static!important;transform:none!important}
  .hero-carousel .carousel-control-prev{left:4px;margin-left:0}
  .hero-carousel .carousel-control-next{right:4px;margin-right:0}
  .carlton-card,.soft-card,.video-wrap,.guest-carousel,.carousel{max-width:100%}
  .carlton-thumbs{max-width:calc(100% - 24px)}
}

@media(max-width:767.98px){
  .container{padding-left:16px;padding-right:16px}
  .row{--bs-gutter-x:1rem}
  .topbar{font-size:.72rem;text-align:center}
  .navbar-brand img{width:120px;height:62px}
  .hero-carousel .carousel-item,.hero-carousel .hero-content{min-height:470px}
  .hero-carousel .hero-content{padding:42px 28px 50px}
  .hero-carousel h1{font-size:clamp(2.1rem,11vw,2.8rem);line-height:1.02}
  .hero-carousel p{font-size:.95rem;max-width:88%}
  .hero-carousel .btn{margin-bottom:8px}
  .hero-carousel .carousel-control-prev,.hero-carousel .carousel-control-next{width:40px;height:40px;top:auto;bottom:18px;transform:none;margin:0}
  .hero-carousel .carousel-control-prev{left:16px}.hero-carousel .carousel-control-next{right:16px}
  .hero-carousel .carousel-indicators{bottom:6px;margin-bottom:0}
  .video-wrap img.story{min-height:300px}
  .video-caption{left:134px;right:12px;bottom:18px;font-size:.92rem;line-height:1.2}
  .carlton-copy{padding:30px 20px}
  .carlton-visual,.carlton-visual .venue-img{min-height:360px;height:360px}
  .carlton-thumbs{left:10px;right:10px;max-width:calc(100% - 20px);gap:6px}
  .carlton-thumbs img{height:68px}
  .guest-carousel{padding:8px 34px 0}
  .guest-carousel .carousel-control-prev,.guest-carousel .carousel-control-next{width:38px;height:38px}
  .whatsapp-float{right:12px;bottom:72px;height:58px;padding:5px 11px 5px 5px;gap:8px}
  .whatsapp-float .wa-icon{width:48px;height:48px;flex-basis:48px;font-size:1.65rem}
  .whatsapp-float .wa-copy{max-width:130px}
  .whatsapp-float .wa-copy small{font-size:.65rem}.whatsapp-float .wa-copy strong{font-size:.78rem}
  .backtop{right:14px;bottom:14px;width:44px;height:44px}
}

@media(max-width:420px){
  .hero-carousel .hero-content{padding-left:18px;padding-right:18px}
  .hero-carousel p{max-width:100%}
  .video-caption{display:none}
  .since-badge{width:104px}
  .carlton-features{gap:4px}
  .guest-carousel{padding-left:26px;padding-right:26px}
  .whatsapp-float{right:10px;bottom:66px}
  .whatsapp-float .wa-copy{max-width:112px}
  .whatsapp-float .wa-copy strong{font-size:.72rem}
}

@media(prefers-reduced-motion:reduce){
  .whatsapp-float,.whatsapp-float::before{animation:none!important}
}


/* ===== Carlton Hotel content update ===== */
.carlton-page-hero{background:linear-gradient(90deg,rgba(31,11,6,.78),rgba(31,11,6,.28)),url('../images/carlton-main.png') center 48%/cover no-repeat}
.carlton-page-hero .eyebrow{color:#f3b84b;font-weight:800;letter-spacing:.12em}
.carlton-page-main{position:relative;border-radius:24px;overflow:hidden;box-shadow:0 20px 48px rgba(61,35,18,.16)}
.carlton-page-main img{width:100%;height:500px;object-fit:cover;display:block}
.carlton-image-label{position:absolute;left:18px;bottom:18px;background:rgba(255,255,255,.94);color:var(--maroon);padding:10px 14px;border-radius:999px;font-weight:700;box-shadow:0 8px 20px rgba(0,0,0,.14)}
.carlton-highlight-card{height:100%;padding:30px 22px;text-align:center;background:#fff;border:1px solid #ead8ba;border-radius:18px;box-shadow:0 12px 32px rgba(76,41,20,.06);transition:transform .35s ease,box-shadow .35s ease}
.carlton-highlight-card:hover{transform:translateY(-7px);box-shadow:0 18px 42px rgba(76,41,20,.12)}
.carlton-highlight-card i{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:#fff2e5;color:var(--gold);font-size:1.45rem}
.carlton-highlight-card h4{font-size:1.25rem;color:#5a2721;margin-bottom:10px}
.carlton-highlight-card p{font-size:.9rem;color:var(--muted);margin:0}
.carlton-gallery-section{background:#fbf6ed}
.carlton-gallery-premium{display:grid;grid-template-columns:1.55fr 1fr 1fr;grid-template-rows:repeat(2,220px);gap:14px}
.carlton-gallery-premium>div{overflow:hidden;border-radius:18px;box-shadow:0 12px 28px rgba(45,27,18,.10)}
.carlton-gallery-premium img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.carlton-gallery-premium>div:hover img{transform:scale(1.055)}
.carlton-gallery-large{grid-row:1 / span 2}
.carlton-gallery-small:last-child{grid-column:2 / span 2}
.carlton-cta{background:linear-gradient(120deg,#651012,#9a1b1c);color:#fff;border-radius:24px;padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:0 20px 45px rgba(123,16,18,.18)}
.carlton-cta h2{font-size:clamp(1.8rem,3vw,2.65rem)}
@media(max-width:991.98px){.carlton-page-main img{height:390px}.carlton-gallery-premium{grid-template-columns:1fr 1fr;grid-template-rows:340px 190px 190px}.carlton-gallery-large{grid-column:1 / span 2;grid-row:auto}.carlton-gallery-small:last-child{grid-column:1 / span 2}.carlton-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:767.98px){.carlton-page-main img{height:300px}.carlton-gallery-premium{grid-template-columns:1fr;grid-template-rows:270px 180px 180px 180px}.carlton-gallery-large,.carlton-gallery-small:last-child{grid-column:auto}.carlton-gallery-large{grid-row:auto}.carlton-highlight-card{padding:24px 14px}.carlton-highlight-card h4{font-size:1.05rem}.carlton-highlight-card p{font-size:.82rem}.carlton-cta{padding:30px 24px}.carlton-image-label{font-size:.78rem;left:12px;bottom:12px}}
/* Premium Our Story YouTube video + Since 1989 badge */
.premium-story-video{position:relative;overflow:visible;border:1px solid rgba(202,153,55,.42);background:#111;box-shadow:0 24px 60px rgba(55,28,18,.18)}
.premium-story-video iframe{display:block;width:100%;aspect-ratio:16/9;min-height:430px;border:0;border-radius:18px}
.premium-story-video:after{display:none}
.premium-since-badge{left:auto!important;right:-22px!important;top:-28px!important;bottom:auto!important;width:150px!important;height:174px;border-radius:75px 75px 22px 22px!important;background:linear-gradient(145deg,#9c1015,#65080c)!important;border:6px solid #e4b84f;outline:2px solid rgba(255,238,177,.9);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 15px 38px rgba(91,14,15,.32),inset 0 0 0 2px rgba(255,255,255,.12);font-family:Georgia,serif;animation:badgeFloat 3.4s ease-in-out infinite;overflow:visible!important}
.premium-since-badge:after{content:"";position:absolute;bottom:-24px;left:28px;border-left:44px solid transparent;border-right:44px solid transparent;border-top:28px solid #720b10;z-index:-1}
.premium-since-badge .badge-crown{color:#f6d579;font-size:17px;line-height:1;margin-bottom:3px}.premium-since-badge small{font-family:Arial,sans-serif;font-size:11px;letter-spacing:3px}.premium-since-badge strong{font-size:36px;line-height:1.05;color:#ffe49a;font-weight:500}.premium-since-badge .badge-line{width:58px;height:1px;background:#d9ae48;margin:8px 0}.premium-since-badge em{font-family:Arial,sans-serif;font-size:8px;line-height:1.3;font-style:normal;font-weight:700;letter-spacing:.7px}
@keyframes badgeFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(7px) rotate(.7deg)}}
@media(max-width:991.98px){.premium-story-video iframe{min-height:360px}.premium-since-badge{right:10px!important;top:-22px!important;width:126px!important;height:148px}.premium-since-badge strong{font-size:30px}}
@media(max-width:575.98px){.premium-story-video{margin-top:14px}.premium-story-video iframe{min-height:0;aspect-ratio:16/9}.premium-since-badge{right:8px!important;top:-16px!important;width:92px!important;height:108px;border-width:4px}.premium-since-badge:after{bottom:-15px;left:19px;border-left-width:27px;border-right-width:27px;border-top-width:18px}.premium-since-badge .badge-crown{font-size:12px}.premium-since-badge small{font-size:8px;letter-spacing:2px}.premium-since-badge strong{font-size:23px}.premium-since-badge .badge-line{width:40px;margin:5px 0}.premium-since-badge em{font-size:6px}}

/* ===== Premium Story + Reliable YouTube Section ===== */
.story-premium-section{position:relative;overflow:hidden;background:linear-gradient(135deg,#fffdf9 0%,#fbf7f1 100%)}
.story-premium-section:before,.story-premium-section:after{content:"";position:absolute;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,rgba(198,149,53,.08),transparent 68%);pointer-events:none}
.story-premium-section:before{left:-120px;top:-120px}.story-premium-section:after{right:-100px;bottom:-140px}
.story-copy-premium{position:relative;z-index:1}
.story-eyebrow{display:flex;align-items:center;gap:14px;color:#b77b20;font-size:.78rem;font-weight:800;letter-spacing:.28em;margin-bottom:17px}.story-eyebrow span{display:block;width:48px;height:1px;background:#c89737}
.story-title-premium{font-family:Georgia,serif;color:#a91518;font-size:clamp(2.35rem,4vw,4.7rem);line-height:.98;margin:0}.story-title-premium span{color:#202020}
.story-ornament{display:flex;align-items:center;gap:8px;width:150px;margin:20px 0}.story-ornament span{height:1px;flex:1;background:#c89737}.story-ornament i{font-style:normal;color:#c89737;font-size:1.15rem}
.story-copy-premium>p{font-size:1.02rem;line-height:1.72;color:#303030;max-width:610px;margin:0}
.story-stats-premium{display:grid;grid-template-columns:repeat(3,1fr);margin-top:30px;border-top:1px solid rgba(152,97,33,.15);border-bottom:1px solid rgba(152,97,33,.15)}
.story-stat-item{position:relative;text-align:center;padding:20px 10px 17px}.story-stat-item:not(:last-child):after{content:"";position:absolute;right:0;top:20%;height:60%;width:1px;background:#ddd4c8}.story-stat-icon{color:#d3a029;font-size:1.7rem;margin-bottom:5px}.story-stat-item strong{display:block;color:#b51418;font:700 1.85rem/1 Georgia,serif}.story-stat-item span{display:block;color:#1f1f1f;font-size:1rem;margin-top:3px}.story-stat-item small{display:block;color:#716b64;font-size:.72rem;margin-top:3px}
.story-actions-premium{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.story-actions-premium .btn{border-radius:10px;padding:14px 20px;font-size:.8rem;font-weight:800;letter-spacing:.02em}.story-btn-primary{background:linear-gradient(135deg,#b50f14,#8c080d);color:#fff!important;box-shadow:0 11px 25px rgba(171,18,22,.22)}.story-btn-primary:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(171,18,22,.3)}.story-btn-outline{border:1px solid #c71a20;color:#b41217!important;background:#fff}.story-btn-outline:hover{background:#b41217;color:#fff!important;transform:translateY(-3px)}
.premium-story-video{position:relative;overflow:visible!important;border:1px solid rgba(202,153,55,.55);background:#111;border-radius:22px;box-shadow:0 25px 60px rgba(55,28,18,.18);min-height:0}
.story-embed-holder,.story-local-fallback{position:relative;aspect-ratio:16/9;border-radius:22px;overflow:hidden;background:#111}
.story-embed-holder:empty{display:none}.story-embed-holder iframe{display:block;width:100%;height:100%;border:0;border-radius:22px}
.story-local-fallback img{display:block;width:100%;height:100%;object-fit:cover}.story-video-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08) 20%,rgba(0,0,0,.78) 100%)}
.story-big-play{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:88px;height:88px;border-radius:50%;background:#fff;color:#e61d23;display:grid;place-items:center;font-size:2.65rem;box-shadow:0 12px 35px rgba(0,0,0,.3);z-index:3;transition:.35s}.story-big-play:hover{transform:translate(-50%,-50%) scale(1.08);color:#d00;box-shadow:0 16px 40px rgba(0,0,0,.4)}
.story-video-text{position:absolute;left:28px;right:28px;bottom:22px;z-index:2;color:#fff}.story-video-text span{display:block;font-size:.78rem;opacity:.85}.story-video-text strong{display:block;font:600 clamp(1.4rem,2.3vw,2.1rem)/1.15 Georgia,serif;margin:3px 0}.story-video-text small{opacity:.8}
.premium-since-badge{left:auto!important;right:-18px!important;top:-24px!important;bottom:auto!important;width:142px!important;height:166px!important;border-radius:72px 72px 22px 22px!important;background:linear-gradient(145deg,#9f1015,#68090d)!important;border:5px solid #e3b64b!important;outline:2px solid rgba(255,239,185,.9);color:#fff!important;display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 16px 38px rgba(91,14,15,.35),inset 0 0 0 2px rgba(255,255,255,.12);font-family:Georgia,serif;animation:badgeFloat 3.4s ease-in-out infinite;overflow:visible!important;z-index:8}
.premium-since-badge:after{content:"";position:absolute;bottom:-22px;left:26px;border-left:42px solid transparent;border-right:42px solid transparent;border-top:26px solid #720b10;z-index:-1}.premium-since-badge .badge-crown{color:#ffe17d;font-size:17px;line-height:1;margin-bottom:4px}.premium-since-badge small{font-family:Arial,sans-serif;font-size:10px;letter-spacing:3px}.premium-since-badge strong{font-size:34px;line-height:1.05;color:#ffe49a;font-weight:500}.premium-since-badge .badge-line{width:56px;height:1px;background:#e0b44b;margin:7px 0}.premium-since-badge em{font-family:Arial,sans-serif;font-size:7px;line-height:1.35;font-style:normal;font-weight:700;letter-spacing:.7px}
@keyframes badgeFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(7px)}}
@media(max-width:991.98px){.story-copy-premium{max-width:720px;margin:auto}.story-actions-premium{margin-bottom:15px}.premium-since-badge{right:10px!important;top:-18px!important;width:116px!important;height:136px!important}.premium-since-badge strong{font-size:28px}.premium-since-badge:after{left:21px;border-left-width:34px;border-right-width:34px}.story-big-play{width:76px;height:76px;font-size:2.2rem}}
@media(max-width:575.98px){.story-premium-section{padding-top:52px!important}.story-title-premium{font-size:2.45rem;line-height:1.05}.story-copy-premium>p{font-size:.92rem}.story-stats-premium{gap:0}.story-stat-item{padding:15px 4px}.story-stat-icon{font-size:1.35rem}.story-stat-item strong{font-size:1.42rem}.story-stat-item span{font-size:.88rem}.story-stat-item small{font-size:.61rem;line-height:1.25}.story-actions-premium{display:grid;grid-template-columns:1fr 1fr;gap:9px}.story-actions-premium .btn{padding:12px 8px;font-size:.67rem}.story-local-fallback,.story-embed-holder{border-radius:14px}.premium-story-video{border-radius:14px;margin-top:18px}.story-video-text{left:15px;bottom:12px}.story-video-text span,.story-video-text small{display:none}.story-video-text strong{font-size:1.1rem}.story-big-play{width:58px;height:58px;font-size:1.7rem}.premium-since-badge{right:7px!important;top:-14px!important;width:82px!important;height:96px!important;border-width:3px!important}.premium-since-badge:after{bottom:-13px;left:17px;border-left-width:23px;border-right-width:23px;border-top-width:15px}.premium-since-badge .badge-crown{font-size:10px}.premium-since-badge small{font-size:7px;letter-spacing:1.7px}.premium-since-badge strong{font-size:21px}.premium-since-badge .badge-line{width:34px;margin:4px 0}.premium-since-badge em{font-size:5px}}


/* Premium story stats hover */
.story-stat-item{cursor:default;transition:transform .38s cubic-bezier(.2,.8,.2,1),background .38s ease,box-shadow .38s ease;border-radius:16px;overflow:visible}
.story-stat-item .story-stat-icon{transition:transform .42s cubic-bezier(.2,.8,.2,1),color .3s ease,filter .3s ease}
.story-stat-item strong,.story-stat-item span,.story-stat-item small{transition:transform .3s ease,color .3s ease}
.story-stat-item:hover{transform:translateY(-9px);background:linear-gradient(180deg,#fffdf8,#fff7e8);box-shadow:0 16px 35px rgba(108,25,20,.13)}
.story-stat-item:hover .story-stat-icon{transform:translateY(-3px) scale(1.18) rotate(-4deg);color:#b51418;filter:drop-shadow(0 5px 8px rgba(181,20,24,.2))}
.story-stat-item:hover strong{transform:scale(1.07);color:#8b1115}.story-stat-item:hover small{color:#a47720}
@media (hover:none){.story-stat-item:active{transform:scale(.98);background:#fff8eb}}
/* CDN service photography */
.service-card img{transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .45s ease;filter:saturate(.94) contrast(1.02)}
.service-card:hover img{transform:scale(1.075);filter:saturate(1.08) contrast(1.04)}


/* ===== Story section refinement: YouTube-only + premium stat hover ===== */
.story-youtube-only{position:relative;aspect-ratio:16/9;border-radius:22px;overflow:hidden;background:#0b0b0b}
.story-youtube-only iframe{display:block;width:100%;height:100%;border:0;border-radius:22px;background:#0b0b0b}

.story-stats-premium{overflow:visible}
.story-stat-item{
  isolation:isolate;
  z-index:1;
  border:1px solid transparent;
  background:transparent;
  transform:translateZ(0);
  will-change:transform,box-shadow,background-color;
}
.story-stat-item::before{
  content:"";
  position:absolute;
  inset:5px;
  border-radius:14px;
  background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,247,230,.92));
  border:1px solid rgba(202,153,55,.22);
  box-shadow:0 0 0 rgba(84,26,18,0);
  opacity:0;
  transform:scale(.94);
  transition:opacity .35s ease,transform .42s cubic-bezier(.2,.8,.2,1),box-shadow .42s ease;
  z-index:-1;
}
.story-stat-item:hover,
.story-stat-item:focus-within{
  transform:translateY(-10px) scale(1.025);
}
.story-stat-item:hover::before,
.story-stat-item:focus-within::before{
  opacity:1;
  transform:scale(1);
  box-shadow:0 18px 42px rgba(106,31,22,.15),0 6px 18px rgba(202,153,55,.12);
}
.story-stat-item:hover .story-stat-icon,
.story-stat-item:focus-within .story-stat-icon{
  transform:translateY(-4px) scale(1.22) rotate(-5deg);
  color:#9d1316;
  filter:drop-shadow(0 7px 10px rgba(157,19,22,.22));
}
.story-stat-item:hover strong,
.story-stat-item:focus-within strong{transform:translateY(-1px) scale(1.08);color:#8b1115}
.story-stat-item:hover span,
.story-stat-item:focus-within span{color:#65171a}
.story-stat-item:hover small,
.story-stat-item:focus-within small{color:#9a6d19;letter-spacing:.02em}

@media(max-width:575.98px){
  .story-youtube-only,.story-youtube-only iframe{border-radius:14px}
  .story-stat-item:hover,.story-stat-item:focus-within{transform:translateY(-5px) scale(1.01)}
}

/* ===== Premium hover animation: Carlton home section ===== */
.carlton-card{
  transition:transform .55s cubic-bezier(.22,.61,.36,1), box-shadow .55s ease, border-color .55s ease;
}
.carlton-card:hover{
  transform:translateY(-6px);
  border-color:rgba(195,139,42,.72);
  box-shadow:0 26px 65px rgba(76,41,20,.16),0 0 0 1px rgba(214,165,74,.10);
}
.carlton-features>div{
  position:relative;
  border-radius:16px;
  transition:transform .42s cubic-bezier(.22,.61,.36,1),background .42s ease,box-shadow .42s ease,color .42s ease;
  transform:translateZ(0);
  overflow:hidden;
}
.carlton-features>div::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:radial-gradient(circle at 50% 30%,rgba(231,181,77,.18),rgba(255,255,255,0) 68%);
  opacity:0;
  transform:scale(.82);
  transition:opacity .42s ease,transform .42s ease;
  pointer-events:none;
}
.carlton-features>div:hover{
  transform:translateY(-8px);
  background:rgba(255,250,240,.92);
  box-shadow:0 16px 34px rgba(109,67,28,.14),0 0 24px rgba(214,165,74,.12);
}
.carlton-features>div:hover::before{opacity:1;transform:scale(1)}
.carlton-features i{
  position:relative;
  z-index:1;
  transition:transform .48s cubic-bezier(.2,.8,.2,1),color .35s ease,filter .35s ease;
  transform-origin:center;
}
.carlton-features>div:hover i{
  transform:translateY(-2px) scale(1.18) rotate(-7deg);
  color:#9d1719;
  filter:drop-shadow(0 6px 8px rgba(157,23,25,.18));
}
.carlton-features span{
  position:relative;
  z-index:1;
  transition:color .35s ease,transform .35s ease;
  display:inline-block;
}
.carlton-features>div:hover span{color:var(--maroon);transform:translateY(-1px)}
.carlton-copy .btn-brand{
  transition:transform .35s cubic-bezier(.22,.61,.36,1),box-shadow .35s ease,background .35s ease;
}
.carlton-copy .btn-brand:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 24px rgba(123,16,18,.22),0 0 18px rgba(214,165,74,.16);
}
@media (hover:none){
  .carlton-card:hover,.carlton-features>div:hover,.carlton-copy .btn-brand:hover{transform:none}
  .carlton-features>div:hover i{transform:none}
}

/* ===== Why Choose Us - Premium Home Section ===== */
.why-choose-section{position:relative;overflow:hidden;background:linear-gradient(180deg,#fffdfa 0%,#fbf4ea 100%)}
.why-choose-section:before,.why-choose-section:after{content:"";position:absolute;border-radius:50%;pointer-events:none;filter:blur(2px)}
.why-choose-section:before{width:330px;height:330px;left:-170px;top:-120px;background:radial-gradient(circle,rgba(214,163,70,.12),rgba(214,163,70,0) 70%)}
.why-choose-section:after{width:380px;height:380px;right:-190px;bottom:-160px;background:radial-gradient(circle,rgba(123,16,18,.09),rgba(123,16,18,0) 70%)}
.why-heading{position:relative;z-index:1}.why-kicker{display:inline-block;margin-bottom:8px;color:#c98d27;font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.why-divider{display:flex;align-items:center;justify-content:center;gap:10px;margin:14px auto 16px;color:#d09a3c}.why-divider span{display:block;width:48px;height:1px;background:linear-gradient(90deg,transparent,#d09a3c)}.why-divider span:last-child{background:linear-gradient(90deg,#d09a3c,transparent)}.why-divider i{font-size:.56rem}
.why-intro{max-width:760px;color:#6c625a;line-height:1.8;margin-bottom:0}
.why-grid{position:relative;z-index:1}
.why-card{position:relative;overflow:hidden;padding:34px 26px 30px;border:1px solid rgba(208,154,60,.34);border-radius:22px;background:rgba(255,255,255,.88);box-shadow:0 12px 32px rgba(73,42,18,.07);transition:transform .48s cubic-bezier(.2,.8,.2,1),box-shadow .48s ease,border-color .35s ease,background .35s ease}
.why-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(123,16,18,.055),transparent 44%,rgba(208,154,60,.09));opacity:0;transition:opacity .4s ease}
.why-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,#7b1012,#d19b3c,#7b1012);transform:scaleX(.25);opacity:0;transition:transform .45s ease,opacity .35s ease;transform-origin:center}
.why-card:hover{transform:translateY(-12px);border-color:rgba(208,154,60,.75);background:#fff;box-shadow:0 24px 48px rgba(87,45,19,.16),0 0 0 1px rgba(208,154,60,.08)}
.why-card:hover:before{opacity:1}.why-card:hover:after{transform:scaleX(1);opacity:1}
.why-icon{position:relative;z-index:1;width:70px;height:70px;margin-bottom:24px;border-radius:20px;display:grid;place-items:center;color:#8f1418;font-size:1.65rem;background:linear-gradient(145deg,#fff8eb,#f6e3bd);border:1px solid #eed09a;box-shadow:0 10px 22px rgba(148,87,25,.12);transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease,color .35s ease,background .35s ease}
.why-card:hover .why-icon{transform:translateY(-4px) scale(1.1) rotate(-5deg);color:#fff;background:linear-gradient(145deg,#8d1114,#b92124);box-shadow:0 14px 30px rgba(123,16,18,.28),0 0 0 7px rgba(208,154,60,.10)}
.why-number{position:absolute;right:20px;top:14px;color:rgba(123,16,18,.08);font-family:Georgia,serif;font-size:3.4rem;font-weight:700;line-height:1;transition:color .35s ease,transform .45s ease}
.why-card:hover .why-number{color:rgba(208,154,60,.20);transform:translateY(4px)}
.why-card h3{position:relative;z-index:1;margin-bottom:12px;color:#641418;font-family:Georgia,serif;font-size:1.35rem}.why-card p{position:relative;z-index:1;margin:0;color:#6c625a;font-size:.94rem;line-height:1.7}
.why-cta{padding:12px 28px;border-radius:10px;box-shadow:0 10px 24px rgba(123,16,18,.14);transition:transform .35s ease,box-shadow .35s ease}.why-cta:hover{transform:translateY(-4px);box-shadow:0 16px 32px rgba(123,16,18,.28)}
@media (max-width:767.98px){.why-choose-section{padding:62px 0}.why-intro{font-size:.95rem}.why-card{padding:28px 22px}.why-icon{width:62px;height:62px;border-radius:18px}.why-number{font-size:2.8rem}.why-card:hover{transform:translateY(-6px)}}
@media (prefers-reduced-motion:reduce){.why-card,.why-icon,.why-number,.why-card:after,.why-cta{transition:none!important;transform:none!important}}
/* Preserve supplied hero image quality: use original files without recompression/upscaling */
.hero-carousel .carousel-item{min-height:clamp(420px,33.36vw,560px);background-size:cover;background-position:center}
@media (max-width:767.98px){.hero-carousel .carousel-item{min-height:460px;background-position:center}}

/* ===== Mobile hero slider refinement (09-09-2026) =====
   Keeps the photography visible by reducing text density on phones. */
@media (max-width:767.98px){
  .hero-carousel .carousel-item{
    min-height:390px;
    background-position:center center;
  }
  .hero-carousel .hero-content{
    min-height:390px;
    padding:38px 22px 64px;
    align-items:center;
  }
  .hero-carousel .carousel-item::before{
    background:linear-gradient(90deg,rgba(13,10,8,.72) 0%,rgba(13,10,8,.34) 55%,rgba(13,10,8,.06) 100%);
  }
  .hero-carousel .hero-content .col-lg-7{max-width:86%;}
  .hero-carousel .eyebrow{
    font-size:.70rem;
    line-height:1.25;
    letter-spacing:.07em;
    margin-bottom:8px!important;
  }
  .hero-carousel h1{
    font-size:clamp(1.72rem,8.4vw,2.2rem);
    line-height:1.04;
    margin-bottom:0;
  }
  .hero-carousel p.lead{display:none;}
  .hero-carousel .d-flex.gap-3{
    margin-top:16px!important;
    gap:8px!important;
  }
  .hero-carousel .d-flex.gap-3 .btn{
    padding:9px 13px;
    font-size:.70rem;
    line-height:1.15;
    border-radius:7px;
    margin:0;
  }
  .hero-carousel .d-flex.gap-3 .btn:nth-child(2){display:none;}
  .hero-carousel .carousel-control-prev,
  .hero-carousel .carousel-control-next{
    width:34px;height:34px;bottom:14px;
  }
  .hero-carousel .carousel-control-prev{left:12px}
  .hero-carousel .carousel-control-next{right:12px}
  .hero-carousel .carousel-indicators{bottom:5px}
}

@media (max-width:420px){
  .hero-carousel .carousel-item,
  .hero-carousel .hero-content{min-height:365px;}
  .hero-carousel .hero-content{padding:32px 17px 58px;}
  .hero-carousel .hero-content .col-lg-7{max-width:88%;}
  .hero-carousel h1{font-size:clamp(1.55rem,8vw,1.9rem);}
  .hero-carousel .eyebrow{font-size:.64rem;}
  .hero-carousel .d-flex.gap-3 .btn{padding:8px 11px;font-size:.66rem;}
}

/* Premium gallery lightbox */
.gallery-grid .gallery-item{display:block;position:relative;overflow:hidden;border-radius:14px;background:#f5eee5;box-shadow:0 8px 22px rgba(0,0,0,.08);cursor:zoom-in}
.gallery-grid .gallery-item::after{content:'\f00e';font-family:'Font Awesome 6 Free';font-weight:900;position:absolute;right:14px;bottom:14px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(123,16,18,.88);color:#fff;opacity:0;transform:translateY(8px);transition:.3s ease}
.gallery-grid .gallery-item:hover::after{opacity:1;transform:translateY(0)}
.gallery-grid .gallery-item img{width:100%;height:300px!important;object-fit:cover;border-radius:14px;transition:transform .45s ease,filter .35s ease}
.gallery-grid .gallery-item:hover img{transform:scale(1.045);filter:brightness(.9)}
.gallery-lightbox .modal-dialog{max-width:min(94vw,1280px)}
.gallery-lightbox .modal-content{position:relative;background:rgba(12,10,9,.96);border:0;border-radius:18px;overflow:hidden;min-height:300px;box-shadow:0 28px 80px rgba(0,0,0,.45)}
.gallery-lightbox #galleryLightboxImage{display:block;width:100%;max-height:88vh;object-fit:contain;background:#0c0a09}
.gallery-close{position:absolute;z-index:5;top:16px;right:16px;padding:12px;background-color:rgba(0,0,0,.45);border-radius:50%;opacity:1}
.gallery-nav{position:absolute;z-index:4;top:50%;transform:translateY(-50%);width:48px;height:48px;border:0;border-radius:50%;background:rgba(123,16,18,.88);color:#fff;display:grid;place-items:center;font-size:1.15rem;box-shadow:0 8px 20px rgba(0,0,0,.25)}
.gallery-prev{left:16px}.gallery-next{right:16px}
.gallery-counter{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);background:rgba(0,0,0,.55);color:#fff;padding:6px 12px;border-radius:999px;font-size:.82rem}
@media(max-width:767.98px){.gallery-grid .gallery-item img{height:230px!important}.gallery-nav{width:40px;height:40px}.gallery-prev{left:8px}.gallery-next{right:8px}.gallery-close{top:10px;right:10px}.gallery-lightbox .modal-dialog{margin:.5rem}.gallery-lightbox #galleryLightboxImage{max-height:82vh}}

/* Gallery refinement - clean photo-first layout */
.gallery-section{background:linear-gradient(180deg,#fff 0%,#fffaf4 100%)}
.gallery-intro{max-width:760px;margin-left:auto;margin-right:auto}
.gallery-intro .section-kicker{display:inline-block;color:var(--maroon);font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;margin-bottom:7px}
.gallery-intro h2{font-family:Georgia,serif;color:#3e231f;font-weight:700}
.gallery-grid .gallery-item{display:block;position:relative;overflow:hidden;border-radius:18px;background:#efe7dc;box-shadow:0 10px 28px rgba(50,31,22,.10);cursor:zoom-in;aspect-ratio:4/3;isolation:isolate}
.gallery-grid .gallery-item img{width:100%;height:100%!important;object-fit:cover;border-radius:18px;transition:transform .5s cubic-bezier(.2,.8,.2,1),filter .35s ease}
.gallery-grid .gallery-item::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(25,12,8,.28));opacity:0;transition:.35s;z-index:1;pointer-events:none}
.gallery-grid .gallery-item:hover::before{opacity:1}
.gallery-grid .gallery-item:hover img{transform:scale(1.055);filter:brightness(.96)}
.gallery-grid .gallery-item::after{display:none!important}
.gallery-zoom{position:absolute;right:14px;bottom:14px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:var(--maroon);box-shadow:0 8px 24px rgba(0,0,0,.18);opacity:0;transform:translateY(10px) scale(.92);transition:.3s ease;z-index:2}
.gallery-grid .gallery-item:hover .gallery-zoom{opacity:1;transform:translateY(0) scale(1)}
.gallery-lightbox .modal-content{border-radius:16px!important}
.gallery-lightbox #galleryLightboxImage{max-height:86vh;object-fit:contain}
@media(max-width:767.98px){.gallery-section{padding-top:54px;padding-bottom:54px}.gallery-grid{--bs-gutter-x:14px;--bs-gutter-y:14px}.gallery-grid .gallery-item{aspect-ratio:4/3;border-radius:14px}.gallery-grid .gallery-item img{border-radius:14px}.gallery-zoom{opacity:1;transform:none;width:36px;height:36px;right:10px;bottom:10px;font-size:.85rem}.gallery-intro h2{font-size:1.65rem}.gallery-intro p{font-size:.92rem}}

/* Service detail pages */
.service-detail-hero{min-height:470px;display:flex;align-items:center;background-position:center!important}.service-detail-hero .lead{max-width:720px}.service-kicker{display:inline-block;color:#f3b84b;font-size:.78rem;font-weight:800;letter-spacing:.18em;margin-bottom:12px}.service-kicker.dark{color:#9d1717}.service-detail-image{position:relative;border-radius:24px;overflow:hidden;box-shadow:0 22px 55px rgba(61,28,17,.16)}.service-detail-image img{width:100%;height:470px;object-fit:cover;display:block;transition:transform .7s ease}.service-detail-image:hover img{transform:scale(1.035)}.service-feature{display:flex;align-items:center;gap:11px;background:#fff8f4;border:1px solid #f0dfd5;border-radius:12px;padding:13px 15px;font-weight:600;color:#4f322b}.service-feature i{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#7b1012;color:#fff;font-size:.72rem}.service-detail-cta{padding:58px 0;background:linear-gradient(110deg,#24100d,#7b1012);color:#fff}.service-detail-cta h2{font-size:clamp(2rem,3vw,3.2rem);margin-bottom:10px}.service-detail-cta p{color:#f0dfd8;max-width:760px}@media(max-width:767.98px){.service-detail-hero{min-height:390px;padding:75px 0 60px}.service-detail-image img{height:320px}.service-detail-cta{text-align:center;padding:46px 0}}

/* YouTube local-preview fallback (prevents Error 153 on file:// previews) */
.story-local-preview{position:relative;display:block;width:100%;height:100%;min-height:430px;background:#0b0b0b;overflow:hidden;border-radius:22px;text-decoration:none}
.story-local-preview img{width:100%;height:100%;min-height:430px;object-fit:cover;display:block;opacity:.82}
.story-local-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.78);color:#fff;padding:14px 22px;border-radius:999px;font-size:18px;box-shadow:0 10px 30px rgba(0,0,0,.3)}
.story-local-play i{font-size:30px;color:#ff0033}.story-local-play b{font-weight:700}
@media(max-width:991.98px){.story-local-preview,.story-local-preview img{min-height:360px}}
@media(max-width:575.98px){.story-local-preview,.story-local-preview img{min-height:0;aspect-ratio:16/9}.story-local-play{padding:10px 16px;font-size:15px}.story-local-play i{font-size:24px}}


/* ===== The Carlton Hotel detail page ===== */
.carlton-detail-hero{min-height:640px;background-size:cover;background-position:center;display:flex;align-items:center;position:relative;color:#fff;overflow:hidden}
.carlton-detail-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.28));pointer-events:none}
.carlton-detail-hero .container{position:relative;z-index:2}
.carlton-detail-hero-copy{max-width:780px;padding:72px 0}
.carlton-detail-hero .eyebrow{letter-spacing:.18em;font-weight:800;color:#f3b84b;margin-bottom:14px}
.carlton-detail-hero h1{font-size:clamp(2.3rem,5vw,4.6rem);line-height:1.03;font-weight:800;margin:0 0 8px;text-shadow:0 8px 25px rgba(0,0,0,.28)}
.carlton-detail-hero h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.7rem);color:#f3b84b;margin:0 0 18px}
.carlton-detail-hero p{font-size:1.18rem;max-width:660px;color:rgba(255,255,255,.9);margin-bottom:28px}
.carlton-detail-photo{position:relative;border-radius:28px;overflow:hidden;box-shadow:0 28px 70px rgba(36,18,5,.18);transform:translateZ(0)}
.carlton-detail-photo img{width:100%;height:520px;object-fit:cover;transition:transform .8s cubic-bezier(.2,.75,.25,1),filter .8s ease}
.carlton-detail-photo:hover img{transform:scale(1.045);filter:saturate(1.05) contrast(1.03)}
.carlton-photo-badge{position:absolute;left:24px;bottom:24px;background:rgba(116,16,18,.95);color:#fff;border:1px solid rgba(243,184,75,.75);border-radius:18px;padding:14px 20px;display:flex;gap:12px;align-items:center;box-shadow:0 12px 32px rgba(0,0,0,.22);backdrop-filter:blur(8px)}
.carlton-photo-badge strong{font-size:2rem;line-height:1;color:#f3b84b}.carlton-photo-badge span{font-weight:700;line-height:1.1}
.carlton-detail-features{background:linear-gradient(180deg,#fbf8f3 0%,#fff 100%)}
.carlton-detail-feature{height:100%;background:#fff;border:1px solid rgba(123,16,18,.09);border-radius:22px;padding:32px 26px;box-shadow:0 14px 40px rgba(47,29,14,.06);transition:transform .45s cubic-bezier(.2,.75,.25,1),box-shadow .45s ease,border-color .45s ease}
.carlton-detail-feature span{width:64px;height:64px;border-radius:18px;background:linear-gradient(145deg,#fff6df,#f5d88d);color:#7b1012;display:grid;place-items:center;font-size:1.65rem;margin-bottom:22px;transition:transform .45s cubic-bezier(.2,.75,.25,1),background .45s ease,color .45s ease}
.carlton-detail-feature h4{font-size:1.12rem;font-weight:800;color:#3a2416;margin-bottom:10px}.carlton-detail-feature p{color:#6f655f;margin:0;line-height:1.75}
.carlton-detail-feature:hover{transform:translateY(-10px);box-shadow:0 24px 58px rgba(69,35,15,.13);border-color:rgba(243,184,75,.6)}
.carlton-detail-feature:hover span{transform:rotate(-5deg) scale(1.08);background:#7b1012;color:#f3b84b}
.carlton-detail-gallery{background:#fff}
.carlton-masonry{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:260px;gap:18px}
.carlton-gallery-item{position:relative;border:0;padding:0;border-radius:20px;overflow:hidden;cursor:zoom-in;background:#eee;box-shadow:0 10px 28px rgba(28,18,8,.08)}
.carlton-gallery-item.wide{grid-column:span 2}.carlton-gallery-item.tall{grid-row:span 2}
.carlton-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.75,.25,1),filter .7s ease}
.carlton-gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(34,12,5,.65));opacity:.1;transition:opacity .45s ease}
.carlton-gallery-item span{position:absolute;right:18px;bottom:18px;z-index:2;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:#7b1012;box-shadow:0 8px 20px rgba(0,0,0,.15);transform:translateY(12px) scale(.86);opacity:0;transition:all .4s cubic-bezier(.2,.75,.25,1)}
.carlton-gallery-item:hover img{transform:scale(1.065);filter:saturate(1.08) contrast(1.03)}.carlton-gallery-item:hover:after{opacity:1}.carlton-gallery-item:hover span{opacity:1;transform:none}
.carlton-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(10,7,5,.94);display:flex;align-items:center;justify-content:center;padding:28px;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}
.carlton-lightbox.show{opacity:1;visibility:visible}.carlton-lightbox img{max-width:min(1320px,92vw);max-height:88vh;border-radius:14px;box-shadow:0 24px 80px rgba(0,0,0,.5);transform:scale(.96);transition:transform .35s ease}.carlton-lightbox.show img{transform:scale(1)}
.carlton-lightbox-close{position:absolute;top:22px;right:24px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);color:#fff;font-size:1.2rem;transition:all .3s ease}.carlton-lightbox-close:hover{background:#fff;color:#7b1012;transform:rotate(90deg)}
@media(max-width:991.98px){.carlton-detail-hero{min-height:560px;background-position:center}.carlton-detail-photo img{height:420px}.carlton-masonry{grid-template-columns:repeat(2,1fr);grid-auto-rows:230px}.carlton-gallery-item.wide{grid-column:span 2}}
@media(max-width:575.98px){.carlton-detail-hero{min-height:470px;background-position:55% center}.carlton-detail-hero-copy{padding:48px 0}.carlton-detail-hero .eyebrow{font-size:.72rem}.carlton-detail-hero h1{font-size:2.25rem}.carlton-detail-hero h2{font-size:1.85rem}.carlton-detail-hero p{font-size:.96rem;max-width:92%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.carlton-detail-photo img{height:310px}.carlton-photo-badge{left:14px;bottom:14px;padding:10px 14px;border-radius:14px}.carlton-photo-badge strong{font-size:1.55rem}.carlton-detail-feature{padding:24px 20px}.carlton-masonry{grid-template-columns:1fr;grid-auto-rows:230px;gap:14px}.carlton-gallery-item.wide,.carlton-gallery-item.tall{grid-column:auto;grid-row:auto}.carlton-gallery-item span{opacity:1;transform:none;width:40px;height:40px}.carlton-lightbox{padding:16px}.carlton-lightbox-close{top:12px;right:12px}}


/* ===== Chaara & Co. complete page ===== */
.chaara-hero{min-height:650px;background-size:cover;background-position:center;display:flex;align-items:center;color:#fff;position:relative;overflow:hidden}
.chaara-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(30,4,7,.35));pointer-events:none}
.chaara-hero .container{z-index:2}.chaara-hero-copy{max-width:760px;padding:85px 0}
.chaara-kicker{display:inline-block;color:#f2d59b;letter-spacing:.2em;font-size:.78rem;font-weight:800;margin-bottom:14px}.chaara-kicker.dark{color:#9a2530}
.chaara-hero h1{font-family:Georgia,serif;font-size:clamp(2.7rem,6vw,5.6rem);line-height:.98;font-weight:600;letter-spacing:-.03em;margin:0}.chaara-hero h1 em{font-weight:400;color:#f1d5a0}.chaara-hero p{font-size:1.12rem;letter-spacing:.06em;margin:24px 0 0;color:#f7e9dc}.chaara-hero p span{color:#f0c979;margin:0 8px}
.btn-chaara{background:#f1d7a7;color:#6f0d15;border:1px solid #f1d7a7;font-weight:800;letter-spacing:.07em;padding:12px 22px;border-radius:4px;transition:all .35s ease}.btn-chaara:hover{background:#fff;color:#6f0d15;transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.18)}
.btn-chaara-outline{border:1px solid rgba(255,255,255,.72);color:#fff;font-weight:700;letter-spacing:.06em;padding:12px 22px;border-radius:4px;transition:all .35s ease}.btn-chaara-outline:hover{background:#fff;color:#6f0d15;transform:translateY(-3px)}
.chaara-about{background:#fbf6ef}.chaara-photo-stack{position:relative;padding:0 65px 55px 0}.chaara-main-photo{width:100%;height:610px;object-fit:cover;border-radius:4px;box-shadow:0 24px 65px rgba(45,22,12,.16);transition:transform .7s cubic-bezier(.2,.75,.25,1),filter .7s ease}.chaara-photo-stack:hover .chaara-main-photo{transform:scale(1.018);filter:saturate(1.05)}.chaara-float-photo{position:absolute;right:0;bottom:0;width:43%;height:260px;object-fit:cover;border:10px solid #fbf6ef;box-shadow:0 18px 40px rgba(55,25,12,.18);transition:transform .55s ease}.chaara-photo-stack:hover .chaara-float-photo{transform:translateY(-8px) rotate(1deg)}
.chaara-title{font-family:Georgia,serif;color:#6f0d15;font-size:clamp(2rem,4vw,3.45rem);line-height:1.08}.chaara-rule{width:72px;height:2px;background:linear-gradient(90deg,#8f1c26,#d9a64e);margin:20px 0 26px}.chaara-about p{font-family:Georgia,serif;color:#5e4c45;font-size:1.03rem;line-height:1.9}
.chaara-pillars{background:#fff}.chaara-intro{max-width:720px;color:#75655f}.chaara-pillar{height:100%;padding:38px 32px;background:#fffaf4;border:1px solid rgba(137,29,40,.10);box-shadow:0 12px 34px rgba(73,42,18,.06);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease,border-color .4s ease;position:relative;overflow:hidden}.chaara-pillar:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#7b1018,#d8a349);transform:scaleX(0);transition:transform .45s ease}.chaara-pillar:hover{transform:translateY(-10px);box-shadow:0 24px 54px rgba(92,35,26,.13);border-color:rgba(182,118,52,.36)}.chaara-pillar:hover:after{transform:scaleX(1)}.chaara-icon{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#75121a;color:#f4d8a5;font-size:1.35rem;margin-bottom:22px;transition:transform .45s ease,background .35s ease,color .35s ease}.chaara-pillar:hover .chaara-icon{transform:scale(1.1) rotate(-7deg);background:#e3b45c;color:#6f0d15}.chaara-pillar h3{font-family:Georgia,serif;color:#6f0d15;font-size:1.45rem}.chaara-pillar p{color:#71615a;line-height:1.75;margin:0}
.chaara-gallery-section{background:#f8f1e8}.chaara-gallery-note{color:#7b6b64;font-size:.92rem}.chaara-masonry{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:240px;gap:14px}.chaara-gallery-item{position:relative;border:0;padding:0;background:#eee;overflow:hidden;cursor:zoom-in;border-radius:4px;box-shadow:0 8px 22px rgba(47,27,12,.08)}.chaara-gallery-item.wide{grid-column:span 2}.chaara-gallery-item.tall{grid-row:span 2}.chaara-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.75,.25,1),filter .65s ease}.chaara-gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(75,7,12,.55));opacity:0;transition:opacity .4s ease}.chaara-gallery-item span{position:absolute;z-index:2;right:14px;bottom:14px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#f2d8a4;color:#6f0d15;opacity:0;transform:translateY(8px);transition:all .35s ease}.chaara-gallery-item:hover img{transform:scale(1.055);filter:saturate(1.06) contrast(1.03)}.chaara-gallery-item:hover:after,.chaara-gallery-item:hover span{opacity:1}.chaara-gallery-item:hover span{transform:none}
.chaara-cta{background:linear-gradient(115deg,#591017,#871c24);color:#fff}.chaara-cta h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.5rem);margin:0 0 8px}.chaara-cta p{color:#f3d9ca;margin-bottom:22px}
.chaara-lightbox{position:fixed;inset:0;z-index:99999;background:rgba(16,5,7,.96);display:flex;align-items:center;justify-content:center;padding:30px;opacity:0;visibility:hidden;transition:.3s ease}.chaara-lightbox.show{opacity:1;visibility:visible}.chaara-lightbox img{max-width:min(1280px,90vw);max-height:88vh;object-fit:contain;box-shadow:0 28px 90px rgba(0,0,0,.55);transform:scale(.97);transition:transform .35s ease}.chaara-lightbox.show img{transform:scale(1)}.chaara-lightbox-close,.chaara-lightbox-nav{position:absolute;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#fff;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;z-index:2;transition:all .3s ease}.chaara-lightbox-close{top:20px;right:22px}.chaara-lightbox-close:hover,.chaara-lightbox-nav:hover{background:#f1d7a7;color:#6f0d15}.chaara-lightbox-nav{top:50%;transform:translateY(-50%)}.chaara-lightbox-nav.prev{left:22px}.chaara-lightbox-nav.next{right:22px}.chaara-lightbox-count{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);color:#fff;background:rgba(0,0,0,.34);padding:5px 11px;border-radius:20px;font-size:.82rem}
@media(max-width:991.98px){.chaara-hero{min-height:560px}.chaara-main-photo{height:520px}.chaara-masonry{grid-template-columns:repeat(2,1fr);grid-auto-rows:235px}.chaara-gallery-item.wide{grid-column:span 2}}
@media(max-width:575.98px){.chaara-hero{min-height:470px;background-position:58% center}.chaara-hero-copy{padding:52px 0}.chaara-hero h1{font-size:2.45rem}.chaara-hero p{font-size:.82rem;letter-spacing:.025em}.chaara-hero p span{margin:0 4px}.chaara-photo-stack{padding:0 35px 40px 0}.chaara-main-photo{height:390px}.chaara-float-photo{width:46%;height:175px;border-width:7px}.chaara-about p{font-size:.98rem;line-height:1.75}.chaara-pillar{padding:28px 24px}.chaara-masonry{grid-template-columns:1fr;grid-auto-rows:260px}.chaara-gallery-item.wide,.chaara-gallery-item.tall{grid-column:auto;grid-row:auto}.chaara-gallery-item span{opacity:1;transform:none}.chaara-lightbox{padding:12px}.chaara-lightbox-nav{width:40px;height:40px}.chaara-lightbox-nav.prev{left:8px}.chaara-lightbox-nav.next{right:8px}.chaara-lightbox-close{top:10px;right:10px}}

@media (min-width:992px){.navbar>.container{padding-left:48px;padding-right:48px}.navbar-nav{gap:.45rem!important}.navbar .nav-link{padding-left:.65rem!important;padding-right:.65rem!important}.topbar>.container{padding-left:48px;padding-right:48px}}
