/* Inner pages — shared design layer (loaded on every page except the home page) */
:root{--ip-r:18px;--ip-shadow:0 14px 34px rgba(45,54,99,.1)}

/* ---------- page header ---------- */
.page-header{position:relative;padding-top:64px!important;padding-bottom:96px!important}
.page-header::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(45,54,99,.55),rgba(45,54,99,.2));pointer-events:none}
.page-header>*{position:relative}
.page-header h1,.page-header .page-title{text-shadow:0 2px 14px rgba(0,0,0,.25)}
.page-header .breadcrumbs,.page-header .breadcrumb,.page-header [class*="bread"]{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:4px;margin-top:14px;padding:7px 18px;border-radius:40px;background:rgba(255,255,255,.12);backdrop-filter:blur(4px)}

/* ---------- content as a paper card overlapping the header ---------- */
.main-wrapper{position:relative}
.main-wrapper>.inner-page{background:#fff;border-radius:var(--ip-r);box-shadow:var(--ip-shadow);margin-top:-56px!important;padding:48px 44px!important;position:relative;z-index:2}
.main-wrapper>.inner-page .row{margin-left:0;margin-right:0}
@media(max-width:767px){.main-wrapper>.inner-page{padding:26px 18px!important;margin-top:-36px!important;border-radius:14px}}

/* ---------- typography ---------- */
.main-wrapper .entry-content,.main-wrapper .blog-post .description,.main-wrapper .text-page{line-height:1.85;font-size:17px}
.main-wrapper .entry-content h2,.main-wrapper .blog-post .description h2,.main-wrapper .wpb_text_column h2{position:relative;padding-inline-start:16px}
.main-wrapper .entry-content h2::before,.main-wrapper .blog-post .description h2::before,.main-wrapper .wpb_text_column h2::before{content:"";position:absolute;inset-inline-start:0;top:.18em;bottom:.18em;width:5px;border-radius:5px;background:var(--main,#47ccc8)}
.main-wrapper .entry-content h3,.main-wrapper .blog-post .description h3{color:var(--black,#2D3663)}
.main-wrapper blockquote{margin:1.6em 0;padding:22px 26px;border-radius:0 14px 14px 0;background:var(--gray,#EDF3F6);border:0;border-inline-start:5px solid var(--main,#47ccc8);font-style:italic;color:var(--black,#2D3663)}
[dir=rtl] .main-wrapper blockquote{border-radius:14px 0 0 14px}
.main-wrapper blockquote p:last-child{margin-bottom:0}
.main-wrapper .entry-content ul:not(.ez-toc-list):not(.social-icons-list):not(.nav):not(.slides) li,.main-wrapper .blog-post .description ul li{list-style:none;position:relative;padding-inline-start:26px}
.main-wrapper .entry-content ul:not(.ez-toc-list):not(.social-icons-list):not(.nav):not(.slides) li::before,.main-wrapper .blog-post .description ul li::before{content:"";position:absolute;inset-inline-start:2px;top:.72em;width:9px;height:9px;border-radius:50%;background:var(--main,#47ccc8)}
.main-wrapper .entry-content ul:not(.ez-toc-list):not(.social-icons-list):not(.nav):not(.slides),.main-wrapper .blog-post .description ul{padding-inline-start:4px}
.main-wrapper .entry-content ol,.main-wrapper .blog-post .description ol{padding-inline-start:26px}
.main-wrapper .entry-content ol li::marker,.main-wrapper .blog-post .description ol li::marker{color:var(--main-darker,#29aeaa);font-weight:700}
.main-wrapper table{width:100%;border-collapse:separate;border-spacing:0;margin:1.6em 0;border-radius:12px;overflow:hidden;box-shadow:0 6px 18px rgba(45,54,99,.08);font-size:15.5px}
.main-wrapper table th{background:var(--black,#2D3663);color:#fff;font-family:var(--font-headers,'Niramit'),sans-serif;padding:12px 16px;text-align:start}
.main-wrapper table td{padding:12px 16px;border-top:1px solid rgba(45,54,99,.08)}
.main-wrapper table tr:nth-child(even) td{background:var(--gray,#EDF3F6)}
.main-wrapper .entry-content img,.main-wrapper .blog-post .description img{border-radius:14px}
.main-wrapper .wpb_single_image img{box-shadow:var(--ip-shadow)}
.main-wrapper hr{border:0;height:2px;background:linear-gradient(90deg,var(--main,#47ccc8),transparent);margin:2.2em 0}

/* ---------- blog post ---------- */
.blog-post>article>.blog-info-post-top,.blog-post .blog-info-post-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding-bottom:16px;margin-bottom:28px;border-bottom:1px solid rgba(45,54,99,.1)}
.blog-post .blog-info-post-top ul{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:0;padding:0;list-style:none}
.blog-post .ltx-cats a{display:inline-block;padding:5px 16px;border-radius:30px;background:var(--main,#47ccc8);color:#fff!important;font-size:13px;font-weight:700}
.blog-post .description>.text>p:first-child{font-size:19px;line-height:1.8;color:var(--black,#2D3663)}
.div-sidebar .widget,.content-sidebar .widget{border-radius:var(--ip-r)}
.main-wrapper .blog-post+*{margin-top:32px}
.main-wrapper .post-navigation,.main-wrapper .ltx-post-nav{display:flex;justify-content:space-between;gap:16px;margin-top:40px}

/* ---------- tabs / accordions from the page builder ---------- */
.main-wrapper .vc_tta-tab a,.main-wrapper .vc_tta-panel-title a{border-radius:10px!important}
.main-wrapper .vc_tta.vc_general .vc_tta-panel-heading{border-radius:12px;background:var(--gray,#EDF3F6)}
.main-wrapper .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panel .vc_tta-panel-body{border-radius:0 0 12px 12px}

/* ---------- buttons inside content ---------- */
.main-wrapper .vc_btn3.vc_btn3-style-flat,.main-wrapper .btn.btn-default{border-radius:40px}

/* ---------- appointment band before the footer ---------- */
.ip-cta{background:linear-gradient(120deg,var(--black,#2D3663) 0%,#3b4783 100%);color:#fff;padding:56px 0;margin-top:72px}
.ip-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.ip-cta h2{font-family:var(--font-headers,'Niramit'),sans-serif;font-size:30px;line-height:1.25;color:#fff;margin:0;max-width:640px}
.ip-cta__actions{display:flex;gap:14px;flex-wrap:wrap}
.ip-cta__btn{display:inline-block;padding:14px 30px;border-radius:40px;font-family:var(--font-headers,'Niramit'),sans-serif;font-weight:700;font-size:16px;text-decoration:none;border:2px solid #fff;transition:background .2s,transform .2s}
.ip-cta__btn--light{background:#fff;color:var(--black,#2D3663)!important}
.ip-cta__btn--light:hover{background:var(--gray,#EDF3F6);transform:translateY(-2px)}
.ip-cta__btn--ghost{background:transparent;color:#fff!important;border-color:rgba(255,255,255,.7)}
.ip-cta__btn--ghost:hover{background:rgba(255,255,255,.14);border-color:#fff}
@media(max-width:767px){.ip-cta h2{font-size:24px}.ip-cta{margin-top:48px;padding:40px 0}}

/* fixes */
div#ez-toc-container li::before{display:none!important}
div#ez-toc-container li{padding-inline-start:0!important;list-style:none}
.page-header .container::after,.page-header .container::before,.page-header::after{display:none!important}
.ip-cta__inner::before,.ip-cta__inner::after{display:none!important}
.main-wrapper .no-list li::before,.main-wrapper .social li::before,.main-wrapper .social-icons-list li::before{display:none!important}
.main-wrapper .no-list li,.main-wrapper .social li{padding-inline-start:0!important}

/* blog listing: no table of contents inside cards, readable excerpts */
.vc_basic_grid div#ez-toc-container,.vc_basic_grid .ez-toc-container,.vc_basic_grid .ez-toc-title-container{display:none!important}
.vc_basic_grid .vc_gitem-post-data-source-post_excerpt,.vc_basic_grid .vc_gitem-post-data-source-post_excerpt *{font-family:var(--font-main,'Lora'),serif!important;font-weight:400!important;font-size:15px;line-height:1.7;color:var(--black-text,rgba(45,54,99,.8))!important}
.vc_basic_grid .vc_gitem-post-data-source-post_excerpt p{margin:0 0 16px}
.vc_basic_grid .vc_gitem-zone-c .vc_gitem-post-data-source-post_title{margin:0!important;min-height:0}
.vc_basic_grid .vc_gitem-zone-c .vc_gitem-post-data-source-post_title>*{margin-top:0}
.vc_basic_grid .vc_gitem-zone-c>.vc_gitem-zone-mini{justify-content:flex-start}

/* ---------- blog article polish ---------- */
.blog-post .description .text p{margin-bottom:1.15em}
.blog-post .description .text strong{color:var(--black,#2D3663)}
.blog-post .description .text h2:first-child{margin-top:0}
.blog-post .description .text h2{margin-top:1.8em}
.blog-post .description .text hr{margin:2.4em 0}
.blog-post .ltx-user,.blog-post .ltx-date{font-size:14px;color:rgba(45,54,99,.65)}
.blog-post .blog-info-right{opacity:.8}
/* tags, share, post nav */
.blog-post .tags a,.blog-post .ltx-tags a{display:inline-block;padding:5px 14px;margin:0 6px 6px 0;border-radius:30px;background:var(--gray,#EDF3F6);color:var(--black,#2D3663)!important;font-size:13px}
.blog-post .tags a:hover,.blog-post .ltx-tags a:hover{background:var(--main,#47ccc8);color:#fff!important}
/* sidebar */
.row-eq-height_ .col-lg-4,.row-eq-height_ [class*="col-"]:has(.content-sidebar){align-self:flex-start}
.content-sidebar{position:sticky;top:110px}
.content-sidebar .widget{background:var(--gray,#EDF3F6);border-radius:var(--ip-r);padding:24px 22px;margin-bottom:22px}
.content-sidebar .widget_icl_lang_sel_widget{display:none}
.content-sidebar .header-widget{font-size:20px;margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid rgba(71,204,200,.35)}
.content-sidebar .header-widget::before{display:none!important}
.content-sidebar .widget_ltx_blogposts .post{padding:12px 0;border-top:1px solid rgba(45,54,99,.08)}
.content-sidebar .widget_ltx_blogposts .post:first-child{border-top:0;padding-top:0}
.content-sidebar .widget_ltx_blogposts h6{font-size:16px;line-height:1.4;margin:0 0 6px}
.content-sidebar .widget_categories li{padding:4px 0}
@media(max-width:991px){.content-sidebar{position:static;margin-top:36px}}
/* title in header: keep long article titles tidy */
.page-header h1{max-width:980px;margin-left:auto;margin-right:auto;line-height:1.25}
.single-post .page-header h1,.page-header.header-h1 h1{font-size:clamp(26px,3.4vw,42px)}
.page-header h1{width:100%;text-align:center;display:block}
.content-sidebar .header-widget{margin-bottom:18px!important;display:block}
.content-sidebar .widget{padding-top:26px}

/* ---------- breadcrumbs (redesign) ---------- */
.page-header ul.breadcrumbs{display:inline-flex!important;align-items:center;flex-wrap:wrap;justify-content:center;gap:0;margin:18px auto 0!important;padding:9px 22px!important;list-style:none;border-radius:40px;background:rgba(255,255,255,.14)!important;backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.22);box-shadow:0 6px 18px rgba(0,0,0,.12)}
.page-header ul.breadcrumbs li{display:inline-flex;align-items:center;margin:0!important;padding:0!important;font-family:var(--font-headers,'Niramit'),sans-serif;font-size:15px;font-weight:600;line-height:1.4;color:#fff!important;background:none!important}
.page-header ul.breadcrumbs li::before,.page-header ul.breadcrumbs li::after{display:none!important}
.page-header ul.breadcrumbs li+li::before{display:inline-block!important;content:"/";margin:0 12px;color:rgba(255,255,255,.55);font-weight:400}
.page-header ul.breadcrumbs li a,.page-header ul.breadcrumbs li a span{color:rgba(255,255,255,.88)!important;text-decoration:none;transition:color .2s}
.page-header ul.breadcrumbs li a:hover,.page-header ul.breadcrumbs li a:hover span{color:var(--main,#47ccc8)!important}
.page-header ul.breadcrumbs li.home a::before{content:"\f015";font-family:"Font Awesome 5 Free","FontAwesome";font-weight:900;margin-inline-end:8px;font-size:13px;color:var(--main,#47ccc8)}
.page-header ul.breadcrumbs li:last-child,.page-header ul.breadcrumbs li:last-child span{color:#fff!important;font-weight:700;max-width:46ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[dir=rtl] .page-header ul.breadcrumbs li.home a::before{margin-inline-end:8px}
@media(max-width:767px){
  .page-header ul.breadcrumbs{padding:8px 16px!important;max-width:92%}
  .page-header ul.breadcrumbs li{font-size:13px}
  .page-header ul.breadcrumbs li+li::before{margin:0 8px}
  .page-header ul.breadcrumbs li:last-child,.page-header ul.breadcrumbs li:last-child span{max-width:22ch}
}
.page-header h1{padding:0!important;margin-left:auto!important;margin-right:auto!important;float:none!important;text-align:center!important;box-sizing:border-box}
.page-header>.container{text-align:center}

/* ---------- long treatment pages: image column beside the text ---------- */
@media(min-width:992px){
  .inner-page .entry-content .vc_row:has(>.wpb_column .wpb_single_image):has(>.wpb_column .wpb_text_column){display:flex!important;flex-wrap:nowrap;align-items:flex-start;gap:36px}
  .inner-page .entry-content .vc_row:has(>.wpb_column .wpb_single_image):has(>.wpb_column .wpb_text_column)::before,
  .inner-page .entry-content .vc_row:has(>.wpb_column .wpb_single_image):has(>.wpb_column .wpb_text_column)::after{display:none!important}
  .inner-page .entry-content .vc_row>.wpb_column{float:none!important}
  /* image-only column: stays fixed in place (not sticky) */
  .inner-page .entry-content .vc_row>.wpb_column:has(.wpb_single_image):not(:has(.wpb_text_column)){align-self:flex-start;flex:0 0 36%;max-width:36%}
  .inner-page .entry-content .vc_row>.wpb_column:has(.wpb_text_column){flex:1 1 0;min-width:0;max-width:none}
  .inner-page .entry-content .vc_row>.wpb_column:has(.wpb_single_image):not(:has(.wpb_text_column)) .wpb_single_image{margin-bottom:22px}
}
.inner-page .entry-content .wpb_single_image .vc_single_image-wrapper{display:block;line-height:0;border:0!important;border-radius:14px;overflow:hidden}
.inner-page .entry-content .wpb_single_image img{width:100%;height:auto;display:block}
@media(max-width:991px){.inner-page .entry-content .vc_row>.wpb_column{width:100%!important;max-width:100%!important;flex:none}}

/* ---------- table of contents: numbers only on the first level ---------- */
div#ez-toc-container ul ul a::before,div#ez-toc-container ul ul li::before{content:none!important;display:none!important}
div#ez-toc-container ul ul{padding-inline-start:18px!important;border-inline-start:2px solid rgba(71,204,200,.35);margin-inline-start:6px!important}
div#ez-toc-container ul ul a{font-size:14px!important;opacity:.9}
div#ez-toc-container nav>ul{counter-reset:ezt}
div#ez-toc-container nav>ul>li>a{font-weight:600}

/* ---------- image sliders (WPBakery carousel + gallery) ---------- */
.inner-page .vc_images_carousel,.inner-page .wpb_gallery .flexslider,.inner-page .wpb_gallery_slides{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 14px 34px rgba(45,54,99,.18);background:#eef2f6;border:0!important;margin-bottom:22px!important}
.inner-page .vc_images_carousel .vc_carousel-inner,.inner-page .vc_images_carousel .vc_carousel-slideline,.inner-page .vc_images_carousel .vc_item{border-radius:18px}
.inner-page .vc_images_carousel .vc_item .vc_inner,.inner-page .vc_images_carousel .vc_item a{display:block;height:100%}
.inner-page .vc_images_carousel .vc_item img,.inner-page .wpb_gallery_slides img{display:block;width:100%!important;height:100%!important;object-fit:cover;border-radius:0!important;box-shadow:none!important;margin:0!important}
/* subtle gradient under the dots so they stay readable */
.inner-page .vc_images_carousel::after,.inner-page .wpb_gallery .flexslider::after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(0deg,rgba(20,26,60,.45),transparent);pointer-events:none;z-index:3}
/* arrows */
.inner-page .vc_images_carousel .vc_carousel-control,.inner-page .flexslider .flex-direction-nav a{position:absolute!important;top:50%!important;transform:translateY(-50%);width:42px!important;height:42px!important;margin:0!important;border-radius:50%!important;background:rgba(255,255,255,.92)!important;color:var(--black,#2D3663)!important;opacity:0;display:flex!important;align-items:center;justify-content:center;box-shadow:0 6px 16px rgba(0,0,0,.25);text-shadow:none!important;transition:opacity .25s,background .25s,color .25s;z-index:5;font-size:0!important}
.inner-page .vc_images_carousel:hover .vc_carousel-control,.inner-page .flexslider:hover .flex-direction-nav a{opacity:1}
.inner-page .vc_images_carousel .vc_carousel-control:hover,.inner-page .flexslider .flex-direction-nav a:hover{background:var(--main,#47ccc8)!important;color:#fff!important}
.inner-page .vc_images_carousel .vc_left.vc_carousel-control,.inner-page .flexslider .flex-direction-nav a.flex-prev{left:12px!important;right:auto!important}
.inner-page .vc_images_carousel .vc_right.vc_carousel-control,.inner-page .flexslider .flex-direction-nav a.flex-next{right:12px!important;left:auto!important}
.inner-page .vc_images_carousel .vc_carousel-control span,.inner-page .vc_images_carousel .vc_carousel-control .icon-prev,.inner-page .vc_images_carousel .vc_carousel-control .icon-next{display:none!important}
.inner-page .vc_images_carousel .vc_left.vc_carousel-control::before,.inner-page .flexslider .flex-direction-nav a.flex-prev::before{content:"\2039";font-size:30px;line-height:1;padding-bottom:3px;opacity:1;color:inherit;position:static;font-family:inherit}
.inner-page .vc_images_carousel .vc_right.vc_carousel-control::before,.inner-page .flexslider .flex-direction-nav a.flex-next::before{content:"\203A";font-size:30px;line-height:1;padding-bottom:3px;opacity:1;color:inherit;position:static;font-family:inherit}
/* dots */
.inner-page .vc_images_carousel .vc_carousel-indicators{position:absolute!important;left:0!important;right:0!important;bottom:12px!important;top:auto!important;display:flex!important;justify-content:center;gap:8px;margin:0!important;padding:0!important;list-style:none;z-index:6;transform:none!important;width:auto!important}
.inner-page .vc_images_carousel .vc_carousel-indicators li,.inner-page .flexslider .flex-control-nav li a{width:10px!important;height:10px!important;margin:0!important;padding:0!important;border-radius:50%!important;background:rgba(255,255,255,.65)!important;border:0!important;text-indent:-9999px;overflow:hidden;cursor:pointer;display:block;transition:width .25s,background .25s;box-shadow:none!important}
.inner-page .vc_images_carousel .vc_carousel-indicators li.vc_active,.inner-page .flexslider .flex-control-nav li a.flex-active{width:26px!important;border-radius:10px!important;background:#fff!important}
.inner-page .flexslider .flex-control-nav{position:absolute!important;bottom:12px!important;left:0;right:0;display:flex!important;justify-content:center;gap:8px;margin:0!important;padding:0!important;list-style:none;z-index:6;width:auto!important;text-align:center}
.inner-page .flexslider .flex-control-nav li{margin:0!important;padding:0!important;background:none!important}
@media(max-width:767px){.inner-page .vc_images_carousel .vc_carousel-control,.inner-page .flexslider .flex-direction-nav a{opacity:1;width:36px!important;height:36px!important}}
