:root{
  /* Brand */
  --green:#00674F;              /* Primary */
  --yellow:#F7A64D;             /* Accent */

  /* Backgrounds / Surfaces */
  --sand-100:#FCFAF6;           /* page bg */
  --sand-200:#F8F4EC;
  --sand-300:#F4EEE4;
  --sand-400:#F0E7DA;
      
--sand-500:#F0E4D3;
  /* Neutrals (Coal scale) */
  --coal-25:#F4F4F4;
  --coal-50:#EEEEEF;
  --coal-100:#E3E2E3;
  --coal-200:#D6D4D5;
  --coal-300:#B9B6BA;
  --coal-400:#8E8A91;
  --coal-500:#6A6770;
  --coal-600:#4C4A51;
  --coal-700:#3A383E;
  --coal-800:#242327;
  --coal-900:#141316;
  
  --bs-btn-disabled-bg: #F7A64D;      

  /* Typography */
  --ff:"Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

  /* Sizing */
    --container-max:1230px;       /* requested */
    --radius:16px;
    --bs-body-line-height: 1.35;
}

/* Base reset */
*,*::before,*::after{box-sizing:border-box}
html,body{height:100%}
body{font-family:"Montserrat"; background: #FCFAF6; color:var(--coal-900)}
img{max-width:100%; height:auto; display:block}
a{text-decoration:none}
a:visited{ color: inherit; }

a.more-link:visited, a.all-link:visited{ color: var(--green); }
a.btn:visited{ color:#fff; }
a.btn-cta:visited{ color:#000; }
a.btn-outline:visited{ color: var(--green); }
.doc-card a.more-link:visited{ color:#fff; }

/* Bootstrap container override */
@media (min-width:1400px){
  .container, .container-lg, .container-xl, .container-xxl{max-width:var(--container-max)}
}

/* Typography scale (Desktop per spec) */
.h-5xl{font-weight:400; font-size:56px; line-height:1.1; }
.h-4xl{font-weight:400; font-size:48px; line-height:1.12}
.h-3xl{font-weight:400; font-size:40px; line-height:1.15}
.h-2xl{font-weight:400; font-size:32px; line-height:1.2}
.h-xl{font-weight:400; font-size:24px; line-height:1.25}
.h-l{font-weight:400; font-size:20px; line-height:1.4}

h1,.head-5xl{font-weight:400; font-size:56px; }
h2,.head-4xl{font-weight:400; font-size:48px; }
h3,.head-3xl{font-weight:400;  font-size: 40px;}
h4,.head-2xl{font-weight:400;  font-size: 32px;}
h5,.head-xl{font-weight:400;  font-size: 24px; }
.head-l{font-weight:400;  font-size: 20px; }

.text-2xl{font-size:32px;  }
.text-xl{font-size:24px;  }
.text-20{ font-size: 20px; }
.text-l{font-size:16px;  }
.text-m{font-size:14px; line-height : 1.25;}

.text-right{ text-align: right; }
/* Utilities */
.shadow-soft{box-shadow:0 1px 2px rgba(20,19,22,.03),0 8px 24px rgba(20,19,22,.06)}
.rounded-2xl{border-radius:22px}


/*.mt-xl{ margin-top: 40px; }*/
/*.mt-l{ margin-top: 20px; }*/

.mt-12{ margin-top:12px; } 
.mt-20{ margin-top: 20px; }
.mt-30{margin-top: 30px;}
.mt-40{ margin-top: 40px; }

.mb-30{ margin-bottom:30px; }
.mb-20{ margin-bottom:20px; }
.mb-40{ margin-bottom: 40px; }

.pt-0{ padding-top: 0;}
.pt-30{ padding-top: 30px; }
.pt-80{  padding-top: 80px;}
.pb-0{ padding-bottom: 0; }
.pb-30{ padding-bottom: 30px; }
.pb-80 {padding-bottom: 80px;}

.row-30 {
  margin-right: -30px;
  margin-left: -30px;
}
.row-30 > [class*="col-"] {
  padding-right: 30px;
  padding-left: 30px;
}
.row-40 {
  margin-right: -40px;
  margin-left: -40px;
}
.row-40 > [class*="col-"] {
  padding-right: 40px;
  padding-left: 40px;
}
.row-0 {
  margin-right: 0px;
  margin-left: 0px;
}
.row-0 > [class*="col-"] {
  padding-right: 0px;
  padding-left: 0px;
}
.map-embed iframe{ width:100%;}
.wpcf7-not-valid-tip{ color: #f7a64d; }

/* Buttons */
/*.btn-brand{background:var(--yellow); color:#111; border:0; border-radius:12px; padding:.75rem 1.25rem; font-weight:600}
.btn-brand:hover{filter:brightness(.95)}
.btn-outline-light{--bs-btn-color:#fff; --bs-btn-border-color:#fff; --bs-btn-hover-bg:#fff; --bs-btn-hover-color:#000}
*/
/* ===== Header ===== */
.site-header{   padding-top: 20px; padding-bottom: 10px;}
.home .site-header{
    position:absolute;top:0;left:0;right:0;z-index:50;color:#fff; padding-top: 20px; padding-bottom: 0;
}
.site-header .btn-wrap{
  display: flex; gap: 15px;     align-items: center;
}
.header-inner{
    min-height:84px;display:flex;align-items:center;justify-content:space-between;
    padding-left: 50px; padding-right: 50px;
}
.brand{
    display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none
}
.site-header .logo{ height:68px; }
.brand-title{font-weight:700;letter-spacing:.02em}
.nav{display:flex; align-items:center}
.nav-link{color:#000;opacity:.95;text-decoration:none;font-weight:500}
.nav-link:focus{color:#000;}
.nav-link:hover{text-decoration:none; opacity:1 ; color: var(--green);}
.home .nav-link, .home .nav-link:hover, .home .nav-link:focus{
  color:#fff;
}


.btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  text-decoration:none;cursor:pointer;
  background:var(--green);
  color: #FFF;
  border: 1px solid var(--green);
  padding: 13px 30px;
  border-radius:0
}
.btn:hover{
  background: #ccc;
  color: #000;
  border-color:  #ccc;
}
.btn:focus{
  background: #ccc;
  color: #000;
  border-color: #595959;
}
.btn:disabled{
  
}
.btn span{transition:transform .2s; transform:translateX(0px)} 
.btn:hover span{transform:translateX(3px)}
.btn-sm{
  padding: 6px 20px;
}
.btn-outline{
  color: var(--green);
  border-color:  var(--green);
  background: transparent;
}
.btn-outline:hover{
  color: #fff;
  border-color: #fff;
  background: transparent;
}
.btn-outline:focus{
  background: transparent;
  color: #000;
  border-color: #595959;
}
.site-header .btn-outline:hover{
  color: var(--green);
  border-color:  var(--green);
}
.home .site-header .btn-outline, .home .site-header .btn-outline:hover{
  color: #fff;
  border-color: #fff;
}
.home .site-header .btn-outline svg path{ fill: #fff }

/*.btn-cta-sm{
    border:1px solid rgba(255,255,255,1);
    color:#fff;
    background: transparent;
    padding: 13px 30px;
    border-radius: 0;
    position: relative;
}
.btn-cta-sm:hover{
  border:1px solid rgba(255,255,255,1);
  color:#fff; background: transparent;
}
.btn-cta-sm:after{
  content: "";
  display: inline-block;
  width: 6px;
  height: 10px;
  background: url("../images/icons/icon-arr.svg");
}*/
.nav-toggle{
    display:none;background:none;border:0;color: var(--green);
    font-size:28px;
    width: 30px;
        height: 22px;
        /*display: flex;*/
        flex-direction: column;
        justify-content: space-between;
        cursor: pointer;
        border: none;
        background: transparent;
        padding: 0;
}
.home .nav-toggle{color:#fff;}
.home  .nav-toggle .bar{background : #fff; }
.nav-toggle .bar {
    display: block;
    width: 100%;
    height: 3px;
    background: var(--green);
    border-radius: 3px;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.nav-toggle[aria-expanded="true"] .bar:nth-child(1) {
    transform: translateY(9px) rotate(45deg);
}

.nav-toggle[aria-expanded="true"] .bar:nth-child(2) {
    opacity: 0;
}

.nav-toggle[aria-expanded="true"] .bar:nth-child(3) {
    transform: translateY(-9px) rotate(-45deg);
}

.nav-mobile ul{
  display:flex;flex-direction:column;gap:14px;    
/*  background: rgba(255, 255, 255, .8);*/
  background: #FCFAF6;
  backdrop-filter: blur(6px);
  padding: 15% 10%;
  position: absolute;
  width: 100%;
  z-index: 10;
  margin: 0;
   color: var(--green);
       list-style: none;
}
.nav-mobile ul li a{ color: var(--green);} 
 
#primary-menu ul{ list-style-type: none; display:flex; align-items:center;}
.home #primary-menu ul a{ color: #FFF; padding: 8px 0.5rem; }
#primary-menu ul a{ color: var(--green); padding: 8px 0.5rem; }

.btn-cta, input[type="submit"],  input.wpcf7-submit, .popup.popup--green .btn.disabled, .popup.popup--green .btn:disabled{
    background:var(--yellow);
    color:#000;
}
.btn-cta:hover , input[type="submit"]:hover,  input.wpcf7-submit:hover{  
  background:var(--yellow); border-color: var(--yellow);   color:#111; 
  }

.popup.popup--green .form-group label + br{ display: none; }
.popup.popup--green .form-group .wpcf7-form-control-wrap{ display: block; }


.breadcrumbs {
    margin: 40px 0 20px;
}
ul.breadcrumbs-list {
    display: flex;
    list-style-type: none;
    padding: 0;
    margin: 0;
    gap: 17px;
}

ul.breadcrumbs-list li a,
ul.breadcrumbs-list li span {
    color: #837F82;
    font-size: 14px;
    text-decoration: none;
    position: relative;
}
ul.breadcrumbs-list li a{ margin-right: 24px; color: #000; }
ul.breadcrumbs-list li a:after {
    content: "";
    position: absolute;
    width: 24px;
    height: 24px;
    right: -34px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;height: 24px;
    background-image: url("../images/icons/icon-arrow-gray.svg");
    background-position: center;
    background-repeat: no-repeat;
    
}
.breadcrumb-link-back a{
  color: #000;
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 24px;
}


.section{
    padding:80px 0
}
.section.p-0{ padding: 0; }
.section-title{
    font-weight:400;font-size:40px;line-height:1.15;
}
.section-head{
    display:flex;align-items:center;
    justify-content:space-between;gap:16px;
    margin-bottom:35px;
}

 

.all-link{
  color:var(--green);text-decoration:none; 
  display:inline-flex;
  align-items:center;
  gap:8px;    min-width : 140px;
}
.all-link span{transition:transform .2s; transform:translateX(0px)} 
.all-link:hover span{transform:translateX(3px)}
.more-link{
   display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--green);
    text-decoration:none; 
    margin-top: 20px;     background: none;
    border: none;
}
.more-link span{transition:transform .2s;transform:translateX(0px)} 
.more-link:hover span{transform:translateX(3px)}



/* ===== Hero ===== */
.hero{
    position:relative;
    padding:130px 0 145px;
    color:#fff;
    background-color :var(--green);
    /*background-image: url("../images/bg-gradient.svg");*/
    background: url("../images/bg-gradient.png");
    /*background: url("../images/bg-gradient.webp");*/
    background-size: cover;
    overflow: hidden;
}
@media (max-width: 991.98px) {
  .hero {
    background-image:url("../images/bg-gradient.webp");
  }
}
/* Hero: тримаємо всередині контейнера 1200px */
.hero .container{
  max-width: 1230px;           /* як у макеті */
  padding-left: 15px;          /* стандарт BS 4/5 */
  padding-right: 15px;
  position: relative;
}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}
/* Грід: контролюємо ширину колонок на десктопі */
@media (min-width: 1200px){
  .hero-grid{
    grid-template-columns: minmax(0, 540px) 1fr; /* ліва ~620px, права займає решту */
  }
}
.hero-left{    margin-top: 9rem;}
.hero-right{
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    left: auto;
    transform: translateX(50%);
}
/* страховка: раптом десь задані bleed-негативні відступи */
.hero [class*="bleed"]{ margin-left: 0 !important; margin-right: 0 !important; }
.hero h1{
    font-weight:400;font-size:56px;
    line-height:1.15;margin:0 0 20px;
    letter-spacing:.2px;
    color: #FFF;
}
.hero-descr{
    margin-bottom: 3.5rem;
}
/*.hero .lead{font-size:20px;line-height:1.6;color:rgba(255,255,255,.9);max-width:54ch}*/

.hero .phone-note {
  margin-top: 3.5rem;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.85);
  font-size: 16px;
}
.hero .phone {
  display: inline-block;
  margin-top: 12px;
  font-weight: 600;
  font-size: 30px;
  color: #fff;
  text-decoration: none;
  transition: color 0.2s ease;
}
.hero .phone:hover {
  color: #f59c27;
}
.hero-photo {
  border-radius: 0;
  overflow: hidden;
  box-shadow: none;
}






/* Slide cards (active #1) */

.s-card{
/*    background:#fff;*/
    border:1px solid var(--sand-500);
    padding: 60px 30px;
    height:100%;
    width: 336px;
}
.services-3 .s-card{
  width: 100%;
}
.s-card .icon{ 
    display:grid;place-items:center;
    margin-bottom:60px;
}
.s-card h3{font-size:24px;line-height:1.25;margin:12px 0 20px; font-weight: normal;}
.s-card p{color:var(--coal-600);margin:0 0 20px}

/* “Active” first card */
.s-card:hover{
    background: #FFF;
    color: var(--green);
    box-shadow: 0px 0px 32px rgba(0,0,0,.05);
}
.s-card:after{
  content:'';
  position:absolute;top:5px;right:5px;
  width:16px;height:16px;
  background: url("../images/icons/icon-active.svg");
  opacity: 0;
}
.s-card:hover:after{
  opacity: 1;
}
.s-card .icon img{
  height: 122px;
  transition: filter 0.3s ease;
  filter: brightness(0) saturate(100%) invert(67%) sepia(6%) saturate(333%) hue-rotate(358deg) brightness(94%) contrast(91%);
}
.s-card:hover .icon img{
  filter: none;
  
}


.services-swiper{padding-bottom:16px}
.swiper-slide{height:auto; opacity: 1;}  
.services  .swiper-slide{
    width: 336px; height:auto;
    opacity: 1;
}
.services-3 .swiper-slide{
    width: 33.33%; height:auto;
    opacity: 1;
}
.services-nav{
  display:flex;justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-top:45px;
/*  padding: 0 130px;*/
}
.swiper .arrows{display:flex;gap:12px}
.swiper .arrow{
  inline-size:42px;block-size:42px;
  border-radius:999px;
  border: none;
  background: transparent;
  cursor:pointer;font:600 18px/1 Montserrat;
  background: #fff;
    text-align: center;
    padding: 0.4em .4em 0.5em;
}
.swiper .arrow:disabled{opacity:.4;cursor:not-allowed}

/* bar-style pagination (--- with middle yellow) */
.services-pagination, .bar-pagination{
  display:flex;gap:12px;align-items:center;justify-content: center;
}
.services-pagination .swiper-pagination-bullet,
.bar-pagination .swiper-pagination-bullet{
  width:32px;height:3px;border-radius:999px;background:var(--coal-200);opacity:1
}
.services-pagination .swiper-pagination-bullet-active,
.bar-pagination .swiper-pagination-bullet-active{background:var(--yellow)}

.bar-pagination{ padding-left: 95px; gap:3px;}




.specialist-main.section-content-image-left .content-text {
    padding-left: 80px;
    padding-right: 60px;
}


/* ===== Specialists ===== */
.specialists{padding:35px 0 55px;  overflow: hidden;}
.specialists .section-title{
  margin-bottom: 40px;
}
.specialists .doctors-swiper { overflow: visible; }
.specialists .swiper-slide{
    width: 405px;
}
 /* картка лікаря */
.doc-card{
  position:relative;
  height:520px;
  overflow:hidden;
    /*background: url("../images/bg-gradient.svg");*/
    background: url("../images/bg-gradient.png");
    background-size: cover;
}
@media (max-width: 991.98px) {
  .doc-card {
    background-image:url("../images/bg-gradient.webp");
  }
}
/* шар із фото, що читає CSS-змінну --photo */
.doc-card::before{
    content:"";
    position:absolute; inset:0;
    background: var(--photo, none) center / cover no-repeat; /* ← головне */
    z-index:0;                /* фото під текстом */
    opacity:.9;
    height: 70%;
    top: 30%;
    background-size: contain;
    background-position: right;
}

/* текст зверху */
.doc-card .overlay{
  position:relative;
  z-index:1;
  color:#fff;
  padding: 55px 35px;
  display:flex; flex-direction:column; justify-content:space-between;
}

.doc-card h3{ margin:0 0 13px;  font-weight: normal;}
.doc-card p{margin:0 0 8px; font-size: 20px;}
.doc-card .more-link{color:#fff;text-decoration:none; margin-top: 30px;}
.doctors-bottom{display:flex;justify-content:center;gap:24px;margin-top:45px}


/* ===== Specialist ===== */
.swiper-wrapper{ display: flex; }

/* ===== Reviews (centered active with side peeks) ===== */
.reviews{ padding: 120px 0 40px; background:#fff; overflow: hidden;}
.reviews-swiper{overflow:visible} /* дозволяємо краям вилазити за контейнер */
.reviews .swiper { padding-left: 0; padding-right: 0; } /* на випадок сторонніх стилів */
.reviews .swiper-wrapper{align-items:center}
.reviews .swiper-slide{
  transition:transform .3s ease, opacity .3s ease, filter .3s ease;
  opacity:.25;                      /* бічні — тьмяні */
  transform:scale(.94);             /* і трохи менші */
  filter:blur(0.2px);
}
.reviews .swiper-slide-active,
.reviews .swiper-slide-duplicate-active{
  opacity:1;
  transform:scale(1);
  filter:none;
}
.quote{max-width:600px;margin:0 auto;text-align:center;     padding: 2.5rem 0 1rem; }
.quote blockquote{     line-height: 1.25;    margin: 0px 0 60px;}
.quote figcaption{color:var(--coal-600); font-size: 16px;}
.reviews-bottom{
  display:flex;justify-content:center;
  align-items:center;
  gap:24px;margin-top:75px
}





/* ===== Photo Reviews (3 large photos with glass cards) ===== */
.photo-reviews{padding:40px 0 5px;background:#fff}
/*.pr-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}*/
/*.pr-head h2{font-weight:400;font-size:48px;line-height:1.12;margin:0}*/
.pr-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  grid-template-columns: 0.8fr 1.25fr 0.8fr;
  gap:5px;
  padding-top: 10px;
}
.pr-card{position:relative; overflow:hidden}
.pr-card img{
  width:100%;height:100%;
  -o-object-fit:cover;
     object-fit:cover;
  display:block;     
  max-height : 600px;
}

/* glass info box in bottom-left */
.pr-info{
  position:absolute; left:20px;  bottom:30px;
  display:flex; flex-direction:column; gap:10px;
  background:rgba(45,45,45,.28);
  border:1px solid rgba(255,255,255,.35);
  backdrop-filter: blur(6px);
  color:#fff; padding:10px 15px; border-radius:4px;
  width: 65%;
}
.pr-row{display:flex;justify-content:space-between;align-items:center;gap:10px}
.pr-name{font-size:20px; }
.pr-pill{
  font-size:13px; 
}
.pr-chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{
  font-size:13px; line-height:1; padding:5px 10px; border-radius:999px;
  color:#222; background:rgba(255,255,255,.9); border:1px solid rgba(255,255,255,.9)
}
 


/* ===== CTA ===== */
.cta{
    position:relative;
    padding:105px 0;color:#fff;overflow:hidden; 
    /*background: url("../images/bg-gradient.svg");*/
    background: url("../images/bg-gradient.png");
    background-size: cover;
    color:#fff;
    text-align: center;
}
@media (max-width: 991.98px) {
  .cta {
    background-image:url("../images/bg-gradient.webp");
  }
}
.cta .section-title{
    max-width: 649px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.25;   
}
.cta .sub-title{
    font-size: 24px;
    margin-top: 45px;
    margin-bottom: 40px;
    position: relative;
}
.cta .sub-title:before{
  content: "";
  position: absolute;
  width: 64px; height: 1px;
  background: #FFF;
  top: -24px;
  left: 50%;
  transform: translateX(-50%);
}
.cta-inner{text-align:center;position:relative}


/* ===== Duplex section ===== */
.duplex{padding:88px 0 80px; background: #FFF;}
.duplex .section-title{ max-width: 900px;line-height: 1.25; }
/*.duplex-text{display:flex;align-items:center;justify-content:space-between;gap:16px}*/
/*.duplex-text h2{max-width:22ch;font-weight:400;font-size:40px;line-height:1.2;margin:0}*/
.duplex-split{display:grid;grid-template-columns:1fr 1fr;
/*  margin-top:75px*/
}
.duplex-split .img img{width:100%;height:100%;-o-object-fit:cover ;object-fit:cover ; }
.steps{
  background:#fff;
  padding: 0 32px 0;border-left:0;
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
}
.step{
  display:grid;
  grid-template-columns:auto 1fr;
  gap: 80px;
  padding:60px 0;
/*  border-bottom:1px solid var(--coal-50);*/
  padding-left: 30px;
  align-items: center;
/*  margin-bottom: 25px;*/
}
.step:last-child{ margin-bottom: 0;}
.num{
  font-size:40px;
  color:var(--green);
  font-weight:400; 
  position: relative;
  display: block;
  min-width: 25px;
}
.num:after{
  content: "";
  position: absolute;
  width: 32px;
  height: 1px;
  top: 50%;
  left: 200%;
  background: #C1B7AA;

}
 


/* ===== Products ===== */
.products{ padding: 35px 0;}
.products .section-title{ max-width: 800px;    line-height: 1.25; }
.products .section-head{     margin-bottom: 55px;  }
/*.products h2{font-weight:400;font-size:48px;line-height:1.12;margin:0}*/
/*@media (max-width: 991.98px){ .products h2{font-size:40px} }*/

/*.all-link{
  color:var(--green); text-decoration:none; white-space:nowrap;
  display:inline-flex; align-items:center; gap:8px; font-size: 16px;
  margin-bottom: .6rem;
}
.all-link span{transition:transform .2s}
.all-link:hover span{transform:translateX(3px)}*/

.product-card{
  display:flex;flex-direction:column;
  padding: 0 35px 40px;
  background: #fff;
  margin-bottom: 5px;
}

.product-card .head-2xl a, .product-card .head-l a{ color: #050505;}
.product-card .product-media{ height: 260px; }
.product-media{
  margin:0 0 8px 0; min-height:260px; display:flex; align-items:flex-end; justify-content:center;
  background:#fff; border-radius:10px; overflow:hidden;
}
.product-media img{
  max-width:100%; height:auto; -o-object-fit:contain; object-fit:contain;
/*  transform:translateY(6px);  */
    max-height: 100%;
}
.product-media a{    display: block;
    max-width: 100%;
    max-height: 100%;
    height: 100%;}

.product-body{padding:6px 4px;     display: flex;    flex-direction: column;    height: 100%;}
.product-body .more-link{ margin-top: auto; }
.subtle{color:var(--coal-600);    margin-bottom: 5px;  }
.meta{color:var(--coal-600);     margin-bottom: 20px;  }

/*.more{
  display:inline-flex; align-items:center; gap:8px; color:var(--green);
  font-weight:600; text-decoration:none;
}
.more span{transition:transform .2s}
.more:hover span{transform:translateX(3px)}*/




/* ===== FAQ ===== */
.faq{  padding:40px 0 60px; }
/*.btn-green{
  background:var(--green);
  color:#fff;
  padding:12px 16px;
  text-decoration:none;
  border-radius: 0;
}*/
.faq .section-title{
  font-size: 32px;
  margin-bottom : 35px;
  line-height: 1.15;
}
.faq .text-m{
  margin-bottom: 30px;
}
.acco{
  max-width: 645px;
  margin-left: auto;
}
.acco .acco-item{
  background:#fff;
  border:1px solid var(--coal-100);
  border-radius:0px;
  overflow:hidden;
  margin-bottom:7px
}
.acco .acco-head{
  list-style:none;cursor:pointer;
  padding: 27px 75px 23px 32px;
  font-weight: 600;
  line-height: 1.25;
  position: relative;
}
.acco .acco-head:after{
  content: "";
  position: absolute;
  top: 50%;right: 40px;
  transform: translateY(-50%);
  width: 24px;height: 24px;
  background-image: url("../images/icons/icon-arrow-down.svg");
  background-position: center;
  background-repeat: no-repeat;
}
/*.acco .acco-head::-webkit-details-marker{display:none}*/
.acco .acco-body{
  padding:0 31px 0px;
  color:var(--coal-600);
  font-size: 14px;
/*  margin-bottom: 20px;*/
}
.acco  .acco-item[open]{
  border-color:var(--green);
  }
.acco  .acco-item[open] .acco-head{
/*  padding-top: 25px;*/
  padding-bottom: 20px;
}
.acco  .acco-item[open] .acco-body{
  margin-bottom: 20px;
}
.acco-body {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}
.acco-item[open] .acco-body {
  max-height: 400px; /* або auto через JS, якщо потрібно повна висота */
  max-height: -moz-max-content;
  max-height: max-content;
  transition: max-height 0.35s ease;
}

/* ===== Instagram ===== */
.instagram{padding:115px 0 85px; }
/*.insta-head{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;margin-bottom:18px}*/
/*.insta-head h2{font-weight:400;font-size:40px;margin:0}*/
.instagram .section-head{ margin-bottom: 60px; }
.instagram .section-title{  font-size: 32px; }
.instagram .btn-green{ min-width: 180px; }
.section-info-right{ display: flex; gap: 40px ; align-items: center; }
.instagram .handle{color:#000;text-decoration:none; }
.insta-feed{ padding-bottom: 0;}
.insta-item{display:block;border-radius:0px;overflow:hidden; width: 300px; height: 300px;}
.insta-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}
/*@media (max-width: 991.98px){.insta-feed{grid-template-columns:repeat(3,1fr)}}*/



/* ===== Footer ===== */
.site-footer{
  display: block;
  width: 100%;
  position:relative;color:#fff;
  padding:80px 0 75px;
  overflow:hidden;
  /*background: url("../images/bg-gradient.svg");*/
  background: url("../images/bg-gradient.png");
  background-size: cover;
}
@media (max-width: 991.98px) {
  .site-footer {
    background-image:url("../images/bg-gradient.webp");
  }
}
.site-footer .logo{  max-height: 62px; margin-bottom : 45px; margin-top: 5px;}
 
.site-footer .contacts{list-style:none;margin:16px 0 40px;padding:0} 
.contacts li{margin:16px 0} 
.contacts a{color:#fff;text-decoration:none}
.site-footer  .access{color:#F7A727;margin-top:14px}
.site-footer  .muted{font-size: 14px; margin-bottom: 0;}
.site-footer .hours{font-size:24px;margin: 3px 0 15px}  
.site-footer  .f-links{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.site-footer  .f-links a{color:#fff;text-decoration:none}

.site-footer  .socials{display:flex;gap:12px;margin-top:12px}

.site-footer  .legal, .site-footer-short .legal {
  display:flex;
  justify-content:space-between;
  align-items:center;gap:12px;
  margin-top:63px;
  color: rgba(255,255,255, .5);
}
.site-footer  .policies, .site-footer-short .policies {
  display:flex;
  gap:18px;
  list-style:none;
  margin:0;
  padding:0
}
.site-footer  .policies a, .site-footer-short .policies a{ color: inherit; }
.site-footer-short{ padding-top: 25px; }



.section-note{
  background: #F9F4ED;
  padding: 32px 24px;
}
.section-note .head-l{ margin-bottom: 24px; }
.section-note .btn{ width: 100%; margin-top: 7px;}
.section-header{  padding-top: 55px; padding-bottom: 57px;}
.section-header .head-5xl{ margin-bottom: 24px; }
.section-header .head-2xl{ margin-bottom: 24px; }
.section-header .head-5xl.margin-xl{ margin-bottom: 40px; }
.section-header .section-descr{    line-height: 1.25; margin-bottom: 24px;max-width: 620px;}
.section-header .section-descr p{    margin-bottom: 20px; } 
.section-header .icon.text-right img{ display: inline-block; }
.servise-info-item{
 
  padding: 80px 0 80px;
  background: #FFF;
}
.servise-info-item:nth-child(even){  background: transparent; }
.servise-info-item-row{
  display: flex;  gap:30px;
}
.servise-info-item-row .icon{ width: 100px; min-width: 100px; padding: 0 10px;}
.servise-info-item-row .head-2xl{ margin-bottom: 23px; }
.servise-info-item-row .more-link{ margin-top: 5px; }
.servise-info-item-row .content{  width: 100%; }
.servise-info-item-row .subcontent{    min-width: 47%; }
.servise-info-item-row .subcontent ul{ margin: 0; padding: 0; list-style: none; }
.servise-info-item-row .subcontent ul li{     min-height: 72px;    display: flex;    align-items: center;  }
.servise-info-item-row .subcontent ul li + li{ border-top: 1px solid; }
.servise-info-item-row .subcontent ul li a{
  padding: 13px 0;   position: relative; 
  display: block; padding-right: 80px;color: #000; 
  width: 100%;
}
.servise-info-item-row .subcontent ul li a:after{
  content: "";
  position: absolute;
  top: 50%;right: 0px;
  transform: translateY(-50%);
  width: 20px;height: 20px;
  background-image: url("../images/icons/icon-arr-black.svg");
  background-position: center;
  background-repeat: no-repeat;
}
.section-content{ line-height: 1.25; }
.section-content p + ul{ margin-top: 40px; }
.section-content ul, .section-content ol{
  padding: 0;margin: 0; list-style-type: none;
  margin-bottom: 40px; counter-reset: step_counter;
}
.section-content ul li, .section-content ol li{ position: relative; padding-left: 55px; padding-top: 17px; padding-bottom: 18px;}
.section-content ul li:before, .section-content ol li:before{ 
  content: ""; width: 32px;height: 1px; background-color: #F7A64D; 
  position: absolute; left: 0; top: 50%; transform: translateY(-50%);
}
.section-content ol li:after{
  content: counter(step_counter);
  counter-increment: step_counter;
  position: absolute; left:  -10px; top: 50%; transform: translateY(-50%);
  font-size: 40px; color:var(--green);
  
}
.section-content .color{  color:var(--green); }
.section-content ul .head-l{ display: block; }
.maxw-500{ max-width: 500px; }

.section-content-image-right  .bg-image img, .section-content-image-left .bg-image img{width:100%;height:100%;-o-object-fit:cover ;object-fit:cover ; }
.section-content-image-right .content-wrap{
  display:grid;grid-template-columns:1fr 1fr; 
}
.section-content-image-right, .section-content-image-left { position: relative; }
.section-content-image-right .content-text, .section-content-image-left .content-text{
/*  padding-top: 110px; padding-bottom: 75px;*/
    min-height: 720px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.section-content-image-right .content-text .head-2xl, .section-content-image-left .content-text .head-2xl{ margin-bottom: 25px; }
.section-content-image-right .content-text p + ul, .section-content-image-left .content-text p + ul,
.section-content-image-right .content-text p + ol, .section-content-image-left .content-text p + ol{ margin-top: 40px; }
.section-content-image-right .content-text{ padding-right: 60px; }
.section-content-image-left .content-text{ padding-left: 60px; }
.section-content-image-right  .bg-image, .section-content-image-left  .bg-image{
  position: absolute;
  right: 50%; top: 0;bottom: 0;
  width: 50%; height: 100%; 
}
.section-content-image-right .bg-image{  left: 50%; }
.section-content-image-left .row{display: flex; flex-direction: row-reverse;}

/*.section-content-image-left .content-text{ padding-top: 80px; }*/
.section-content-image-right .content-text p + h2{ margin-top: 50px; }
.section-content-image-left .content-text ol li{ padding-left: 105px; }
.section-content-image-left .content-text ol li:after{ left: 0; }
.section-content-image-left .content-text ol li:before{ left: 50px; }
.section-content-image-left .content-text ol + p{ margin-top: 70px; margin-bottom: 30px;}

/*image slider*/
.custom-width-image-slider .swiper-horizontal{ padding-bottom: 8px;  }
.custom-width-image-slider .slider-item{display:block;border-radius:0px;overflow:hidden; width: 600px; height: 600px;}
.custom-width-image-slider .slider-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}


.slider-bottom{
  display:flex;justify-content:center;
  align-items:center;
  gap:24px;margin-top:70px
}


/*prices*/
.prices{    padding: 70px 0; }
.price-table{ margin-top: 70px; max-width: 800px; margin-left: auto;margin-right: auto; margin-bottom: 10px; }
.price-table table, .price-table  tr{ width: 100%; }
.price-table th{ font-size: 14px; font-weight: normal;}
.price-table th:last-child, .price-table tr td:last-child{ text-align: right;     min-width: 80px;}
.price-table th, .price-table td{ padding: 15px 0; }
.price-table td{ border-top: 1px solid #F3E9DC; }

.photo-results{  padding-top: 87px; }
.photo-results .section-title{ margin-bottom: 50px; }
.photo-results-slider  .section-title{ margin-bottom: 20px; }
.photo-results .container-fluid{ max-width: 1350px;  }
.photo-results-slider .container-fluid{ max-width: 100%; margin-top: 50px; padding: 0;}
.results-card{
  display:grid;grid-template-columns:1fr 1fr;gap:4px;align-items:center;
}
.results-card .before{ position: relative; }
.results-card .before:before{
  content: "Pirms";
  position: absolute;
  top: 13px;left: 13px; font-size: 14px; color: #000;
  background: #FCFAF6; border-radius:24px;  padding: 4px 8px;
}
.results-card .after{ position: relative; }
.results-card .after:after{
  content: "Pēc";
  position: absolute;
  top: 13px;left: 13px; font-size: 14px; color: #000;
  background: #FCFAF6; border-radius:24px;  padding: 4px 8px;
}
.results-card .pr-info{
  border-radius:16px; width: auto; bottom: 20px; left: 30px; 
  background: rgb(47, 36, 18, .30);
}

.comparing-slider .results-card{ width: 640px; min-width: 650px;    padding: 0 10px; }
.photo-results-slider .results-card img{ height: 600px; }



/*prices-page*/
.prices-page{ padding-top: 55px; }
.prices-page .price-table{ margin-top: 0px; }
.prices-page .price-table table + .head-2xl{ margin-top: 40px; }
.prices-page .head-2xl{ margin-bottom: 40px; margin-top: 30px;}
.prices-page .section-note{
  margin-top: 30px;   padding: 45px 40px 40px 40px;
}
.prices-page .section-note .head-xl{ margin-bottom: 30px; }


.section-price-info{
  border-top: 1px solid #F3E9DC;
  padding: 40px 0; margin-top: 22px;
  display: flex;
  align-items: center;
  width: 100%;     line-height: 1.15;
  justify-content: space-between;
  margin-bottom: 5px;
}
.section-price-info .descr{  display: flex;  align-items: center; gap: 40px;}
.custom-padding-xl{ padding: 140px 0 125px; }
.pt-80{ padding-top: 80px; }


.section.blog{ padding-top: 45px; }
/* Tabs */
.blog-tabs{
  gap: 20px;
  border-bottom: 1px solid transparent; /* чисто щоб не стрибало */
  margin-bottom: 40px;
  margin-top: 25px;
  margin-left: 0;
}
.blog-tabs .nav-link{
  position: relative;
  padding: 5px 10px;
/*  color: var(--coal-800);*/
  background: none;
  border: 0;
  border-radius: 0;
  font-size: 20px;
  
}
.blog-tabs .nav-link:hover{ color: var(--green); }
.blog-tabs .nav-link.active{
  color: var(--green);
}
.blog-tabs .nav-link.active::after{
  content:"";
  position:absolute; left:0; right:0; bottom:-6px;
  height:2px; background: var(--green);
}

/* Card */
.blog-post{ display:block; }
.post-pic{  overflow:hidden; position:relative; }
.post-img{ width:100%; height:100%; -o-object-fit:cover; object-fit:cover; display:block; }
.pic-cta{
  position:absolute; right:10px; top:10px;
  width:36px; height:36px; border-radius:999px;
  background: var(--green); color:#fff; display:grid; place-items:center;
  font-size:18px; line-height:1; opacity:0; transform:translateY(-4px);
  transition: .2s ease;     left: auto;
  z-index: 3;
}
.post-pic{ position: relative; }
.post-pic:after{
  background: #000; opacity: 0;
  content: ""; position: absolute;
  width: 100%; height: 100%;
  top: 0; left: 0;right: 0;bottom: 0;
  transition: .2s ease;
}
.post-descr{ margin-top:25px; margin-bottom: 10px;}
.post-category{
  display:inline-block;
  font-size:14px; color:#000;
  background: var(--sand-400);
  border-radius: 999px; padding:4px 10px; margin-bottom:10px;
}
.post-title{ font-size:24px; line-height:1.25; margin:0 0 12px; }
.post-title a{ color:inherit; text-decoration:none; }

.post-date{ font-size:13px;  }
.blog-post:hover .post-pic:after{
  background: #000; opacity: 0.4;
  transition: .2s ease;
}
.blog-post:hover .pic-cta{ opacity:1; transform:none; }
.blog-post:hover .post-title a{ color: var(--green); }
.blog-post:hover .post-date{ color: var(--green); }


/* контейнер */
.blog-pager{padding-top:8px}

/* підпис зліва */
.pager-info{color:#6f6f6f;font-size:14px}

/* список */
.blog-pagination{
  display:flex; align-items:center; gap:14px;
}

/* загальний вигляд кнопок */
.blog-pagination .page-link,
.blog-pagination .page-ellipsis,
.blog-pagination .page-prev,
.blog-pagination .page-next{
  width:40px; height:40px; border-radius:999px;
  display:grid; place-items:center;
  text-decoration:none; line-height:1;
  border:0; background:#F1EDE6; /* пісочний круг */
  color:var(--coal-700); font-weight:500;
  transition:transform .15s ease, background .15s ease, color .15s ease;
}
.blog-pagination .page-link:hover,
.blog-pagination .page-prev:hover,
.blog-pagination .page-next:hover{
  transform:translateY(-1px);
}

/* активна */
.blog-pagination .is-active{
  background:var(--green); color:#fff;
}

/* ellipsis */
.blog-pagination .page-ellipsis{
  background:transparent; color:#9a9896; pointer-events:none;
  width:auto; height:auto; padding:0 2px;
}

/* Disabled */
.blog-pagination .is-disabled{
  opacity:.45; pointer-events:none;
}

/* стрілки */
.blog-pagination .page-prev::before{content:"←";}
.blog-pagination .page-next::before{content:"→";}



/* ===== Single post ===== */
.blog-single { padding-top: 55px; }
 

.blog-single header .badge{
  background: var(--sand-400);
  font-weight: 500;
  border-radius: 999px;
  color: #000;
  margin: 0 12px;
}

.blog-cover img{
  margin-top: 70px;
  margin-bottom: 70px;
  display:block;
  width:100%;
}

.blog-article{
  max-width: 800px;
  margin: 0 auto;
/*  color: var(--coal-800);*/
}
.text-color{ color: var(--green); }
.text-underline{ text-decoration: underline; }
.blog-article p{ margin:0 0 14px; line-height:1.3; }
.blog-article h2{     margin-top : 40px;    margin-bottom: 22px; }
.blog-article h3{ margin-top: 40px; margin-bottom: 20px; }

.blog-article ul,
.blog-article ol{
  margin: 10px 0 18px 0;
}
.blog-article li{ margin-bottom: 15px; }

/* галерея-плівка під зображенням */
/* ===== Post gallery (single post) ===== */
.post-gallery{ margin: 40px 0 24px; }
.pg-main img{ width:100%; display:block;   }

/* thumbs row */
.pg-thumbs{ display:flex; gap:12px; margin-top:8px; flex-wrap:nowrap; }
.pg-thumb{
  -webkit-appearance:none;
     -moz-appearance:none;
          appearance:none; border:0; background:transparent; padding:0; cursor:pointer;
  width:95px; height:75px;  overflow:hidden; position:relative;
}
.pg-thumb img{ width:100%; height:100%; -o-object-fit:cover; object-fit:cover; display:block; }
.pg-thumb.is-active{ outline:3px solid var(--green); outline-offset:0; }

/* “+ 24 bildes” tile */
.pg-thumb.pg-more{
  background:var(--green); color:#fff; display:grid; place-items:center;
}
.pg-thumb.pg-more span{ font-weight:600; }

/* адаптив якщо потрібно */
@media (max-width: 576px){
  .pg-thumb{ width:110px; height:72px; }
}
/* Безпечний дефолт */
img, video, canvas { overflow: clip; }

.blog-article ul li::marker, .blog-article ol li::marker {
  color: #F7A64D;
}

/* share */
.blog-share{
  max-width: 800px;
  margin: 40px auto 0;
  padding-top: 22px;
  justify-content : space-between;
}
.blog-share img{
  width: 24px; height: 24px;
  display:inline-block;
/*  filter: grayscale(1);*/
  transition: filter .15s ease, opacity .15s ease;
}
.blog-share a:hover img{
/*  filter: none; */
  opacity: .9;
}

/* ===== Related posts (Jaunumi внизу) ===== */

/*.related-posts .head-3xl{ 
  margin: 0;
}
.related-posts .text-green{ color: var(--green); }

.related-posts .post-pic img{
  width:100%; display:block;

}
.related-posts .post-category{
  display:inline-block;
  padding:4px 10px;
  border-radius:999px;
  background: var(--sand-400);
  color: var(--coal-700);
  font-size:14px;
}
.related-posts .post-title{
  margin:6px 0;
  font-size:20px; line-height:1.35; font-weight:600;
}
.related-posts .post-title a{
  color: var(--coal-800); text-decoration:none;
}
.related-posts .post-title a:hover{ color: var(--green); }
.related-posts .post-date{
  font-size:13px; color: var(--coal-600);
}*/


/* Забираємо бекграунд контейнера Fancybox, бо робимо свій */
.popup--green.fancybox__content{ background:transparent; box-shadow:none; padding:0; }

/* ===== Popup base ===== */
.popup{
  position:relative;
  width:min(980px, calc(100vw - 64px));
  max-height:calc(100vh - 64px);
  overflow:auto;
  border-radius:0px;
  padding:48px 40px 40px;
  color:#fff;
}
/*.popup--center .popup__body{ display:flex; flex-direction:column; align-items:center; }*/
.popup--green{
  background: url("../images/bg-gradient.png") center/cover no-repeat !important;
   border-radius:0px;
}

@media (max-width: 991.98px) {
  .popup--green {
    background: url("../images/bg-gradient.webp") center/cover no-repeat !important;
  }
}

.popup__bg{
  position:absolute; inset:0;
/*  background: url("../images/bg-gradient.svg") center/cover no-repeat;*/
  border-radius:0px;
  color: #fff;
  /* легка зернистість за потреби можна додати pseudo */
}
.popup__body{ position:relative; z-index:1; }
/* Кнопка закриття */
.popup__close {
  position: absolute;
  top: 24px;
  right: 24px;
  background: none;
  border: none;
  cursor: pointer;
  opacity: 0.85;
  transition: opacity 0.2s;
  z-index: 2;
}
.popup__close:hover { opacity: 1; }
/* Декоративна «галочка» у подяці */
.popup .ok-mark{ width:64px; height:64px; display:grid; place-items:center; margin:0 auto 25px; }
#thanks-modal .btn{ margin-top: 25px; }
/* Typography in modal */
.popup h2{ margin:60px 0 12px; color: #FFF;}
.popup p{ margin:0 0 10px; color: #FFF;}

/* ===== Form styles (під CF7 клас .cf7-styled) ===== */
/*.cf7-styled{ max-width:760px; margin:0 auto; }*/
.form-group{ margin-bottom:25px; }
.form-group label{ display:block; font-size:16px; opacity:.9; margin-bottom:6px;color: #FFF; }
.cf7-styled input[type="text"],
.cf7-styled input[type="email"],
.cf7-styled input[type="tel"],
.cf7-styled textarea{
  width:100%; border:0; outline:none;
  background:#F6EFE5; /* теплий світлий, як у макеті */
  color:#000;
  padding:16px 16px;
  border-radius:4px;
  font-size:16px;
}
.cf7-styled textarea{ resize:vertical; min-height:140px; }
input::-moz-placeholder, textarea::-moz-placeholder{ color: #635E57; }
input::placeholder, textarea::placeholder{ color: #635E57; }
/* ===== Checkbox block ===== */
.check {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.85);
  margin-top: 10px;
  cursor: pointer;
}

/* приховуємо стандартний чекбокс */
.check input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* стилізація квадрату */
.check span.wpcf7-list-item-label {
  position: relative;
  padding-left: 32px;
  display: inline-block;
}

.check span.wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0px;
  width: 20px;
  height: 20px;
/*  border: 2px solid rgba(255, 255, 255, 0.8);*/
  border-radius: 4px;
  background: #fff;
  transition: all 0.2s ease-in-out;
}

/* галочка */
.check span.wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 4px;
  width: 6px;
  height: 10px;
  border-right: 2px solid #FFC168; /* помаранчевий з макету */
  border-bottom: 2px solid #FFC168;
  opacity: 0;
  transform: scale(0.6) rotate(45deg);
  transition: all 0.2s ease;
}

/* коли чекбокс активний */
.check input[type="checkbox"]:checked + span.wpcf7-list-item-label::before {
/*  border-color: #FFC168;*/
  background: rgba(255, 255, 255, 1);
}

.check input[type="checkbox"]:checked + span.wpcf7-list-item-label::after {
  opacity: 1;
  transform: scale(1) rotate(45deg);
}

 

/* посилання */
.check a {
  color: #FFC168;
  text-decoration: underline;
}
.check a:hover {
  text-decoration: none;
}

input[type="submit"]{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    cursor: pointer;
/*    background: var(--green);*/
/*    color: #FFF;*/
/*    border: 1px solid var(--green);*/
    padding: 13px 30px;
    border-radius: 0;
    border: none;
}
/* CTA button */
/*.btn.btn-cta{
  background:var(--yellow); color:#111;
  border:0; border-radius:12px; padding:14px 20px; font-weight:600;
}
.btn.btn-cta .arrow{ display:inline-block; transition:transform .2s ease; }
.btn.btn-cta:hover .arrow{ transform:translateX(3px); }*/



/* дрібні відступи */
/*.text-center{ text-align:center; }*/
/*.mb-28{ margin-bottom:28px; } */


.fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn.is-selected{ padding-top: 0; }
.popup.popup--green{
  width: 100%; height: 100%;
  max-height: 100vh;
  padding: 3rem 0 1rem;
  justify-content: center;
  display: flex;
    align-items: center;
}
.popup.popup--green .popup__close{ width: 50px;    height: 50px;    
  background: #fff;    border-radius: 100%;  padding-left: 0;
    padding-right: 0;
    padding-top: 0.4em;  }
.popup.popup--green .popup__body{     max-width: 680px;    margin: 0 auto;    padding-top: 130px;
    padding-bottom: 130px; }
.popup.popup--green .cf7-styled{ max-width: 100%;  margin-top: 70px;    padding: 0 40px;}

@media (max-height: 799.98px){
  .popup.popup--green{   padding: 1rem 0 .5rem; }
  .form-group {    margin-bottom: 15px; }
  .popup.popup--green .cf7-styled{ margin-top: 40px; }
  
  .popup.popup--green .popup__body{    padding-bottom: 30px; } 
  
  .popup.popup--green .popup__close{       top: 5px;
    right: 5px;  width: 40px;    height: 40px;}
}


.gallery-inline{ margin-top: 40px; margin-bottom: 80px;}
.gi-row{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap:12px;
  align-items: center; 
}

.gi-item{
  position: relative;
  margin: 0;
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease;
}
.gi-item img{
  display:block;
  width:100%;
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
}

/* висоти, підігнані під макет */
.gi-sm{ height: 300px; }
.gi-md{ height: 360px; }
.gi-lg{ height: 430px; }
.gi-item:hover{  transform: translateY(-4px);}

/* Адаптивність */
@media (max-width: 1199.98px){
  .gi-row{ gap: 32px; }
  .gi-sm{ height: 260px; }
  .gi-md{ height: 320px; }
  .gi-lg{ height: 360px; }
}
@media (max-width: 991.98px){
  .gi-row{
    grid-template-columns: repeat(2, 1fr);
    gap: 26px;
  }
  .gi-sm,.gi-md,.gi-lg,.gi-xl{ height: 320px; }
}
@media (max-width: 575.98px){
  .gi-row{
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .gi-sm,.gi-md,.gi-lg,.gi-xl{ height: 320px; }
}

/* ====== Prefs Inline ====== */
.prefs-inline{
  padding: 48px 0 12px;

}
.pi-list{
  list-style: none;
  padding: 0;
  margin: 0;
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}
.pi-item{
/*  color: rgba(255,255,255,.92);*/
  text-align: center;
  padding: 10px 8px;
}
.pi-ico{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:56px; height:56px;
  border-radius:50%;
  color:#e6e0d7;             /* пісковий/світлий як на макеті */
/*  background: rgba(255,255,255,.06);*/
/*  box-shadow: inset 0 0 0 1px rgba(255,255,255,.12);*/
  margin-bottom:10px;
}
.pi-title{
  font-size:16px;
  line-height:1.35;
}

/* адаптив */
@media (max-width: 991.98px){
  .pi-list{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 575.98px){
  .pi-list{ grid-template-columns: 1fr; }
  .pi-item{ text-align: left; display:flex; gap:14px; align-items:center; }
  .pi-ico{ margin:0; }
}

/* ===== Contacts head ===== */
.contacts-head{ background:#fff; }
.c-info .c-row{ 
  display:flex; gap:5px; 
  align-items:baseline; 
  margin-bottom:30px;    
  flex-direction: column;
  align-items: flex-start; 
}
.c-label{  display: block;  font-size:14px; }
.c-val a{ color:#111; text-decoration:none; }
.c-val a:hover{ text-decoration:underline; }

.c-pill{
  display:inline-flex; align-items:center; gap:12px;
  margin-top:30px;
  padding:8px 18px;
  border-radius:12px;
  background:#F6EFE5; /* світло-зелений */
  color: var(--green);
  font-size:16px;
}

/* hours card */
.c-hours .c-row{ align-items: flex-end;  }
.c-hours { text-align: right; }

/* ===== Map split ===== */
.map-split{ padding:  0; }
.ms-wrap{  overflow:hidden;}
.ms-img{
  display:block;
  width:100%;
  height: 500px;
  -o-object-fit:cover;
     object-fit:cover;
}


/* ===== Arrive info (parking / transport) ===== */
.arrive-info{
  padding: 75px 0 60px;
}
.arrive-info a{ color: inherit; text-decoration: underline; }
.ai-title{
  margin-bottom:14px;
}
.ai-list{ list-style:none; padding:0; margin:0 0 14px; }
.ai-list li{ margin:8px 0; }
.line-badge{
  display:inline-flex; align-items:center; justify-content:center;
  width:24px; height:24px; border-radius:8px;
  color:#fff; font-size:16px; margin-right:8px;
}
.line-badge.red{ background:#FE010C; }
.line-badge.blue{ background:#009DE0; }

.ai-actions{ display:flex; gap:10px; }
.btn-outline{
  padding: 12px 20px;
}
 

/* ===== Requisites ===== */
.requisites{
  background:#fff;
  padding: 80px 0 ;
}
.requisites .head-3xl{ margin-bottom: 50px; }
.rq-label{  font-size:14px; margin-bottom:7px; }
 

 


.form-inline{
  padding-top: 90px; padding-bottom: 60px;
  background: url("../images/bg-gradient.png") center/cover no-repeat;
  color: #FFF;
}
@media (max-width: 991.98px) {
  .form-inline {
     background: url("../images/bg-gradient.webp") center/cover no-repeat;
  }
}
.form-inline h2{ margin-bottom: 16px; }
.form-inline-wrap{
  max-width: 680px;
  margin: 0 auto;
}
.form-inline form{ max-width: 600px; display: block;margin: 0 auto; margin-top: 70px;}



/* === SHOP PAGE LAYOUT ==================== */

.shop-archive.section {
  padding: 80px 0 120px;
}

/* крихти + заголовок */
.shop-archive .woocommerce-breadcrumb {
  margin-bottom: 12px;
  font-size: 14px;
}

.woocommerce-breadcrumb a{ color: #000;}
.shop-archive .shop-title {
  margin-bottom: 40px;
}

/* колонка фільтрів + товари */
.shop-archive .row {
  align-items: flex-start;
}

/* === SIDEBAR / FILTERS =================== */

.shop-sidebar {
  font-size: 16px;
}

/* заголовок "Atlasīt pēc parametriem" */
.shop-sidebar .shop-filters-title {
  font-size: 22px;
  margin-bottom: 32px;
  font-weight: 400;
}

/* ховаємо мобільну кнопку-оверлей Woo Blocks */
.shop-sidebar .wc-block-product-filters__open-overlay {
  display: none;
}

/* робимо overlay блоків фільтрів "звичайним" вмістом */
.shop-sidebar .wc-block-product-filters__overlay,
.shop-sidebar .wc-block-product-filters__overlay-wrapper,
.shop-sidebar .wc-block-product-filters__overlay-dialog,
.shop-sidebar .wc-block-product-filters__overlay-content {
  position: static;
  inset: auto;
  height: auto;
  width: auto;
  background: transparent;
  color: inherit;
  padding: 0;
}

/* один блок фільтра (атрибут) */
/*.shop-sidebar .wp-block-woocommerce-product-filter-attribute {
  margin-bottom: 32px;
}*/

/* назви груп: "Kompresijas klase", "Zeķu veids" і т.д. */
.shop-sidebar .wp-block-woocommerce-product-filter-attribute h3 {
  margin: 0 0 10px;
  font-size: 20px;
  font-weight: 400;
}

/* чекбокси */
.shop-sidebar .wc-block-product-filter-checkbox-list__item {
  margin-bottom: 6px;
}

.shop-sidebar input[type=checkbox].wc-block-product-filter-checkbox-list__input {
  border-color: #111;
}

.shop-sidebar .wc-block-product-filter-checkbox-list__text-wrapper {
  font-size: 16px;
}

/* якщо не потрібні кількості (3) — сховати */
.shop-sidebar .wc-block-product-filter-checkbox-list__count {
  display: none;
}
/* === TOOLBAR над товарами =============== */

.shop-main .shop-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  margin-bottom: 32px;
}

.shop-main .woocommerce-result-count {
  margin: 0;
  font-size: 14px;
}

/* селект сортування — як у макеті */
.shop-main .woocommerce-ordering {
  min-width: 220px;
}

.shop-main .woocommerce-ordering select.orderby {
  width: 100%;
  padding: 9px 16px 9px 16px;
  border-radius: 0;
  border: none; outline: none;
  background: #fff;
  font-size: 14px;
  line-height: 1.3;
}
/* === PRODUCTS GRID ======================= */

/* робимо грід замість стандартних float’ів Woo */
.shop-main ul.products {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 40px 15px;
}

.shop-main ul.products li.product {
  margin: 0 !important;
  padding: 0 15px 15px;
  float: none !important;
  width: auto !important;
  text-align: left;
  background: #fff;
  border: 1px solid #fff;
}

.shop-main ul.products li.product:hover{
  color: var(--green);
  border: 1px solid var(--green);
}
.shop-main ul.products li.product:hover .woocommerce-loop-product__title,
.shop-main ul.products li.product:hover .price{
  color: var(--green);
}
 
.shop-main ul.products li.product:after{
  content:'';
  position:absolute;top:5px;right:5px;
  width:16px;height:16px;
  background: url("../images/icons/icon-active.svg");
  opacity: 0;
}
.shop-main ul.products li.product:hover:after{
  opacity: 1;
}

/* посилання-картка */
.shop-main ul.products li.product a.woocommerce-LoopProduct-link {
  display: block;
  text-decoration: none;
  color: #111;
}

/* картинка */
.shop-main ul.products li.product img {
  width: 100%;
  height: auto;
  margin-bottom: 24px;
}

/* назва товару */
.shop-main .woocommerce-loop-product__title {
  font-size: 22px;
  line-height: 1.2;
  margin: 0 0 4px;
  font-weight: 400;
}
.wc-block-product-filter-checkbox-list__input-wrapper:before{
  background: #fff;
}
/* ціна (якщо показується) */
.shop-main li.product .price {
  display: block;
  margin-top: 4px;
  font-weight: 500;
}

/* кнопка "Lasīt vairāk" у стилі текстового лінку */
.shop-main li.product .button {
  margin-top: 8px;
  padding: 0;
  border: none;
  background: none;
  color: var(--green);
  font-weight: 500;
  text-decoration: none;
}


/* === RESPONSIVE ========================= */

@media (max-width: 991.98px) {
  .shop-archive .row {
    flex-direction: column;
  }
  .shop-sidebar {
    margin-bottom: 32px;
  }
  .shop-main ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .shop-main ul.products {
    grid-template-columns: 1fr;
  }
}


/* Обгортка однієї групи фільтрів */
.woo-filters-group {
  margin-bottom: 24px;
}

/* Заголовок групи */
.woo-filters-group .woo-filters-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  font-weight: 500; 
  margin-bottom: 15px;
}

/* Маленька стрілка справа */
.woo-filters-group .woo-filters-toggle {
  font-size: 18px;
  line-height: 1;
  transition: transform .2s ease;
      width: 20px;
    height: 20px;
  background: url("../images/icons/icon-arrow-down.svg");
}

/* Контент фільтра */
.woo-filters-group .woo-filters-body {
  overflow: hidden;
  transition: max-height .25s ease;
}

/* Згорнутий стан */
.woo-filters-group.is-collapsed .woo-filters-body {
  max-height: 0;
}

.woo-filters-group.is-collapsed .woo-filters-toggle {
  transform: rotate(-90deg);
}
.wpcf7-spinner{    position: absolute; }
.site-footer .legal a, .site-footer-short .legal a{ color: #fff; }

@media (max-width: 1199.98px){
  .nav{display:none}
  .nav-toggle{display: flex;}
  .prices-page .section-note{ padding: 45px 20px 40px 20px; }
  .comparing-slider .swiper-wrapper{    display: flex;    flex-wrap : wrap;    gap: 10px 0;    justify-content: center;}
    .comparing-slider .results-card {    width: auto; min-width: 25%;
        max-width: 48%; }
     .photo-results-slider .results-card img {    height: 430px;}
    .comparing-slider .slider-bottom{    margin-top: 30px; }
    
}
@media (max-width: 991.98px){
  .hero-right {
    transform: translateX(-15px);
    width: 70vw;
    height: 100%;
    bottom: -60px;
    top: auto;
    transform: translateX(0px);
    width : initial;
    left: 65%;
  }
  .hero-photo{ height: 100%; }
  .hero-photo img{ -o-object-fit : cover; object-fit : cover;    height: 100%; }
  .hero{padding:80px 0 60px}
  .hero-grid{grid-template-columns:2fr 1fr; gap:30px}

  .h-5xl{ font-size:48px; }
  .h-4xl{font-size:40px; }
  .h-3xl{font-size:32px; }
  .h-2xl{font-size:24px;}
  .h-xl{ font-size:20px;}
  .h-l{ font-size:16px; }
  .head-5xl{  font-size: 48px;}
  .head-4xl{  font-size: 40px;}
  .head-3xl{  font-size: 32px;}
  .head-2xl{  font-size: 24px;}
  .head-xl{  font-size: 20px; }

  .text-2xl{font-size:24px;  }
  .text-xl{font-size:20px;  }
  .text-l{font-size:16px;  }
  .text-m{font-size:14px; }

  .hero h1{ font-size:48px;}
  .hero .phone{ font-size: 28px; }
  .section-title{ font-size: 32px; }
  .section {    padding: 60px 0; }
  
    .photo-results{     padding-bottom: 40px; }
  .reviews .swiper{ padding-bottom: 0; }
  .doc-card p{ font-size: 18px; }
  .section.services { padding-bottom: 40px; }
  .section.products{ padding-bottom: 40px; }
/*  .pr-grid{grid-template-columns:1fr; gap:16px}*/
  .site-footer  .legal, .site-footer-short .legal{flex-direction:column;align-items:flex-start}
 

  
  .pr-info{ padding: 10px;  left: 10px; bottom: 10px; right: 10px; width: auto;}
  .chip { font-size: 11px;}
  .duplex .section-title{ font-size: 32px; }
  .product-card{ padding: 0 20px 30px; }
  .faq-descr{ margin-bottom: 20px; text-align: center; }
  .instagram .handle{ font-size: 20px; }
  .step{ padding: 30px 0;  padding-left: 15px;    gap: 60px;}
  .num:after{ left: 125%; }

  .servise-info-item{ padding: 60px 0; }

  .row-30 {  margin-right: -15px;  margin-left: -15px;}
  .row-30 > [class*="col-"] {  padding-right: 15px;  padding-left: 15px;}
  .row-40 {  margin-right: -20px;  margin-left: -20px;}
  .row-40 > [class*="col-"] {  padding-right: 20px;  padding-left: 20px;}

  .prices-page .section-note{ padding: 20px 15px; }
  .results-card .pr-info{left: 10px; }
  .pr-row{flex-wrap: wrap;    gap: 3px;    }
  
}

@media (max-width: 768.98px){
  /* Typography scale (Desktop per spec) */
 
  .section.specialists{ padding-top: 20px; padding-bottom: 40px; }

  
  
  .duplex-text{flex-direction:column;align-items:flex-start}
  .duplex-split{grid-template-columns:1fr}
  .steps{border-left:1px solid var(--coal-100)}
  .site-footer{ font-size: 14px;  padding: 60px 0 40px;}
  .site-footer .legal, .site-footer-short .legal{ margin-top: 35px; }
  .section-head{ flex-wrap: wrap; }
  .site-footer .f-links, .site-footer-short .f-links{ gap: 10px; }
  .bleed.container{ max-width: 100%; }

  .s-card h3{ font-size: 20px; }

  .row-40 {  margin-right: -15px;  margin-left: -15px;}
  .row-40 > [class*="col-"] {  padding-right: 15px;  padding-left: 15px;}
  .custom-width-image-slider .slider-item{     width: 430px;    height: 480px; }
  
  .c-hours {    text-align: left; }
  .c-hours .c-row {    align-items: flex-start; }

}
@media (max-width: 629.98px){
  .header-inner{ padding-left: 15px; padding-right: 15px; }
  
  .site-header .btn{ display: none; }
  .hero-grid {  grid-template-columns: 1fr;}
  .hero-right{  position: relative;transform : none; width: auto;  bottom: 0;  height: auto; margin: 0 auto; left: 0; display: none;  }
  .hero-left{ margin-top: 4rem; text-align: center; }


  .h-5xl{ font-size:40px; }
  .h-4xl{font-size:32px; }
  .h-3xl{font-size:26px; }
  .h-2xl{font-size:20px;}
  .h-xl{ font-size:18px;}
  .head-5xl{  font-size: 40px;}
  .head-4xl{  font-size: 32px;}
  .head-3xl{  font-size: 26px;}
  .head-2xl{  font-size: 20px;}
  .head-xl{  font-size: 18px; }
  .head-l{  font-size: 18px; }

  .text-2xl{font-size:20px;  }
  .text-xl{font-size:18px;  }
 

  .hero h1{ font-size:40px;}
  .hero .phone{ font-size: 24px; }
  .section-title{ font-size: 28px; }

  .services-pagination .swiper-pagination-bullet, .bar-pagination .swiper-pagination-bullet{ width: 20px; }

  .s-card{ padding: 40px 20px;  width: 100%;}
  .doc-card p{ font-size: 16px; }

  .services .swiper-slide, .specialists .swiper-slide {    width: 320px;}
  .s-card .icon{ margin-bottom: 30px; }
  .doc-card .overlay{ padding: 40px 20px; }
  .doc-card{ height: 430px; }


  .section.reviews{ padding-top: 40px; padding-bottom: 40px; }
  .section.photo-reviews{ padding-top: 40px; padding-bottom: 40px; }
  .pr-grid{ grid-template-columns: 1fr; }
  .pr-card{ max-height: 420px; }

  .duplex .section-title , .instagram .section-title{    font-size: 28px;   }
  .duplex-split{ margin-top: 40px; }
  .duplex-split img{ min-height: 360px; }
  .section.instagram{ padding-top: 40px;  }
  .insta-item{ width: 260px; }
  .instagram .section-info-right{ width: 100%;    justify-content: space-between;         flex-wrap: wrap; gap: 15px;}
  .instagram .section-head {    margin-bottom: 40px; }
  .cta .sub-title{ font-size: 20px; }

  .servise-info-item{ padding: 40px 0; }
  .servise-info-item-row{ gap: 15px }
  .servise-info-item-row .icon{        padding: 0 5px;        min-width: 70px;        width: 70px;}

  .price-table{ font-size: 14px; }
  
  .section-content-image-right, .section-content-image-left {
        display: flex;
        flex-direction: column-reverse;
    }
  .section-content-image-right .bg-image, .section-content-image-left .bg-image{
    position: static;
    width: 100%;margin-bottom: 30px;
  }
  .section-content-image-left .content-text{ padding-left: 15px; }
  .section-content-image-right .content-text{padding-right : 15px;}
  .section-price-info{     flex-wrap: wrap;    gap: 15px;    justify-content: center; }
  .section-content-image-right .content-text, .section-content-image-left .content-text {    min-height: 450px;}
  .section-content-image-right .bg-image img, .section-content-image-left .bg-image img{     max-height: 500px; }
  
  
  .section-header .col-lg-2 .icon{ display: none;}
  .custom-width-image-slider .slider-item{     width: 400px;    height: 400px; }
  .swiper .arrows {    gap: 6px; }
  
  .cf7-styled input[type="text"], .cf7-styled input[type="email"], .cf7-styled input[type="tel"], .cf7-styled textarea{
      padding: 10px 14px;    font-size: 14px;
  }
  .popup.popup--green .cf7-styled{    padding: 0 20px; }
  
  .popup.popup--green .popup__close{       top: 5px;
    right: 5px;  width: 34px;    height:34px;}
    .fancybox__slide{ padding: 20px 8px 8px 8px; } 
    
    
    ul.breadcrumbs-list{gap: 10px;    flex-wrap: wrap;}
    .comparing-slider .results-card {    width: auto;    min-width: 320px;    padding: 0 10px; }
    .photo-results-slider .results-card img {    height: 400px;}
}







@media (max-width: 529.98px){
  .site-header .logo {    height: 50px; }
  .hero h1 {   font-size: 36px;    }
  .hero-descr{ margin-bottom: 40px; }
  .hero .phone-note{ margin-top: 40px; }
  .s-card .icon img {    height: 100px;} 
  .s-card{ padding: 20px 15px; }
  .services .swiper-slide, .specialists .swiper-slide{ width: 280px; }
/*  .s-card h3{ font-size: 18px; }*/
  .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{
    margin: 0 2px;
  }
  .section.duplex{ padding-bottom: 40px; }
  .reviews-bottom{ margin-top: 40px; }
  .steps{ padding: 0 15px; }
  .step {   padding: 15px 0;  padding-left: 0px;}
  .section.faq{ padding-top: 40px; padding-bottom: 40px;}
  .site-footer .logo{ max-height: 56px; margin-bottom: 40px; margin-top: 0; }
  .site-footer .policies{ flex-wrap: wrap; gap: 8px;        font-size: 13px; }
  .site-footer .legal , .site-footer-short .legal {      margin-top: 30px;      flex-direction: column-reverse;        gap: 20px;    }
  .quote{  padding: 0 15px; }
  .reviews .swiper-slide{ width: 260px; }
  .bar-pagination{ padding-left: 0; }
  .section-title{ text-align: center; }
  .section-head{ justify-content: center; }
  .acco .acco-head{ padding: 20px 40px 20px 20px; }
  .acco .acco-head:after{     right: 10px; }
  .acco .acco-body{ padding: 0 20px; }

  .section-note{ padding: 25px 20px; }
  
  .pr-row{    text-align: center;    justify-content: center;}
  .pr-chips{ justify-content: center;}
  .price-table th, .price-table td{     padding: 10px 5px; }
  .price-table th:last-child, .price-table tr td:last-child{ min-width: 90px; }
}

@media (max-width: 429.98px){
    .duplex .section-title, .instagram .section-title{ font-size: 24px; }
    .reviews-bottom, .doctors-bottom {  flex-wrap: wrap; justify-content: center;}
    .custom-width-image-slider {
        padding: 40px 0;
    }
    .custom-width-image-slider .slider-item{  width: 300px;  } 
    
    .comparing-slider{}
    
}
/*# sourceMappingURL=style.css.map */








/* ===== SINGLE PRODUCT LAYOUT ===== */
/* Загальна обгортка продукту */
.single-product-layout {
  background: #fff; /* світлий бежевий */
/*  padding-top: 40px;*/
  padding-bottom: 60px;
}

/* Верхній блок: галерея + правий контент */
.product-main.container {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 40px;
  align-items: flex-start;
}

/* Галерея */
.product-gallery {
  background: #fff;
/*  border-radius: 12px;*/
/*  padding: 24px;*/
/*  box-shadow: 0 10px 30px rgba(0,0,0,.06);*/
/*    border: 1px solid #F0E4D3;*/
}
.single-product div.product .woocommerce-product-gallery .flex-viewport{
  border: 1px solid #F0E4D3;
    border-radius: 12px;
    padding: 24px;
}
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li{
  border: 1px solid #F0E4D3;
  border-radius: 6px;
    width: auto !important;
    margin-right: 6px;
}
/* Права колонка */
.product-summary {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.single-product-layout .product-main {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 48px;
/*  padding-top: 40px;*/
  padding-bottom: 70px;
}

@media (max-width: 991.98px) {
  .single-product-layout .product-main {
    grid-template-columns: 1fr;
  }
}
.product-title.section-title {
  font-size: 20px;
  line-height: 1.2;
  margin-bottom: 4px;
}

.product-short-line {
  margin: 0 0 4px;
  font-size: 16px;
  color: #555;
}

.product-subtitle {
  font-size: 14px;
  color: #444;
}
.product-subtitle p{ margin-bottom: 0; }
.product-price {
  margin-top: 0;
  margin-bottom: 18px;
  font-weight: 600;
}

/* Чіпи */
.product-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
}

.product-chips {
  list-style: none;
  padding: 0;
  margin: 8px 0 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.product-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  background: #f0f3f6;
  font-size: 12px;
}

.product-chip-label {
  font-weight: 500;
}
.product-order {
  margin-top: 18px;
}

/*.product-order-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) 310px;
  gap: 24px;
  align-items: flex-start;
}*/

/* Один ряд (label + поле) */
.product-order-row {
  display: flex;
  align-items: center;
  margin-bottom: 24px;
  gap: 16px;
}

.order-label {
  flex: 0 0 110px;
  font-size: 16px;
  color: #000;
}

.order-field,
.order-qty {
  flex: 1 1 auto;
}

/* Селект / інпут – загальний стиль */
.product-order .select,
.product-order input[type="email"],
.product-order input[type="tel"],
.product-order input[type="text"] {
  width: 100%;
  border-radius: 8px;
  border: 1px solid #e0e3ea;
  background: #fff;
  padding: 10px 12px;
  font-size: 14px;
  line-height: 1.4;
  box-sizing: border-box;
}

/* Красивий селект */
.product-order .select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 10 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23999' stroke-width='1.2'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 10px 6px;
  padding-right: 28px;
}

/* Quantity */
.product-order .qty {
  max-width: 130px;
  text-align: center;
  padding: 10px;
}

/* Кнопка відправки */
.btn.btn-green.btn-cta.js-product-order-submit {
  margin-top: 16px;
  width: 100%;
  max-width: 100%;
  border-radius: 0;
  border: none;
  padding: 14px 24px;
  font-size: 16px;
  font-weight: 500;
  background: #0d7a5c;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  cursor: pointer;
  transition: background .2s, transform .1s;
}

.btn.btn-green.btn-cta.js-product-order-submit:hover {
  background: #0b644b;
  transform: translateY(-1px);
}
.product-order-col .order-label{ margin-top: 10px;margin-bottom: 10px; }
.product-gallery {
  /* Woo сам малює зображення + слайдер мініатюр */
}

.product-summary {
  /* тут можна тонко налаштувати відступи/шрифти */
}

/* ===== BOTTOM SECTION (tabs + specs) ===== */

.product-extra.section {
  background: #FCFAF6;
  padding: 86px 0 80px;
}
.product-extra.section a{ color: var(--green); }
.product-tabs {
  display: flex;
  gap: 32px;
/*  border-bottom: 1px solid #d5cfc5;*/
  margin-bottom: 35px;
      align-items: center;
    justify-content: center;
}

.product-tabs .tab-link {
  position: relative;
  padding: 0 0 14px;
  background: none;
  border: 0;
  font: 500 18px/1.2 "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  cursor: pointer;
  color: #444;
}

.product-tabs .tab-link.is-active {
  color: #111;
}

.product-tabs .tab-link.is-active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: 3px;
  background: #00674f;
}

/*.product-extra-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: 56px;
}*/

@media (max-width: 991.98px) {
  .product-extra-grid {
    grid-template-columns: 1fr;
  }
}

.product-tab-content {
/*  font-size: 15px;*/
  line-height: 1.3;
      max-width: 800px;
    margin: 0 auto;
}

.product-tab-content .tab-panel {
  display: none;
}

.product-tab-content .tab-panel.is-active {
  display: block;
}

.product-specs {
  font-size: 14px;
  line-height: 1.5;
}

.product-specs .shop_attributes,
.product-specs table {
  width: 100%;
  border-collapse: collapse;
}

.product-specs th,
.product-specs td {
  padding: 6px 0;
  border-bottom: 1px solid #e2dbd0;
  vertical-align: top;
}

.product-specs th {
  font-weight: 500;
  padding-right: 16px;
  width: 40%;
}

.specs-title {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 12px;
}




.order-colors {
  display: flex;
  gap: 8px;
}

/* коло / квадрат кольору */
.color-swatch {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  border: 2px solid transparent;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.color-swatch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* вибраний */
.color-swatch input:checked + .screen-reader-text,
.color-swatch input:checked ~ * {
  /* хак: бо input прихований */
}

.color-swatch input:checked ~ .color-swatch,
.color-swatch input:checked {
  border-color: #0d7a5c;
}

/* щоб працювало простіше: обводку ставимо через :has, якщо браузер підтримує */
@supports(selector(:has(*))) {
  .color-swatch:has(input:checked) {
    border-color: #0d7a5c;
  }
}
.product-measurements .measure-card {
  background: #FCFAF6;
  border-radius: 16px;
  padding: 30px 15px 24px;
/*  box-shadow: 0 8px 24px rgba(0,0,0,.05);*/
  font-size: 16px;
  margin-top: 40px;
}

/* Лінк під полями замірів */
.measure-link {
  display: inline-block;
  margin-top: 12px;
  font-size: 16px;
  text-decoration: underline;
  cursor: pointer;
}

/* Контент всередині fancybox */
.measure-card {
  max-width: 100%;
}

.measure-card img {
  display: block;
  width: 100%;
  height: auto;
}

.measure-card-footer {
  margin-top: 15px;
  font-size: 14px;
  text-align: center;
  color: var(--green);
}
.measure-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 24px;
}

.measure-label {
  flex: 1 1 auto;
/*  font-size: 13px;*/
  line-height: 1.35;
}
.measure-label small{ display: block; }

.measure-input {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  max-width: 140px;
  position: relative;
}

.measure-input input {
  width: 70px;
  border-radius: 999px;
  border: 1px solid #e0e3ea;
  padding: 6px 10px;
  font-size: 14px;
  text-align: center;
}

.measure-unit {
  font-size: 12px;
  color: #777;
  position: absolute;right: 10px;
}

.measure-link {
  display: inline-block;
  margin-top: 0px;
  font-size: 13px;
  color: #0d7a5c;
  text-decoration: underline;
  cursor: pointer;
}
.product-contact {
  margin-top: 30px;
}

.order-consent {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 14px;
  margin-top: 24px;
  margin-bottom: 24px;
}
.order-consent a{ color: #F7A64D; }
.order-consent input[type="checkbox"] {
  margin-top: 3px;
}
.product-order-success {
  margin-top: 40px;
  padding: 32px 24px;
  text-align: center;
  background: #ffffff;
  border-radius: 24px;
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
}

.product-order-success-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid #0d7a5c;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 12px;
  font-size: 22px;
  color: #0d7a5c;
}
@media (max-width: 991.98px){
  .product-main.container {
    grid-template-columns: minmax(0,1fr);
    gap: 24px;
  }

  .product-order-grid {
    grid-template-columns: minmax(0,1fr);
  }

  .product-gallery {
    padding: 16px;
  }
}

@media (max-width: 600px) {
  .product-main.container {
    padding-inline: 16px;
  }

  .order-label {
    flex-basis: 90px;
  }
}



.breadcrumb-container{ padding: 40px 0 25px; }
.related .product-card{  padding: 0 16px;}


.section.size-table{ padding-top: 50px; }
.size-table-image{ text-align: center; }
.size-table-image img {
    width: auto;
    height: auto;
    object-fit: contain;
    display: inline-block;
}
.size-table-html{ padding-left: 50px; padding-top: 5px;  }
.size-table-html table {
    width: 100%;
    border-collapse: collapse;
}

.size-table-html table td,
.size-table-html table th {
    padding: 10px 12px;
    font-size: 14px;
    border-bottom: 1px solid #eee;
}

.size-table-html table th {
    font-weight: 600;
}
.size-table-html .table-wrapper h5{ margin-bottom: 1rem; }
@media (max-width: 991.98px){
  .size-table-html{ padding-left: 0px;    }
  .size-table-html table td, .size-table-html table th{ padding: 8px; font-size: 13px; }
}
.size-table-link{ font-size: 14px; color: var(--green); }
a.size-table-link:visited{ color: var(--green); }

.page-sidemenu{ padding-top: 50px; }
.page-sidemenu h1,.page-sidemenu h2, .page-sidemenu h3, .page-sidemenu h4, .page-sidemenu p, .page-sidemenu ul{margin-bottom: 2rem}
.page-sidemenu ul,
.page-sidemenu ol{
  margin: 10px 0 2rem 0;
}
.page-sidemenu li{ margin-bottom: 15px; }
.page-sidemenu ul li::marker, .page-sidemenu  ol li::marker {
  color: #F7A64D;
}
.side-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    max-width: 240px;
    padding-top: 5px;
}

.side-menu li {
    margin: 0;    margin-bottom: 10px;
}

.side-menu li a {
    display: block;
    padding: 8px 0;
    text-decoration: none;
    font-size: 16px;
    line-height: 1.4;
    color: #050505;
    font-weight: 500;
    border-bottom: 1px solid #fff;
}

.side-menu li.current-menu-item > a,
.side-menu li a:hover {
    color: var(--green);
    border-bottom-color: var(--green);
/*    font-weight: 600;*/
}

@media (max-width: 991.98px) {
    .page-sidemenu__sidebar {
        margin-bottom: 24px;
    }

    .side-menu {
        display: flex;
        flex-wrap: wrap;
        gap: 8px 16px;
    }

    .side-menu li a {
        padding: 4px 0;
    }
}

/* Фікс галереї товару WooCommerce */
.single-product .woocommerce-product-gallery .flex-viewport {
  overflow: hidden !important;
  position: relative;
  width: 100%;
  display: block;
}

.single-product .woocommerce-product-gallery__wrapper {
  display: block;          /* відміняємо можливий flex */

}

.single-product .woocommerce-product-gallery__image {
  float: left;
  display: block;
}
.single-product div.product .woocommerce-product-gallery{ float: none; }
.single-product .woocommerce-product-gallery__image img{ margin: 0 auto; }


/*animation*/
/* База: схований стан */
[data-anim] {
  opacity: 0;
  transform: translateY(20px);
  transition:
    opacity 0.6s ease-out,
    transform 0.6s ease-out;
  will-change: opacity, transform;
}

/* Коли елемент видимий */
[data-anim].is-visible {
  opacity: 1;
  transform: none;
}

/* Варіанти напрямків */
[data-anim="fade-up"] {
  transform: translateY(24px);
}
[data-anim="fade-down"] {
  transform: translateY(-24px);
}
[data-anim="fade-right"] {
  transform: translateX(-32px);
}
[data-anim="fade-left"] {
  transform: translateX(32px);
}

/* Легка масштабна анімація */
[data-anim="scale-in"] {
  transform: scale(0.96);
}
[data-anim="scale-in"].is-visible {
  transform: scale(1);
}

/* Простий fade без зсуву */
[data-anim="fade"] {
  transform: none;
}

/* Невеликий паралакс для картинок */
[data-anim="image-up"] {
  transform: translateY(40px);
}
[data-anim="image-up"].is-visible {
  transform: translateY(0);
}

/* Трохи різні тривалості — можна міняти */
[data-anim][data-anim-speed="slow"] {
  transition-duration: 0.9s;
}
[data-anim][data-anim-speed="fast"] {
  transition-duration: 0.4s;
}


.blog-post .post-pic {
  overflow: hidden; display: block;
}
.blog-post .post-img {
  transition: transform 0.5s ease-out;
}
.blog-post:hover .post-img {
  transform: scale(1.04);
}
.blog-post .post-descr {
  transition: transform 0.3s ease-out;
}
/*.blog-post:hover .post-descr {
  transform: translateY(-4px);
}*/

.blog-post .post-pic {
  overflow: hidden;
}
.blog-post .post-img {
  transition: transform 0.5s ease-out;
}
.blog-post:hover .post-img {
  transform: scale(1.04);
}
.blog-post .post-descr {
  transition: transform 0.3s ease-out;
}
.blog-post:hover .post-descr {
  transform: translateY(-4px);
}


.ai-actions .btn-outline{ text-decoration: none; }
.ai-actions .btn-outline:hover{ color: var(--green);    border-color: var(--green); }



.error-404{    text-align: center;     padding: 80px 0;}
.text-content a, .text-content a:visited{ color: var(--green); }

#sb_instagram #sbi_images.swiper-wrapper{     display: flex; }
#sb_instagram #sbi_images .sbi_item, #sb_instagram .sbi_photo{    width: 300px;     height: 300px;}


.section-text-extra[hidden] {
  display: none;
}
.more-link.is-open .arrow {
  transform: rotate(270deg);
}
