body{font-family: "Kantumruy Pro", sans-serif;}
.font1{font-family: "Kalnia", sans-serif;}
/*--------- Common Css ----------- */
.blog-img img,.medevents .medevents-img , .casestudies .casestudies-img, .gallery .presscard,.doccard .doccard-img img, .vm .vmimg img{
    transition: transform 0.4s ease-in-out;
}
.limit-text{
  display: inline-block;
  width: 14ch;             /* ch = character units */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle; 
}
.blog-img:hover img ,.medevents:hover .medevents-img, .casestudies:hover .casestudies-img, .gallery:hover .presscard,.doccard:hover .doccard-img img, .vm .vmimg:hover img {
    transform: scale(1.03); /* Adjust scale as needed */
}
.list-none li{    list-style: none;}
.points ul{
    padding-left: 0px;
}

.text-96{color:#969696 !important;}
.obj-cover{object-fit: cover !important;}
.obj-fill{object-fit: fill !important;}
.navbar-light .navbar-nav .nav-link {color: black;font-size:16px;font-weight:500;}
a.text-hover:hover{text-decoration:underline !important;}
a.text-hover-color:hover{color:var(--emp-accent) !important;}
.text-ul{text-decoration:underline !important;}
.faq-hover:hover{background: #B8B8B8 !important;}
.ofh{overflow: hidden;}
.bg-white{background: #000;}
.bg-app {background: var(--emp-accent);}
.text-main {color: var(--emp-accent) !important;}
.bg-lapp{background: var(--emp-accent);}
.text-appp {color: var(--emp-accent-dk) !important;}
.text-app2 {color: var(--emp-accent) !important;}
.bg-darkk{background-color: #000000 !important;}
.bg-news{background: #F6F6F6;}
.bg-light1 {background: rgba(0, 0, 0, 0.04);}
.bg-greyy{background: #B8B8B8 !important;}
.text-darkk{color: #000000;}
.text-darkkk{color: #000000 !important;}
.text-grey{color: #969696;}
.text-lblue{color: #0F4DED !important;}
.text-nblue{color: #0A0CF4 !important;}
.text-app {color: var(--emp-accent-dk);}
.text-lightt , .text-lightt p{color:#555555 !important;}
.brs-10 {border-radius: 10px;}
.brs-15{border-radius: 15px;}
.brs-top-15{border-top-left-radius: 15px;border-top-right-radius: 15px;}
.brs-bot-15{border-bottom-left-radius: 15px;border-bottom-right-radius: 15px;box-shadow: rgba(139, 150, 153, .2) 0 5px 18px;}
.brs-bot-30{border-bottom-left-radius: 30px;border-bottom-right-radius: 30px;}
.brs-20 {border-radius: 20px;}
.brs-30 {border-radius: 30px;}
.brs-40 {border-radius: 40px;}
.brs-50{border-radius:50%;}
.pad5-7{padding: 3px 5px;}  
.lh-60{line-height: 75px;}
.fs-65{font-size: 65px;}
.sideimg {position: absolute;top: 0px;left: 0;width: 350px;}
.bg-under{background: #545454;}
.mtn-48{margin-top: -48px;}
.wid-20{width: 20px;}
.fw-100{font-weight:100;}
.fw-200{font-weight:200;}
.fw-300{font-weight:300;}
.fw-400{font-weight:400;}
.fw-500{font-weight:500;}
.fw-600{font-weight:600;}
.fw-700{font-weight:700;}
.fw-800{font-weight:800;}
.fw-900{font-weight:900;}
.btnsecondary {padding: 8px 30px;border-radius:30px !important;}
.btnprimary {padding: 12px 30px !important;border-radius:30px !important;}

/*--------- Text overflow Control Css --------- */
.overelipsis1 {display: -webkit-box;-webkit-line-clamp: 1;line-clamp: 1;-webkit-box-orient: vertical;overflow: hidden;}
.overelipsis2 {display: -webkit-box;-webkit-line-clamp: 2;line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;}
.overelipsis3 {display: -webkit-box;-webkit-line-clamp: 3;line-clamp: 3;-webkit-box-orient: vertical;overflow: hidden;}
.overelipsis {display: -webkit-box;-webkit-line-clamp: 5;line-clamp: 5;-webkit-box-orient: vertical;overflow: hidden;}

/*Navbar Styles*/
/* The four unscoped .navbar-nav hover/active amber rules that used to live here
   are gone: every .navbar-nav in this theme is inside <header class="site-header">
   (layout/nav.php is the only file that emits one), so they were fully shadowed
   by the state-bound rules in the header section and only served to make hover
   and active amber on inner pages, which is no longer wanted. */

/* .top-navbar-head.activescroll is still toggled by layout/js.php, but its
   styling is intentionally gone: the scrolled header appearance is owned by
   .site-header--solid / .site-header--overlay.scrolled. Keeping both meant two
   rules fighting over the same state, and its padding override made the
   floating pill jump on scroll. */
  nav.breadcrumb{
        position: relative;
        justify-content: flex-end;
    } 
    ol.breadcrumb {
        justify-content: flex-end;
        margin: 0px;
        padding: 0px;
    }
    .bred_flex {
        display: flex;
        justify-content: space-between;
    }
    .bred_flex h1 {
        font-size: 18px;
        margin-bottom: 0px;
    }
    
/*--------- Top Menu Css ---------*/
.top_menu .float-right a i{font-size: 15px;background: #000000;border-radius: 50%;color: var(--emp-accent);padding: initial;width: 25px;height: 25px;text-align: center;padding-top: 5px;}

/*services*/
.service .testimoimg{width: 75px;height: 75px;border-radius: 50%;}

.service-card:hover .text-hover-color{
    color:var(--emp-accent) !important
}
.wid-30 {
    width: 30px;
}
/*vision-mission*/
.vision-mission-card:hover .text-hover-color{
    color:var(--emp-accent) !important
}
/*Doctors*/
.doctor-card:hover .text-hover-color{
    color:var(--emp-accent) !important
}
.doctoricons{
    background: #000;
    margin: 0px 5px;
    color: #fff;
    width: 23px;
    height: 23px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 13px;
}
/*Banner Section STYLES*/
.carousel-indicators li{
    border-radius: 50%;
    width: 12px;
    height: 12px;
}
.banner_txt {
    position: absolute;
    top: 505;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    text-align: center;
    width: 80%;
}
.banner_txt h3{
    font-size: 40px;
    font-weight: bold;
}

.banner_txt p{
    font-size: 20px;
}

a._banner_href {
    color: #fff;
    width: 100%;
    display: block;
}
  
.banner_txt h1{font-size:50px;font-size: 60px;width: 75%;font-weight: 900;}
.banner_txt p{width:75%;}


/*About Styles*/
.docimgabout{
    width: 350px;
    object-fit: cover;
    position: absolute;
    height: 400px;
    left: 40px;
    top: 35px;
}
.docimgabouthome{
     width: 350px !important;
     height: 350px !important;
}
.about_homepage div.text-lightt p{
    font-size:14px !important;
    font-weight:500 !important;
}
.whytochoosehome .choosetickbefore li{
    font-size: 16px;
    font-weight: 600;
}
.whytochoosehome .choosetickbefore p{
    font-size: 15px;
    font-weight: 300;
    line-height: 20px;
}
/*Awards Styles*/
.awards-card .card-text{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 320px;
}
.awards_homepage .post:hover p.awardtitle{
    color:var(--emp-accent) !important;
}
/*Press Styles*/
.presscard{
    border: 3px solid #A1A0A0 !important;
    padding: 1px;
}
.presscontent{
    overflow-y: auto;
    height: 65px;
    }
/*News Styles*/
.news .post:hover .newstitle{
    color:var(--emp-accent) ;
}
.news-information h1.font-weight-bold.mb-0 {
    font-size: 30px;
}
/*Treatments Styles*/
.treatments .treatments-card:hover h3.treattitle{
    color:var(--emp-accent) ;
}
/*FAQ STyles*/
.faq-hover.active {
    background-color: #B8B8B8 !important; 
}
.faqsection .card-body p{
    color: #4D4D4D;
    font-size: 14px;
    font-weight: 400;
}
/*#accordion .hdng a:after {font-family:Fontawesome;content:'\f078';float:right;font-size:15px;}*/
/*#accordion .hdng a.collapsed:after {font-family:Fontawesome;content:'\f077';}*/

#accordion .hdng a:after {
    font-family: FontAwesome;
    content: '\f077'; /* up arrow — shown when expanded */
    float: right;
    font-size: 15px;
}

#accordion .hdng a.collapsed:after {
    content: '\f078'; /* down arrow — shown when collapsed */
}

.whychoosevideo{position:absolute;}
/*.choosetickbefore *{color:#ffffff;}*/
.w-250{width:250px;}
.bg-hgrey{background: #F4F4F4;}
.maskimg{position: absolute;right: 0;width: 200px;top: 0;}




/*--------- Blog Area input Css ---------*/
.blogcategory ul li.yearnum:hover p{
    color:var(--emp-accent) !important;
}
.blogcategory ul li{border:1px solid #e9e9e9;padding:4px;}
.blogcategory ul li a:hover{color: var(--emp-accent);}
.blogarea h2, .blogarea h3, .blogarea h4, .blogarea h5, .blogarea h6{font-weight:bold;margin:20px 0px;}
.blogarea p{font-size:18px;}
.blogarea span{color: #000000;font-size:16px !important;}
.blogarea ul li, .blogarea ol li{font-size:18px;
/*padding: 8px 0px;line-height: 30px;*/
    
}
.blogarea img{width:100%;margin:20px 0px;border: 1px solid #dee2e6;}

/*---------Events Css --------- */
.medeventsdiv a:hover{text-decoration: none;}
.medevents{background: rgba(0, 0, 0, 0.04);cursor:pointer;height: 320px;}
.medevents:hover{background: #000000;}
.medevents p{color:#000000;}
.medevents:hover p{color:#ffffff;}
.medevents p.text-app{color:#000000;}
.medevents:hover p.text-app{color:var(--emp-accent);}
.venuedetails{height:45px;overflow-y:scroll;}
.medevents:hover span , .medevents:hover .title{color: var(--emp-accent) !important;}

/*--------- Tesimonial Css --------- */
.testimoimg{width: 75px;height: 75px;border-radius: 50%;}
.paginationcss .page-link {position: relative;display: block;padding: 15px 20px;line-height: 1.25;color: #121212;background-color: #fff;border: 1px solid #dee2e6;border-radius: 50%;margin-right: 16px;}
.page-item:first-child .page-link {border-radius: 50%;}
.paginationcss  .page-item:last-child .page-link {border-radius: 50%;}
.paginationcss .page-item.active .page-link {color: #000000;background-color: var(--emp-accent);border-color: #dee2e6;}


/*--------- Faq's Css --------- */
.faqsection a, .faqsection .text-link {color: #3a3a3a;}
.faqsection a:hover, .faqsection .text-link:hover {text-decoration: none;}

/*--------- video Gallery Css --------- */
.video_gallery_homepage .videogallery:hover span.vidtitle{
    color:var(--emp-accent) !important;
}
.vedioimg{position:relative;}
.videogallery{position: absolute;top: 0;bottom: 0;left: 0;right: 0;padding:15px;background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000000 100%);}
.vgallery .btnandtitle{position:absolute;bottom: 20px;}
.playbtnimg{position:absolute;left: 40%;top: 36%;width:130px;}
.playbtnimgvideo1{left: 75px;}

/*--------- Owl-Carousel Css --------- */
.owl-item a:hover{text-decoration: none;}
.owl-theme .owl-controls .owl-page span {background: var(--emp-accent);}
.owl-buttons{position: absolute;right: 74px;top: -70px;}
.owl-controls .owl-page, .owl-controls .owl-buttons div {cursor: pointer;background: #000000!important;width: 50px;}
.owl-controls .owl-page{background: transparent !important;width: 20px !important;}

/*--------- Contact Us and Write a Review Css ---------*/
.contactusform ::placeholder {color: #000000;font-size:18px;}
.contactusform{background: #F8FCFF;}
.contactusform .form-control{background: rgba(0, 0, 254, 0.04) !important;padding:25px 15px;border:1px solid #0A0CF4 !important;    border-radius: 7px;}
.writereview .form-control{background: transparent;padding: 25px 15px;}
.writereviewtestimonial .form-control{border: 1px solid #000000;}
.writereview .form-control::placeholder {color: #000000;}
.wreviewp{padding: 10px 10px !important;height: 52px;}
.wreviewpeople{background: rgba(0, 0, 0, 0.04);height: 240px;}
.wrpeopleimg{width: 50px;height: 50px;}
.peoplereview{height: 125px;overflow-y: auto;}
.mobilecon{width: 60px;position: absolute;left: 0px;top: -12px;}

/*--------- Social media icons Css ---------*/
.bg-fb{background: #3b5998;}
.bg-twit{background: #00acee;}
.bg-link{background: #0072b1;}
.bg-whats{background: #25D366;}

/*--------- Book Appointgment Css ---------*/
.bookappointment-text:hover .bookapptxt{
    color:var(--emp-accent-dk) !important;
}
.bookapmt .form-control{border: none !important;border-bottom: 1px solid #808080 !important;border-radius: 0;box-shadow: none;}
.bookapmt .form-control::placeholder{font-size:14px !important;}
.bookapmt .form-control{padding-left:0px !important;}
.appointmentimg{position: absolute;right: -100px;}
.appointmentslotscontainer label{background: #eee;border-radius: 4px;padding: 2px 8px;float: left;color: #000000;border: 1px solid #727272;}
.appointmentslotscontainer label:hover{background:#0A0CF4;color:#FFFFFF;}
.appointmentslotscontainer div{width:178px;text-align:center;position:relative;font-size: 16px;}

/*--------- Speciality's Css ---------*/
.specialtick ul{padding-left: 0px;}
/*.specialtick{    display: flex;*/
/*    align-items: center;}*/
.specialtick {
    position: absolute;
    left: -10px;
}
.artdate{right: 0px;position: absolute;bottom: 22px;background: var(--emp-accent);padding: 10px 15px;}

/*--------- Gallery Css ---------*/
.albumcss{height: 100%;overflow: hidden;}
.allimgnums {position: absolute;bottom: 90px;right: 0;left: 0;color: white;font-size: 18px;font-weight: 600;background: #14131394;text-align: center;}
.albumcss:hover .allimgnums{
    display:block !important;
}
/*--------- iframe Css ---------*/
.mapvenue iframe{width:100%;}

/*--------- Submit btn Searchbar Css ---------*/
.subbtnsearch{position: absolute;right: 8px;top: 8px;border:none !important;background:transparent;z-index:1;padding:0px 12px;color:transparent;}


/*--------- Custotm style ScrollBar Css ---------*/
.cusscroll ::-webkit-scrollbar {width: 2px;}
.cusscroll ::-webkit-scrollbar-track {box-shadow: inset 0 0 5px grey; }
.cusscroll ::-webkit-scrollbar-thumb {background: var(--emp-accent);  border-radius: 10px;}
.cusscroll ::-webkit-scrollbar-thumb:hover {background: #b30000; }


/*--------- Contact Us Css ---------*/
.c_row {display: flex;align-items: center;}
.workhrs.c_row{display: flex;align-items: normal;}
.c_row .c_icon {min-width:50px;height: 50px;vertical-align: middle;text-align: center;background: var(--emp-accent);border-radius: 50%;display: flex;justify-content: center; margin-right: 0.7em;}
.c_row .c_icon i {color: #000000;font-size: 24px;}
.contdetails .c_row .c_icon{align-items: center;}

.bookappfooter .c_row{align-items: start !important;}
.bookappfooter .c_row .c_icon {min-width:0px !important;height: 0px !important;}



/*.choosetickbefore ul , .specialtick ul{list-style:none !important;}*/
/*.choosetickbefore ul li{color:#ffffff;position:relative;margin-top:20px; }*/
/*.choosetickbefore ul li::before {content: url('https://wellvgo.com/assets/img/tickmark.png');margin-right:15px;position:absolute;left: -40px;}*/
/*--------- Footer Css ---------*/
footer p.footba::before{content: "";position: absolute;width: 420px;left: 0;height: 1px;background: #575757;top: 31px;}
footer p.footba::after{content: "";position: absolute;width: 420px;right: 0;height: 1px;background: #575757;top: 31px;}
.breadcrumb {border-radius: 0px;}

/*--------- Video Popup Css ---------*/
.video-block button.close {position: absolute;z-index: 999;background: #023047;color: #fff;padding: 10px;opacity: 1;right: 0;top: 0px;}

.text-red {color: red;}
.h-280{height:310px;object-fit:cover;}
.h-250{height:250px;object-fit:cover;}

/*--------- Responsive Css ---------*/
@media (max-width: 1200px) {
footer p.footba::before{display:none;}
footer p.footba::after{display:none;}
}  

@media (max-width: 1024px) {
.top_menu{display:none;}
.appointmentimg {display: none;}
.navbar{padding:20px;box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;}
}  

@media (max-width: 768px) {
.appointmentslotscontainer div {width: 250px;} 
.bookappempire{-ms-flex: 0 0 100%;flex: 0 0 100%;max-width: 100%;}
}

@media (max-width: 767px) {
/*COMMON CODE*/
.mob-d-flex{display:flex !important;}
.mob-flex-col{flex-direction:column !important;}
.mob-border-none{border:none !important;}
.mob-text-center{text-align:center !important;}
.height-auto{height:auto !important;}
.mobpx-0{padding-left: 0px !important;padding-right: 0px !important;}
.mobd-none{display:none !important;}
.mobp-static{position: static !important;}
.mobpl-15{padding-left: 15px !important;}
.mobpl-0{padding-left: 0px !important;}
.mobpr-15{padding-right: 15px !important;}
.mobpx-15{padding-left: 15px !important;padding-right: 15px !important;}
.mobpx-0{padding-left: 0px !important;padding-right: 0px !important;}
.mobmx-0{margin-left: 0px !important;margin-right: 0px !important;}
.mobmr-15{margin-right: 15px !important;}
.mobtext-center{text-align: center !important;}
.mobw-100{width: 100% !important;}
.mobmy-5px{margin: 5px 0px !important;}   
.mobfs-24{font-size: 24px !important;}
.moblh-3{line-height: 3;}
.mobtext-right{text-align:right !important;}
.mobjustify-right{justify-content:end !important;}
.file-upload-input {
    width: 200px !important;
}
.btnprimary {
    padding: 8px 22px !important;
    font-size: 14px;
}
.bred_flex {flex-direction: column;}
.banner_txt h1 {
    font-size: 24px;
    width: 100%;
}
.docimgabouthome{
    position: static;
}
.medevents{height: auto;}
.whychoosevideo{position:relative !important;}
/*casestudies*/
.casestudies_homepage  .owl-buttons{
    display:none;
}


} 


@media (max-width: 450px) {
.fs-65{font-size:40px !important;}
.fs-40{font-size:35px !important;}
.w-75{width:100% !important;}
.playbtnimg {width: 80px;}
.sideimg {display:none;}
.centext{text-align:center;}
.py-5{padding-top:10px !important; padding-bottom:10px !important;}
.pt-5{padding-top:10px !important;}
.owl-buttons {right: -4px;top: -38px;}
#testimonials_slider .owl-buttons {top: 0px;position: relative;}
.pt-3{padding-top: 0.5rem!important;}
.lh-60 {line-height: 52px;}
.mr-20{margin-right:0px !important;}
.w-250{width:200px;}
.navbar-brand.fs-30{font-size:26px !important;}
}  

@media (max-width: 375px) {
.navbar-brand.fs-30{font-size:20px !important;}
.fs-50 {font-size: 35px !important;}
.fs-40 {font-size: 28px !important;}
}  

@media (max-width: 325px) {
.docimgabout {width: 285px;height: 285px;}
.navbar-brand.fs-30{font-size:16px !important;}
}  

.services ul,
.doctors ul {
    padding-left: 24px !important;
}


/* ==========================================================================
   PREMIUM HERO EXPERIENCE  —  Top Bar + Floating Navbar + Hero Banner

   All design tokens (--dw-* and --emp-*) are declared in
   application/views/themes/empire/layout/theme_css.php, which is emitted
   inline in <head> before this file loads. Add new reusable values there,
   not here.
   ========================================================================== */

/* ---------- Header shell ---------- */
.site-header{width:100%;z-index:var(--emp-z-header);transition:background var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease);}
.site-header--solid{position:sticky;top:0;background:var(--dw-color-bg);box-shadow:var(--emp-shadow-header);}
.site-header--overlay{position:fixed;top:0;left:0;right:0;background:transparent;}

/* ---------- Top bar ---------- */
.site-header .top_menu{transition:background var(--emp-dur) var(--emp-ease), opacity .3s var(--emp-ease);}
.site-header .top_menu .row{align-items:center;}
.site-header .top_menu .top_left li{position:relative;}
.site-header .top_menu .top_left li:not(:last-child)::after{content:"";position:absolute;right:-14px;top:50%;transform:translateY(-50%);width:1px;height:14px;background:currentColor;opacity:.22;}
.site-header .top_menu a{transition:color var(--emp-dur-fast) var(--emp-ease), opacity var(--emp-dur-fast) var(--emp-ease);}
.site-header .top_menu a:hover{opacity:.82;text-decoration:none;}

.site-header--overlay .top_menu{background:transparent;border-bottom:1px solid var(--emp-stroke-faint);}
.site-header--overlay .top_menu,
.site-header--overlay .top_menu a,
.site-header--overlay .top_menu a span,
.site-header--overlay .top_menu p{color:var(--emp-fg-on-dark) !important;}
.site-header--overlay .top_menu .top_left li a i{color:var(--emp-accent);}
.site-header--overlay .top_menu .float-right a i{background:var(--emp-fill-soft);color:var(--emp-fg-on-dark);border:1px solid var(--emp-stroke);transition:var(--emp-dur-fast);}
.site-header--overlay .top_menu .float-right a:hover i{background:var(--emp-accent);color:var(--dw-btn-primary-text);border-color:var(--emp-accent);}
.site-header--overlay.scrolled .top_menu{opacity:0;visibility:hidden;height:0;padding:0;margin:0;border:0;overflow:hidden;}

/* ---------- Navbar ---------- */
.site-header .top-navbar-head{transition:background var(--emp-dur) var(--emp-ease), margin var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease);}
.site-header--solid .top-navbar-head{background:var(--dw-color-bg);}
.site-header .navbar-brand{display:inline-flex;align-items:center;line-height:1;}
.site-header .navbar-brand img,
.site-header .navbar-brand .w-250{width:auto !important;max-height:50px;}
/* When the CMS has no logo upload the brand falls back to plain text — give it
   the display serif so it reads as a wordmark. Silently skipped where :has()
   is unsupported, leaving the previous styling intact. */
.site-header .navbar-brand:not(:has(img)){font-family:var(--emp-display);font-weight:500 !important;letter-spacing:.5px;}

.site-header .navbar-nav{align-items:center;}
.site-header .navbar-nav .nav-item{margin:0 2px;}
.site-header .navbar-nav .nav-link{position:relative;font-size:15px;font-weight:500;letter-spacing:.1px;transition:color var(--emp-dur-fast) var(--emp-ease);}
/* Underline reveal on hover / current page */
.site-header .navbar-nav > .nav-item > .nav-link::after{content:"";position:absolute;left:14px;right:14px;bottom:2px;height:2px;border-radius:2px;background:var(--emp-accent);transform:scaleX(0);transform-origin:center;transition:transform .3s var(--emp-ease);}
.site-header .navbar-nav > .nav-item > .nav-link:hover::after,
.site-header .navbar-nav > .nav-item > .nav-link.active::after{transform:scaleX(1);}
.site-header .nav-cta .nav-link::after{display:none !important;}

/* --- Floating glass pill (homepage, sitting over the hero) ---
   The inner .container is the pill itself, so the brand lines up with the
   hero headline underneath it at every breakpoint. */

/* Fluid layout keeps the pill off the viewport edges */
.site-header--overlay .top-navbar-head > .container-fluid{margin:0 clamp(16px,5vw,90px);width:auto;}

/* Over the hero the brand reads light. Kept at .site-header--overlay weight so
   the .scrolled rule below outranks it. */
.site-header--overlay .navbar-brand{color:var(--emp-brand-fg-on-hero) !important;}

/* --- Nav link colours, resolved per header state ---
   The two locals below are STATE BINDINGS, not design values — each is assigned
   from a token declared in theme_css.php. Because custom properties inherit,
   the state is selected by setting them on the header (or on the mobile sheet)
   while the rules that consume them keep one fixed specificity. That avoids
   re-tuning weights for every state x dropdown x breakpoint combination, which
   is what previously let the amber globals leak through on inner pages.

     inner pages, and homepage once scrolled -> dark base, dark hover/active
     homepage over the hero                  -> dark base, light hover/active
     mobile collapsed sheet (always dark)    -> light base, light hover/active  */
.site-header{--emp-nav-fg:var(--dw-color-text);--emp-nav-fg-active:var(--dw-color-text);}
.site-header--overlay:not(.scrolled){--emp-nav-fg:var(--emp-nav-fg-on-hero);--emp-nav-fg-active:var(--emp-fg-on-dark);}

.site-header .navbar-nav .nav-link{color:var(--emp-nav-fg) !important;}
.site-header .navbar-nav .nav-link:hover,
.site-header .navbar-nav .nav-link.active,
.site-header .navbar-nav .dropdown .nav-link:hover,
.site-header .navbar-nav .dropdown .nav-link.active{color:var(--emp-nav-fg-active) !important;}

.site-header--overlay .navbar-toggler{border-color:var(--emp-fg-on-dark) !important;}
.site-header--overlay:not(.scrolled) .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255,255,255,0.95)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");}

/* Overlay -> solid on scroll */
.site-header--overlay.scrolled .top-navbar-head{margin:0;background:var(--dw-color-bg) !important;box-shadow:var(--emp-shadow-header);}
.site-header--overlay.scrolled .top-navbar-head > .container,
.site-header--overlay.scrolled .top-navbar-head > .container-fluid{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;border-radius:0;box-shadow:none;margin-left:auto;margin-right:auto;padding:0 15px;}
/* Only the brand needs an explicit scrolled colour — the nav links (base and
   hover/active) follow --emp-nav-fg / --emp-nav-fg-active, which revert to
   dark automatically once .scrolled removes the :not(.scrolled) binding. */
.site-header--overlay.scrolled .navbar-brand{color:var(--dw-color-text) !important;}

/* --- Nav CTA ---
   Over the hero it reads as a quiet glass chip so the pill stays clean like
   the reference; once the header goes solid it becomes the brand amber. */
.btn-nav-cta{background:var(--emp-accent);color:var(--dw-btn-primary-text) !important;border-radius:var(--dw-radius-pill);padding:10px 26px !important;font-size:14px;font-weight:700 !important;box-shadow:0 12px 26px -12px rgba(247,179,43,.7);box-shadow:var(--emp-shadow-cta);transition:transform var(--emp-dur-fast) var(--emp-ease), background var(--emp-dur-fast) var(--emp-ease), color var(--emp-dur-fast) var(--emp-ease), border-color var(--emp-dur-fast) var(--emp-ease);}
.btn-nav-cta:hover{background:var(--dw-btn-secondary-bg);color:var(--emp-accent) !important;transform:translateY(-2px);}
/* Uses --emp-nav-fg (not the raw token) so the chip follows the same state
   binding as the links: dark over the hero, light inside the mobile dark sheet. */
.site-header--overlay:not(.scrolled) .btn-nav-cta{background:var(--emp-fill-soft);border:1px solid var(--emp-stroke-strong);color:var(--emp-nav-fg) !important;box-shadow:none;}
.site-header--overlay:not(.scrolled) .btn-nav-cta:hover{background:var(--emp-fg-on-dark);border-color:var(--emp-fg-on-dark);color:var(--emp-hero-ink) !important;}

/* ---------- Hero / Slider ---------- */
.hero-premium{position:relative;overflow:hidden;border-bottom-left-radius:var(--emp-radius-hero);border-bottom-right-radius:var(--emp-radius-hero);background:var(--emp-hero-ink);}
.hero-premium .carousel-item{position:relative;min-height:clamp(560px,80vh,800px);}
.hero-premium .banner_slider{position:relative;height:100%;}
.hero-premium .banner_slider img{width:100%;height:clamp(665px,80vh,800px);object-fit:cover;object-position:72% center;}

/* Warm espresso scrim: top scrim keeps the navbar legible, the angled sweep
   carries the headline, the base vignette settles the composition. */
.hero-premium .hero-gradient{position:absolute;inset:0;z-index:1;pointer-events:none;
    /* Literal fallback first: browsers without var() support still get a
       readable scrim instead of white text on a bright photograph. */
    background:
      linear-gradient(180deg, rgba(74,46,33,.55) 0%, rgba(74,46,33,.14) 22%, rgba(74,46,33,0) 34%),
      linear-gradient(97deg,  rgba(74,46,33,.93) 0%, rgba(74,46,33,.80) 26%, rgba(74,46,33,.44) 52%, rgba(74,46,33,.10) 78%, rgba(74,46,33,0) 100%),
      linear-gradient(0deg,   rgba(74,46,33,.52) 0%, rgba(74,46,33,0) 40%),
      linear-gradient(0deg,   rgba(74,46,33,.10) 0%, rgba(74,46,33,.10) 100%);
    background:
      linear-gradient(180deg, rgba(var(--emp-hero-tint),.55) 0%, rgba(var(--emp-hero-tint),.14) 22%, rgba(var(--emp-hero-tint),0) 34%),
      linear-gradient(97deg,  rgba(var(--emp-hero-tint),.93) 0%, rgba(var(--emp-hero-tint),.80) 26%, rgba(var(--emp-hero-tint),.44) 52%, rgba(var(--emp-hero-tint),.10) 78%, rgba(var(--emp-hero-tint),0) 100%),
      linear-gradient(0deg,   rgba(var(--emp-hero-tint),.52) 0%, rgba(var(--emp-hero-tint),0) 40%),
      linear-gradient(0deg,   rgba(var(--emp-hero-tint),.10) 0%, rgba(var(--emp-hero-tint),.10) 100%);}
.hero-premium [class*="overlay_"]::before{z-index:0;}
.hero-premium .hero-gradient{z-index:var(--emp-z-hero-scrim);}

.hero-premium .banner_txt{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);width:100%;z-index:var(--emp-z-hero-copy);color:var(--emp-fg-on-dark);padding-top:56px;}
.hero-premium .banner_txt .hero-content{max-width:600px;}

/* Editorial serif headline. text-transform is reset so the CMS-authored
   casing ("Care for Women") survives the global heading capitalize rule. */
.hero-premium .banner_txt h1 {
    font-family: var(--emp-display);
    font-size: 50px;
    line-height: 1.2;
    font-weight: 400;
    /* letter-spacing: -.005em; */
    text-transform: none;
    color: var(--emp-fg-on-dark);
    width: 85%;
    margin: 0 0 32px;
}
.hero-premium .banner_txt p{font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.65;font-weight:400;color:var(--emp-fg-on-dark-muted) !important;width:100%;max-width:500px;margin:0 0 32px;}

.hero-premium .banner_txt .buttons{display:flex;flex-wrap:wrap;gap:14px;}
.hero-premium .banner_txt .buttons .btn{padding:13px 30px !important;font-size:14px;border-radius:var(--dw-radius-pill) !important;transition:transform var(--emp-dur-fast) var(--emp-ease), background var(--emp-dur-fast) var(--emp-ease), color var(--emp-dur-fast) var(--emp-ease);}
/* Primary hero action reads white-on-dark for maximum contrast against the
   scrim; brand amber is retained as the hover state. */
/*.hero-premium .banner_txt .buttons .btn.btnprimary{background:var(--emp-fg-on-dark) !important;color:var(--emp-hero-ink) !important;box-shadow:var(--emp-shadow-btn);}*/
.hero-premium .banner_txt .buttons .btn.btnprimary:hover{background:var(--emp-accent) !important;color:var(--emp-hero-ink) !important;transform:translateY(-2px);}
/* A second slider button becomes the secondary, outlined action */
.hero-premium .banner_txt .buttons .btn.btnprimary:not(:first-child){background:transparent !important;color:var(--emp-fg-on-dark) !important;border:1px solid var(--emp-stroke-strong);box-shadow:none;}
.hero-premium .banner_txt .buttons .btn.btnprimary:not(:first-child):hover{background:var(--emp-fill-soft) !important;border-color:var(--emp-fg-on-dark);color:var(--emp-fg-on-dark) !important;}

/* --- Trust badge: figure block first, overlapping avatars trailing it --- */
.hero-trust{display:flex;align-items:center;gap:22px;margin-top:28px;}
.hero-trust .avatars{display:flex;order:2;}
.hero-trust .avatars img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid var(--emp-fg-on-dark);margin-left:-16px;box-shadow:var(--emp-shadow-avatar);}
.hero-trust .avatars img:first-child{margin-left:0;}
.hero-trust .trust-num{display:block;color:var(--emp-fg-on-dark) !important;font-weight:700;font-size:1.6rem;line-height:1.15;letter-spacing:.2px;}
.hero-trust .trust-label{display:block;color:var(--emp-fg-on-dark-soft) !important;font-size:.875rem;font-weight:500;}

/* Honour the CMS text-alignment picker on the slider (inline style) */
.hero-premium .banner_txt[style*="center"] .hero-content{margin-left:auto;margin-right:auto;}
.hero-premium .banner_txt[style*="center"] .buttons,
.hero-premium .banner_txt[style*="center"] .hero-trust{justify-content:center;}
.hero-premium .banner_txt[style*="right"] .hero-content{margin-left:auto;}
.hero-premium .banner_txt[style*="right"] .buttons,
.hero-premium .banner_txt[style*="right"] .hero-trust{justify-content:flex-end;}

/* --- Carousel chrome, restyled to match the glass language --- */
.hero-premium .carousel-indicators{z-index:var(--emp-z-hero-chrome);bottom:28px;margin-bottom:0;align-items:center;}
.hero-premium .carousel-indicators li{width:8px;height:8px;border-radius:var(--dw-radius-pill);background:var(--emp-fill-dim);border:0;opacity:1;transition:width .3s var(--emp-ease), background .3s var(--emp-ease);}
.hero-premium .carousel-indicators li.active{width:28px;background:var(--emp-accent);}
.hero-premium .carousel-control-prev,
.hero-premium .carousel-control-next{z-index:var(--emp-z-hero-chrome);width:48px;height:48px;top:auto;bottom:22px;opacity:1;border-radius:50%;background:var(--emp-fill-soft);border:1px solid var(--emp-stroke);-webkit-backdrop-filter:var(--emp-blur-sm);backdrop-filter:var(--emp-blur-sm);transition:background var(--emp-dur-fast) var(--emp-ease), border-color var(--emp-dur-fast) var(--emp-ease);}
.hero-premium .carousel-control-prev{left:auto;right:84px;}
.hero-premium .carousel-control-next{right:24px;}
.hero-premium .carousel-control-prev:hover,
.hero-premium .carousel-control-next:hover{background:var(--emp-fg-on-dark);border-color:var(--emp-fg-on-dark);}
.hero-premium .carousel-control-prev:hover .carousel-control-prev-icon,
.hero-premium .carousel-control-next:hover .carousel-control-next-icon{filter:invert(1);}
.hero-premium .carousel-control-prev-icon,
.hero-premium .carousel-control-next-icon{width:16px;height:16px;}

/* --- Entrance micro-interaction (one subtle staggered rise, no loops) --- */
@keyframes empHeroRise{from{opacity:0;transform:translateY(22px);}to{opacity:1;transform:none;}}
.hero-premium .carousel-item.active .hero-content > *{animation:empHeroRise var(--emp-dur-slow) var(--emp-ease) both;}
.hero-premium .carousel-item.active .hero-content > *:nth-child(1){animation-delay:.10s;}
.hero-premium .carousel-item.active .hero-content > *:nth-child(2){animation-delay:.20s;}
.hero-premium .carousel-item.active .hero-content > *:nth-child(3){animation-delay:.30s;}
.hero-premium .carousel-item.active .hero-content > *:nth-child(4){animation-delay:.40s;}

/* --- Accessibility: visible keyboard focus on the dark hero + glass pill --- */
.site-header--overlay .navbar-nav .nav-link:focus-visible,
.site-header--overlay .navbar-brand:focus-visible,
.hero-premium .banner_txt .buttons .btn:focus-visible,
.hero-premium .carousel-control-prev:focus-visible,
.hero-premium .carousel-control-next:focus-visible,
.hero-premium .carousel-indicators li:focus-visible{outline:2px solid var(--emp-accent);outline-offset:3px;border-radius:6px;}

@media (prefers-reduced-motion:reduce){
    .hero-premium .carousel-item.active .hero-content > *{animation:none !important;}
    .site-header,
    .site-header .top-navbar-head,
    .site-header--overlay .top-navbar-head > .container,
    .hero-premium .banner_txt .buttons .btn,
    .btn-nav-cta{transition:none !important;}
    .btn-nav-cta:hover,
    .hero-premium .banner_txt .buttons .btn:hover{transform:none !important;}
}

/* ---------- Responsive ---------- */
@media (max-width:1199px){
    .site-header .navbar-nav .nav-item{margin:0;}
    .site-header .navbar-nav .nav-item.px-3{padding-left:10px !important;padding-right:10px !important;}
    .site-header--overlay .top-navbar-head > .container,
    .site-header--overlay .top-navbar-head > .container-fluid{padding-left:22px;}
    .btn-nav-cta{padding:9px 20px !important;}
}
@media (max-width:991px){
    .hero-premium .carousel-item,
    .hero-premium .banner_slider img{min-height:clamp(520px,72vh,660px);height:clamp(520px,72vh,660px);}
    .hero-premium .banner_txt .hero-content{max-width:520px;}
}
@media (max-width:767px){
    .site-header--overlay .top-navbar-head{margin:10px 0 0;}
    .site-header--overlay .top-navbar-head > .container,
    .site-header--overlay .top-navbar-head > .container-fluid{border-radius:26px;padding:10px 16px;margin:0 12px;width:auto;}
    /* Collapsed menu becomes a dark sheet so links stay readable over the photo.
       The state locals are rebound here rather than via a colour rule: the sheet
       is dark in every state, so base AND hover/active must stay light, and
       binding on the sheet holds regardless of .scrolled or dropdown depth —
       inheritance resolves from the nearest ancestor, so there is no specificity
       contest with the header-level bindings above. */
    .site-header--overlay .navbar-collapse{
        margin-top:12px;
        background:rgba(var(--emp-hero-tint),.96);
        border:1px solid var(--emp-stroke-faint);
        border-radius:var(--emp-radius-sheet);
        padding:12px 16px;
        --emp-nav-fg:var(--emp-fg-on-dark);
        --emp-nav-fg-active:var(--emp-fg-on-dark);
    }
    .site-header .navbar-nav{align-items:stretch;}
    .site-header .navbar-nav > .nav-item > .nav-link::after{display:none;}
    .btn-nav-cta{display:block;text-align:center;margin-top:8px;}

    .hero-premium{border-bottom-left-radius:var(--emp-radius-hero-sm);border-bottom-right-radius:var(--emp-radius-hero-sm);}
    .hero-premium .carousel-item,
    .hero-premium .banner_slider img{min-height:540px;height:540px;}
    .hero-premium .banner_slider img{object-position:66% center;}
    /* Vertical stack: scrim runs bottom-up instead of left-to-right */
    .hero-premium .hero-gradient{
        background:linear-gradient(180deg, rgba(74,46,33,.62) 0%, rgba(74,46,33,.18) 30%, rgba(74,46,33,.30) 55%, rgba(74,46,33,.86) 100%);
        background:linear-gradient(180deg, rgba(var(--emp-hero-tint),.62) 0%, rgba(var(--emp-hero-tint),.18) 30%, rgba(var(--emp-hero-tint),.30) 55%, rgba(var(--emp-hero-tint),.86) 100%);}
    .hero-premium .banner_txt{top:auto;bottom:0;transform:none;padding:0 0 44px;}
    .hero-premium .banner_txt .hero-content{max-width:100%;}
    .hero-premium .banner_txt h1{font-size:clamp(1.75rem,7.4vw,2.35rem);line-height:1.22;margin-bottom:22px;}
    .hero-premium .banner_txt p{font-size:1rem;max-width:100%;margin-bottom:24px;}
    .hero-premium .banner_txt .buttons .btn{padding:11px 26px !important;}
    .hero-trust{margin-top:22px;gap:16px;}
    .hero-trust .avatars img{width:38px;height:38px;margin-left:-14px;}
    .hero-trust .trust-num{font-size:1.35rem;}
    /* Chrome would collide with the stacked copy */
    .hero-premium .carousel-control-prev,
    .hero-premium .carousel-control-next{display:none;}
    .hero-premium .carousel-indicators{bottom:16px;}
}
@media (max-width:480px){
    .hero-premium .carousel-item,
    .hero-premium .banner_slider img{min-height:500px;height:500px;}
    .hero-premium .banner_txt{padding-bottom:34px;}
    .hero-trust .avatars img{width:34px;height:34px;margin-left:-12px;}
}


/* ==========================================================================
   SERVICES  —  homepage deck + listing page
   Shared card component so both surfaces use one design language.
   ========================================================================== */
.emp-services{position:relative;overflow:hidden;padding:76px 0 86px;
    background:linear-gradient(135deg, var(--emp-mocha) 0%, var(--emp-mocha-dk) 100%);}
/* Soft sheen standing in for the faded photograph in the reference */
.emp-services::before{content:"";position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(68% 58% at 74% -10%, rgba(255,255,255,.17) 0%, rgba(255,255,255,0) 62%);}
.emp-services > .container,
.emp-services > .container-fluid{position:relative;z-index:1;}

.emp-services__title{text-align:center;color:var(--emp-fg-on-dark) !important;font-weight:700;
    font-size:clamp(1.55rem,2.4vw,2.05rem);line-height:1.25;margin:0 0 46px;}

.emp-services__row{align-items:center;}
.emp-services__intro{padding-right:42px;}
.emp-services__lead,
.emp-services__lead p{color:var(--emp-fg-on-dark-soft) !important;font-size:.95rem;line-height:1.9;margin:0 0 12px;}
.emp-services__lead{margin-bottom:30px;}

/* Light pill CTA (also used by the listing page's View More submit) */
.emp-btn-light{display:inline-block;background:var(--emp-fg-on-dark);color:var(--emp-mocha-dk) !important;
    border:0;border-radius:var(--dw-radius-pill);padding:13px 32px;font-size:14px;font-weight:600;
    box-shadow:0 14px 30px -18px rgba(0,0,0,.6);
    transition:transform var(--emp-dur-fast) var(--emp-ease), background var(--emp-dur-fast) var(--emp-ease), color var(--emp-dur-fast) var(--emp-ease);}
.emp-btn-light:hover,
.emp-btn-light:focus{background:var(--emp-accent);color:var(--emp-hero-ink) !important;text-decoration:none;transform:translateY(-2px);}

/* --- Slide / grid cell ---
   Also carries the CMS container/container-fluid class, so its max-width and
   gutters are neutralised here rather than by editing that conditional. */
.emp-service-slide{max-width:none !important;width:100%;padding:6px 9px !important;margin:0 !important;}
.emp-service-link{display:block;text-decoration:none !important;}

/* --- Card ---
   Fixed height so every card in the grid (and every carousel slide) matches:
   beige image frame on top, warm brown gradient panel beneath. */
.emp-service-card{position:relative;display:flex;flex-direction:column;overflow:hidden;
    height:390px;border-radius:20px;
    background:linear-gradient(180deg, var(--emp-grad-brown-from) 0%, var(--emp-grad-brown-to) 100%);
    box-shadow:0 16px 34px -20px rgba(60,38,26,.45);
    transition:transform var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease);}
.emp-service-link:hover .emp-service-card,
.emp-service-link:focus-visible .emp-service-card{transform:translateY(-9px);
    box-shadow:0 34px 58px -22px rgba(60,38,26,.6);}
/* Gradient deepens on hover — a second layer cross-fades so the base stays put */
.emp-service-card::after{content:"";position:absolute;inset:0;z-index:0;opacity:0;pointer-events:none;
    background:linear-gradient(180deg, var(--emp-brown) 0%, var(--emp-brown-deep) 100%);
    transition:opacity var(--emp-dur) var(--emp-ease);}
.emp-service-link:hover .emp-service-card::after,
.emp-service-link:focus-visible .emp-service-card::after{opacity:1;}

/* Image sits in a soft beige frame occupying ~70% of the card */
.emp-service-card__media{position:relative;z-index:1;flex:0 0 70%;display:block;overflow:hidden;
    background:var(--emp-beige);padding:8px;border-radius:20px 20px 0 0;}
.emp-service-card__img{display:block;width:100%;height:100%;object-fit:cover;border-radius:14px;
    transition:transform .6s var(--emp-ease);}
.emp-service-link:hover .emp-service-card__img{transform:scale(1.05);}

.emp-service-card__body{position:relative;z-index:1;flex:1 1 auto;min-height:0;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    text-align:center;padding:14px 16px 16px;}
.emp-service-card__name{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    color:#fff !important;font-size:1.15rem;font-weight:600;line-height:1.3;margin:0 0 10px;}
/* The reference card shows media + name + arrow only. The short description is
   still rendered (no dynamic code removed) — delete this rule to surface it. */
.emp-service-card__desc{display:none;}

.emp-service-card__go{display:inline-flex;align-items:center;justify-content:center;
    width:42px;height:42px;flex:0 0 42px;border-radius:50%;
    background:#fff;color:var(--emp-brown);font-size:19px;line-height:1;
    box-shadow:0 6px 16px -6px rgba(0,0,0,.35);
    transition:background var(--emp-dur-fast) var(--emp-ease), color var(--emp-dur-fast) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease);}
.emp-service-card__go i{line-height:1;transition:transform var(--emp-dur-fast) var(--emp-ease);}
.emp-service-link:hover .emp-service-card__go,
.emp-service-link:focus-visible .emp-service-card__go{background:var(--emp-brown);color:#fff;transform:scale(1.08);}
.emp-service-link:hover .emp-service-card__go i{transform:translateX(3px);}

/* --- Owl chrome inside the deck ---
   Deliberately no overflow/position overrides on .owl-wrapper-outer or
   .owl-buttons: the wrapper's clipping is what makes the carousel work, and the
   section is overflow:hidden for the sheen, so negative offsets would vanish.
   Only the pagination dots are restyled for the mocha background. */
.emp-services__deck .owl-item{padding-bottom:4px;}
.emp-services__deck .owl-pagination{margin-top:18px;}
.emp-services__deck .owl-theme .owl-controls .owl-page span{background:var(--emp-fg-on-dark);opacity:.45;}
.emp-services__deck .owl-theme .owl-controls .owl-page.active span{opacity:1;background:var(--emp-accent);}

/* --- Listing page --- */
.emp-services--page{padding-top:60px;}
.emp-services--page .emp-services__title{margin-bottom:14px;}
.emp-services--page .emp-services__lead{max-width:760px;margin:0 auto 40px;text-align:center;}
.emp-services--page .emp-service-slide{padding:12px !important;}
.emp-services--page .btn_submit{margin-top:26px;}

@media (max-width:1199px){
    .emp-services__intro{padding-right:24px;}
}
@media (max-width:991px){
    .emp-services{padding:60px 0 68px;}
    .emp-services__title{margin-bottom:30px;}
    /* Stacks: intro reads centred above the deck */
    .emp-services__intro{padding-right:0;text-align:center;margin-bottom:34px;}
    .emp-services__lead{max-width:620px;margin-left:auto;margin-right:auto;}
}
@media (max-width:767px){
    .emp-services{padding:48px 0 58px;}
    /* Single column: cards go full width, so relax the fixed height a little */
    .emp-service-card{height:340px;border-radius:18px;}
    .emp-service-card__media{border-radius:18px 18px 0 0;}
    .emp-service-card__name{font-size:1.05rem;}
    .emp-services--page .emp-service-slide{padding:8px !important;}
}
@media (max-width:575px){
    .emp-service-slide{padding:6px 4px !important;}
    .emp-services__lead,
    .emp-services__lead p{font-size:.92rem;line-height:1.8;}
}

@media (prefers-reduced-motion:reduce){
    .emp-service-card,
    .emp-service-card__img,
    .emp-service-card__go,
    .emp-btn-light{transition:none !important;}
    .emp-service-link:hover .emp-service-card,
    .emp-service-link:hover .emp-service-card__img,
    .emp-service-link:hover .emp-service-card__go,
    .emp-btn-light:hover{transform:none !important;}
}


/* ==========================================================================
   CASE STUDIES  —  editorial feature card carousel
   ========================================================================== */
.emp-cases{padding:96px 0;}
.emp-cases__title{text-align:center;font-family:var(--emp-display);font-weight:500;letter-spacing:.02em;
    text-transform:none;font-size:clamp(1.45rem,2.2vw,1.9rem);line-height:1.3;
    color:var(--emp-brown-dk) !important;margin:0 0 44px;}

/* One card per slide (owl singleItem), capped at ~78% of the container and
   centred — the 70-80% width the reference sits at. */
.emp-cases__slide{padding:6px 12px;}
.emp-cases__slide .emp-case-card{max-width:900px;margin:0 auto;}
.emp-case-link{display:block;text-decoration:none !important;}

.emp-case-card{position:relative;overflow:hidden;background:var(--emp-cream);border-radius:20px;
    padding:38px 44px;
    transition:transform var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease);}
/* Left accent strip — clipped by the card's own radius, so its ends follow the corners */
.emp-case-card__accent{position:absolute;left:0;top:0;bottom:0;width:4px;
    border-radius:var(--dw-radius-pill);background:var(--emp-brown-dk);}
.emp-case-link:hover .emp-case-card,
.emp-case-link:focus-visible .emp-case-card{transform:translateY(-4px);box-shadow:0 24px 48px -26px rgba(80,52,38,.42);}

.emp-case-card__head{display:flex;align-items:center;gap:22px;margin-bottom:24px;}
.emp-case-card__avatar{width:72px;height:72px;flex:0 0 72px;border-radius:50%;object-fit:cover;
    border:3px solid #fff;box-shadow:0 4px 14px rgba(80,52,38,.18);}
.emp-case-card__heading{min-width:0;}
.emp-case-card__eyebrow{display:block;font-size:.78rem;font-weight:500;letter-spacing:.05em;
    color:var(--emp-brown-lt) !important;margin-bottom:6px;}
.emp-case-card__title{font-family:var(--emp-display);font-weight:500;text-transform:none;
    font-size:clamp(1.15rem,1.75vw,1.5rem);line-height:1.28;color:var(--emp-brown) !important;margin:0;
    display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
/* Hairline gives the shorter card (no info-card row) some editorial structure */
.emp-case-card__quote{font-size:.95rem;line-height:1.8;color:var(--emp-muted) !important;margin:0;
    padding-top:20px;border-top:1px solid rgba(80,52,38,.10);
    display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}

.emp-cases__more{text-align:center;margin-top:10px;}
.emp-cases__more a{color:var(--emp-brown) !important;font-size:.9rem;font-weight:600;}

/* --- Carousel controls: centred pair below the card ---
   Overrides the theme's absolute top-right placement and owl.theme's black
   pills. display is forced because a mobile rule hides .casestudies_homepage
   buttons, and the reference keeps them visible at every width. */
.emp-cases .owl-buttons{position:static !important;display:flex !important;justify-content:center;
    gap:14px;margin-top:28px;right:auto;top:auto;}
.emp-cases .owl-controls .owl-buttons div{width:34px !important;height:34px;margin:0;padding:0;opacity:1;
    border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:15px;
    background:#E7E1DD !important;color:var(--emp-brown-dk);
    transition:background var(--emp-dur-fast) var(--emp-ease), color var(--emp-dur-fast) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease);}
.emp-cases .owl-controls .owl-buttons .owl-next{background:var(--emp-brown) !important;color:#fff;}
.emp-cases .owl-controls .owl-buttons div:hover{transform:translateY(-2px);}
.emp-cases .owl-controls .owl-buttons .owl-prev:hover{background:var(--emp-brown-lt) !important;color:#fff;}
.emp-cases .owl-controls .owl-buttons .owl-next:hover{background:var(--emp-brown-dk) !important;}
/* The CMS JS injects fa-arrow icons; the reference uses chevrons, so the glyph
   is swapped here rather than by touching that navigationText option. */
.emp-cases .owl-buttons div i{display:none;}
.emp-cases .owl-buttons .owl-prev::before{content:"\f104";font-family:FontAwesome;}
.emp-cases .owl-buttons .owl-next::before{content:"\f105";font-family:FontAwesome;}

@media (max-width:991px){
    .emp-cases{padding:70px 0;}
    .emp-cases__title{margin-bottom:32px;}
    .emp-case-card{padding:30px 32px;}
    .emp-case-card__head{gap:18px;margin-bottom:20px;}
    .emp-case-card__avatar{width:64px;height:64px;flex:0 0 64px;}
}
@media (max-width:767px){
    .emp-cases{padding:54px 0;}
    .emp-cases__slide{padding:6px 6px;}
    .emp-case-card{padding:24px 24px 24px 26px;border-radius:16px;}
    .emp-case-card__head{gap:16px;margin-bottom:18px;}
    .emp-case-card__avatar{width:56px;height:56px;flex:0 0 56px;}
    .emp-case-card__quote{padding-top:16px;font-size:.92rem;}
}
@media (max-width:575px){
    /* Profile stacks above the heading */
    .emp-case-card__head{flex-direction:column;align-items:flex-start;gap:14px;}
    .emp-case-card__quote{-webkit-line-clamp:5;line-clamp:5;}
}

@media (prefers-reduced-motion:reduce){
    .emp-case-card,
    .emp-cases .owl-controls .owl-buttons div{transition:none !important;}
    .emp-case-link:hover .emp-case-card,
    .emp-cases .owl-controls .owl-buttons div:hover{transform:none !important;}
}


/* ==========================================================================
   BLOGS  —  alternating dark/light editorial feature cards
   One card component; the --dark / --light modifiers carry all the contrast.
   ========================================================================== */
.emp-blogs{padding:96px 0;}
.emp-blogs__title{text-align:center;font-weight:700;text-transform:none;letter-spacing:-.01em;
    font-size:clamp(1.5rem,2.3vw,1.95rem);line-height:1.3;
    color:var(--emp-brown) !important;margin:0 0 46px;}

.emp-blog-slide{padding:8px 12px;}

/* --- DEFAULT STATE: clean, light, understated -------------------------------
   Every card starts here. The featured (dark) treatment is applied purely on
   interaction below, so only the card being pointed at / focused transforms. */
.emp-blog-card{position:relative;overflow:hidden;display:flex;align-items:stretch;gap:24px;
    border-radius:22px;padding:26px;min-height:250px;
    background:#fff;border:1px solid var(--emp-border);
    transition:border-color var(--emp-dur-flow) var(--emp-ease),
               transform var(--emp-dur-flow) var(--emp-ease), box-shadow var(--emp-dur-flow) var(--emp-ease);}

/* --- Colour-flow layer ---
   The card background stays white; this layer is what turns it brown. It is
   anchored to the left edge (where the accent strip sits) and scaled to zero
   width at rest, so on hover the theme colour appears to pour out of the strip
   and sweep left-to-right. scaleX is used rather than animating width so the
   sweep stays on the compositor — and since the layer is a flat colour, there
   is nothing for the scale to distort. Clipped by the card's overflow/radius. */
.emp-blog-card::before{content:"";position:absolute;left:0;top:0;bottom:0;right:0;z-index:0;
    background:var(--emp-brown);transform:scaleX(0);transform-origin:left center;
    transition:transform var(--emp-dur-flow) var(--emp-ease);}

/* Accent strip: the visual origin of the sweep, so it stays brown at all times
   and sits above the flow layer. */
.emp-blog-card__spine{position:absolute;left:0;top:0;bottom:0;width:100px;background:var(--emp-brown);z-index:1;
    transition:background var(--emp-dur-flow) var(--emp-ease);}

.emp-blog-card__media{position:relative;z-index:2;flex:0 0 38%;max-width:38%;display:block;
    border-radius:12px;overflow:hidden;align-self:stretch;}
.emp-blog-card__media img{width:100%;height:200px;object-fit:cover;display:block;
    transition:transform var(--emp-dur-slow) var(--emp-ease);}

.emp-blog-card__body{position:relative;z-index:2;flex:1 1 auto;min-width:0;display:flex;flex-direction:column;}

/* The inner elements carry no transition-delay at rest, so leaving the card
   returns everything together; the delay is added only in the featured rules
   below, which makes the text flip just after the colour wave reaches it. */
.emp-blog-card__date{align-self:flex-start;border-radius:var(--dw-radius-pill);background:transparent;
    padding:5px 14px;font-size:.75rem;font-weight:500;letter-spacing:.02em;margin-bottom:16px;
    border:1px solid var(--emp-brown-dk);color:var(--emp-brown-dk) !important;
    transition:color var(--emp-dur-flow) var(--emp-ease), border-color var(--emp-dur-flow) var(--emp-ease);
    transition-delay:0s;}

.emp-blog-card__title{font-size:clamp(1.05rem,1.5vw,1.32rem);font-weight:700;line-height:1.35;margin:0;
    text-transform:none;
    display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.emp-blog-card__title,
.emp-blog-card__title a{color:var(--emp-brown-dk) !important;text-decoration:none !important;
    transition:color var(--emp-dur-flow) var(--emp-ease);transition-delay:0s;}

/* Reference shows date + title + CTA only. The excerpt stays rendered (no
   dynamic output removed) — delete this rule to surface it. */
.emp-blog-card__excerpt{display:none;}

.emp-blog-card__cta{align-self:flex-end;margin-top:auto;display:inline-block;
    border-radius:var(--dw-radius-pill);padding:11px 26px;font-size:.85rem;font-weight:600;
    background:transparent;border:1px solid var(--emp-brown-dk);color:var(--emp-brown-dk) !important;
    transition:background var(--emp-dur-flow) var(--emp-ease), color var(--emp-dur-flow) var(--emp-ease),
               border-color var(--emp-dur-flow) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease),
               box-shadow var(--emp-dur-flow) var(--emp-ease);transition-delay:0s;}

/* --- FEATURED STATE ---------------------------------------------------------
   :hover for pointers, :focus-within for keyboards, :active for touch — the
   same transformation for all three, so mobile taps get it too.
   The card's own background is NOT changed here: ::before does the colour work
   so it sweeps in from the left rather than cross-fading in place. */
.emp-blog-card:hover,
.emp-blog-card:focus-within,
.emp-blog-card:active{border-color:var(--emp-brown);
    transform:translateY(-7px);box-shadow:0 30px 56px -26px rgba(81,51,36,.55);}

/* The wave itself */
.emp-blog-card:hover::before,
.emp-blog-card:focus-within::before,
.emp-blog-card:active::before{transform:scaleX(1);}

.emp-blog-card:hover .emp-blog-card__spine,
.emp-blog-card:focus-within .emp-blog-card__spine,
.emp-blog-card:active .emp-blog-card__spine{background:var(--emp-brown-dk);}

.emp-blog-card:hover .emp-blog-card__media img,
.emp-blog-card:focus-within .emp-blog-card__media img,
.emp-blog-card:active .emp-blog-card__media img{transform:scale(1.04);}

/* Staggered to trail the wave front: the date sits nearest the left edge, the
   CTA furthest right, so each flips roughly as the colour reaches it. The delay
   lives only in these rules, so pointer-out reverses with no delay at all. */
.emp-blog-card:hover .emp-blog-card__title,
.emp-blog-card:hover .emp-blog-card__title a,
.emp-blog-card:focus-within .emp-blog-card__title,
.emp-blog-card:focus-within .emp-blog-card__title a,
.emp-blog-card:active .emp-blog-card__title,
.emp-blog-card:active .emp-blog-card__title a{color:#fff !important;transition-delay:.14s;}

.emp-blog-card:hover .emp-blog-card__date,
.emp-blog-card:focus-within .emp-blog-card__date,
.emp-blog-card:active .emp-blog-card__date{color:#fff !important;border-color:rgba(255,255,255,.55);
    transition-delay:.10s;}

.emp-blog-card:hover .emp-blog-card__excerpt,
.emp-blog-card:focus-within .emp-blog-card__excerpt,
.emp-blog-card:active .emp-blog-card__excerpt{color:var(--emp-cream) !important;transition-delay:.14s;}

.emp-blog-card:hover .emp-blog-card__cta,
.emp-blog-card:focus-within .emp-blog-card__cta,
.emp-blog-card:active .emp-blog-card__cta{background:#fff;border-color:#fff;color:var(--emp-brown) !important;
    box-shadow:0 12px 26px -16px rgba(0,0,0,.45);transition-delay:.20s;}
/* Pointer directly on the button gets a further nudge */
.emp-blog-card__cta:hover{transform:translateY(-2px);text-decoration:none;}

/* Keyboard focus ring, visible against both states */
.emp-blog-card__cta:focus-visible,
.emp-blog-card__title a:focus-visible,
.emp-blog-card__media:focus-visible{outline:2px solid var(--emp-accent);outline-offset:3px;}

.emp-blogs__more{text-align:center;margin-top:16px;}
.emp-blogs__more a{color:var(--emp-brown) !important;font-size:.9rem;font-weight:600;}

@media (max-width:991px){
    /* Stack the split: image on top, content below. The accent strip only reads
       in the horizontal layout, so it becomes a top band here. */
    .emp-blogs{padding:70px 0;}
    .emp-blogs__title{margin-bottom:32px;}
    .emp-blog-card{flex-direction:column;gap:18px;min-height:0;padding:20px;}
    .emp-blog-card__spine{left:0;right:0;top:0;bottom:auto;width:auto;height:14px;}
    .emp-blog-card__media{flex:0 0 auto;max-width:100%;width:100%;}
    .emp-blog-card__media img{height:200px;min-height:0;}
    .emp-blog-card__cta{align-self:flex-start;margin-top:20px;}
}
@media (max-width:767px){
    .emp-blogs{padding:54px 0;}
    .emp-blog-slide{padding:8px 6px;}
    .emp-blog-card{border-radius:18px;}
    .emp-blog-card__media img{height:180px;}
}
@media (max-width:575px){
    .emp-blog-slide{padding:8px 4px;}
    .emp-blog-card__cta{align-self:stretch;text-align:center;}
}

/* ==========================================================================
   TESTIMONIALS  —  oversized glass quote panel on mocha. Carousel-friendly,
   so this one can keep its CMS slider toggle on.
   ========================================================================== */
.emp-quotes{position:relative;overflow:hidden;padding:104px 0 110px;
    background:linear-gradient(140deg, var(--emp-mocha) 0%, var(--emp-brown-deep) 62%, #241710 100%);}
.emp-quotes::before{content:"";position:absolute;left:50%;top:-18%;width:60%;height:66%;z-index:0;
    transform:translateX(-50%);pointer-events:none;border-radius:50%;
    background:radial-gradient(closest-side, rgba(244,232,223,.2) 0%, rgba(244,232,223,0) 100%);}
.emp-quotes > .container,
.emp-quotes > .container-fluid{position:relative;z-index:1;}
.emp-quotes__head{text-align:center;margin-bottom:44px;}
.emp-quotes__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.14;color:#fff !important;margin:0 0 10px;}
.emp-quotes__all{font-size:.9rem;font-weight:600;color:var(--emp-beige) !important;
    text-decoration:none !important;border-bottom:1px solid rgba(244,232,223,.35);padding-bottom:3px;}

.emp-quote{position:relative;height:100%;margin:0 10px;padding:52px 40px 36px;
    background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);border-radius:20px;
    -webkit-backdrop-filter:blur(10px) saturate(130%);backdrop-filter:blur(10px) saturate(130%);
    transition:background var(--emp-dur) var(--emp-ease), transform var(--emp-dur) var(--emp-ease);}
.emp-quote:hover{background:rgba(255,255,255,.14);transform:translateY(-5px);}
/* Oversized opening quote, set in the display serif */
.emp-quote::before{content:"\201C";position:absolute;left:30px;top:6px;
    font-family:var(--emp-display);font-size:6.5rem;line-height:1;
    color:rgba(244,232,223,.3);pointer-events:none;}
.emp-quote__text{position:relative;display:-webkit-box;-webkit-line-clamp:5;line-clamp:5;
    -webkit-box-orient:vertical;overflow:hidden;
    font-family:var(--emp-display);font-weight:400;font-style:italic;
    font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.7;
    color:rgba(255,255,255,.94) !important;margin:0 0 28px;}
.emp-quote__by{display:flex;align-items:center;gap:14px;padding-top:20px;
    border-top:1px solid rgba(255,255,255,.16);}
.emp-quote__avatar{flex:0 0 52px;width:52px;height:52px;border-radius:50%;object-fit:cover;
    border:2px solid rgba(244,232,223,.6);}
.emp-quote__name{display:block;font-size:1rem;font-weight:600;color:#fff !important;margin:0 0 2px;}
.emp-quote__place{display:block;font-size:.85rem;color:rgba(255,255,255,.6) !important;margin:0;}

@media (max-width:767px){
    .emp-quotes{padding:64px 0 68px;}
    .emp-quote{padding:44px 24px 28px;margin:0 4px;}
    .emp-quote::before{left:18px;font-size:5rem;}
}


/* ==========================================================================
   EVENTS  —  vertical timeline with date medallions. Static list.
   ========================================================================== */
.emp-events{background:var(--emp-cream);padding:104px 0 110px;}
.emp-events__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
    margin-bottom:48px;}
.emp-events__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.14;color:var(--emp-brown-deep) !important;margin:0;}
.emp-events__all{flex:0 0 auto;font-size:.9rem;font-weight:600;color:var(--emp-brown) !important;
    text-decoration:none !important;border-bottom:1px solid rgba(106,70,50,.35);padding-bottom:3px;}

/* The rail */
.emp-events__line{position:relative;padding-left:0;}
.emp-events__line::before{content:"";position:absolute;left:47px;top:14px;bottom:14px;width:1px;
    background:rgba(74,52,40,.2);}
.emp-events__node{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);
    gap:30px;align-items:start;padding:0 0 34px;text-decoration:none !important;}
.emp-events__node:last-child{padding-bottom:0;}
/* Medallion sits on the rail */
.emp-events__medal{position:relative;z-index:1;width:96px;height:96px;border-radius:50%;
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    background:#fff;border:1px solid rgba(74,52,40,.14);
    box-shadow:0 10px 24px -16px rgba(74,52,40,.45);
    transition:background var(--emp-dur) var(--emp-ease), border-color var(--emp-dur) var(--emp-ease), transform var(--emp-dur) var(--emp-ease);}
.emp-events__node:hover .emp-events__medal{background:var(--emp-brown);border-color:var(--emp-brown);
    transform:scale(1.05);}
.emp-events__day{font-family:var(--emp-display);font-weight:600;font-size:1.75rem;line-height:1;
    color:var(--emp-brown-deep) !important;transition:color var(--emp-dur) var(--emp-ease);}
.emp-events__mon{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;
    color:var(--emp-brown) !important;margin-top:4px;transition:color var(--emp-dur) var(--emp-ease);}
.emp-events__node:hover .emp-events__day,
.emp-events__node:hover .emp-events__mon{color:#fff !important;}

/* display:block — these are spans inside an anchor, so they need it for the
   padding/margin below to take effect */
.emp-events__body{display:block;padding-top:12px;min-width:0;}
.emp-events__name{display:block;font-family:var(--emp-display);font-weight:500;text-transform:none;
    font-size:clamp(1.15rem,1.9vw,1.6rem);line-height:1.25;
    color:var(--emp-brown-deep) !important;margin:0 0 10px;
    transition:color var(--emp-dur) var(--emp-ease);}
.emp-events__node:hover .emp-events__name{color:var(--emp-brown) !important;}
.emp-events__facts{display:flex;flex-wrap:wrap;gap:10px 22px;margin:0;}
.emp-events__fact{display:inline-flex;align-items:center;gap:8px;font-size:.9rem;
    color:var(--emp-text-mid) !important;}
.emp-events__fact i{color:var(--emp-brown);font-size:.95rem;}
.emp-events__venue{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;
    overflow:hidden;}

/* --- Carousel mode ---
   No rail to thread, so each node becomes a standing date card. */
.emp-events__line.owl-carousel::before{display:none;}
.emp-events__line.owl-carousel .emp-events__node{grid-template-columns:1fr;gap:0;
    margin:0 10px;padding:28px 26px 26px;text-align:center;
    background:#fff;border:1px solid rgba(74,52,40,.12);border-radius:18px;
    box-shadow:0 14px 32px -24px rgba(74,52,40,.4);
    transition:transform var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease);}
.emp-events__line.owl-carousel .emp-events__node:hover{transform:translateY(-5px);
    box-shadow:0 26px 46px -24px rgba(74,52,40,.5);}
.emp-events__line.owl-carousel .emp-events__medal{margin:0 auto 20px;}
.emp-events__line.owl-carousel .emp-events__body{padding-top:0;}
.emp-events__line.owl-carousel .emp-events__facts{justify-content:center;gap:8px 16px;}

@media (max-width:767px){
    .emp-events{padding:62px 0 66px;}
    .emp-events__head{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:32px;}
    .emp-events__line::before{left:35px;}
    .emp-events__node{grid-template-columns:72px minmax(0,1fr);gap:18px;padding-bottom:26px;}
    .emp-events__medal{width:72px;height:72px;}
    .emp-events__day{font-size:1.35rem;}
    .emp-events__body{padding-top:6px;}
}


/* ==========================================================================
   DOCTORS  —  staggered portrait grid. Portrait-first, caption beneath.
   ========================================================================== */
.emp-docs{background:#fff;padding:104px 0 110px;}
.emp-docs__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
    margin-bottom:46px;}
.emp-docs__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.14;color:var(--emp-brown-deep) !important;margin:0;}
.emp-docs__all{flex:0 0 auto;font-size:.9rem;font-weight:600;color:var(--emp-brown) !important;
    text-decoration:none !important;border-bottom:1px solid rgba(106,70,50,.35);padding-bottom:3px;}

.emp-docs__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;}
/* Stagger: every second column drops, so the row never reads as a flat band */
.emp-docs__grid > *:nth-child(even){transform:translateY(46px);}

.emp-doc{display:block;text-decoration:none !important;}
.emp-doc__frame{position:relative;display:block;overflow:hidden;border-radius:200px 200px 18px 18px;
    background:var(--emp-beige);}
.emp-doc__frame img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;
    transition:transform .9s var(--emp-ease);}
.emp-doc:hover .emp-doc__frame img{transform:scale(1.05);}
@supports not (aspect-ratio:1/1){ .emp-doc__frame img{height:340px;} }
/* Specialisation rides in from the bottom on hover */
.emp-doc__spec{position:absolute;left:0;right:0;bottom:0;z-index:2;margin:0;padding:14px 18px;
    font-size:.82rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;
    color:#fff !important;text-align:center;
    background:linear-gradient(0deg, rgba(74,52,40,.92) 0%, rgba(74,52,40,0) 100%);
    transform:translateY(100%);opacity:0;
    transition:transform var(--emp-dur) var(--emp-ease), opacity var(--emp-dur) var(--emp-ease);}
.emp-doc:hover .emp-doc__spec{transform:translateY(0);opacity:1;}
.emp-doc__body{display:block;padding:18px 4px 0;text-align:center;}
.emp-doc__name{display:block;font-family:var(--emp-display);font-weight:500;text-transform:none;
    font-size:1.18rem;line-height:1.3;color:var(--emp-brown-deep) !important;margin:0 0 6px;
    transition:color var(--emp-dur) var(--emp-ease);}
.emp-doc:hover .emp-doc__name{color:var(--emp-brown) !important;}
.emp-doc__desc{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;
    overflow:hidden;font-size:.92rem;line-height:1.6;color:var(--emp-text-mid) !important;margin:0;}

.emp-docs__grid.owl-carousel{display:block;}
.emp-docs__grid.owl-carousel > *{transform:none !important;}
.emp-docs__grid.owl-carousel .emp-doc{margin:0 10px;}

@media (max-width:1199px){ .emp-docs__grid{grid-template-columns:repeat(3,minmax(0,1fr));} }
@media (max-width:991px){
    .emp-docs{padding:64px 0 68px;}
    .emp-docs__head{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:32px;}
    .emp-docs__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
    /* Stagger removed — it fights a 2-up grid */
    .emp-docs__grid > *:nth-child(even){transform:none;}
    .emp-doc__frame{border-radius:150px 150px 16px 16px;}
    /* Touch has no hover, so the specialisation stays visible */
    .emp-doc__spec{transform:none;opacity:1;}
}
@media (max-width:479px){ .emp-docs__grid{grid-template-columns:1fr;} }


/* ==========================================================================
   PHOTO GALLERY  —  mosaic, mixed cell spans, frameless, caption on hover.
   ========================================================================== */
.emp-gal{background:var(--emp-beige);padding:104px 0 110px;}
.emp-gal__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
    margin-bottom:40px;}
.emp-gal__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.14;color:var(--emp-brown-deep) !important;margin:0;}
.emp-gal__all{flex:0 0 auto;font-size:.9rem;font-weight:600;color:var(--emp-brown) !important;
    text-decoration:none !important;border-bottom:1px solid rgba(106,70,50,.35);padding-bottom:3px;}

.emp-gal__mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
    grid-auto-rows:196px;grid-auto-flow:dense;gap:16px;}
/* Rhythm: a big tile, then a tall one, repeating every six */
.emp-gal__mosaic > *:nth-child(6n+1){grid-column:span 2;grid-row:span 2;}
.emp-gal__mosaic > *:nth-child(6n+4){grid-row:span 2;}

.emp-gal__tile{position:relative;display:block;height:100%;overflow:hidden;border-radius:14px;
    text-decoration:none !important;background:#e6dad0;}
.emp-gal__tile img{width:100%;height:100%;object-fit:cover;display:block;
    transition:transform .9s var(--emp-ease);}
.emp-gal__tile:hover img{transform:scale(1.06);}
.emp-gal__cap{position:absolute;left:0;right:0;bottom:0;z-index:2;margin:0;padding:44px 18px 16px;
    font-size:.95rem;font-weight:600;color:#fff !important;
    background:linear-gradient(0deg, rgba(41,26,18,.88) 0%, rgba(41,26,18,0) 100%);
    transform:translateY(16px);opacity:0;
    transition:transform var(--emp-dur) var(--emp-ease), opacity var(--emp-dur) var(--emp-ease);}
.emp-gal__tile:hover .emp-gal__cap,
.emp-gal__tile:focus-visible .emp-gal__cap{transform:translateY(0);opacity:1;}

/* Carousel mode: taller cinematic tiles with the caption always legible */
.emp-gal__mosaic.owl-carousel{display:block;grid-auto-rows:auto;}
.emp-gal__mosaic.owl-carousel > *{grid-column:auto !important;grid-row:auto !important;}
.emp-gal__mosaic.owl-carousel .emp-gal__tile{height:330px;margin:0 8px;}
.emp-gal__mosaic.owl-carousel .emp-gal__cap{transform:none;opacity:1;
    padding:52px 20px 18px;font-size:1rem;}

@media (max-width:991px){
    .emp-gal{padding:64px 0 68px;}
    .emp-gal__head{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:28px;}
    .emp-gal__mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:168px;gap:12px;}
    .emp-gal__mosaic > *:nth-child(6n+4){grid-row:span 1;}
    /* No hover on touch — captions stay up */
    .emp-gal__cap{transform:none;opacity:1;padding-top:34px;}
}
@media (max-width:479px){
    .emp-gal__mosaic{grid-template-columns:1fr;grid-auto-rows:200px;}
    .emp-gal__mosaic > *:nth-child(6n+1){grid-column:span 1;grid-row:span 1;}
}


/* ==========================================================================
   VIDEO GALLERY  —  cinematic 16:9 tiles. Always a carousel in this theme.
   ========================================================================== */
.emp-vid{position:relative;background:linear-gradient(180deg, #1B120C 0%, #2B1D15 100%);
    padding:100px 0 106px;}
.emp-vid__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
    margin-bottom:40px;}
.emp-vid__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.14;color:#fff !important;margin:0;}
.emp-vid__all{flex:0 0 auto;font-size:.9rem;font-weight:600;color:var(--emp-beige) !important;
    text-decoration:none !important;border-bottom:1px solid rgba(244,232,223,.35);padding-bottom:3px;}

.emp-vid__tile{position:relative;display:block;overflow:hidden;border-radius:16px;margin:0 10px;
    text-decoration:none !important;background:#000;
    transition:transform var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease);}
.emp-vid__tile:hover{transform:translateY(-6px);box-shadow:0 30px 56px -26px rgba(0,0,0,.7);}
.emp-vid__tile img.videoimg{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;
    opacity:.86;transition:transform .9s var(--emp-ease), opacity var(--emp-dur) var(--emp-ease);}
.emp-vid__tile:hover img.videoimg{transform:scale(1.05);opacity:1;}
@supports not (aspect-ratio:1/1){ .emp-vid__tile img.videoimg{height:250px;} }
.emp-vid__scrim{position:absolute;inset:0;z-index:1;pointer-events:none;
    background:linear-gradient(0deg, rgba(20,12,7,.88) 0%, rgba(20,12,7,.1) 55%, rgba(20,12,7,0) 100%);}
.emp-vid__play{position:absolute;left:50%;top:50%;z-index:3;transform:translate(-50%,-50%) scale(.94);
    width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;
    background:rgba(255,255,255,.92);color:var(--emp-brown-deep);font-size:20px;padding-left:4px;
    transition:transform var(--emp-dur) var(--emp-ease), background var(--emp-dur) var(--emp-ease);}
.emp-vid__tile:hover .emp-vid__play{transform:translate(-50%,-50%) scale(1);background:#fff;}
.emp-vid__name{position:absolute;left:0;right:0;bottom:0;z-index:3;margin:0;padding:20px 22px;
    font-size:1rem;font-weight:600;line-height:1.4;color:#fff !important;
    display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

@media (max-width:767px){
    .emp-vid{padding:62px 0 66px;}
    .emp-vid__head{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:26px;}
    .emp-vid__tile{margin:0 5px;}
    .emp-vid__play{width:54px;height:54px;font-size:17px;}
}

/* Static grid variant for the dedicated Video Gallery page — the homepage
   only ever shows this card in a carousel, so the listing page needs a
   non-carousel wrapper. Same .emp-vid__tile card either way. */
.emp-vid__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;}
.emp-vid__grid .emp-vid__tile{margin:0;}
@media (max-width:991px){ .emp-vid__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;} }
@media (max-width:575px){ .emp-vid__grid{grid-template-columns:1fr;} }

/* Testimonial video variants — share .emp-quote's glass panel, radius, shadow
   and hover lift, but replace the blockquote with the actual player/thumbnail. */
.emp-quote--video{padding:0;overflow:hidden;display:flex;flex-direction:column;}
.emp-quote--video::before{display:none;}
.emp-quote--video .emp-quote__media{position:relative;overflow:hidden;}
.emp-quote--video .emp-quote__media video,
.emp-quote--video .emp-quote__media img{width:100%;height:260px;object-fit:cover;display:block;}
.emp-quote--video .emp-quote__scrim{position:absolute;inset:0;z-index:1;pointer-events:none;
    background:linear-gradient(0deg, rgba(36,23,16,.85) 0%, rgba(36,23,16,.05) 55%, rgba(36,23,16,0) 100%);}
.emp-quote--video .emp-quote__play{position:absolute;left:50%;top:50%;z-index:2;
    transform:translate(-50%,-50%);width:56px;height:56px;border-radius:50%;
    background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;
    color:var(--emp-brown-deep);font-size:18px;padding-left:3px;
    transition:transform var(--emp-dur-fast) var(--emp-ease), background var(--emp-dur-fast) var(--emp-ease);}
.emp-quote--video:hover .emp-quote__play{transform:translate(-50%,-50%) scale(1.08);background:#fff;}
.emp-quote--video .emp-quote__footer{position:relative;z-index:2;padding:20px 26px 26px;}
.emp-quote--video .emp-quote__cap{position:absolute;left:22px;right:22px;bottom:16px;z-index:2;
    margin:0;color:#fff !important;font-weight:600;font-size:.98rem;display:flex;flex-direction:column;gap:4px;}
.emp-quote__subject{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;
    overflow:hidden;font-family:var(--emp-display);font-weight:600;font-size:1.05rem;line-height:1.3;}
.emp-quote--video .emp-quote__by{border-top:0;padding-top:0;}

/* Rating stars, restyled to the site's warm palette instead of raw gold/grey */
.emp-quote__stars{display:flex;align-items:center;gap:4px;margin:14px 0 0;}
.emp-quote__stars .star{font-size:16px;color:var(--emp-border);}
.emp-quote__stars .star.full{color:var(--emp-brown);}
.emp-quote__stars .star.half{background:linear-gradient(90deg, var(--emp-brown) 50%, var(--emp-border) 50%);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.emp-quote__stars .rating-number{font-size:.82rem;color:var(--emp-text-mid);margin-left:4px;}

/* Extra real fields (issuing body / location / long description) that the
   compact homepage medallion card has no room for. Kept screen-reader
   accessible on the listing page rather than deleted, per the "no content
   left behind" rule — visually revealed only on hover/focus as a tooltip-like
   footnote so the medallion card itself stays identical to the homepage. */
.emp-award__more{position:absolute;left:50%;bottom:100%;z-index:5;width:220px;
    transform:translate(-50%,8px);margin-bottom:12px;padding:14px 16px;border-radius:12px;
    background:#fff;color:var(--emp-text-mid);font-size:.82rem;line-height:1.6;text-align:left;
    box-shadow:0 20px 40px -18px rgba(0,0,0,.4);opacity:0;pointer-events:none;
    transition:opacity var(--emp-dur-fast) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease);}
.emp-award__more b{display:block;color:var(--emp-brown-deep);margin-bottom:4px;}
.emp-award:hover .emp-award__more,
.emp-award:focus-visible .emp-award__more{opacity:1;pointer-events:auto;transform:translate(-50%,0);}
@media (max-width:767px){ .emp-award__more{display:none;} }


/* ==========================================================================
   AWARDS  —  quiet laurel strip on dark. Medallion + year + title only.
   ========================================================================== */
.emp-awards{position:relative;overflow:hidden;padding:100px 0 106px;
    background:linear-gradient(150deg, var(--emp-brown-deep) 0%, #2A1C14 60%, #1A110B 100%);}
/* Warm bloom so the strip does not read as a flat black band */
.emp-awards::before{content:"";position:absolute;left:50%;top:-30%;width:70%;height:80%;z-index:0;
    transform:translateX(-50%);pointer-events:none;border-radius:50%;
    background:radial-gradient(closest-side, rgba(163,122,96,.3) 0%, rgba(163,122,96,0) 100%);}
.emp-awards > .container,
.emp-awards > .container-fluid{position:relative;z-index:1;}
.emp-awards__head{text-align:center;margin-bottom:48px;}
/* Hairline rules flanking the heading */
.emp-awards__head::after{content:"";display:block;width:64px;height:1px;margin:20px auto 0;
    background:rgba(244,232,223,.45);}
.emp-awards__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.7rem,2.8vw,2.5rem);line-height:1.14;color:#fff !important;margin:0 0 10px;}
.emp-awards__all{font-size:.9rem;font-weight:600;color:var(--emp-beige) !important;
    text-decoration:none !important;border-bottom:1px solid rgba(244,232,223,.35);padding-bottom:3px;}

.emp-awards__strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;}
.emp-award{display:block;text-align:center;padding:8px 26px;text-decoration:none !important;
    border-right:1px solid rgba(255,255,255,.14);}
.emp-awards__strip > *:last-child .emp-award{border-right:0;}
/* Ring + inner medallion gives the strip some jewellery */
.emp-award__medal{position:relative;display:block;width:112px;height:112px;margin:0 auto 20px;
    border-radius:50%;overflow:hidden;
    border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);
    box-shadow:0 0 0 6px rgba(255,255,255,.04), 0 16px 34px -20px rgba(0,0,0,.7);
    transition:border-color var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease), transform var(--emp-dur) var(--emp-ease);}
.emp-award:hover .emp-award__medal{box-shadow:0 0 0 6px rgba(244,232,223,.14), 0 22px 40px -20px rgba(0,0,0,.75);}
.emp-award__medal img{width:100%;height:100%;object-fit:cover;display:block;
    opacity:.9;transition:opacity var(--emp-dur) var(--emp-ease);}
.emp-award:hover .emp-award__medal{border-color:var(--emp-beige);transform:translateY(-4px);}
.emp-award:hover .emp-award__medal img{opacity:1;}
.emp-award__year{display:block;font-size:.74rem;font-weight:600;text-transform:uppercase;
    letter-spacing:.16em;color:var(--emp-beige) !important;margin:0 0 8px;}
.emp-award__name{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;
    overflow:hidden;font-family:var(--emp-display);font-weight:400;font-size:1.02rem;line-height:1.4;
    color:rgba(255,255,255,.9) !important;margin:0;
    transition:color var(--emp-dur) var(--emp-ease);}
.emp-award:hover .emp-award__name{color:#fff !important;}

.emp-awards__strip.owl-carousel{display:block;}

@media (max-width:767px){
    .emp-awards{padding:58px 0 62px;}
    .emp-awards__strip{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:34px;}
    .emp-award{padding:8px 14px;}
    .emp-awards__strip > *:nth-child(even) .emp-award{border-right:0;}
    .emp-award__medal{width:78px;height:78px;margin-bottom:14px;}
}

@media (prefers-reduced-motion:reduce){
    .emp-quote,.emp-events__medal,.emp-doc__frame img,.emp-doc__spec,
    .emp-gal__tile img,.emp-gal__cap,.emp-vid__tile,.emp-vid__tile img.videoimg,
    .emp-vid__play,.emp-award__medal{transition:none !important;}
    .emp-quote:hover,.emp-events__node:hover .emp-events__medal,
    .emp-doc:hover .emp-doc__frame img,.emp-gal__tile:hover img,
    .emp-vid__tile:hover,.emp-vid__tile:hover img.videoimg,
    .emp-award:hover .emp-award__medal{transform:none !important;}
    .emp-vid__play,.emp-vid__tile:hover .emp-vid__play{transform:translate(-50%,-50%) !important;}
}


/* ==========================================================================
   FAQS  —  sticky heading left, border-only accordion right. No shadows.
   ========================================================================== */
.emp-faqs{background:var(--emp-cream);padding:106px 0 112px;}
.emp-faqs__grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:70px;
    align-items:start;}
.emp-faqs__aside{position:sticky;top:110px;}
.emp-faqs__eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;
    font-weight:600;color:var(--emp-brown) !important;margin:0 0 14px;}
.emp-faqs__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.14;color:var(--emp-brown-deep) !important;margin:0 0 18px;}
.emp-faqs__lead,
.emp-faqs__lead p{font-size:1rem;line-height:1.8;color:var(--emp-text-mid) !important;margin:0 0 24px;}
.emp-faqs__all{display:inline-flex;align-items:center;gap:10px;font-size:.92rem;font-weight:600;
    color:var(--emp-brown-deep) !important;text-decoration:none !important;padding-bottom:5px;
    border-bottom:1px solid rgba(74,52,40,.3);
    transition:gap var(--emp-dur-fast) var(--emp-ease), border-color var(--emp-dur-fast) var(--emp-ease);}
.emp-faqs__all::after{content:"\f105";font-family:FontAwesome;}
.emp-faqs__all:hover{gap:16px;border-color:var(--emp-brown);}

/* Accordion: hairline rules only, no card chrome */
.emp-faqs__list .card{background:transparent !important;border:0 !important;border-radius:0 !important;
    box-shadow:none !important;margin:0 !important;
    border-bottom:1px solid rgba(74,52,40,.16) !important;}
.emp-faqs__list .card:first-child{border-top:1px solid rgba(74,52,40,.16) !important;}
.emp-faqs__list .card-header{background:transparent !important;border:0 !important;padding:0 !important;}
.emp-faqs__list .card-header:hover{background:transparent !important;}
.emp-faqs__list .hdng{margin:0;}
.emp-faqs__list .card-header a{position:relative;display:block;padding:24px 54px 24px 0;
    font-family:var(--emp-display);font-weight:500;
    font-size:clamp(1.02rem,1.35vw,1.22rem) !important;line-height:1.4;
    color:var(--emp-brown-deep) !important;text-decoration:none !important;
    transition:color var(--emp-dur-fast) var(--emp-ease);}
.emp-faqs__list .card-header a:hover{color:var(--emp-brown) !important;}
/* Plus that becomes a minus */
.emp-faqs__list .card-header a::before,
.emp-faqs__list .card-header a::after{content:"";position:absolute;right:8px;top:50%;
    background:var(--emp-brown);transition:transform var(--emp-dur) var(--emp-ease), opacity var(--emp-dur) var(--emp-ease);}
.emp-faqs__list .card-header a::before{width:15px;height:1.5px;margin-top:-.75px;}
.emp-faqs__list .card-header a::after{width:1.5px;height:15px;margin-top:-7.5px;margin-right:6.75px;}
.emp-faqs__list .card-header a:not(.collapsed)::after{transform:rotate(90deg);opacity:0;}
.emp-faqs__list .card-body{padding:0 54px 26px 0 !important;font-size:.98rem;line-height:1.85;
    color:var(--emp-text-mid) !important;}
.emp-faqs__list .card-body p{color:var(--emp-text-mid) !important;}

@media (max-width:991px){
    .emp-faqs{padding:66px 0 70px;}
    .emp-faqs__grid{grid-template-columns:1fr;gap:34px;}
    .emp-faqs__aside{position:static;top:auto;}
}
@media (max-width:575px){
    .emp-faqs__list .card-header a{padding:20px 44px 20px 0;}
    .emp-faqs__list .card-body{padding-right:20px !important;}
}


/* ==========================================================================
   NEWS  —  editorial lead story + stacked digest. Text-first, thin rules.
   The first item is promoted to the lead entirely in CSS, so the loop and
   markup stay identical for every entry.
   ========================================================================== */
.emp-news{background:#fff;padding:106px 0 112px;}
.emp-news__head{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;
    padding-bottom:26px;margin-bottom:34px;border-bottom:2px solid var(--emp-brown-deep);}
.emp-news__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.14;color:var(--emp-brown-deep) !important;margin:0;}
.emp-news__all{flex:0 0 auto;font-size:.9rem;font-weight:600;color:var(--emp-brown) !important;
    text-decoration:none !important;padding-bottom:4px;border-bottom:1px solid rgba(106,70,50,.35);
    transition:border-color var(--emp-dur-fast) var(--emp-ease);}
.emp-news__all:hover{border-color:var(--emp-brown);}

.emp-news__grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
    column-gap:52px;row-gap:0;}
.emp-news__grid > *:first-child{grid-column:1;grid-row:1 / -1;}
.emp-news__grid > *:not(:first-child){grid-column:2;}

.emp-news__item{display:block;text-decoration:none !important;
    padding:22px 0;border-top:1px solid var(--emp-border);}
/* nth-child(2), not :first-of-type — the latter would match the lead itself */
.emp-news__grid > *:nth-child(2) .emp-news__item{border-top:0;padding-top:0;}
.emp-news__media{display:block;overflow:hidden;border-radius:4px;margin-bottom:0;}
.emp-news__media img{width:100%;height:100%;object-fit:cover;display:block;
    transition:transform .8s var(--emp-ease);}
.emp-news__item:hover .emp-news__media img{transform:scale(1.04);}
.emp-news__date{display:block;font-size:.76rem;font-weight:600;text-transform:uppercase;
    letter-spacing:.12em;color:var(--emp-brown) !important;margin:0 0 8px;}
.emp-news__name{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;
    overflow:hidden;font-family:var(--emp-display);font-weight:500;text-transform:none;
    font-size:1.05rem;line-height:1.35;color:var(--emp-brown-deep) !important;margin:0;
    transition:color var(--emp-dur-fast) var(--emp-ease);}
.emp-news__item:hover .emp-news__name{color:var(--emp-brown) !important;}
.emp-news__excerpt{display:none;}

/* Lead treatment — image on top, oversized headline, excerpt visible */
.emp-news__grid > *:first-child .emp-news__item{border-top:0;padding-top:0;}
.emp-news__grid > *:first-child .emp-news__media{margin-bottom:22px;height:360px;}
.emp-news__grid > *:first-child .emp-news__name{-webkit-line-clamp:3;line-clamp:3;
    font-size:clamp(1.45rem,2.4vw,2.1rem);line-height:1.18;margin-bottom:12px;}
.emp-news__grid > *:first-child .emp-news__excerpt{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;
    -webkit-box-orient:vertical;overflow:hidden;font-size:1rem;line-height:1.75;
    color:var(--emp-text-mid) !important;margin:0;}
/* Digest rows keep the image small and inline */
.emp-news__grid > *:not(:first-child) .emp-news__item{display:grid;
    grid-template-columns:96px minmax(0,1fr);gap:18px;align-items:start;}
.emp-news__grid > *:not(:first-child) .emp-news__media{height:70px;}

/* Carousel fallback: every entry behaves like a digest row */
.emp-news__grid.owl-carousel{display:block;}
.emp-news__grid.owl-carousel > *{grid-column:auto !important;grid-row:auto !important;}
.emp-news__grid.owl-carousel .emp-news__item{border-top:0;padding-top:0;}
.emp-news__grid.owl-carousel .emp-news__media{height:200px;margin-bottom:18px;}

@media (max-width:991px){
    .emp-news{padding:66px 0 70px;}
    .emp-news__grid{grid-template-columns:1fr;column-gap:0;}
    .emp-news__grid > *:first-child,
    .emp-news__grid > *:not(:first-child){grid-column:1;grid-row:auto;}
    .emp-news__grid > *:first-child .emp-news__item{padding-bottom:26px;
        border-bottom:1px solid var(--emp-border);}
    .emp-news__grid > *:first-child .emp-news__media{height:280px;}
}
@media (max-width:575px){
    .emp-news__head{flex-direction:column;align-items:flex-start;gap:12px;}
    .emp-news__grid > *:not(:first-child) .emp-news__item{grid-template-columns:74px minmax(0,1fr);gap:14px;}
    .emp-news__grid > *:not(:first-child) .emp-news__media{height:58px;}
}


/* ==========================================================================
   PRESS RELEASE  —  clipping wall. Tilted newsprint cuttings on beige.
   ========================================================================== */
.emp-press{position:relative;overflow:hidden;background:var(--emp-beige);padding:104px 0 110px;}
.emp-press__head{text-align:center;max-width:640px;margin:0 auto 48px;}
.emp-press__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.14;color:var(--emp-brown-deep) !important;margin:0 0 12px;}
.emp-press__all{font-size:.9rem;font-weight:600;color:var(--emp-brown) !important;
    text-decoration:none !important;border-bottom:1px solid rgba(106,70,50,.35);padding-bottom:3px;}

.emp-press__wall{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:34px 30px;}
/* Alternating tilt gives the wall its pinned-cutting feel */
.emp-press__cut{background:#fff;padding:14px 14px 20px;border:1px solid rgba(74,52,40,.1);
    box-shadow:0 10px 26px -18px rgba(74,52,40,.4);
    transform:rotate(-1.4deg);
    transition:transform var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease);}
.emp-press__wall > *:nth-child(even) .emp-press__cut{transform:rotate(1.6deg);}
.emp-press__wall > *:nth-child(3n) .emp-press__cut{transform:rotate(.7deg);}
.emp-press__cut:hover{transform:rotate(0deg) translateY(-6px);
    box-shadow:0 24px 44px -20px rgba(74,52,40,.5);}
.emp-press__clip{display:block;overflow:hidden;background:#f6f2ee;}
.emp-press__clip img{width:100%;height:230px;object-fit:cover;display:block;
    transition:transform .8s var(--emp-ease);}
.emp-press__cut:hover .emp-press__clip img{transform:scale(1.05);}
.emp-press__meta{padding:16px 4px 0;}
.emp-press__source{display:block;font-size:.72rem;font-weight:700;text-transform:uppercase;
    letter-spacing:.14em;color:var(--emp-brown) !important;margin:0 0 8px;}
.emp-press__name{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;
    overflow:hidden;font-family:var(--emp-display);font-weight:500;font-size:1.08rem;line-height:1.32;
    color:var(--emp-brown-deep) !important;margin:0 0 8px;}
.emp-press__desc{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;
    overflow:hidden;font-size:.92rem;line-height:1.6;color:var(--emp-text-mid) !important;margin:0 0 10px;}
.emp-press__date{display:block;font-size:.8rem;color:var(--emp-brown-lt) !important;margin:0;
    padding-top:10px;border-top:1px solid rgba(74,52,40,.1);}

.emp-press__wall.owl-carousel{display:block;}

@media (max-width:991px){
    .emp-press{padding:66px 0 70px;}
    .emp-press__wall{gap:26px 22px;}
    .emp-press__clip img{height:200px;}
}
@media (max-width:575px){
    /* Tilt reads as sloppy at one column, so it is dropped */
    .emp-press__cut,
    .emp-press__wall > *:nth-child(even) .emp-press__cut,
    .emp-press__wall > *:nth-child(3n) .emp-press__cut{transform:none;}
}


/* ==========================================================================
   TREATMENTS  —  zig-zag alternating bands. No cards at all.
   ========================================================================== */
.emp-treat{background:#fff;padding:104px 0 110px;}
.emp-treat__head{max-width:620px;margin:0 0 54px;}
.emp-treat__eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;
    font-weight:600;color:var(--emp-brown) !important;margin:0 0 12px;}
.emp-treat__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.14;color:var(--emp-brown-deep) !important;margin:0;}
.emp-treat__all{display:inline-block;margin-top:16px;font-size:.9rem;font-weight:600;
    color:var(--emp-brown) !important;text-decoration:none !important;
    border-bottom:1px solid rgba(106,70,50,.35);padding-bottom:3px;}

.emp-treat__band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;
    align-items:center;padding:38px 0;border-top:1px solid var(--emp-border);}
.emp-treat__list > *:last-child .emp-treat__band{border-bottom:1px solid var(--emp-border);}
/* Zig-zag: even rows flip the media to the right */
.emp-treat__list > *:nth-child(even) .emp-treat__media{order:2;}
.emp-treat__media{overflow:hidden;border-radius:18px;}
.emp-treat__media img{width:100%;height:300px;object-fit:cover;display:block;
    transition:transform .9s var(--emp-ease);}
.emp-treat__band:hover .emp-treat__media img{transform:scale(1.05);}
.emp-treat__body{min-width:0;}
.emp-treat__index{display:block;font-family:var(--emp-display);font-size:.95rem;font-weight:500;
    color:var(--emp-brown-lt) !important;margin:0 0 10px;letter-spacing:.1em;}
.emp-treat__name{font-family:var(--emp-display);font-weight:500;text-transform:none;
    font-size:clamp(1.35rem,2.3vw,2rem);line-height:1.2;color:var(--emp-brown-deep) !important;
    margin:0 0 14px;transition:color var(--emp-dur-fast) var(--emp-ease);}
.emp-treat__band:hover .emp-treat__name{color:var(--emp-brown) !important;}
.emp-treat__desc{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;
    overflow:hidden;font-size:1rem;line-height:1.8;color:var(--emp-text-mid) !important;margin:0 0 18px;}
.emp-treat__more{display:inline-flex;align-items:center;gap:10px;font-size:.9rem;font-weight:600;
    color:var(--emp-brown-deep) !important;text-decoration:none !important;
    transition:gap var(--emp-dur-fast) var(--emp-ease);}
.emp-treat__more::after{content:"\f178";font-family:FontAwesome;}
.emp-treat__band:hover .emp-treat__more{gap:18px;}

.emp-treat__list.owl-carousel .emp-treat__band{grid-template-columns:1fr;gap:22px;border:0;padding:0;}
.emp-treat__list.owl-carousel .emp-treat__media{order:0 !important;}

@media (max-width:991px){
    .emp-treat{padding:66px 0 70px;}
    .emp-treat__band{grid-template-columns:1fr;gap:22px;padding:30px 0;}
    /* Media always leads when stacked */
    .emp-treat__list > *:nth-child(even) .emp-treat__media{order:0;}
    .emp-treat__media img{height:240px;}
}

@media (prefers-reduced-motion:reduce){
    .emp-faqs__list .card-header a::before,
    .emp-faqs__list .card-header a::after,
    .emp-news__media img,
    .emp-press__cut,
    .emp-press__clip img,
    .emp-treat__media img,
    .emp-treat__more,
    .emp-faqs__all,
    .emp-news__name{transition:none !important;}
    .emp-press__cut:hover,
    .emp-news__item:hover .emp-news__media img,
    .emp-press__cut:hover .emp-press__clip img,
    .emp-treat__band:hover .emp-treat__media img{transform:none !important;}
}


/* ==========================================================================
   DEPARTMENTS  —  "Specialties" card row from the reference:
   rounded photo tiles, each with a brown pill label floating over it.
   ========================================================================== */
.emp-depts{position:relative;overflow:hidden;background:#fff;padding:78px 0 84px;}
.emp-depts__head{text-align:center;margin-bottom:34px;}
.emp-depts__title{font-weight:700;text-transform:none;letter-spacing:-.01em;
    font-size:clamp(1.3rem,2vw,1.75rem);line-height:1.2;
    color:var(--emp-brown-deep) !important;margin:0 0 8px;}
.emp-depts__all{font-size:.88rem;font-weight:600;color:var(--emp-brown) !important;
    text-decoration:none !important;border-bottom:1px solid rgba(106,70,50,.35);padding-bottom:3px;
    transition:border-color var(--emp-dur-fast) var(--emp-ease);}
.emp-depts__all:hover{border-color:var(--emp-brown);}

.emp-depts__list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}

/* --- Tile --- */
.emp-depts__row{position:relative;display:block;overflow:hidden;border-radius:12px;
    text-decoration:none !important;background:var(--emp-beige);
    transition:transform var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease);}
.emp-depts__row:hover,
.emp-depts__row:focus-visible{transform:translateY(-5px);
    box-shadow:0 22px 40px -22px rgba(74,52,40,.45);}

.emp-depts__thumb{display:block;overflow:hidden;}
.emp-depts__thumb img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;
    transition:transform .9s var(--emp-ease);}
.emp-depts__row:hover .emp-depts__thumb img{transform:scale(1.06);}
@supports not (aspect-ratio:1/1){ .emp-depts__thumb img{height:200px;} }

/* Pill label floats over the lower half of the photo */
.emp-depts__body{position:absolute;left:50%;top:56%;z-index:2;
    transform:translate(-50%,-50%);max-width:82%;
    transition:top var(--emp-dur) var(--emp-ease);}
.emp-depts__row:hover .emp-depts__body{top:52%;}
.emp-depts__name{display:block;margin:0;
    padding:9px 20px;border-radius:var(--dw-radius-pill);
    background:var(--emp-brown);color:#fff !important;
    font-size:.88rem;font-weight:500;line-height:1.35;text-align:center;white-space:nowrap;
    overflow:hidden;text-overflow:ellipsis;
    box-shadow:0 8px 20px -10px rgba(41,26,18,.6);
    transition:background var(--emp-dur) var(--emp-ease);}
.emp-depts__row:hover .emp-depts__name{background:var(--emp-brown-deep);}
/* The reference tile shows the label only — description and chevron are kept
   in the markup for SEO and screen readers, but not drawn. */
.emp-depts__desc,
.emp-depts__index,
.emp-depts__go{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;
    overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* Carousel mode keeps the identical tile */
.emp-depts__list.owl-carousel{display:block;}
.emp-depts__list.owl-carousel .emp-depts__row{margin:0 9px;}

@media (max-width:991px){
    .emp-depts{padding:58px 0 62px;}
    .emp-depts__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
}
@media (max-width:479px){
    .emp-depts__list{grid-template-columns:1fr;}
    .emp-depts__thumb img{aspect-ratio:16/9;}
}

@media (prefers-reduced-motion:reduce){
    .emp-depts__row,.emp-depts__thumb img,.emp-depts__body,.emp-depts__name{transition:none !important;}
    .emp-depts__row:hover,.emp-depts__row:hover .emp-depts__thumb img{transform:none !important;}
    .emp-depts__row:hover .emp-depts__body{top:56%;}
}


/* ==========================================================================
   ABOUT  —  asymmetric split, arched portrait, offset stat strip
   Deliberately card-free: the stats are one editorial band with hairline
   dividers, not four boxes, so this section reads unlike any other.
   ========================================================================== */
.emp-about{position:relative;overflow:hidden;background:#fff;padding:110px 0 120px;}
/* Warm wash behind the portrait side */
.emp-about::before{content:"";position:absolute;left:-6%;top:-8%;width:52%;height:70%;z-index:0;
    pointer-events:none;border-radius:50%;
    background:radial-gradient(closest-side, rgba(244,232,223,.9) 0%, rgba(244,232,223,0) 100%);}
.emp-about > .container,
.emp-about > .container-fluid{position:relative;z-index:1;}
/* The theme's dotted side graphic becomes a quiet accent */
.emp-about .sideimg{width:190px;opacity:.5;top:auto;bottom:40px;z-index:0;}

.emp-about__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:74px;align-items:center;}

/* --- Portrait: arched mask + offset beige plate behind --- */
.emp-about__media{position:relative;}
.emp-about__media::before{content:"";position:absolute;left:-26px;bottom:-26px;width:64%;height:56%;
    background:var(--emp-beige);border-radius:22px;z-index:0;}
.emp-about__frame{position:relative;z-index:1;overflow:hidden;
    border-radius:240px 240px 26px 26px;}
.emp-about__img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;
    transition:transform .9s var(--emp-ease);}
.emp-about__media:hover .emp-about__img{transform:scale(1.045);}
@supports not (aspect-ratio:1/1){ .emp-about__img{height:560px;} }

/* --- Copy --- */
.emp-about__eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;
    font-weight:600;color:var(--emp-brown) !important;margin:0 0 16px;}
/* Sized down and capped: the CMS heading can run to 20+ words in uppercase,
   and a display size tuned for a short headline turns that into a wall.
   Normal-case copy simply reads a touch smaller — long copy stays readable. */
.emp-about__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.5rem,2.35vw,2.15rem);line-height:1.28;letter-spacing:0;
    max-width:26ch;color:var(--emp-brown-deep) !important;margin:0 0 22px;}
/* Long headings wrap better without the tight display tracking */
.emp-about__title{word-break:normal;overflow-wrap:break-word;hyphens:auto;}
.emp-about__lead,
.emp-about__lead p{font-size:1.1rem;line-height:1.75;color:var(--emp-brown) !important;
    font-weight:500;margin:0 0 18px;}
.emp-about__body,
.emp-about__body p{font-size:1rem;line-height:1.85;color:var(--emp-text-mid) !important;margin:0 0 14px;}

/* Underline-reveal CTA rather than another pill */
.emp-about__cta{display:inline-flex;align-items:center;gap:12px;margin-top:14px;
    font-size:.95rem;font-weight:600;letter-spacing:.02em;
    color:var(--emp-brown-deep) !important;text-decoration:none !important;
    padding-bottom:6px;border-bottom:1px solid rgba(74,52,40,.28);
    transition:color var(--emp-dur-fast) var(--emp-ease), border-color var(--emp-dur-fast) var(--emp-ease), gap var(--emp-dur-fast) var(--emp-ease);}
.emp-about__cta::after{content:"\f105";font-family:FontAwesome;font-size:1.05rem;line-height:1;}
.emp-about__cta:hover{color:var(--emp-brown) !important;border-color:var(--emp-brown);gap:18px;}

/* --- Stat band: overlaps the portrait's lower edge and runs into the copy --- */
.emp-about__stats{position:absolute;left:6%;right:0;bottom:-58px;z-index:2;
    display:grid;grid-auto-flow:column;grid-auto-columns:1fr;
    background:#fff;border-radius:6px;padding:26px 10px;
    box-shadow:0 26px 54px -30px rgba(74,52,40,.45);}
.emp-about__stats-label{position:absolute;left:0;top:-30px;font-size:.72rem;font-weight:600;
    text-transform:uppercase;letter-spacing:.16em;color:var(--emp-brown-lt) !important;}
.emp-about__stat{text-align:center;padding:0 18px;
    border-right:1px solid var(--emp-border);}
.emp-about__stat:last-child{border-right:0;}
.emp-about__stat-num{display:block;font-family:var(--emp-display);font-weight:700;
    font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1.05;
    color:var(--emp-brown) !important;margin:0 0 4px;}
.emp-about__stat-label{display:block;font-size:.85rem;line-height:1.4;
    color:var(--emp-text-mid) !important;margin:0;}

/* Room for the overlapping band */
.emp-about__grid{padding-bottom:0;}
.emp-about--hasstats{padding-bottom:170px;}

@media (max-width:1199px){
    .emp-about{padding:88px 0 100px;}
    .emp-about__grid{gap:48px;}
    .emp-about__frame{border-radius:200px 200px 24px 24px;}
    .emp-about--hasstats{padding-bottom:150px;}
}
@media (max-width:991px){
    /* Portrait above copy; the band leaves the overlap and becomes a 3-up row */
    .emp-about{padding:66px 0 70px;}
    .emp-about--hasstats{padding-bottom:70px;}
    .emp-about__grid{grid-template-columns:1fr;gap:40px;}
    .emp-about__media{max-width:460px;}
    .emp-about__img{aspect-ratio:5/4;}
    .emp-about .sideimg{display:none;}
    .emp-about__stats{position:static;left:auto;right:auto;bottom:auto;margin-top:44px;
        padding:22px 6px;box-shadow:0 18px 40px -28px rgba(74,52,40,.4);}
    .emp-about__stats-label{position:static;display:block;margin-bottom:14px;text-align:center;}
}
@media (max-width:575px){
    .emp-about__stats{grid-auto-flow:row;grid-auto-columns:auto;gap:20px;padding:24px 18px;}
    .emp-about__stat{border-right:0;border-bottom:1px solid var(--emp-border);padding:0 0 18px;}
    .emp-about__stat:last-child{border-bottom:0;padding-bottom:0;}
    .emp-about__frame{border-radius:150px 150px 20px 20px;}
    .emp-about__media::before{left:-14px;bottom:-14px;}
}

/* ==========================================================================
   WHY TO CHOOSE  —  full-bleed split, edge-to-edge media vs espresso panel
   ========================================================================== */
.emp-choose{position:relative;overflow:hidden;}
.emp-choose__grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:560px;}
.emp-choose__media{position:relative;overflow:hidden;}
.emp-choose__media img{width:100%;height:100%;object-fit:cover;display:block;
    transition:transform 1s var(--emp-ease);}
.emp-choose__media:hover img{transform:scale(1.04);}
.emp-choose__media .playbtnimg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
    width:78px;height:auto;z-index:2;transition:transform var(--emp-dur) var(--emp-ease);}
.emp-choose__media a:hover .playbtnimg{transform:translate(-50%,-50%) scale(1.08);}

.emp-choose__panel{position:relative;display:flex;flex-direction:column;justify-content:center;
    padding:84px clamp(28px,5vw,76px);
    background:linear-gradient(150deg, var(--emp-mocha) 0%, var(--emp-brown-deep) 68%, #2E1F17 100%);}
.emp-choose__panel .maskimg{position:absolute;right:-40px;top:-40px;width:260px;opacity:.16;
    pointer-events:none;}
.emp-choose__eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;
    font-weight:600;color:var(--emp-beige) !important;margin:0 0 14px;position:relative;}
.emp-choose__title{position:relative;font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.7rem,2.9vw,2.6rem);line-height:1.16;color:#fff !important;margin:0 0 26px;}
/* Checklist: the theme wraps this content in .choosetickbefore */
.emp-choose__list{position:relative;}
.emp-choose__list,
.emp-choose__list p,
.emp-choose__list li{color:rgba(255,255,255,.9) !important;font-size:1rem;line-height:1.85;}
.emp-choose__list ul{list-style:none;margin:0;padding:0;}
.emp-choose__list li{position:relative;padding-left:34px;margin-bottom:12px;}
.emp-choose__list li::before{content:"\f00c";font-family:FontAwesome;position:absolute;left:0;top:2px;
    width:22px;height:22px;border-radius:50%;font-size:11px;line-height:22px;text-align:center;
    background:var(--emp-beige);color:var(--emp-brown-deep);}

@media (max-width:991px){
    .emp-choose__grid{grid-template-columns:1fr;min-height:0;}
    .emp-choose__media{min-height:340px;}
    .emp-choose__panel{padding:56px 28px;}
    .emp-choose__panel .maskimg{width:180px;right:-30px;top:-30px;}
}

@media (prefers-reduced-motion:reduce){
    .emp-about__img,
    .emp-about__cta,
    .emp-choose__media img,
    .emp-choose__media .playbtnimg{transition:none !important;}
    .emp-about__media:hover .emp-about__img,
    .emp-choose__media:hover img,
    .emp-choose__media a:hover .playbtnimg{transform:none !important;}
    .emp-choose__media a:hover .playbtnimg{transform:translate(-50%,-50%) !important;}
}


/* ==========================================================================
   CONTACT  —  illustration / form / info-cards three-column composition
   ========================================================================== */
.emp-contact{background:#fff;padding:70px 0 46px;}
.emp-contact__head{text-align:center;max-width:760px;margin:0 auto 46px;}
.emp-contact__label{display:block;font-size:.98rem;font-weight:500;letter-spacing:.02em;
    color:var(--emp-brown) !important;margin-bottom:8px;}
.emp-contact__title{font-family:var(--emp-display);font-weight:700;text-transform:none;
    font-size:clamp(1.75rem,3.4vw,2.7rem);line-height:1.15;color:#111 !important;margin:0;}

.emp-contact__grid{display:flex;align-items:flex-start;gap:34px;max-width:1200px;margin:0 auto;}
.emp-contact__aside{flex:0 0 23%;max-width:23%;}
.emp-contact__form{flex:1 1 auto;min-width:0;}
.emp-contact__side{flex:0 0 26%;max-width:26%;}

/* Placeholder artwork — swap the two images for the final illustrations */
.emp-contact__art{display:block;width:100%;height:auto;border-radius:16px;margin-bottom:22px;}
.emp-contact__note,
.emp-contact__note p{font-size:1rem;line-height:1.8;color:#666 !important;margin:0;}

/* --- Form ---------------------------------------------------------------- */
.emp-contact .form-group{margin-bottom:18px;}
.emp-contact label{display:block;font-size:.95rem;font-weight:500;color:#333 !important;margin-bottom:7px;}
/* Beats both the global input{…!important} rule and .contactusform's blue inputs */
.emp-contact .form-control{background:var(--emp-beige) !important;border:1px solid transparent !important;
    border-radius:10px !important;height:50px;padding:0 18px !important;font-size:.95rem;
    color:#333 !important;box-shadow:none;
    transition:background var(--emp-dur-fast) var(--emp-ease), border-color var(--emp-dur-fast) var(--emp-ease), box-shadow var(--emp-dur-fast) var(--emp-ease);}
.emp-contact textarea.form-control{height:auto;min-height:140px;padding:14px 18px !important;line-height:1.7;}
.emp-contact .form-control::placeholder{color:#a18e81;}
.emp-contact .form-control:focus{background:#fff !important;border-color:var(--emp-brown) !important;
    box-shadow:0 0 0 3px rgba(122,85,63,.16);outline:none;}
.emp-contact .btn_submit{display:block;width:100%;height:52px;cursor:pointer;
    border:0 !important;border-radius:var(--dw-radius-pill) !important;
    background:var(--emp-brown) !important;color:#fff !important;font-size:1rem;font-weight:600;
    box-shadow:0 14px 30px -16px rgba(83,55,40,.5);
    transition:background var(--emp-dur-fast) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease), box-shadow var(--emp-dur-fast) var(--emp-ease);}
.emp-contact .btn_submit:hover{background:var(--emp-brown-deep) !important;transform:translateY(-2px);
    box-shadow:0 20px 38px -16px rgba(83,55,40,.58);}
/* jQuery-validate messages */
.emp-contact label.error{color:#c0392b !important;font-size:.82rem;font-weight:500;margin:6px 0 0;}

/* --- Info cards --------------------------------------------------------- */
.emp-contact__card{display:flex;align-items:center;gap:14px;background:var(--emp-brown);
    border-radius:12px;padding:18px 20px;margin-bottom:14px;
    box-shadow:0 12px 26px -18px rgba(83,55,40,.55);
    transition:transform var(--emp-dur-fast) var(--emp-ease), box-shadow var(--emp-dur-fast) var(--emp-ease);}
.emp-contact__card:hover{transform:translateY(-3px);box-shadow:0 18px 34px -18px rgba(83,55,40,.62);}
.emp-contact__card > i{flex:0 0 42px;width:42px;height:42px;border-radius:50%;font-size:17px;
    background:rgba(255,255,255,.17);color:#fff;display:inline-flex;align-items:center;justify-content:center;}
.emp-contact__card-body{min-width:0;}
.emp-contact__card-title{font-size:.9rem;font-weight:700;color:#fff !important;margin:0 0 2px;}
.emp-contact__card-body a,
.emp-contact__card-body span,
.emp-contact__card-body p{font-size:.9rem;line-height:1.45;color:#fff !important;
    text-decoration:none !important;margin:0;word-break:break-word;}
.emp-contact__card-body a:hover{text-decoration:underline !important;}

/* --- Social ------------------------------------------------------------- */
.emp-contact__social-title{font-size:1.05rem;font-weight:700;color:#333 !important;margin:24px 0 12px;}
.emp-contact__social{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0;padding:0;}
.emp-contact__social a{width:38px;height:38px;border-radius:50%;font-size:16px;
    background:var(--emp-brown);color:#fff !important;text-decoration:none !important;
    display:inline-flex;align-items:center;justify-content:center;
    transition:background var(--emp-dur-fast) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease);}
.emp-contact__social a:hover{transform:translateY(-2px);background:var(--emp-brown-deep);}
/* Brand tints where :has() is available; falls back to brown otherwise */
.emp-contact__social a:has(.fa-whatsapp){background:#25D366;}
.emp-contact__social a:has(.fa-facebook),
.emp-contact__social a:has(.fa-facebook-f),
.emp-contact__social a:has(.fa-facebook-square){background:#1877F2;}
.emp-contact__social a:has(.fa-linkedin),
.emp-contact__social a:has(.fa-linkedin-square){background:#0A66C2;}
.emp-contact__social a:has(.fa-instagram){background:#C13584;}
.emp-contact__social a:has(.fa-twitter),
.emp-contact__social a:has(.fa-twitter-square){background:#1D1D1F;}
.emp-contact__social a:has(.fa-youtube),
.emp-contact__social a:has(.fa-youtube-play){background:#FF0000;}

@media (max-width:1199px){
    .emp-contact__grid{gap:26px;}
    .emp-contact__aside{flex:0 0 25%;max-width:25%;}
    .emp-contact__side{flex:0 0 28%;max-width:28%;}
}
@media (max-width:991px){
    /* Illustration + intro move above; form and info sit side by side */
    .emp-contact{padding:54px 0 40px;}
    .emp-contact__grid{flex-wrap:wrap;}
    .emp-contact__aside{flex:1 1 100%;max-width:100%;order:-1;display:flex;align-items:center;gap:24px;
        margin-bottom:8px;}
    .emp-contact__art{max-width:240px;margin-bottom:0;}
    .emp-contact__form{flex:1 1 58%;}
    .emp-contact__side{flex:1 1 34%;max-width:none;}
}
@media (max-width:767px){
    /* Everything stacks */
    .emp-contact{padding:42px 0 34px;}
    .emp-contact__grid{flex-direction:column;gap:26px;}
    .emp-contact__aside{flex-direction:column;text-align:center;gap:16px;}
    .emp-contact__art{max-width:100%;}
    .emp-contact__form,
    .emp-contact__side{flex:1 1 100%;max-width:100%;width:100%;}
    .emp-contact__social{justify-content:center;}
    .emp-contact__social-title{text-align:center;}
}

@media (prefers-reduced-motion:reduce){
    .emp-contact .form-control,
    .emp-contact .btn_submit,
    .emp-contact__card,
    .emp-contact__social a{transition:none !important;}
    .emp-contact .btn_submit:hover,
    .emp-contact__card:hover,
    .emp-contact__social a:hover{transform:none !important;}
}

/* ==========================================================================
   BOOK APPOINTMENT — form card + side image
   ========================================================================== */
.emp-book{padding:60px 0 80px;}
.emp-book__grid{display:flex;align-items:stretch;gap:36px;flex-wrap:wrap;}
.emp-book__form{flex:1 1 55%;min-width:300px;background:#fff;padding:40px;
    border-radius:20px;box-shadow:var(--dw-shadow-md,0 8px 24px rgba(149,157,165,.2));}
.emp-book__label{display:block;font-size:.98rem;font-weight:500;color:var(--emp-brown) !important;margin-bottom:8px;}
.emp-book__title{font-family:var(--emp-display);font-weight:700;font-size:clamp(1.6rem,3vw,2.3rem);
    color:#111 !important;margin-bottom:24px;}
.emp-book__media{flex:1 1 40%;min-width:260px;}
.emp-book__media img{display:block;width:100%;height:100%;min-height:320px;object-fit:cover;
    border-radius:20px;}
.emp-book .form-group{margin-bottom:18px;}
.emp-book .form-control{background:var(--emp-beige) !important;border:1px solid transparent !important;
    border-radius:10px !important;height:50px;padding:0 18px !important;font-size:.95rem;
    color:#333 !important;box-shadow:none;
    transition:background var(--emp-dur-fast) var(--emp-ease), border-color var(--emp-dur-fast) var(--emp-ease), box-shadow var(--emp-dur-fast) var(--emp-ease);}
.emp-book textarea.form-control{height:auto;min-height:110px;padding:14px 18px !important;line-height:1.7;}
.emp-book .form-control::placeholder{color:#a18e81;}
.emp-book .form-control:focus{background:#fff !important;border-color:var(--emp-brown) !important;
    box-shadow:0 0 0 3px rgba(122,85,63,.16);outline:none;}
.emp-book label.error{color:#c0392b !important;font-size:.82rem;font-weight:500;margin:6px 0 0;}
/* Appointment slot pills */
.emp-book .appointmentslotscontainer{display:flex;flex-wrap:wrap;gap:10px;width:100%;}
.emp-book .rd_button{position:relative;height:auto;margin:0;}
.emp-book .rd_button label,
.emp-book .rd_button input{position:static;display:block;}
.emp-book .rd_button input[type="radio"]{position:absolute;inset:0;opacity:.011;z-index:100;cursor:pointer;}
.emp-book .rd_button label{padding:8px 16px;border-radius:var(--dw-radius-pill,999px);
    background:var(--emp-beige);color:var(--emp-brown-deep);font-size:.88rem;font-weight:600;
    cursor:pointer;transition:background var(--emp-dur-fast) var(--emp-ease), color var(--emp-dur-fast) var(--emp-ease);}
.emp-book .rd_button input[type="radio"]:checked + label{background:var(--emp-accent);color:#000;}
@media (max-width:767px){
    .emp-book{padding:40px 0 50px;}
    .emp-book__form{padding:26px 22px;}
    .emp-book__media{order:-1;min-height:220px;}
    .emp-book__media img{min-height:220px;}
}


/* ==========================================================================
   CTA STRIP  —  overlapping circular images + editorial headline
   ========================================================================== */
.emp-cta{background:#fff;padding:76px 0;}
.emp-cta__inner{display:flex;align-items:center;gap:56px;max-width:1240px;margin:0 auto;}

/* --- Image composition --- */
.emp-cta__media{position:relative;flex:0 0 340px;width:340px;height:282px;}
.emp-cta__circle{position:absolute;display:block;border-radius:50%;overflow:hidden;
    border:6px solid #fff;box-shadow:0 18px 40px -18px rgba(40,25,16,.35);
    transition:transform var(--emp-dur) var(--emp-ease);}
.emp-cta__circle img{width:100%;height:100%;object-fit:cover;display:block;}
.emp-cta__circle--lg{width:250px;height:250px;left:0;top:0;z-index:1;}
.emp-cta__circle--sm{width:142px;height:142px;left:190px;top:132px;z-index:2;}
.emp-cta:hover .emp-cta__circle--lg{transform:translateY(-4px);}
.emp-cta:hover .emp-cta__circle--sm{transform:translateY(4px);}

/* --- Content --- */
.emp-cta__content{flex:1 1 auto;min-width:0;}
.emp-cta__title{font-family:var(--emp-display);font-weight:700;text-transform:none;
    font-size:clamp(2.05rem,4.2vw,3.7rem);line-height:1.1;letter-spacing:-.01em;
    color:var(--dw-color-heading) !important;margin:0 0 16px;}
.emp-cta__text,
.emp-cta__text p{font-size:1.12rem;line-height:1.6;color:var(--emp-text-mid) !important;
    max-width:650px;margin:0 0 28px;}

.emp-cta__btn{display:inline-block;background:var(--emp-brown);color:#fff !important;
    border:0;border-radius:var(--dw-radius-pill);padding:16px 38px;font-size:1rem;font-weight:500;
    text-decoration:none !important;box-shadow:0 14px 30px -16px rgba(83,55,40,.55);
    transition:background var(--emp-dur-fast) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease), box-shadow var(--emp-dur-fast) var(--emp-ease);}
.emp-cta__btn:hover,
.emp-cta__btn:focus-visible{background:var(--emp-brown-dk);color:#fff !important;
    transform:translateY(-3px);box-shadow:0 20px 38px -16px rgba(83,55,40,.62);}

@media (max-width:1199px){
    .emp-cta__inner{gap:40px;}
    /* Composition scales down as one unit */
    .emp-cta__media{flex:0 0 280px;width:280px;height:238px;}
    .emp-cta__circle--lg{width:208px;height:208px;}
    .emp-cta__circle--sm{width:120px;height:120px;left:158px;top:110px;}
}
@media (max-width:991px){
    .emp-cta{padding:58px 0;}
    .emp-cta__inner{gap:30px;}
    .emp-cta__media{flex:0 0 236px;width:236px;height:202px;}
    .emp-cta__circle--lg{width:176px;height:176px;border-width:5px;}
    .emp-cta__circle--sm{width:102px;height:102px;left:134px;top:94px;border-width:5px;}
    .emp-cta__text,
    .emp-cta__text p{font-size:1.05rem;}
}
@media (max-width:767px){
    /* Stack, centred */
    .emp-cta{padding:46px 0;}
    .emp-cta__inner{flex-direction:column;gap:32px;text-align:center;}
    .emp-cta__media{margin:0 auto;}
    .emp-cta__content{width:100%;}
    .emp-cta__text,
    .emp-cta__text p{margin-left:auto;margin-right:auto;}
    .emp-cta__btn{display:block;width:100%;text-align:center;}
}

@media (prefers-reduced-motion:reduce){
    .emp-cta__circle,
    .emp-cta__btn{transition:none !important;}
    .emp-cta:hover .emp-cta__circle--lg,
    .emp-cta:hover .emp-cta__circle--sm,
    .emp-cta__btn:hover{transform:none !important;}
}


/* ==========================================================================
   OUR VALUES  (vision & mission)  —  backdrop panel + 2-up / centred card grid
   ========================================================================== */
.emp-values{padding:76px 0;}
.emp-values__panel{position:relative;isolation:isolate;overflow:hidden;border-radius:24px;
    padding:80px 70px;}
/* Artwork, softly blurred. Scaled up so the blur can't feather the panel edges. */
.emp-values__panel::before{content:"";position:absolute;inset:-24px;z-index:-3;
    background-image:var(--emp-values-bg);background-size:cover;background-position:center;
    filter:blur(4px);}
/* Warm beige scrim. Deliberately light rather than a 45% dark wash — the deep
   brown heading and white cards need a light backdrop to stay legible. */
.emp-values__panel::after{content:"";position:absolute;inset:0;z-index:-2;
    background:linear-gradient(120deg, rgba(244,232,223,.80) 0%, rgba(230,208,190,.70) 48%, rgba(206,177,152,.72) 100%),
               linear-gradient(0deg, rgba(54,40,32,.12) 0%, rgba(54,40,32,.12) 100%);}
/* Faint radial light sitting behind the card deck */
.emp-values__deck::before{content:"";position:absolute;inset:-8% -6%;z-index:-1;pointer-events:none;
    background:radial-gradient(58% 52% at 55% 45%, rgba(255,255,255,.55) 0%, rgba(255,255,255,0) 70%);}

.emp-values__layout{align-items:center;}
.emp-values__aside{padding-right:36px;}
.emp-values__label{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;
    font-weight:600;color:var(--emp-brown) !important;margin-bottom:14px;}
.emp-values__title{font-family:var(--emp-display);font-weight:700;text-transform:none;
    font-size:clamp(2rem,3.6vw,3.5rem);line-height:1.12;letter-spacing:-.01em;
    color:var(--emp-brown-deep) !important;margin:0 0 18px;}
.emp-values__lead,
.emp-values__lead p{font-size:1rem;line-height:1.8;color:#3a2f28 !important;max-width:320px;margin:0;}

.emp-values__deck{position:relative;}
/* 2 per row. A last card in an odd position is alone on its line, so it widens
   and centres — giving the staggered 2-then-1 arrangement for three items,
   while 4 items still fall into a clean 2x2. */
.emp-values__grid{display:flex;flex-wrap:wrap;justify-content:center;gap:26px;}
.emp-values__grid > *{display:flex;flex:0 0 calc(50% - 13px);max-width:calc(50% - 13px);}
.emp-values__grid > *:last-child:nth-child(odd){flex-basis:calc(63% - 13px);max-width:calc(63% - 13px);}
/* If the CMS slider toggle is on, owl replaces the grid */
.emp-values__deck > .owl-carousel{position:relative;}

.emp-value-card{display:flex;flex-direction:column;width:100%;
    background:rgba(255,255,255,.94);
    -webkit-backdrop-filter:blur(8px) saturate(120%);backdrop-filter:blur(8px) saturate(120%);
    border:1px solid var(--emp-border-lt);border-radius:19px;padding:36px;
    box-shadow:0 18px 40px -24px rgba(74,52,40,.34);
    transition:transform var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease), background var(--emp-dur) var(--emp-ease);}
.emp-value-card:hover{transform:translateY(-6px);background:#fff;
    box-shadow:0 32px 58px -26px rgba(74,52,40,.44);}

/* Header: title left, icon medallion right */
.emp-value-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;
    margin-bottom:14px;}
.emp-value-card__title{font-weight:700;text-transform:none;
    font-size:clamp(1.15rem,1.55vw,1.5rem);line-height:1.28;
    color:var(--emp-brown-deep) !important;margin:0;}
.emp-value-card__icon{flex:0 0 60px;width:60px;height:60px;border-radius:50%;
    background:var(--emp-beige);display:inline-flex;align-items:center;justify-content:center;
    overflow:hidden;transition:transform var(--emp-dur) var(--emp-ease);}
.emp-value-card__icon img{width:60%;height:60%;object-fit:contain;}
.emp-value-card__icon i{font-size:24px;color:var(--emp-brown);line-height:1;}
.emp-value-card:hover .emp-value-card__icon{transform:scale(1.07);}

/* Flex column so the Read more link can be pushed to the foot with margin-top:auto */
.emp-value-card__body{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;}
.emp-value-card__text,
.emp-value-card__text p,
.emp-value-card__long,
.emp-value-card__long p{font-size:1rem;line-height:1.8;color:#333 !important;margin:0 0 12px;}
.emp-value-card__body > :last-child{margin-bottom:0 !important;}

/* Read more sits at the card's foot so all cards align regardless of copy length */
.emp-value-card__more{display:inline-block;margin-top:auto;font-size:.85rem;font-weight:600;
    letter-spacing:.02em;color:var(--emp-brown) !important;text-decoration:none !important;
    transition:color var(--emp-dur-fast) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease);}
.emp-value-card__more::after{content:"\f105";font-family:FontAwesome;margin-left:7px;}
.emp-value-card__more:hover{color:var(--emp-brown-deep) !important;transform:translateX(2px);}

@media (max-width:1199px){
    .emp-values__panel{padding:60px 44px;}
    .emp-values__aside{padding-right:20px;}
    .emp-value-card{padding:30px;}
}
@media (max-width:991px){
    /* Left block moves above the deck; cards keep the 2+1 arrangement */
    .emp-values{padding:56px 0;}
    .emp-values__panel{padding:48px 34px;}
    .emp-values__aside{padding-right:0;margin-bottom:34px;}
    .emp-values__lead,
    .emp-values__lead p{max-width:520px;}
    .emp-values__grid{gap:20px;}
    .emp-values__grid > *{flex:0 0 calc(50% - 10px);max-width:calc(50% - 10px);}
    .emp-values__grid > *:last-child:nth-child(odd){flex-basis:calc(68% - 10px);max-width:calc(68% - 10px);}
}
@media (max-width:767px){
    /* Heading first, then cards stacked full width */
    .emp-values{padding:42px 0;}
    .emp-values__panel{padding:32px 20px;border-radius:20px;}
    .emp-values__grid{gap:18px;}
    .emp-values__grid > *,
    .emp-values__grid > *:last-child:nth-child(odd){flex:0 0 100%;max-width:100%;flex-basis:100%;}
    .emp-value-card{padding:24px 22px;border-radius:17px;}
    .emp-value-card__head{gap:14px;margin-bottom:12px;}
    .emp-value-card__icon{flex:0 0 50px;width:50px;height:50px;}
    .emp-value-card__icon i{font-size:20px;}
}

@media (prefers-reduced-motion:reduce){
    .emp-value-card,
    .emp-value-card__icon,
    .emp-value-card__more{transition:none !important;}
    .emp-value-card:hover,
    .emp-value-card:hover .emp-value-card__icon,
    .emp-value-card__more:hover{transform:none !important;}
}


/* ==========================================================================
   FOOTER  —  landscape backdrop, three columns, newsletter
   ========================================================================== */
.emp-footer{position:relative;isolation:isolate;overflow:hidden;padding:0;
    background:var(--dw-footer-bg);}
/* Backdrop: artwork layer + warm brown-to-black scrim for text legibility */
.emp-footer::before{content:"";position:absolute;inset:0;z-index:-2;
    background-image:var(--emp-footer-bg);background-size:cover;background-position:center;}
.emp-footer::after{content:"";position:absolute;inset:0;z-index:-1;
    background:linear-gradient(180deg, rgba(var(--emp-hero-tint),.55) 0%, rgba(23,22,28,.62) 55%, rgba(12,11,15,.88) 100%);}

.emp-footer__inner{position:relative;max-width:1200px;}
.emp-footer__grid{display:flex;align-items:stretch;gap:0;min-height:340px;padding:56px 0 28px;}
.emp-footer__col{flex:1 1 0;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:0 40px;}
/* Thin dividers between the three columns */
.emp-footer__col + .emp-footer__col{border-left:1px solid rgba(255,255,255,.32);}

/* --- Left: vertical navigation --- */
.emp-footer__nav ul{list-style:none;margin:0;padding:0;}
.emp-footer__nav li{margin:0;}
.emp-footer__nav a{display:inline-block;color:var(--dw-footer-text) !important;font-size:17px;
    letter-spacing:.02em;line-height:2.2;text-decoration:none !important;
    transition:color var(--emp-dur-fast) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease);}
.emp-footer__nav a:hover,
.emp-footer__nav a:focus-visible{color:var(--emp-beige) !important;transform:translateX(3px);}

/* --- Centre: brand + newsletter --- */
.emp-footer__brand{align-items:center;text-align:center;}
.emp-footer__logo{display:inline-block;margin-bottom:18px;text-decoration:none !important;}
.emp-footer__logo img{max-height:84px;width:auto;}
.emp-footer__logo-text{font-family:var(--emp-display);font-weight:300;letter-spacing:.01em;
    font-size:clamp(2.4rem,4.4vw,4.5rem);line-height:1.05;color:var(--dw-footer-text) !important;}
.emp-footer__updates-title{font-size:1.35rem;font-weight:700;text-transform:none;
    color:var(--dw-footer-heading) !important;margin:0 0 10px;}
.emp-footer__updates-text,
.emp-footer__updates-text p{color:var(--dw-footer-text) !important;font-size:1rem;line-height:1.55;
    margin:0 0 22px;max-width:420px;}

.emp-footer__subscribe{display:flex;align-items:center;gap:12px;width:100%;max-width:420px;
    flex-wrap:nowrap;}
.emp-footer__subscribe .emp-footer__input{flex:1 1 auto;min-width:0;height:52px;
    border-radius:var(--dw-radius-pill) !important;border:1px solid rgba(255,255,255,.9) !important;
    background:#fff !important;color:#3a2f27 !important;padding:0 22px;font-size:.95rem;
    transition:box-shadow var(--emp-dur-fast) var(--emp-ease);}
.emp-footer__subscribe .emp-footer__input::placeholder{color:#9a8b81;}
.emp-footer__subscribe .emp-footer__input:focus{outline:none;box-shadow:0 0 0 3px rgba(216,178,159,.45);}
/* border needs !important to beat the global input{border:…!important} rule */
.emp-footer__subscribe .emp-footer__submit{flex:0 0 auto;height:52px;border:0 !important;cursor:pointer;
    border-radius:var(--dw-radius-pill) !important;padding:0 30px;font-size:.95rem;font-weight:700;
    background:var(--emp-beige) !important;color:#1d1b20 !important;
    transition:background var(--emp-dur-fast) var(--emp-ease), color var(--emp-dur-fast) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease);}
.emp-footer__subscribe .emp-footer__submit:hover{background:#fff !important;transform:translateY(-2px);}

.emp-footer__social{display:flex;justify-content:center;gap:8px;list-style:none;margin:22px 0 0;padding:0;}
.emp-footer__social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;
    border-radius:50%;border:1px solid rgba(255,255,255,.34);color:var(--dw-footer-text) !important;
    font-size:16px;text-decoration:none !important;
    transition:background var(--emp-dur-fast) var(--emp-ease), color var(--emp-dur-fast) var(--emp-ease), border-color var(--emp-dur-fast) var(--emp-ease);}
.emp-footer__social a:hover{background:var(--emp-beige);border-color:var(--emp-beige);color:#1d1b20 !important;}

/* --- Right: contact --- */
.emp-footer__contact-title{font-size:1.6rem;font-weight:700;text-transform:none;
    color:var(--dw-footer-heading) !important;margin:0 0 22px;}
.emp-footer__row{display:flex;align-items:flex-start;gap:14px;margin-bottom:18px;}
.emp-footer__row:last-child{margin-bottom:0;}
.emp-footer__row i{flex:0 0 26px;width:26px;font-size:20px;line-height:1.5;
    color:var(--dw-footer-text);text-align:center;}
.emp-footer__row span,
.emp-footer__row a{color:var(--dw-footer-text) !important;font-size:1rem;line-height:1.5;
    text-decoration:none !important;transition:color var(--emp-dur-fast) var(--emp-ease);}
.emp-footer__row a:hover{color:var(--emp-beige) !important;}

/* --- Bottom bar --- */
.emp-footer__bottom{position:relative;text-align:center;padding:20px 0 26px;
    border-top:1px solid rgba(255,255,255,.14);}
.emp-footer__bottom p{color:var(--dw-footer-text) !important;opacity:.72;font-size:.9rem;margin:0;}
.emp-footer__bottom a,
.emp-footer__bottom strong{color:var(--dw-footer-text) !important;}

@media (max-width:991px){
    .emp-footer__grid{flex-wrap:wrap;min-height:0;padding:44px 0 20px;}
    /* Brand leads on tablet, then nav and contact share a row */
    .emp-footer__brand{flex:1 1 100%;order:-1;padding:0 20px 34px;}
    .emp-footer__col{padding:0 24px;}
    .emp-footer__nav,
    .emp-footer__contact{flex:1 1 46%;}
    .emp-footer__brand + .emp-footer__col{border-left:0;}
}
@media (max-width:767px){
    .emp-footer__grid{flex-direction:column;padding:38px 0 16px;}
    .emp-footer__col{padding:0 8px 28px;text-align:center;align-items:center;}
    .emp-footer__col + .emp-footer__col{border-left:0;border-top:1px solid rgba(255,255,255,.18);padding-top:28px;}
    .emp-footer__nav a{line-height:2;}
    .emp-footer__nav a:hover{transform:none;}
    .emp-footer__row{justify-content:center;text-align:left;}
    .emp-footer__subscribe{flex-wrap:wrap;justify-content:center;}
    .emp-footer__subscribe .emp-footer__input,
    .emp-footer__subscribe .emp-footer__submit{flex:1 1 100%;width:100%;}
}

@media (prefers-reduced-motion:reduce){
    .emp-footer__nav a,
    .emp-footer__subscribe .emp-footer__submit,
    .emp-footer__social a,
    .emp-footer__row a{transition:none !important;}
    .emp-footer__nav a:hover,
    .emp-footer__subscribe .emp-footer__submit:hover{transform:none !important;}
}


@media (prefers-reduced-motion:reduce){
    /* Colour changes still convey the featured state; only motion is dropped —
       the sweep becomes an instant fill and the stagger delays are removed. */
    .emp-blog-card,
    .emp-blog-card::before,
    .emp-blog-card__media img,
    .emp-blog-card__cta,
    .emp-blog-card__title,
    .emp-blog-card__title a,
    .emp-blog-card__date,
    .emp-blog-card__excerpt,
    .emp-blog-card__spine{transition:none !important;transition-delay:0s !important;}
    .emp-blog-card:hover .emp-blog-card__title,
    .emp-blog-card:hover .emp-blog-card__title a,
    .emp-blog-card:hover .emp-blog-card__date,
    .emp-blog-card:hover .emp-blog-card__cta,
    .emp-blog-card:focus-within .emp-blog-card__title,
    .emp-blog-card:focus-within .emp-blog-card__title a,
    .emp-blog-card:focus-within .emp-blog-card__date,
    .emp-blog-card:focus-within .emp-blog-card__cta{transition-delay:0s !important;}
    .emp-blog-card:hover,
    .emp-blog-card:focus-within,
    .emp-blog-card:active,
    .emp-blog-card:hover .emp-blog-card__media img,
    .emp-blog-card:focus-within .emp-blog-card__media img,
    .emp-blog-card:active .emp-blog-card__media img,
    .emp-blog-card__cta:hover{transform:none !important;}
}


/* ==========================================================================
   BLOG LISTING PAGE (blog.php)  —  sidebar polish only; cards reuse
   .emp-blog-card verbatim from the homepage.
   ========================================================================== */
.emp-blog-page{background:#fff;padding:70px 0 100px;}
.emp-blog-aside{background:var(--emp-cream);border-radius:18px;padding:26px 24px;}
.emp-blog-aside + .emp-blog-aside{margin-top:20px;}
.emp-blog-aside .form-control{border-radius:var(--dw-radius-pill) !important;
    border:1px solid var(--emp-border) !important;background:#fff !important;padding-right:40px;}
.emp-blog-aside__title{font-family:var(--emp-display);font-weight:600;font-size:1.05rem;
    color:var(--emp-brown-deep) !important;margin:0 0 14px;}
.emp-blog-aside ul{list-style:none;margin:0;padding:0;}
.emp-blog-aside .yearnum{border-bottom:1px solid var(--emp-border);}
.emp-blog-aside .yearnum:last-child{border-bottom:0;}
.emp-blog-aside .yearnum > p{font-size:.95rem;color:var(--emp-brown-deep) !important;}
.emp-blog-aside .yearnum a{color:var(--emp-text-mid) !important;font-size:.9rem;
    text-decoration:none !important;transition:color var(--emp-dur-fast) var(--emp-ease);}
.emp-blog-aside .yearnum a:hover{color:var(--emp-brown) !important;}

.emp-blog-list{display:flex;flex-direction:column;gap:26px;}
.emp-blog-list .emp-blog-slide{padding:0;}

@media (max-width:991px){ .emp-blog-page{padding:50px 0 70px;} }


/* ==========================================================================
   ABOUT US PAGE (about_us.php)
   Ten bespoke sections. Every layout, card idiom and background differs
   deliberately — see the section-open comments for what each one draws from.
   Namespaced emp-au- to avoid collisions with the homepage's emp- classes.
   ========================================================================== */

/* ---------- 1. HERO ---------- */
.emp-au-hero{position:relative;overflow:hidden;padding:76px 0 100px;background:#fff;}
.emp-au-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    gap:60px;align-items:center;}
.emp-au-hero__eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.8rem;
    font-weight:600;color:var(--emp-brown) !important;margin:0 0 16px;}
.emp-au-hero__title{font-family:var(--emp-display);font-weight:700;text-transform:none;
    font-size:clamp(2.1rem,4vw,3.4rem);line-height:1.1;letter-spacing:-.01em;
    color:var(--emp-brown-deep) !important;margin:0 0 20px;}
.emp-au-hero__intro,
.emp-au-hero__intro p{font-size:1.08rem;line-height:1.8;color:var(--emp-text-mid) !important;
    max-width:520px;margin:0 0 30px;}
.emp-au-hero__actions{display:flex;flex-wrap:wrap;gap:14px;}
.emp-au-hero__btn{display:inline-block;background:var(--emp-brown);color:#fff !important;
    border-radius:var(--dw-radius-pill);padding:15px 34px;font-size:.95rem;font-weight:600;
    text-decoration:none !important;box-shadow:0 16px 30px -16px rgba(74,52,40,.55);
    transition:background var(--emp-dur-fast) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease);}
.emp-au-hero__btn:hover{background:var(--emp-brown-deep);transform:translateY(-3px);}
.emp-au-hero__link{display:inline-flex;align-items:center;gap:10px;padding:15px 6px;
    font-size:.95rem;font-weight:600;color:var(--emp-brown-deep) !important;
    text-decoration:none !important;transition:gap var(--emp-dur-fast) var(--emp-ease);}
.emp-au-hero__link::after{content:"\f105";font-family:FontAwesome;}
.emp-au-hero__link:hover{gap:16px;}

.emp-au-hero__media{position:relative;}
.emp-au-hero__media::before{content:"";position:absolute;right:-10%;top:-12%;width:70%;height:78%;
    z-index:0;pointer-events:none;border-radius:50%;
    background:radial-gradient(closest-side, rgba(179,139,114,.28) 0%, rgba(179,139,114,0) 100%);}
.emp-au-hero__frame{position:relative;z-index:1;overflow:hidden;border-radius:28px;
    box-shadow:0 40px 70px -36px rgba(74,52,40,.45);}
.emp-au-hero__frame img{display:block;width:100%;aspect-ratio:4/3.1;object-fit:cover;}
@supports not (aspect-ratio:1/1){ .emp-au-hero__frame img{height:420px;} }
/* Glass chip overlapping the image's lower-left corner */
.emp-au-hero__chip{position:absolute;left:-24px;bottom:-24px;z-index:2;display:flex;align-items:center;
    gap:14px;padding:18px 24px;border-radius:18px;background:rgba(255,255,255,.85);
    -webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);
    border:1px solid rgba(255,255,255,.6);box-shadow:0 22px 44px -22px rgba(74,52,40,.5);}
.emp-au-hero__chip-num{font-family:var(--emp-display);font-weight:700;font-size:2rem;line-height:1;
    color:var(--emp-brown) !important;}
.emp-au-hero__chip-label{font-size:.82rem;line-height:1.35;color:var(--emp-text-mid) !important;
    max-width:110px;}

@media (max-width:991px){
    .emp-au-hero{padding:56px 0 84px;}
    .emp-au-hero__grid{grid-template-columns:1fr;gap:44px;}
    .emp-au-hero__media{order:-1;}
    .emp-au-hero__chip{left:16px;bottom:-20px;}
}
@media (max-width:575px){
    .emp-au-hero__chip{position:static;margin-top:16px;display:inline-flex;}
}

/* ---------- 2. ABOUT SPLIT (Doctor / Hospital) ---------- */
.emp-au-split{position:relative;overflow:hidden;background:var(--emp-cream);padding:96px 0 100px;}
.emp-au-split::before{content:"";position:absolute;left:-8%;bottom:-16%;width:44%;height:60%;z-index:0;
    pointer-events:none;border-radius:50%;
    background:radial-gradient(closest-side, rgba(106,70,50,.14) 0%, rgba(106,70,50,0) 100%);}
.emp-au-split > .container,
.emp-au-split > .container-fluid{position:relative;z-index:1;}
.emp-au-split__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:64px;align-items:center;}
.emp-au-split__media{overflow:hidden;border-radius:24px;box-shadow:0 30px 60px -32px rgba(74,52,40,.4);}
.emp-au-split__media img{display:block;width:100%;aspect-ratio:5/4.4;object-fit:cover;}
@supports not (aspect-ratio:1/1){ .emp-au-split__media img{height:400px;} }
.emp-au-split__eyebrow{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;
    font-weight:600;color:var(--emp-brown) !important;margin:0 0 14px;}
.emp-au-split__title{font-family:var(--emp-display);font-weight:600;text-transform:capitalize;
    font-size:clamp(1.7rem,2.8vw,2.4rem);line-height:1.2;color:var(--emp-brown-deep) !important;
    margin:0 0 20px;}
.emp-au-split__body,
.emp-au-split__body p{font-size:1rem;line-height:1.85;color:var(--emp-text-mid) !important;margin:0 0 14px;}

/* Stat strip: pill chips, not a boxed band — visually distinct from the Hero's single chip */
.emp-au-split__stats{grid-column:1 / -1;display:flex;flex-wrap:wrap;justify-content:center;
    gap:16px;margin-top:12px;}
.emp-au-split__stat{display:flex;align-items:baseline;gap:10px;background:#fff;
    border-radius:var(--dw-radius-pill);padding:16px 30px;
    box-shadow:0 16px 34px -24px rgba(74,52,40,.35);}
.emp-au-split__stat-num{font-family:var(--emp-display);font-weight:700;font-size:1.5rem;
    color:var(--emp-brown) !important;}
.emp-au-split__stat-label{font-size:.85rem;color:var(--emp-text-mid) !important;}

@media (max-width:991px){
    .emp-au-split{padding:64px 0 68px;}
    .emp-au-split__grid{grid-template-columns:1fr;gap:36px;}
}
@media (max-width:575px){
    .emp-au-split__stats{gap:10px;}
    .emp-au-split__stat{padding:12px 20px;}
}

/* ---------- 3. WHY CHOOSE US ---------- */
.emp-au-why{background:#fff;padding:100px 0 106px;}
.emp-au-why__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);gap:56px;
    align-items:start;}
.emp-au-why__eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;
    font-weight:600;color:var(--emp-brown) !important;margin:0 0 14px;}
.emp-au-why__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.16;color:var(--emp-brown-deep) !important;
    margin:0 0 32px;max-width:14ch;}

/* The CMS checklist (a plain <ul><li>) becomes a card grid purely through CSS —
   no markup restructuring, so any number of admin-entered bullets still works. */
.emp-au-why__list{display:grid;gap:18px;}
.emp-au-why__list ul{display:contents;list-style:none;margin:0;padding:0;}
.emp-au-why__list li{position:relative;list-style:none;background:#fff;border-radius:16px;
    padding:26px 24px 24px 30px;border:1px solid var(--emp-border-lt);
    box-shadow:0 14px 30px -24px rgba(74,52,40,.3);
    font-size:.98rem;line-height:1.65;color:var(--emp-text-mid) !important;
    transition:transform var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease), border-color var(--emp-dur) var(--emp-ease);}
.emp-au-why__list li::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;
    border-radius:var(--dw-radius-pill);background:var(--emp-brown);
    transition:background var(--emp-dur) var(--emp-ease);}
.emp-au-why__list li:hover{transform:translateY(-4px);border-color:transparent;
    box-shadow:0 26px 44px -24px rgba(74,52,40,.42);}
/* Reuse the sitewide checkmark icon asset rather than introducing a new one */
.emp-au-why__list li img.specialtick,
.emp-au-why__list li img{width:26px;height:26px;object-fit:contain;display:block;margin:0 0 12px;}

/* Floating glass info card */
.emp-au-why__aside{position:relative;background:#fff;border-radius:22px;padding:36px 32px;
    box-shadow:0 34px 64px -30px rgba(74,52,40,.4);border:1px solid var(--emp-border-lt);}
.emp-au-why__aside-title{display:flex;align-items:center;gap:10px;font-family:var(--emp-display);
    font-weight:600;font-size:1.15rem;color:var(--emp-brown-deep) !important;margin:0 0 20px;}
.emp-au-why__aside-title i{color:var(--emp-brown);}
.emp-au-why__hours{margin:0 0 22px;padding:0 0 22px;border-bottom:1px solid var(--emp-border);}
.emp-au-why__hours-row{display:flex;align-items:center;justify-content:space-between;gap:12px;
    font-size:.9rem;padding:6px 0;}
.emp-au-why__hours-row strong{color:var(--emp-brown-deep) !important;font-weight:600;}
.emp-au-why__hours-row span{color:var(--emp-text-mid) !important;}
.emp-au-why__contact{display:flex;align-items:center;gap:14px;margin:0 0 22px;padding:0 0 22px;
    border-bottom:1px solid var(--emp-border);}
.emp-au-why__contact i{flex:0 0 44px;width:44px;height:44px;border-radius:50%;
    background:var(--emp-cream);color:var(--emp-brown);display:inline-flex;align-items:center;
    justify-content:center;font-size:17px;}
.emp-au-why__contact-label{display:block;font-size:.76rem;text-transform:uppercase;
    letter-spacing:.06em;color:var(--emp-brown-lt) !important;margin:0 0 3px;}
.emp-au-why__contact a{font-size:.98rem;font-weight:600;color:var(--emp-brown-deep) !important;
    text-decoration:none !important;}
/* Trust chips reuse the same $statistics data as section 2 — framed here as
   quick-glance credentials rather than fabricated badge copy */
.emp-au-why__trust{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px;}
.emp-au-why__trust-chip{display:flex;align-items:baseline;gap:6px;background:var(--emp-cream);
    border-radius:var(--dw-radius-pill);padding:8px 16px;}
.emp-au-why__trust-chip b{font-family:var(--emp-display);color:var(--emp-brown) !important;font-size:1.05rem;}
.emp-au-why__trust-chip span{font-size:.78rem;color:var(--emp-text-mid) !important;}
.emp-au-why__aside .emp-au-hero__btn{display:block;text-align:center;width:100%;}

@media (max-width:991px){
    .emp-au-why{padding:64px 0 68px;}
    .emp-au-why__grid{grid-template-columns:1fr;gap:34px;}
    .emp-au-why__title{max-width:none;}
}
@media (max-width:575px){
    .emp-au-why__list{grid-template-columns:1fr;}
}

/* ---------- 4. DOCTOR'S PHILOSOPHY ---------- */
.emp-au-quote{position:relative;overflow:hidden;background:var(--emp-cream);padding:104px 0 108px;
    text-align:center;}
.emp-au-quote::before{content:"";position:absolute;left:50%;top:50%;width:64%;height:120%;z-index:0;
    transform:translate(-50%,-50%);pointer-events:none;border-radius:50%;
    background:radial-gradient(closest-side, rgba(179,139,114,.22) 0%, rgba(179,139,114,0) 100%);}
.emp-au-quote > .container,
.emp-au-quote > .container-fluid{position:relative;z-index:1;max-width:820px;margin-left:auto;margin-right:auto;}
.emp-au-quote__mark{font-family:var(--emp-display);font-size:6rem;line-height:1;
    color:var(--emp-brown);opacity:.28;margin:0 0 8px;}
.emp-au-quote__text{display:-webkit-box;-webkit-line-clamp:5;line-clamp:5;-webkit-box-orient:vertical;
    overflow:hidden;font-family:var(--emp-display);font-weight:400;font-style:italic;
    font-size:clamp(1.25rem,2.1vw,1.7rem);line-height:1.6;
    color:var(--emp-brown-deep) !important;margin:0 0 34px;}
.emp-au-quote__by{display:flex;align-items:center;justify-content:center;gap:16px;}
.emp-au-quote__avatar{width:56px;height:56px;border-radius:50%;object-fit:cover;
    border:2px solid #fff;box-shadow:0 8px 18px -8px rgba(74,52,40,.4);}
.emp-au-quote__sig{text-align:left;}
.emp-au-quote__name{display:block;font-family:var(--emp-display);font-style:italic;font-weight:600;
    font-size:1.2rem;color:var(--emp-brown) !important;}
.emp-au-quote__role{display:block;font-size:.82rem;letter-spacing:.04em;text-transform:uppercase;
    color:var(--emp-text-mid) !important;margin-top:2px;}

@media (max-width:575px){
    .emp-au-quote{padding:72px 0 76px;}
    .emp-au-quote__mark{font-size:4.2rem;}
}

/* ---------- 5. MISSION & VISION ---------- */
.emp-au-mv{background:#fff;padding:100px 0 116px;}
.emp-au-mv__head{text-align:center;margin-bottom:56px;}
.emp-au-mv__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.16;color:var(--emp-brown-deep) !important;margin:0;}

.emp-au-mv__stage{position:relative;max-width:920px;margin:0 auto;display:grid;
    grid-template-columns:1fr minmax(220px,280px) 1fr;align-items:center;gap:0;}
.emp-au-mv__center{position:relative;z-index:1;}
.emp-au-mv__center img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:50%;
    box-shadow:0 30px 60px -28px rgba(74,52,40,.5);}
@supports not (aspect-ratio:1/1){ .emp-au-mv__center img{height:260px;} }
/* Connecting line running behind both cards, through the portrait */
.emp-au-mv__stage::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;z-index:0;
    background:repeating-linear-gradient(90deg, rgba(106,70,50,.3) 0 10px, transparent 10px 20px);}

.emp-au-mv__card{position:relative;z-index:1;background:var(--emp-cream);border-radius:20px;
    padding:32px 30px;box-shadow:0 20px 44px -28px rgba(74,52,40,.35);
    transition:transform var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease);}
.emp-au-mv__card:hover{transform:translateY(-6px);box-shadow:0 30px 54px -26px rgba(74,52,40,.45);}
.emp-au-mv__card--left{margin-right:-30px;}
.emp-au-mv__card--right{margin-left:-30px;}
.emp-au-mv__card-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;
    height:46px;border-radius:50%;background:#fff;color:var(--emp-brown);font-size:18px;margin-bottom:16px;}
.emp-au-mv__card-title{font-family:var(--emp-display);font-weight:600;font-size:1.25rem;
    color:var(--emp-brown-deep) !important;margin:0 0 10px;}
.emp-au-mv__card-text,
.emp-au-mv__card-text p{font-size:.95rem;line-height:1.75;color:var(--emp-text-mid) !important;margin:0;}

@media (max-width:767px){
    .emp-au-mv{padding:64px 0 70px;}
    .emp-au-mv__head{margin-bottom:36px;}
    .emp-au-mv__stage{grid-template-columns:1fr;gap:24px;text-align:center;}
    .emp-au-mv__stage::before{display:none;}
    .emp-au-mv__center{max-width:220px;margin:0 auto;order:-1;}
    .emp-au-mv__card--left,
    .emp-au-mv__card--right{margin:0;}
}

/* ---------- VISION & MISSION (standalone page) ---------- */
.emp-vm{padding:70px 0 90px;}
.emp-vm__item{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;
    margin-bottom:64px;}
.emp-vm__item:last-child{margin-bottom:0;}
.emp-vm__item--reverse .emp-vm__media{order:2;}
.emp-vm__media img{display:block;width:100%;aspect-ratio:4/3.2;object-fit:cover;
    border-radius:22px;box-shadow:0 30px 60px -30px rgba(74,52,40,.4);}
@supports not (aspect-ratio:4/3.2){ .emp-vm__media img{height:320px;} }
.emp-vm__icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;
    border-radius:50%;background:var(--emp-cream);color:var(--emp-brown);font-size:20px;margin-bottom:18px;}
.emp-vm__title{font-family:var(--emp-display);font-weight:600;font-size:clamp(1.4rem,2.4vw,1.9rem);
    color:var(--emp-brown-deep) !important;margin:0 0 14px;}
.emp-vm__lead{font-size:1.02rem;line-height:1.75;color:var(--emp-brown) !important;font-weight:600;
    margin-bottom:14px;}
.emp-vm__body,.emp-vm__body p{font-size:.96rem;line-height:1.8;color:var(--emp-text-mid,#7D6B61) !important;}
@media (max-width:767px){
    .emp-vm{padding:44px 0 50px;}
    .emp-vm__item{grid-template-columns:1fr;gap:26px;margin-bottom:44px;}
    .emp-vm__item--reverse .emp-vm__media{order:0;}
}

/* ---------- 6. SPECIALITIES ---------- */
.emp-au-spec{background:var(--emp-cream);padding:96px 0 100px;}
.emp-au-spec__head{margin-bottom:40px;max-width:640px;}
.emp-au-spec__eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;
    font-weight:600;color:var(--emp-brown) !important;margin:0 0 12px;}
.emp-au-spec__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.16;color:var(--emp-brown-deep) !important;margin:0;}

.emp-au-spec__list{background:#fff;border-radius:22px;overflow:hidden;
    box-shadow:0 30px 60px -34px rgba(74,52,40,.35);}
.emp-au-spec__row{position:relative;display:grid;grid-template-columns:110px 1fr auto;
    align-items:center;gap:28px;padding:30px 34px;border-bottom:1px solid var(--emp-border);
    overflow:hidden;}
.emp-au-spec__row:last-child{border-bottom:0;}
/* Cream tint slides in from the left on hover/focus */
.emp-au-spec__row::before{content:"";position:absolute;inset:0;z-index:0;
    background:var(--emp-cream);transform:scaleX(0);transform-origin:left center;
    transition:transform var(--emp-dur) var(--emp-ease);}
.emp-au-spec__row:hover::before,
.emp-au-spec__row:focus-within::before{transform:scaleX(1);}
.emp-au-spec__row > *{position:relative;z-index:1;}
.emp-au-spec__idx{font-family:var(--emp-display);font-weight:700;font-size:1.7rem;line-height:1;
    color:rgba(106,70,50,.25) !important;transition:color var(--emp-dur) var(--emp-ease);}
.emp-au-spec__row:hover .emp-au-spec__idx{color:var(--emp-brown) !important;}
.emp-au-spec__text{display:grid;align-items:center;gap:14px;min-width:0;}
.emp-au-spec__text img{width:24px;height:24px;flex:0 0 24px;object-fit:contain;}
.emp-au-spec__text span{font-size:1rem;line-height:1.6;color:var(--emp-text-mid) !important;}
.emp-au-spec__value{font-family:var(--emp-display);font-weight:700;font-size:1.6rem;white-space:nowrap;
    color:var(--emp-brown) !important;}

@media (max-width:767px){
    .emp-au-spec{padding:60px 0 64px;}
    .emp-au-spec__row{grid-template-columns:1fr;gap:10px;padding:24px 22px;text-align:left;}
    .emp-au-spec__value{order:-1;}
}

/* ---------- 7. ACHIEVEMENTS ---------- */
.emp-au-ach{position:relative;overflow:hidden;padding:100px 0 106px;
    background:linear-gradient(135deg, var(--emp-grad-brown-from) 0%, var(--emp-grad-brown-to) 100%);}
.emp-au-ach__head{text-align:center;margin-bottom:44px;}
.emp-au-ach__eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;
    font-weight:600;color:#fff !important;opacity:.85;margin:0 0 12px;}
.emp-au-ach__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.16;color:#fff !important;margin:0;}

.emp-au-ach__card{position:relative;margin:0 10px;background:#fff;border-radius:18px;overflow:hidden;
    box-shadow:0 26px 50px -26px rgba(41,26,18,.55);
    transition:transform var(--emp-dur) var(--emp-ease), box-shadow var(--emp-dur) var(--emp-ease);}
.emp-au-ach__card:hover{transform:translateY(-6px);}
.emp-au-ach__ribbon{position:absolute;left:16px;top:16px;z-index:2;width:38px;height:38px;
    border-radius:50%;background:var(--emp-brown-deep);color:#fff;display:flex;align-items:center;
    justify-content:center;font-size:15px;box-shadow:0 8px 18px -8px rgba(0,0,0,.5);}
.emp-au-ach__media{overflow:hidden;}
.emp-au-ach__media img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;
    transition:transform .8s var(--emp-ease);}
.emp-au-ach__card:hover .emp-au-ach__media img{transform:scale(1.06);}
@supports not (aspect-ratio:1/1){ .emp-au-ach__media img{height:200px;} }
.emp-au-ach__body{padding:20px 22px 24px;}
.emp-au-ach__year{display:block;font-size:.76rem;font-weight:700;text-transform:uppercase;
    letter-spacing:.12em;color:var(--emp-brown) !important;margin:0 0 8px;}
.emp-au-ach__name{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;
    overflow:hidden;font-family:var(--emp-display);font-weight:600;font-size:1.05rem;line-height:1.35;
    color:var(--emp-brown-deep) !important;margin:0 0 6px;}
.emp-au-ach__by{font-size:.82rem;color:var(--emp-text-mid) !important;margin:0;}

/* Static-grid fallback when the CMS slider toggle is off */
.emp-au-ach__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;}
.emp-au-ach__grid .emp-au-ach__card{margin:0;}

@media (max-width:1199px){ .emp-au-ach__grid{grid-template-columns:repeat(3,minmax(0,1fr));} }
@media (max-width:767px){
    .emp-au-ach{padding:64px 0 68px;}
    .emp-au-ach__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
}
@media (max-width:479px){ .emp-au-ach__grid{grid-template-columns:1fr;} }

/* ---------- 8. PATIENT CARE PROCESS ---------- */
.emp-au-process{background:#fff;padding:100px 0 106px;}
.emp-au-process__head{text-align:center;margin-bottom:64px;}
.emp-au-process__eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;
    font-weight:600;color:var(--emp-brown) !important;margin:0 0 12px;}
.emp-au-process__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.16;color:var(--emp-brown-deep) !important;margin:0;}

.emp-au-process__rail{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));
    gap:20px;}
.emp-au-process__rail::before{content:"";position:absolute;left:10%;right:10%;top:34px;height:2px;
    z-index:0;background:repeating-linear-gradient(90deg, rgba(106,70,50,.3) 0 10px, transparent 10px 20px);}
.emp-au-process__step{position:relative;z-index:1;text-align:center;}
.emp-au-process__node{position:relative;width:68px;height:68px;margin:0 auto 22px;border-radius:50%;
    background:#fff;border:2px solid var(--emp-brown);display:flex;align-items:center;justify-content:center;
    font-size:24px;color:var(--emp-brown);box-shadow:0 14px 28px -18px rgba(74,52,40,.4);
    transition:background var(--emp-dur) var(--emp-ease), color var(--emp-dur) var(--emp-ease), transform var(--emp-dur) var(--emp-ease);}
.emp-au-process__step:hover .emp-au-process__node{background:var(--emp-brown);color:#fff;
    transform:translateY(-4px);}
.emp-au-process__num{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;
    background:var(--emp-brown-deep);color:#fff;font-size:.72rem;font-weight:700;
    display:flex;align-items:center;justify-content:center;}
.emp-au-process__title2{font-family:var(--emp-display);font-weight:600;font-size:1.08rem;
    color:var(--emp-brown-deep) !important;margin:0 0 8px;}
.emp-au-process__desc{font-size:.85rem;line-height:1.6;color:var(--emp-text-mid) !important;margin:0;
    max-width:26ch;margin-left:auto;margin-right:auto;}

@media (max-width:991px){
    .emp-au-process{padding:64px 0 68px;}
    .emp-au-process__head{margin-bottom:44px;}
    .emp-au-process__rail{grid-template-columns:1fr;gap:0;}
    .emp-au-process__rail::before{left:34px;right:auto;top:0;bottom:0;width:2px;height:auto;}
    .emp-au-process__step{display:grid;grid-template-columns:68px 1fr;gap:20px;align-items:flex-start;
        text-align:left;padding-bottom:36px;}
    .emp-au-process__step:last-child{padding-bottom:0;}
    .emp-au-process__node{margin:0;}
    .emp-au-process__desc{margin-left:0;margin-right:0;max-width:none;}
}

/* ---------- 9. FACILITIES ---------- */
.emp-au-fac{background:var(--emp-cream);padding:100px 0 106px;}
.emp-au-fac__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
    margin-bottom:40px;}
.emp-au-fac__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.16;color:var(--emp-brown-deep) !important;margin:0;}
.emp-au-fac__all{flex:0 0 auto;font-size:.9rem;font-weight:600;color:var(--emp-brown) !important;
    text-decoration:none !important;border-bottom:1px solid rgba(106,70,50,.35);padding-bottom:3px;}

/* Magazine rhythm: one large feature tile, four supporting tiles — a different
   cadence from the homepage gallery's repeating 6-cell mosaic. */
.emp-au-fac__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
    grid-auto-rows:150px;gap:16px;}
.emp-au-fac__grid > *:nth-child(5n+1){grid-column:span 2;grid-row:span 2;}

.emp-au-fac__tile{position:relative;display:block;height:100%;overflow:hidden;border-radius:4px;
    text-decoration:none !important;background:#e6dad0;}
.emp-au-fac__tile img{width:100%;height:100%;object-fit:cover;display:block;
    transition:transform .9s var(--emp-ease);}
.emp-au-fac__tile:hover img{transform:scale(1.06);}
/* Caption sits in a permanently visible bar, unlike the homepage's hover-reveal */
.emp-au-fac__cap{display:block;margin:0;padding:12px 4px 0;font-size:.85rem;font-weight:600;
    color:var(--emp-brown-deep) !important;}
.emp-au-fac__tile:nth-child(5n+1) .emp-au-fac__cap,
.emp-au-fac__tile .emp-au-fac__cap--overlay{position:absolute;left:0;right:0;bottom:0;z-index:2;
    margin:0;padding:40px 18px 16px;color:#fff !important;
    background:linear-gradient(0deg, rgba(41,26,18,.85) 0%, rgba(41,26,18,0) 100%);}

.emp-au-fac__grid.owl-carousel{display:block;grid-auto-rows:auto;}
.emp-au-fac__grid.owl-carousel > *{grid-column:auto !important;grid-row:auto !important;}
.emp-au-fac__grid.owl-carousel .emp-au-fac__tile{height:260px;margin:0 8px;}

@media (max-width:991px){
    .emp-au-fac{padding:64px 0 68px;}
    .emp-au-fac__head{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:28px;}
    .emp-au-fac__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:140px;}
}
@media (max-width:479px){
    .emp-au-fac__grid{grid-template-columns:1fr;}
    .emp-au-fac__grid > *:nth-child(5n+1){grid-column:span 1;grid-row:span 1;}
}

/* ---------- 10. CTA ---------- */
.emp-au-cta{position:relative;overflow:hidden;
    background:linear-gradient(115deg, var(--emp-brown-deep) 0%, var(--emp-mocha-dk) 60%, var(--emp-mocha) 130%);
    padding:92px 0;}
.emp-au-cta::before{content:"";position:absolute;left:-6%;top:-30%;width:38%;height:80%;z-index:0;
    pointer-events:none;border-radius:50%;filter:blur(2px);
    background:radial-gradient(closest-side, rgba(255,255,255,.14) 0%, rgba(255,255,255,0) 100%);}
.emp-au-cta::after{content:"";position:absolute;right:-4%;bottom:-26%;width:30%;height:70%;z-index:0;
    pointer-events:none;border-radius:50%;
    background:radial-gradient(closest-side, rgba(244,232,223,.12) 0%, rgba(244,232,223,0) 100%);}
.emp-au-cta > .container,
.emp-au-cta > .container-fluid{position:relative;z-index:1;}
.emp-au-cta__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
    gap:48px;align-items:center;}
.emp-au-cta__title{font-family:var(--emp-display);font-weight:600;text-transform:none;
    font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.2;color:#fff !important;margin:0 0 16px;}
.emp-au-cta__text,
.emp-au-cta__text p{font-size:1rem;line-height:1.75;color:rgba(255,255,255,.85) !important;
    max-width:480px;margin:0 0 26px;}
.emp-au-cta__row{display:flex;flex-wrap:wrap;align-items:center;gap:22px;}
.emp-au-cta__btn{display:inline-block;background:transparent;color:#fff !important;
    border:1.5px solid rgba(255,255,255,.6);border-radius:var(--dw-radius-pill);
    padding:15px 34px;font-size:.95rem;font-weight:600;text-decoration:none !important;
    transition:background var(--emp-dur-fast) var(--emp-ease), border-color var(--emp-dur-fast) var(--emp-ease), transform var(--emp-dur-fast) var(--emp-ease);}
.emp-au-cta__btn:hover{background:#fff;color:var(--emp-brown-deep) !important;border-color:#fff;
    transform:translateY(-3px);}
.emp-au-cta__phone{display:flex;align-items:center;gap:12px;color:#fff !important;
    text-decoration:none !important;}
.emp-au-cta__phone i{width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.14);
    display:flex;align-items:center;justify-content:center;font-size:16px;}
.emp-au-cta__phone span{display:block;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;
    opacity:.75;}
.emp-au-cta__phone b{display:block;font-size:1.05rem;font-weight:600;}

.emp-au-cta__media{position:relative;}
.emp-au-cta__media::before{content:"";position:absolute;inset:-14px;z-index:0;border-radius:28px;
    border:1.5px solid rgba(255,255,255,.3);}
.emp-au-cta__media img{position:relative;z-index:1;display:block;width:100%;aspect-ratio:4/3.3;
    object-fit:cover;border-radius:22px;box-shadow:0 34px 60px -28px rgba(0,0,0,.5);}
@supports not (aspect-ratio:1/1){ .emp-au-cta__media img{height:340px;} }

@media (max-width:991px){
    .emp-au-cta{padding:64px 0;}
    .emp-au-cta__grid{grid-template-columns:1fr;gap:36px;}
    .emp-au-cta__media{order:-1;max-width:380px;margin:0 auto;}
}
@media (max-width:575px){
    .emp-au-cta__row{flex-direction:column;align-items:flex-start;gap:18px;}
    .emp-au-cta__btn{width:100%;text-align:center;}
}

@media (prefers-reduced-motion:reduce){
    .emp-au-hero__btn,.emp-au-hero__link,.emp-au-why__list li,.emp-au-mv__card,
    .emp-au-spec__row::before,.emp-au-spec__idx,.emp-au-ach__card,.emp-au-ach__media img,
    .emp-au-process__node,.emp-au-fac__tile img,.emp-au-cta__btn{transition:none !important;}
    .emp-au-hero__btn:hover,.emp-au-why__list li:hover,.emp-au-mv__card:hover,
    .emp-au-ach__card:hover,.emp-au-ach__card:hover .emp-au-ach__media img,
    .emp-au-process__step:hover .emp-au-process__node,.emp-au-fac__tile:hover img,
    .emp-au-cta__btn:hover{transform:none !important;}
}

/* ==============================================================
   STATUS / CONFIRMATION PAGES (success.php, appointment_status.php)
   ============================================================== */
.emp-status{padding:70px 0;}
.emp-status__card{max-width:560px;margin:0 auto;padding:48px 40px;text-align:center;
    background:var(--dw-color-bg,#fff);border-radius:var(--dw-radius-md,10px);
    box-shadow:var(--dw-shadow-md,0 8px 24px rgba(149,157,165,.2));}
.emp-status__icon{width:140px;max-width:60%;margin:0 auto 20px;display:block;}
.emp-status__title{font-family:var(--emp-display,'Playfair Display',serif);
    font-size:30px;color:var(--dw-color-heading,#000);margin-bottom:12px;}
.emp-status__title span{font-weight:700;}
.emp-status__title--confirm span{color:#2e7d32;}
.emp-status__title--reject span{color:#c0392b;}
.emp-status__text{color:var(--dw-color-light-text,#969696);margin-bottom:26px;}
.emp-status .btnprimary{display:inline-block;text-decoration:none !important;}
@media (max-width:575px){
    .emp-status{padding:44px 0;}
    .emp-status__card{padding:34px 22px;}
    .emp-status__title{font-size:24px;}
}

/* ==============================================================
   GENERIC CMS RICH-TEXT PROSE (dynamic pages, long-description fields)
   ============================================================== */
.emp-prose{padding:50px 0;color:var(--dw-color-text,#333);line-height:1.8;}
.emp-prose__title{font-family:var(--emp-display,'Playfair Display',serif);
    font-size:32px;color:var(--dw-color-heading,#000);margin-bottom:22px;}
.emp-prose__body{max-width:900px;}
.emp-prose__body img{max-width:100%;height:auto;border-radius:var(--dw-radius-sm,8px);}
.emp-prose__body h2,.emp-prose__body h3,.emp-prose__body h4{
    font-family:var(--emp-display,'Playfair Display',serif);margin:28px 0 14px;}
.emp-prose__body p{margin-bottom:16px;}
.emp-prose__body ul,.emp-prose__body ol{margin-bottom:16px;padding-left:22px;}
@media (max-width:575px){
    .emp-prose{padding:34px 0;}
    .emp-prose__title{font-size:24px;}
}

/* ==========================================================================
   DETAIL PAGES  —  shared shell for single-record pages: departmentsinfo.php,
   doctorsinfo.php, servicesinfo.php, treatmentsinfo.php. One consistent
   "medical luxury" look reused across all four with only the data changing.
   ========================================================================== */
.emp-detail{color:var(--dw-color-text,#333);}

/* --- Hero: title + lead + primary image --- */
.emp-detail__title{font-family:var(--emp-display,'Playfair Display',serif);font-weight:600;
    text-transform:none !important;color:var(--emp-brown-deep,#4A3428) !important;
    font-size:clamp(1.6rem,2.6vw,2.3rem);line-height:1.2;margin:0 0 18px;}
.emp-detail__lead{font-size:1.05rem;font-weight:500;line-height:1.8;color:var(--emp-text-mid,#555) !important;margin-bottom:16px;}
.emp-detail__prose{color:var(--dw-color-text,#333);line-height:1.8;margin-bottom:20px;}
.emp-detail__body{line-height:1.8;}

/* --- Media frame --- */
.emp-detail__media{display:block;width:100%;overflow:hidden;border-radius:var(--dw-radius-md,18px);
    box-shadow:var(--dw-shadow-md,0 8px 24px rgba(149,157,165,.2));margin:0 0 26px;background:var(--emp-beige,#F4E8DF);}
.emp-detail__media img{display:block;width:100%;height:100%;object-fit:cover;}

/* --- CTA banner (book appointment strip) --- */
.emp-detail__cta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;
    margin:30px 0;padding:20px 26px;background:var(--emp-cream,#F5EAE3);
    border-radius:var(--dw-radius-md,18px);box-shadow:var(--dw-shadow-sm,0 4px 8px rgba(0,0,0,.08));}
.emp-detail__cta p{margin:0;color:var(--emp-brown-deep,#4A3428) !important;font-weight:500;}
.emp-detail__cta .btnprimary{white-space:nowrap;text-decoration:none !important;}

/* --- Fact sheet: label:value rows (doctorsinfo specialization/fee/contacts/etc.) --- */
.emp-detail__facts{margin:28px 0;padding:26px 28px;background:var(--emp-cream,#F5EAE3);
    border-radius:var(--dw-radius-md,18px);}
.emp-detail__facts-title{font-family:var(--emp-display,'Playfair Display',serif);font-weight:600;
    text-transform:none !important;color:var(--emp-brown-deep,#4A3428) !important;font-size:1.3rem;margin:0 0 18px;}
.emp-detail__facts-group{margin:22px 0 6px;font-size:.95rem;font-weight:700;letter-spacing:.02em;
    color:var(--emp-brown,#6A4632) !important;text-transform:none !important;}
.emp-detail__row{display:flex;flex-wrap:wrap;gap:6px 18px;padding:12px 0;
    border-bottom:1px solid var(--emp-border-lt,#F2F2F2);}
.emp-detail__row:last-child{border-bottom:0;}
.emp-detail__row-label{flex:0 0 190px;font-weight:700;color:var(--emp-brown-deep,#4A3428) !important;
    font-size:.92rem;text-transform:none !important;margin:0;}
.emp-detail__row-value{flex:1 1 200px;color:var(--dw-color-text,#333);font-size:.95rem;}
.emp-detail__social{display:flex;flex-wrap:wrap;align-items:center;gap:12px;}

/* --- Sidebar: sticky "More X"/"Treatments Under"/"Doctors Under" column --- */
.emp-detail__sidebar{background:var(--emp-cream,#F5EAE3);border-radius:var(--dw-radius-md,18px);
    padding:24px 20px;}
.emp-detail__sidebar-title{font-family:var(--emp-display,'Playfair Display',serif);font-weight:600;
    text-transform:none !important;font-size:1.1rem;line-height:1.35;color:var(--emp-brown-deep,#4A3428) !important;margin:0 0 20px;}

/* Small related-record cards (used inside the sidebar and inline grids) */
.emp-detail__mini{display:block;background:#fff;border-radius:var(--dw-radius-sm,14px);overflow:hidden;
    text-decoration:none !important;margin-bottom:18px;box-shadow:0 10px 22px -16px rgba(60,38,26,.35);
    transition:transform var(--emp-dur-fast,.25s) var(--emp-ease,ease),box-shadow var(--emp-dur-fast,.25s) var(--emp-ease,ease);}
.emp-detail__mini:last-child{margin-bottom:0;}
.emp-detail__mini:hover,.emp-detail__mini:focus-visible{transform:translateY(-4px);
    box-shadow:0 18px 30px -16px rgba(60,38,26,.45);text-decoration:none !important;}
.emp-detail__mini-media{display:block;width:100%;height:170px;overflow:hidden;background:var(--emp-beige,#F4E8DF);}
.emp-detail__mini-media img{width:100%;height:100%;object-fit:cover;display:block;
    transition:transform .6s var(--emp-ease,ease);}
.emp-detail__mini:hover .emp-detail__mini-media img{transform:scale(1.06);}
.emp-detail__mini-body{padding:14px 16px 16px;}
.emp-detail__mini-name{font-family:var(--emp-display,'Playfair Display',serif);font-weight:500;
    text-transform:none !important;font-size:1rem;color:var(--emp-brown-deep,#4A3428) !important;margin:0 0 4px;}
.emp-detail__mini-spec{font-size:.8rem;font-weight:600;color:var(--emp-brown,#6A4632) !important;margin:0 0 6px;}
.emp-detail__mini-desc{font-size:.85rem;line-height:1.6;color:var(--emp-text-mid,#555) !important;margin:0;}
.emp-detail__mini-more{display:block;margin-top:8px;font-size:.82rem;font-weight:600;
    color:var(--emp-brown,#6A4632) !important;}

/* --- "More X" related grid at the bottom of each detail page --- */
.emp-detail__related{padding:56px 0 10px;}
.emp-detail__related-title{text-align:center;font-family:var(--emp-display,'Playfair Display',serif);
    font-weight:600;text-transform:none !important;color:var(--emp-brown-deep,#4A3428) !important;
    font-size:clamp(1.3rem,2vw,1.7rem);margin:0 0 34px;}
.emp-detail__related-card{display:block;height:100%;background:#fff;border-radius:20px;overflow:hidden;
    text-decoration:none !important;box-shadow:0 16px 34px -22px rgba(60,38,26,.4);
    transition:transform var(--emp-dur,.35s) var(--emp-ease,ease),box-shadow var(--emp-dur,.35s) var(--emp-ease,ease);}
.emp-detail__related-card:hover,.emp-detail__related-card:focus-visible{transform:translateY(-8px);
    box-shadow:0 28px 48px -22px rgba(60,38,26,.5);text-decoration:none !important;}
.emp-detail__related-media{position:relative;display:block;width:100%;height:190px;overflow:hidden;background:var(--emp-beige,#F4E8DF);}
.emp-detail__related-media img{width:100%;height:100%;object-fit:cover;display:block;
    transition:transform .6s var(--emp-ease,ease);}
.emp-detail__related-card:hover .emp-detail__related-media img{transform:scale(1.06);}
.emp-detail__related-body{padding:16px 18px 18px;text-align:center;}
.emp-detail__related-name{font-family:var(--emp-display,'Playfair Display',serif);font-weight:500;
    text-transform:none !important;color:var(--emp-brown-deep,#4A3428) !important;font-size:1.05rem;margin:0 0 8px;}
.emp-detail__related-desc{font-size:.88rem;line-height:1.6;color:var(--emp-text-mid,#555) !important;margin:0;}

@media (max-width:991px){
    .emp-detail__sidebar{margin-top:34px;}
}
@media (max-width:767px){
    .emp-detail__facts{padding:20px 18px;}
    .emp-detail__row-label{flex:0 0 100%;}
    .emp-detail__cta{padding:18px 20px;}
}

@media (prefers-reduced-motion:reduce){
    .emp-detail__mini,.emp-detail__mini-media img,
    .emp-detail__related-card,.emp-detail__related-media img{transition:none !important;}
    .emp-detail__mini:hover,.emp-detail__mini:hover .emp-detail__mini-media img,
    .emp-detail__related-card:hover,.emp-detail__related-card:hover .emp-detail__related-media img{transform:none !important;}
}

/* ==========================================================================
   DETAIL PAGES — extension for newsinfo.php, eventinfo.php,
   casestudiesinfo.php, bloginfo.php. Reuses the .emp-detail component above;
   these are the few sub-parts that group needed and the first four didn't.
   ========================================================================== */

/* --- Share icon buttons (newsinfo/bloginfo "Share on" row) --- */
.emp-detail__social-btn{width:38px;height:38px;border-radius:50%;font-size:15px;
    background:var(--emp-cream,#F5EAE3);color:var(--emp-brown-deep,#4A3428) !important;
    display:inline-flex;align-items:center;justify-content:center;text-decoration:none !important;
    transition:background var(--emp-dur-fast,.25s) var(--emp-ease,ease),color var(--emp-dur-fast,.25s) var(--emp-ease,ease),transform var(--emp-dur-fast,.25s) var(--emp-ease,ease);}
.emp-detail__social-btn:hover,.emp-detail__social-btn:focus-visible{background:var(--emp-brown-deep,#4A3428);
    color:#fff !important;transform:translateY(-2px);text-decoration:none !important;}

/* --- Byline/meta row: venue+date, author+date, read-time, etc. --- */
.emp-detail__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;
    color:var(--emp-text-mid,#555) !important;font-size:.92rem;margin-bottom:14px;}
.emp-detail__meta strong{color:var(--emp-brown-deep,#4A3428) !important;}

/* --- Reader comment cards (bloginfo.php; replaces legacy .wreviewpeople look) --- */
.emp-detail__comment{background:var(--emp-cream,#F5EAE3);border-radius:var(--dw-radius-md,18px);
    padding:22px 24px;height:100%;}
.emp-detail__comment-text{color:var(--dw-color-text,#333);line-height:1.7;margin:0 0 14px;}
.emp-detail__comment-name{font-family:var(--emp-display,'Playfair Display',serif);font-weight:600;
    color:var(--emp-brown-deep,#4A3428) !important;margin:0;}
.emp-detail__comment-time{font-size:.82rem;color:var(--emp-text-mid,#555) !important;}

@media (prefers-reduced-motion:reduce){
    .emp-detail__social-btn{transition:none !important;}
    .emp-detail__social-btn:hover{transform:none !important;}
}

/* ==========================================================================
   VIDEO DETAIL  —  shared shell for single video-embed pages: videoinfo.php,
   testimonials_videoinfo.php. Video player (Local <video>/YouTube/Insta
   iframe) + title/meta/description below it. Reuses .emp-detail__sidebar
   and .emp-detail__mini* for the "more videos" list rather than reinventing
   thumbnail/hover-overlay styling.
   ========================================================================== */
.emp-video-detail{padding:56px 0 60px;}
.emp-video-detail__player{position:relative;display:block;width:100%;overflow:hidden;
    border-radius:var(--dw-radius-md,18px);box-shadow:var(--dw-shadow-md,0 8px 24px rgba(149,157,165,.2));
    margin:0 0 26px;background:var(--emp-brown-deep,#4A3428);}
.emp-video-detail__player video,
.emp-video-detail__player iframe{display:block;width:100%;border:0;}
.emp-video-detail__meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;
    color:var(--dw-color-light-text,#777) !important;font-size:.92rem;margin:0 0 6px;}
.emp-video-detail__meta strong{color:var(--emp-brown-deep,#4A3428) !important;}
.emp-video-detail__title{font-family:var(--emp-display,'Playfair Display',serif);font-weight:600;
    text-transform:none !important;color:var(--dw-color-heading,#4A3428) !important;
    font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.25;margin:6px 0 14px;}
.emp-video-detail__desc{color:var(--dw-color-text,#333);line-height:1.8;margin-bottom:0;}

/* --- Write-a-comment form (videoinfo.php only) — mirrors .emp-book form-control --- */
.emp-video-detail__comment-form{background:var(--emp-cream,#F5EAE3);border-radius:var(--dw-radius-md,18px);
    padding:30px 32px;margin-top:26px;}
.emp-video-detail__comment-form-title{font-family:var(--emp-display,'Playfair Display',serif);font-weight:600;
    text-transform:none !important;color:var(--emp-brown-deep,#4A3428) !important;font-size:1.2rem;margin:0 0 6px;}
.emp-video-detail__comment-form .form-group{margin-bottom:18px;}
.emp-video-detail__comment-form .form-control{background:#fff !important;border:1px solid transparent !important;
    border-radius:var(--dw-radius-sm,10px) !important;height:50px;padding:0 18px !important;font-size:.95rem;
    color:#333 !important;box-shadow:none;
    transition:background var(--emp-dur-fast,.25s) var(--emp-ease,ease), border-color var(--emp-dur-fast,.25s) var(--emp-ease,ease), box-shadow var(--emp-dur-fast,.25s) var(--emp-ease,ease);}
.emp-video-detail__comment-form textarea.form-control{height:auto;min-height:110px;padding:14px 18px !important;line-height:1.7;}
.emp-video-detail__comment-form .form-control::placeholder{color:#a18e81;}
.emp-video-detail__comment-form .form-control:focus{background:var(--emp-beige,#F4E8DF) !important;
    border-color:var(--emp-brown,#6A4632) !important;box-shadow:0 0 0 3px rgba(122,85,63,.16);outline:none;}
.emp-video-detail__comment-form label.error{color:#c0392b !important;font-size:.82rem;font-weight:500;margin:6px 0 0;}

@media (max-width:767px){
    .emp-video-detail{padding:40px 0 44px;}
    .emp-video-detail__comment-form{padding:22px 20px;}
}

@media (prefers-reduced-motion:reduce){
    .emp-video-detail__comment-form .form-control{transition:none !important;}
}

/* ==========================================================
   PREMIUM GLASSMORPHISM NAVBAR
   ========================================================== */

.navbar {
    position: fixed;
    top: 15px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% - 215px);
    max-width: 1400px;
    z-index: 9999;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 18px 40px;

    border-radius: 60px;

    /* Premium Glass Background */
    background: linear-gradient(
        90deg,
        rgba(145, 112, 92, 0.55) 0%,
        rgba(255, 255, 255, 0.35) 50%,
        rgba(145, 112, 92, 0.55) 100%
    );

    /* Glass Blur */
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);

    /* Border */
    border: 1px solid rgba(255,255,255,.25);

    /* Shadow */
    box-shadow:
        0 12px 35px rgba(0,0,0,.12),
        inset 0 1px 1px rgba(255,255,255,.25);

    transition: all .4s ease;

    overflow: hidden;
}

/* ==========================================================
   Premium Glow Effect
   ========================================================== */

.navbar::before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;

    background:
        radial-gradient(circle at left,
        rgba(166,128,105,.30),
        transparent 35%),

        radial-gradient(circle at center,
        rgba(255,255,255,.15),
        transparent 45%),

        radial-gradient(circle at right,
        rgba(166,128,105,.30),
        transparent 35%);

    filter: blur(35px);
    z-index:-1;
}

/* ==========================================================
   Navigation Links
   ========================================================== */

.navbar .nav-link{
    color:#1b1b1b;
    font-size:17px;
    font-weight:500;
    letter-spacing:.2px;
    padding:12px 18px;
    transition:all .3s ease;
    text-decoration:none;
}

.navbar .nav-link:hover{
    color:#8a624b;
}

/* ==========================================================
   Logo
   ========================================================== */

.navbar-brand img{
    height:45px;
}

.navbar-brand{
    color:#fff;
    font-size:30px;
    font-weight:600;
}

/* ==========================================================
   Sticky Navbar
   ========================================================== */

.navbar.scrolled{

    top:10px;

    background:rgba(255,255,255,.92);

    backdrop-filter:blur(30px);
    -webkit-backdrop-filter:blur(30px);

    border:1px solid rgba(255,255,255,.45);

    box-shadow:
        0 18px 40px rgba(0,0,0,.12);

    padding:15px 40px;
}

.navbar.scrolled .nav-link{
    color:#111;
}

.navbar.scrolled .nav-link:hover{
    color:#8a624b;
}

/* ==========================================================
   Mobile
   ========================================================== */

@media(max-width:991px){

.navbar{
    width:calc(100% - 20px);
    padding:15px 22px;
    border-radius:30px;
}

.navbar-brand img{
    height:38px;
}

.navbar .nav-link{
    padding:10px;
}

}

