/* =====================================================================
   Bright Lilly Healthcare – Premium UI layer (October 2026)
   Same brand colours, content and wording. Visual polish, motion and
   usability only. Remove the "Bright Lilly Premium UI" plugin to revert.
   ===================================================================== */
:root{
  --blp:#9900cc;            /* brand purple (unchanged) */
  --blp-dk:#7a00a3;         /* deeper shade of the same purple */
  --blp-lt:#b54de0;         /* lighter shade of the same purple */
  --blp-soft:#fcf3ff;       /* existing soft lilac background */
  --blp-tint:rgba(153,0,204,.08);
  --bl-ink:#282f3b;         /* existing heading colour */
  --bl-text:#4a4e56;        /* existing body colour */
  --bl-line:#ece6f1;
  --bl-r:18px;
  --bl-r-sm:12px;
  --bl-ease:cubic-bezier(.22,.8,.24,1);
  --bl-shadow:0 10px 30px -12px rgba(60,0,90,.18),0 2px 6px rgba(60,0,90,.05);
  --bl-shadow-lg:0 26px 50px -18px rgba(80,0,120,.30),0 6px 14px rgba(80,0,120,.07);
  --bl-grad:linear-gradient(135deg,var(--blp) 0%,var(--blp-lt) 100%);
}

/* ---------- Base typography & readability (all ages) ---------- */
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
.elementor-widget-text-editor p,.description_box p,.title_sections p,.content_box p,.post_single_content p,.text_box p,.icon_content p{line-height:1.75}
h1,h2,h3,.title_sections .title,.page_header_default h1{text-wrap:balance;letter-spacing:-.012em}
p{text-wrap:pretty}
img{image-rendering:auto}
::selection{background:var(--blp);color:#fff}
:focus-visible{outline:3px solid rgba(153,0,204,.55)!important;outline-offset:3px!important;border-radius:6px}
a{transition:color .25s var(--bl-ease)}

/* Invisible leftover side-menu box was sitting over the right edge of every page and blocking clicks */
.sidemenu_content_bx{display:none!important}

/* ---------- Scroll progress & back to top ---------- */
.bl-progress{position:fixed;left:0;top:0;height:3px;width:100%;z-index:100000;pointer-events:none;background:transparent}
.bl-progress span{display:block;height:100%;width:100%;transform-origin:0 50%;transform:scaleX(0);background:var(--bl-grad);box-shadow:0 0 12px rgba(153,0,204,.45)}
.bl-top{position:fixed;left:22px;bottom:22px;z-index:9990;width:52px;height:52px;border-radius:50%;border:0;padding:0;cursor:pointer;
  background:#fff;box-shadow:var(--bl-shadow-lg);display:grid;place-items:center;opacity:0;transform:translateY(16px) scale(.9);pointer-events:none;
  transition:opacity .35s var(--bl-ease),transform .35s var(--bl-ease)}
.bl-top.is-on{opacity:1;transform:none;pointer-events:auto}
.bl-top svg{position:absolute;inset:0;transform:rotate(-90deg)}
.bl-top circle{fill:none;stroke-width:3}
.bl-top .trk{stroke:var(--bl-line)}
.bl-top .bar{stroke:var(--blp);stroke-linecap:round;transition:stroke-dashoffset .1s linear}
.bl-top i{position:relative;width:12px;height:12px;border-left:3px solid var(--blp);border-top:3px solid var(--blp);transform:translateY(3px) rotate(45deg);border-radius:2px}
.bl-top:hover{transform:translateY(-3px)}

/* ---------- Top bar ---------- */
.top_bar.style_one{background-image:linear-gradient(90deg,var(--blp-dk),var(--blp) 45%,var(--blp-lt))!important}
.top_bar.style_one a,.top_bar.style_one span,.top_bar.style_one p{transition:opacity .25s}
.top_bar.style_one a:hover{opacity:.82}

/* ---------- Header ---------- */
.header_area header.header{transition:box-shadow .4s var(--bl-ease)}
.navbar_nav>li>a.nav-link{position:relative}
.navbar_nav>li>a.nav-link::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:3px;border-radius:3px;background:var(--bl-grad);
  transform:scaleX(0);transform-origin:50% 50%;transition:transform .35s var(--bl-ease)}
.navbar_nav>li:hover>a.nav-link::after,.navbar_nav>li.current-menu-item>a.nav-link::after,.navbar_nav>li.current-menu-ancestor>a.nav-link::after{transform:scaleX(1)}
.navbar_nav>li>a.nav-link:hover{color:var(--blp)!important}
/* dropdowns */
.navbar_nav .dropdown-menu{border:1px solid var(--bl-line)!important;border-radius:16px!important;box-shadow:var(--bl-shadow-lg)!important;padding:10px!important;overflow:visible}
.navbar_nav .dropdown-menu>li>a{border-radius:10px;transition:background-color .25s,color .25s,padding-left .3s var(--bl-ease)!important}
.navbar_nav .dropdown-menu>li>a:hover{background:var(--blp-soft)!important;color:var(--blp)!important;padding-left:22px!important}
/* sticky header: frosted glass */
.sticky_header_main{background:rgba(255,255,255,.86)!important;-webkit-backdrop-filter:saturate(170%) blur(14px);backdrop-filter:saturate(170%) blur(14px);
  box-shadow:0 8px 30px -14px rgba(60,0,90,.28)!important;border-bottom:1px solid rgba(153,0,204,.08)}
.mobile_header .bottom_content{background:rgba(255,255,255,.92)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 24px -14px rgba(60,0,90,.3)}

/* ---------- Buttons (keeps the existing leaf shape) ---------- */
.theme-btn{vertical-align:middle}
.header_right_content li{vertical-align:middle}
.theme-btn,.wpforms-submit,.wpcf7-submit,.ax-course-button a.button,.wp-block-button__link{position:relative;overflow:hidden;isolation:isolate}
.theme-btn.one,.header_right_content .theme-btn,.wpforms-container .wpforms-submit,.wpcf7 .wpcf7-submit,.ax-course-button a.button{
  background-image:var(--bl-grad)!important;border-color:transparent!important;box-shadow:0 10px 22px -10px rgba(153,0,204,.6)}
.theme-btn::before,.wpforms-submit::before,.ax-course-button a.button::before{content:"";position:absolute;top:0;left:-60%;width:45%;height:100%;z-index:1;pointer-events:none;
  background:linear-gradient(110deg,transparent,rgba(255,255,255,.38),transparent);transform:skewX(-18deg);transition:left .7s var(--bl-ease)}
.theme-btn:hover::before,.wpforms-submit:hover::before,.ax-course-button a.button:hover::before{left:120%}
.theme-btn:hover,.wpforms-submit:hover,.wpcf7-submit:hover,.ax-course-button a.button:hover{transform:translateY(-3px)!important;box-shadow:0 18px 30px -12px rgba(153,0,204,.65)!important}
.theme-btn:active{transform:translateY(-1px)!important}


/* Hover fix: theme turns the text purple on hover; keep it white on the purple gradient */
.theme-btn.one:hover,.theme-btn.one:focus-visible,.header_right_content .theme-btn:hover,
.ax-course-button a.button:hover,.ax-course-button a.button:focus-visible,a.enquiry.button:hover,
.wpforms-container .wpforms-submit:hover,.wpcf7 .wpcf7-submit:hover{
  color:#fff!important;background-color:var(--blp-dk)!important;
  background-image:linear-gradient(135deg,var(--blp-dk) 0%,var(--blp) 100%)!important}
.theme-btn.one:hover *,.header_right_content .theme-btn:hover *,.ax-course-button a.button:hover *{color:#fff!important}

/* ---------- Section labels & titles ---------- */
.title_sections .before_title{display:inline-flex!important;align-items:center;gap:8px;border:0!important;border-radius:999px!important;
  background:var(--blp-tint)!important;padding:7px 16px 6px!important;font-size:14px!important;letter-spacing:.02em;margin-bottom:16px!important}
.title_sections .before_title::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--bl-grad);box-shadow:0 0 0 4px rgba(153,0,204,.14);flex:none}
.title_sections .before_title::after{display:none!important}
.title_all_box .title_sections .title{font-size:clamp(28px,3.2vw,42px);line-height:1.18}

/* ---------- Page banners (inner pages) ---------- */
.page_header_default.style_one{clip-path:ellipse(135% 100% at 50% 0%);}
.page_header_default .page_header_content h1,.page_header_default .banner_title_inner .title{text-shadow:0 6px 30px rgba(40,0,60,.35)}
.page_header_default .breadcrumbs{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:4px;padding:8px 18px;border-radius:999px;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.page_header_default .banner_title_inner{animation:blRise 1s var(--bl-ease) both}

/* ---------- Cards: one consistent premium style ---------- */
.service_box.type_one,.service_box.style_one,.news_box.type_one,.icon_box_all.style_five .icon_content,.contact_box_content.style_one .contact_box_inner,
.process_box_outer,.testimonial_sec .testimonial_box,.contact_form_box_all .contact_form_box_inner{border-radius:var(--bl-r)!important}
.service_box.type_one,.service_box.style_one,.news_box.type_one,.icon_box_all.style_five .icon_content{
  background:#fff;border:1px solid var(--bl-line);box-shadow:var(--bl-shadow);
  transition:transform .45s var(--bl-ease),box-shadow .45s var(--bl-ease),border-color .45s!important}
.service_box.type_one:hover,.service_box.style_one:hover,.news_box.type_one:hover,.icon_box_all.style_five:hover .icon_content{
  transform:translateY(-8px)!important;box-shadow:var(--bl-shadow-lg)!important;border-color:rgba(153,0,204,.22)}
/* gradient line that grows along the top of a card on hover */
.service_box.style_one,.icon_box_all.style_five .icon_content{position:relative;overflow:hidden}
.service_box.style_one::before,.icon_box_all.style_five .icon_content::before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;z-index:3;
  background:var(--bl-grad);transform:scaleX(0);transform-origin:0 50%;transition:transform .5s var(--bl-ease)}
.service_box.style_one:hover::before,.icon_box_all.style_five:hover .icon_content::before{transform:scaleX(1)}
/* card images */
.service_box .image_box,.news_box .image_box,.service_box.style_one .image{overflow:hidden}
.service_box img,.news_box .image_box img{transition:transform .9s var(--bl-ease)!important}
.service_box:hover img,.news_box:hover .image_box img{transform:scale(1.06)!important}
/* service card round icon */
.service_box.type_one .icon_box_inner{transition:transform .5s var(--bl-ease),box-shadow .5s}
.service_box.type_one:hover .icon_box_inner{transform:translateY(-4px) rotate(-6deg);box-shadow:0 10px 24px -8px rgba(153,0,204,.6)}
.service_box.type_one .read_more,.news_box .read_more,.service_box .read_more{font-weight:600;transition:letter-spacing .3s var(--bl-ease),color .3s}
.service_box:hover .read_more,.news_box:hover .read_more{letter-spacing:.03em}
/* blog cards: lighter overlay so the photos show through */
.news_box.type_one .image_box::before{opacity:.55;transition:opacity .6s var(--bl-ease)!important}
.news_box.type_one:hover .image_box::before{opacity:.8}
.news_box.type_one .post-category a{border-radius:999px!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
/* "why choose us" icon boxes */
.icon_box_all.style_five .icon_content .icon span,.icon_box_all .icon span{display:inline-block;transition:transform .6s var(--bl-ease)}
.icon_box_all:hover .icon span{transform:scale(1.12) rotate(-6deg)}
/* info strip above footer */
.contact_box_content.style_one .contact_box_inner{background:#fff;box-shadow:var(--bl-shadow)}
.contact_box_inner .icon_bx{background-image:var(--bl-grad)!important;box-shadow:0 8px 18px -8px rgba(153,0,204,.7);transition:transform .5s var(--bl-ease)}
.contact_box_inner:hover .icon_bx{transform:scale(1.1) rotate(-8deg)}

/* ---------- Images ---------- */
.image_boxes .image img,.image_boxes .image_box img,.simple_image_boxes img,.elementor-widget-image img,.authour_box_content img{border-radius:var(--bl-r)}
.image_boxes .image,.elementor-widget-image .elementor-widget-container{border-radius:var(--bl-r);overflow:hidden}
.image_boxes .image img,.elementor-widget-image img{transition:transform 1s var(--bl-ease)}
.image_boxes .image:hover img,.elementor-widget-image:hover img{transform:scale(1.04)}
.image_boxes.style_seven .experience{border-radius:14px 0 14px 0;box-shadow:0 14px 30px -12px rgba(153,0,204,.7)}

/* ---------- Lists, accordions, progress ---------- */
.list_item_box li,.list_items li{transition:transform .3s var(--bl-ease)}
.list_item_box li:hover,.list_items li:hover{transform:translateX(4px)}
.accordion,.faq_section .accordion{border-radius:14px!important;overflow:hidden;transition:box-shadow .35s}
.faq_section .accordion:hover{box-shadow:var(--bl-shadow)}
.progress_bar.style_three .bar{border-radius:99px;overflow:hidden}
.progress_bar.style_three .bar-inner{background-image:var(--bl-grad)!important;border-radius:99px}

/* ---------- Forms ---------- */
.contact_form_box_all .contact_form_box_inner{box-shadow:var(--bl-shadow-lg)!important;border:1px solid var(--bl-line)}
.wpforms-container input:not([type=submit]):not([type=radio]):not([type=checkbox]),.wpforms-container textarea,.wpforms-container select,
.wpcf7 input:not([type=submit]),.wpcf7 textarea,.wpcf7 select{border-radius:12px!important;border:1.5px solid #e2dbe9!important;min-height:52px;font-size:16px!important;
  background:#fff!important;transition:border-color .25s,box-shadow .25s!important}
.wpforms-container input:focus,.wpforms-container textarea:focus,.wpcf7 input:focus,.wpcf7 textarea:focus{border-color:var(--blp)!important;box-shadow:0 0 0 4px rgba(153,0,204,.12)!important;outline:0}

/* ---------- Footer ---------- */
#footer_contents .elementor-top-section:has(.footer_widgets){clip-path:ellipse(150% 100% at 50% 100%)}
.footer_area .navigation_foo_box a,.footer_area .footer_widgets ul li a{display:inline-block;transition:transform .3s var(--bl-ease),opacity .3s}
.footer_area .navigation_foo_box a:hover,.footer_area .footer_widgets ul li a:hover{transform:translateX(5px);opacity:.85}
.footer_area .social_media a,.footer_area [class*=social] a{transition:transform .35s var(--bl-ease),box-shadow .35s}
.footer_area .social_media a:hover,.footer_area [class*=social] a:hover{transform:translateY(-4px);box-shadow:0 10px 20px -8px rgba(153,0,204,.7)}
.footer_area .news_boxed img{border-radius:10px}

/* ---------- Motion ---------- */
@keyframes blRise{from{opacity:0;transform:translate3d(0,28px,0)}to{opacity:1;transform:none}}
/* smoother, shorter entrance for the theme's own animations */
.elementor-element.animated.fadeInUp,.elementor-element.animated.fadeIn{animation-name:blRise!important;animation-duration:.9s!important;animation-timing-function:var(--bl-ease)!important}
[data-aos=fade-up]{transform:translate3d(0,28px,0)}
[data-aos][data-aos].aos-animate{transform:none}
[data-aos]{transition-timing-function:var(--bl-ease)!important;transition-duration:.8s!important}
/* reveal on scroll (added by script only, so content never stays hidden without it) */
.bl-ui .bl-reveal{opacity:0;transform:translate3d(0,26px,0);transition:opacity .8s var(--bl-ease),transform .8s var(--bl-ease);transition-delay:var(--bl-d,0s)}
.bl-ui .bl-reveal.bl-in{opacity:1;transform:none}

/* ---------- Tablet & phone ---------- */
@media (max-width:1024px){
  .title_all_box .title_sections .title{font-size:clamp(26px,4.4vw,34px)}
}
@media (max-width:767px){
  .bl-top{left:14px;bottom:14px;width:46px;height:46px}
  .page_header_default.style_one{clip-path:ellipse(170% 100% at 50% 0%)}
  #footer_contents .elementor-top-section:has(.footer_widgets){clip-path:ellipse(220% 100% at 50% 100%)}
  .title_sections .before_title{font-size:13px!important}
  .service_box.type_one:hover,.service_box.style_one:hover,.news_box.type_one:hover{transform:none!important}
  .theme-btn{min-height:48px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .bl-ui .bl-reveal{opacity:1;transform:none}
}
