.service-page-section .inner-content{
  margin-left: 0;
  margin-right: 0;
}

.cat-reserved-badge{
  position:absolute;
  top:14px;
  right:14px;
  z-index:6;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 15px;
  border-radius:999px;
  background:#e72636;
  color:#fff;
  font-size:15px;
  line-height:18px;
  font-weight:900;
  letter-spacing:0;
  text-transform:uppercase;
  border:2px solid rgba(255,255,255,.92);
  box-shadow:0 12px 28px rgba(231,38,54,.36);
}

.cat-reserved-badge-profile{
  top:18px;
  right:18px;
  min-height:44px;
  padding:10px 20px;
  font-size:18px;
  line-height:21px;
  box-shadow:0 14px 34px rgba(231,38,54,.42);
}

.admin-inline-check{
  padding:10px 12px;
  border:1px solid #f2d8dc;
  border-radius:8px;
  background:#fff8f9;
}

.admin-inline-check label{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 4px;
  font-weight:800;
}

.admin-inline-check input[type="checkbox"]{
  width:18px;
  height:18px;
  accent-color:#e72636;
}

.admin-reserve-check{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 16px;
  border:2px solid rgba(231,38,54,.24);
  background:linear-gradient(135deg,#fff8f9 0%,#ffffff 100%);
  box-shadow:0 10px 24px rgba(231,38,54,.08);
}

.admin-reserve-check strong{
  display:block;
  color:#1f2937;
  font-size:17px;
  line-height:22px;
}

.admin-reserve-check label{
  flex:0 0 auto;
  margin:0;
  padding:9px 12px;
  border-radius:999px;
  background:#e72636;
  color:#fff;
  box-shadow:0 8px 18px rgba(231,38,54,.18);
}

.admin-reserve-check .field-hint{
  margin-top:3px;
}

@media only screen and (max-width:767px){
  .cat-reserved-badge{
    top:9px;
    right:9px;
    min-height:30px;
    padding:6px 10px;
    font-size:12px;
    line-height:14px;
  }

  .cat-reserved-badge-profile{
    top:12px;
    right:12px;
    min-height:36px;
    padding:8px 14px;
    font-size:14px;
    line-height:17px;
  }

  .admin-reserve-check{
    display:block;
  }

  .admin-reserve-check label{
    display:inline-flex;
    margin-top:10px;
  }
}

/* Header search: plain keyword search without suggestion dropdown. */
@media only screen and (min-width: 992px){
  .main-header .header-top .site-header-search{
    background: #ffffff !important;
    border-color: rgba(255, 255, 255, 0.82) !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08) !important;
  }

  .main-header .header-top .site-header-search input{
    color: #2f2a28 !important;
  }

  .main-header .header-top .site-header-search input::placeholder{
    color: #74706d !important;
  }
}

@media only screen and (max-width: 767px){
  .main-header .header-top .header-info{
    grid-template-columns: minmax(112px, 1fr) max-content !important;
    row-gap: 7px !important;
  }

  .main-header .header-top .site-header-search{
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    height: 36px !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, 0.82) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.10) !important;
  }

  .main-header .header-top .site-header-search .site-search-label{
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
  }

  .main-header .header-top .site-header-search input{
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 100% !important;
    padding: 0 8px 0 14px !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #2f2a28 !important;
    font-size: 13px !important;
    line-height: 36px !important;
  }

  .main-header .header-top .site-header-search input::placeholder{
    color: #777777 !important;
  }

  .main-header .header-top .site-header-search button{
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 34px !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #e72636 !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 34px !important;
  }

  .main-header .header-top .header-social-center{
    top: calc(100% + 7px) !important;
  }
}

.site-search-page.sec-pad{
  padding-top: 48px;
  padding-bottom: 78px;
}

.site-search-panel{
  max-width: 780px;
  margin: 0 auto 34px;
}

.site-search-page-form{
  display: flex;
  align-items: stretch;
  min-height: 56px;
  overflow: hidden;
  border: 1px solid rgba(34, 34, 34, 0.10);
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 18px 42px rgba(24, 33, 43, 0.08);
}

.site-search-page-form input{
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 22px;
  border: 0;
  outline: 0;
  color: #333333;
  font-size: 17px;
  line-height: 56px;
}

.site-search-page-form button{
  flex: 0 0 auto;
  padding: 0 26px;
  border: 0;
  background: #e72636;
  color: #ffffff;
  font-family: "Racing Sans One", sans-serif;
  font-size: 18px;
  line-height: 56px;
  cursor: pointer;
}

.site-search-empty{
  max-width: 760px;
  margin: 0 auto;
  padding: 30px;
  border-radius: 8px;
  background: #ffffff;
  text-align: center;
  box-shadow: 0 16px 36px rgba(24, 33, 43, 0.06);
}

.site-search-empty h2{
  margin-bottom: 10px;
  color: #222222;
  font-size: 30px;
  line-height: 38px;
}

.site-search-empty p,
.site-search-heading p{
  margin: 0;
  color: #666666;
  font-size: 17px;
  line-height: 28px;
}

.site-search-heading{
  margin-bottom: 26px;
}

.site-search-results{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.site-search-result-card{
  display: grid;
  grid-template-columns: 168px minmax(0, 1fr);
  gap: 18px;
  padding: 16px;
  border: 1px solid rgba(34, 34, 34, 0.08);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(24, 33, 43, 0.07);
}

.site-search-result-image{
  display: block;
  overflow: hidden;
  min-height: 132px;
  border-radius: 8px;
  background: #f2f4f7;
}

.site-search-result-image img{
  width: 100%;
  height: 100%;
  min-height: 132px;
  object-fit: cover;
}

.site-search-result-body span{
  display: inline-block;
  margin-bottom: 7px;
  color: #e72636;
  font-size: 13px;
  font-weight: 800;
  line-height: 18px;
  text-transform: uppercase;
}

.site-search-result-body h3{
  margin: 0 0 8px;
  color: #222222;
  font-size: 22px;
  line-height: 28px;
}

.site-search-result-body h3 a{
  color: inherit;
}

.site-search-result-body p{
  margin: 0 0 10px;
  color: #555555;
  font-size: 15px;
  line-height: 25px;
}

.site-search-result-link{
  display: inline-flex;
  align-items: center;
  color: #e72636;
  font-weight: 800;
}

@media only screen and (max-width: 991px){
  .site-search-results{
    grid-template-columns: 1fr;
  }
}

@media only screen and (max-width: 767px){
  .site-search-page.sec-pad{
    padding-top: 26px !important;
    padding-bottom: 42px !important;
  }

  .site-search-page-form{
    min-height: 48px;
    border-radius: 8px;
  }

  .site-search-page-form input{
    padding: 0 12px;
    font-size: 15px;
    line-height: 48px;
  }

  .site-search-page-form button{
    padding: 0 14px;
    font-size: 15px;
    line-height: 48px;
  }

  .site-search-result-card{
    grid-template-columns: 112px minmax(0, 1fr);
    gap: 12px;
    padding: 12px;
  }

  .site-search-result-image,
  .site-search-result-image img{
    min-height: 104px;
  }

  .site-search-result-body h3{
    font-size: 18px;
    line-height: 23px;
  }

  .site-search-result-body p{
    font-size: 14px;
    line-height: 22px;
  }
}

.cat-trust-strip{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 28px 0 18px;
}

.cat-trust-strip div{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 74px;
  padding: 14px 16px;
  border: 1px solid #ece7df;
  border-radius: 8px;
  background: #fff;
  color: #3b3b3b;
  font-size: 15px;
  font-weight: 700;
  line-height: 23px;
  box-shadow: 0 12px 30px rgba(26, 26, 26, .06);
}

.cat-trust-strip i{
  color: #e6293a;
  font-size: 19px;
  flex: 0 0 auto;
}

.cat-process-panel{
  margin: 0 auto 34px;
  padding: 24px 28px;
  max-width: 1040px;
  border-left: 4px solid #e6293a;
  border-radius: 8px;
  background: #fff;
  text-align: left;
  box-shadow: 0 14px 34px rgba(26, 26, 26, .07);
}

.cat-process-panel h2{
  margin: 0 0 14px;
  color: #202020;
  font-size: 26px;
  font-weight: 800;
  line-height: 34px;
}

.cat-process-panel ol{
  margin: 0;
  padding-left: 20px;
}

.cat-process-panel li{
  margin-bottom: 8px;
  color: #555;
  font-size: 16px;
  line-height: 28px;
}

.cat-process-panel li:last-child{
  margin-bottom: 0;
}

.cat-profile-trust{
  margin: 26px 0 22px;
  padding: 24px 26px;
  border: 1px solid #ece7df;
  border-radius: 8px;
  background: #fffdf9;
}

.cat-profile-trust h3{
  margin: 0 0 10px;
  color: #202020;
  font-size: 24px;
  font-weight: 800;
  line-height: 32px;
}

.cat-profile-trust p{
  margin: 0 0 14px;
  color: #555;
  font-size: 16px;
  line-height: 28px;
}

.cat-profile-trust ul{
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin: 0;
  padding: 0;
}

.cat-profile-trust li{
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #333;
  font-size: 15px;
  font-weight: 700;
  line-height: 24px;
}

.cat-profile-trust li i{
  margin-top: 4px;
  color: #e6293a;
}

.cat-profile-trust-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.cat-profile-trust-grid li{
  min-height: 54px;
  padding: 12px 14px;
  border: 1px solid #efe8dd;
  border-radius: 8px;
  background: #fff;
}

.cat-profile-process-link{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  margin-top: 18px;
  padding: 0 20px;
  border-radius: 6px;
  background: #e6293a;
  color: #fff;
  font-weight: 800;
  text-decoration: none;
}

.cat-profile-process-link:hover{
  color: #fff;
  background: #252120;
  text-decoration: none;
}

.home-trust-badges{
  padding: 26px 0 18px;
  background: #fff;
}

.home-trust-grid{
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.home-trust-badge{
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  grid-template-rows: auto auto;
  column-gap: 12px;
  min-height: 106px;
  padding: 18px;
  border: 1px solid #ece7df;
  border-radius: 8px;
  background: #fffdf9;
  color: #333;
  text-decoration: none;
  box-shadow: 0 14px 30px rgba(26, 26, 26, .06);
}

.home-trust-badge:hover{
  color: #222;
  border-color: #e6293a;
  text-decoration: none;
  transform: translateY(-2px);
}

.home-trust-badge i{
  grid-row: 1 / span 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #e6293a;
  color: #fff;
  font-size: 18px;
}

.home-trust-badge strong{
  display: block;
  color: #202020;
  font-size: 16px;
  font-weight: 900;
  line-height: 22px;
}

.home-trust-badge span{
  display: block;
  margin-top: 4px;
  color: #666;
  font-size: 14px;
  line-height: 21px;
}

.cat-detail-actions{
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.cat-profile-contact-card{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 20px 0 0;
  padding: 16px 18px;
  border: 1px solid #efe8dd;
  border-radius: 8px;
  background: linear-gradient(135deg, #fff 0%, #fff8f6 100%);
  box-shadow: 0 14px 30px rgba(26, 26, 26, .06);
}

.cat-profile-contact-copy{
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 180px;
}

.cat-profile-contact-copy span{
  color: #e6293a;
  font-size: 13px;
  font-weight: 900;
  line-height: 18px;
  text-transform: uppercase;
}

.cat-profile-contact-copy strong{
  color: #252120;
  font-size: 18px;
  font-weight: 900;
  line-height: 24px;
}

.cat-detail-actions .theme-btn{
  margin: 0;
  min-height: 46px;
  padding: 12px 22px;
}

.cat-detail-actions .whatsapp-action{
  background: #1fb957;
}

@media only screen and (max-width: 991px){
  .cat-trust-strip{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-trust-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cat-profile-trust-grid{
    grid-template-columns: 1fr !important;
  }

  .cat-profile-contact-card{
    align-items: flex-start;
    flex-direction: column;
  }
}

@media only screen and (max-width: 575px){
  .main-header .header-top{
    padding: 14px 0;
  }

  .main-header .header-top .header-info{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .mobile-header-contact{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 132px;
    min-height: 40px;
    padding: 0 16px;
    border-radius: 5px;
    background: #9bd52b;
    color: #ffffff;
    font-family: "Racing Sans One", sans-serif;
    font-size: 15px;
    line-height: 20px;
    text-transform: uppercase;
    text-decoration: none;
  }

  .mobile-header-contact:hover{
    color: #ffffff;
    background: #e72636;
    text-decoration: none;
  }

  .header-social-center,
  .header-federation-icons{
    display: none !important;
  }

  .header-language-select{
    margin-left: auto;
  }

  .LanSelect button{
    min-height: 40px;
    padding: 0 12px;
    font-size: 13px;
    line-height: 40px;
  }

  .LanSelect button img{
    width: 25px;
    height: 17px;
    object-fit: cover;
  }

  .main-header .header-bottom .logo-box{
    width: 100%;
    max-width: none;
    padding: 18px 14px 16px;
    text-align: center;
  }

  .main-header .header-bottom .logo-box img{
    max-width: min(340px, 92vw);
    max-height: 76px;
  }

  .main-header .header-bottom .nav-outer,
  .main-header .menu-area{
    float: none;
    width: 100%;
    text-align: center;
  }

  .main-menu .navbar-header{
    float: none;
    display: flex;
    justify-content: center;
    padding-bottom: 12px;
  }

  .main-menu .navbar-toggle{
    margin: 0 auto;
  }

  .seo-focus-section{
    padding: 20px 0 18px;
  }

  .seo-focus-section p{
    display: -webkit-box;
    max-width: 100%;
    padding: 0 18px;
    font-size: 16px;
    line-height: 28px;
    text-align: center;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .seo-focus-section strong,
  .seo-focus-section u{
    overflow-wrap: anywhere;
    word-break: normal;
  }

  .main-slider .content-box{
    max-width: 100%;
    padding: 0 18px;
    box-sizing: border-box;
    overflow: hidden;
  }

  .main-slider .content-box .top-text{
    display: block;
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    font-size: 20px !important;
    line-height: 28px !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
    margin-bottom: 20px;
    padding-bottom: 8px;
  }

  .main-slider .content-box h2{
    font-size: 30px;
    line-height: 1.18;
    margin-bottom: 24px;
  }

  .main-slider .slide{
    padding: 82px 0 74px;
  }

  .cat-trust-strip{
    grid-template-columns: 1fr;
  }

  .cat-process-panel,
  .cat-profile-trust{
    padding: 20px;
  }

  .cat-detail-actions .theme-btn{
    width: 100%;
    text-align: center;
  }

  .home-trust-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .home-trust-badges{
    padding: 14px 0 12px;
  }

  .home-trust-badge{
    grid-template-columns: 30px minmax(0, 1fr);
    min-height: 72px;
    padding: 10px 9px;
    column-gap: 8px;
    box-shadow: 0 8px 18px rgba(26, 26, 26, .05);
  }

  .home-trust-badge i{
    width: 30px;
    height: 30px;
    font-size: 14px;
  }

  .home-trust-badge strong{
    font-size: 13px;
    line-height: 17px;
  }

  .home-trust-badge span{
    margin-top: 2px;
    font-size: 11.5px;
    line-height: 16px;
  }
}

@media only screen and (max-width: 360px){
  .home-trust-grid{
    grid-template-columns: 1fr;
  }
}

.main-header{
  position: sticky;
  top: 0;
  z-index: 1100;
  background: #ffffff;
  box-shadow: none;
}

.main-header.fixed-header{
  animation: none;
}

.main-header .header-top{
  display: block;
  padding: 15px 0;
  background: #3b3634;
}

.mobile-header-contact{
  display: none;
}

.header-social-center{
  position: relative !important;
  left: auto;
  top: auto;
  float: right !important;
  display: block;
  margin: 0 !important;
  transform: none;
}

.header-social-center li{
  display: inline-block;
  margin: 0 !important;
  margin-left: 5px !important;
}

.header-social-center li:first-child{
  margin-left: 0 !important;
}

.header-social-center li a{
  width: 40px;
  height: 40px;
  line-height: 41px;
  font-size: 22px;
  box-shadow: none;
}

.site-header-search{
  display: none;
}

.header-federation-icons{
  display: block;
  margin-left: 0;
}

.header-federation-icons .f-logo{
  float: right;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  margin: 0 2px;
  padding: 4px;
  border: 0;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: none;
}

.header-federation-icons .f-logo img{
  width: 50px;
  height: auto;
  object-fit: contain;
  border-radius: 50%;
}

.header-language-select{
  position: relative;
  float: right;
  display: block;
  margin: 1px 45px 2px 45px;
}

.header-language-select .dropdown-toggle{
  min-width: auto;
  height: auto;
  padding: 4px 10px 4px 8px;
  border: 1px solid #d8d8d8;
  border-radius: 4px;
  background: #ffffff;
  color: #2f2a28;
  font-family: "Anton", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 22px;
  box-shadow: none;
}

.header-language-select .dropdown-toggle img{
  height: 20px;
  margin-right: 5px;
}

.header-language-select .dropdown-menu{
  min-width: 150px;
  margin-top: 0;
  border-radius: 4px;
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
}

.header-language-select .dropdown-item{
  display: block;
  padding: 6px 12px;
  color: #3b3634;
  font-family: "Anton", sans-serif;
  font-size: 12px;
  font-weight: 400;
}

.header-language-select .dropdown-item img{
  width: 25px;
  height: auto;
  margin-right: 5px;
}

.main-header .header-bottom{
  position: relative;
  display: block;
  background: #f2f1f0;
  border-bottom: 0;
  backdrop-filter: none;
}

.main-header .header-bottom .container > .clearfix{
  display: block;
  min-height: 0;
}

.main-header .header-bottom .logo-box{
  position: relative;
  float: left;
  margin-top: -66px;
  padding: 42px 15px 42px 0;
  background: #ffffff;
  border-top-right-radius: 80px;
  border-bottom-right-radius: 80px;
  z-index: 1;
}

.main-header .header-bottom .logo-box:before{
  position: absolute;
  content: '';
  display: block;
  right: 0;
  top: 0;
  width: 500000%;
  height: 100%;
  background: #ffffff;
  border-top-right-radius: 80px;
  border-bottom-right-radius: 80px;
}

.main-header .header-bottom .logo-box .logo{
  margin: 0;
}

.main-header .header-bottom .logo-box a{
  position: relative;
  display: block;
  min-height: 0;
  z-index: 1;
}

.main-header .header-bottom .logo-box img{
  display: inline-block;
  width: auto;
  max-width: 320px;
  max-height: 86px;
  object-fit: contain;
  filter: none;
}

.main-header .header-bottom .nav-outer{
  position: relative;
  float: right;
  min-width: 0;
}

.main-header .menu-area{
  position: relative;
  float: right;
  display: block;
}

.main-menu .navigation{
  position: relative;
  display: block;
}

.main-menu .navigation > li{
  float: left;
  margin: 0 9px;
}

.main-menu .navigation > li > a{
  padding: 25px 0 20px;
  font-family: "Racing Sans One", sans-serif;
  font-size: 17px;
  line-height: 26px;
  white-space: nowrap;
}

.service-page-section .service-column{
  padding: 0 18px 36px;
}

.service-page-section .service-block-one{
  height: 100%;
  padding: 22px 22px 34px;
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(59, 54, 52, 0.13);
}

.service-page-section .service-block-one .image-box{
  display: block;
  width: 100%;
  height: 560px;
  margin-bottom: 28px;
  border-radius: 8px;
  background: #f2f1f0;
}

.service-page-section .service-block-one .image-box a{
  display: block;
  height: 100%;
}

.service-page-section .service-block-one .image-box img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translateZ(0);
}

.service-page-section .service-block-one:hover .image-box img{
  opacity: 0.9;
  transform: scale(1.035);
}

.service-page-section .service-block-one .lower-content h2{
  height: auto;
  min-height: 72px;
}

.home-cat-grid{
  justify-content: center;
}

.home-cat-grid .team-block-one{
  height: 100%;
  padding: 14px 14px 0;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(59, 54, 52, 0.12);
}

.home-cat-grid .team-block-one .image-box{
  display: block;
  width: 100%;
  height: 430px;
  border-radius: 8px;
  background: #f2f1f0;
}

.home-cat-grid .team-block-one .image-box a{
  display: block;
  height: 100%;
}

.home-cat-grid .team-block-one .image-box img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-cat-grid .team-block-one:hover .image-box img{
  opacity: 0.9;
  transform: scale(1.035);
}

.CatProfil{
  position: relative;
  display: block;
  width: 100%;
  min-height: 620px;
  border-radius: 8px;
  overflow: hidden;
  background: #f2f1f0;
  box-shadow: 0 18px 42px rgba(59, 54, 52, 0.14);
}

.CatProfil>img{
  display: block;
  width: 100% !important;
  height: 620px;
  max-height: none;
  object-fit: contain;
  border-radius: 8px;
}

#site-content img[data-site-lightbox],
.site-lightbox-ready{
  cursor: zoom-in;
}

.fancybox-navigation .fancybox-button{
  opacity: 1;
  visibility: visible;
}

.quick-nav{
  position: fixed;
  right: 20px;
  bottom: 92px;
  z-index: 999;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.quick-nav-btn{
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 50%;
  background: #e72636;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 24px rgba(59, 54, 52, 0.22);
  cursor: pointer;
}

.quick-nav-btn:hover{
  color: #ffffff;
  background: #3b3634;
}

@media only screen and (max-width: 1199px){
  .main-header .header-bottom .container > .clearfix{
    min-height: 0;
  }

  .main-header .header-bottom .logo-box{
    margin-top: -62px;
    padding: 38px 14px 38px 0;
  }

  .main-header .header-bottom .logo-box img{
    width: auto;
    max-width: 270px;
    max-height: 78px;
  }

  .main-menu .navigation > li{
    margin: 0 6px;
  }

  .main-menu .navigation > li > a{
    padding: 25px 0 20px;
    font-size: 15px;
  }

  .service-page-section .service-block-one .image-box{
    height: 480px;
  }

  .home-cat-grid .team-block-one .image-box{
    height: 380px;
  }
}

@media only screen and (max-width: 767px){
  .service-page-section .service-block-one .image-box,
  .home-cat-grid .team-block-one .image-box{
    height: 460px;
  }

  .CatProfil{
    min-height:0!important;
    height:auto!important;
  }

  .CatProfil > a{
    height:auto!important;
  }

  .CatProfil > a > img,
  .CatProfil>img{
    min-height:0!important;
    height:auto!important;
    max-height:460px!important;
    object-fit:contain!important;
  }

  .quick-nav{
    right: 14px;
    bottom: 84px;
  }

  .quick-nav-btn{
    width: 44px;
    height: 44px;
  }
}

/* Keep home carousel sections fully measurable so Owl autoplay keeps moving offscreen sections. */
.team-style-two.home-main-section,
.gallery-section.home-main-section,
.home-blog-preview-section{
  content-visibility: visible !important;
  contain-intrinsic-size: auto !important;
}

.home-cat-carousel.owl-carousel,
.home-gallery-carousel.owl-carousel,
.home-blog-carousel.owl-carousel{
  display: block !important;
}

.home-section-copy{
  max-width: 980px;
  margin: 0 auto 40px;
  font-size: 17px;
  line-height: 30px;
  color: #615b58;
  text-align: center;
}

.home-main-section{
  padding: 72px 0;
}

.home-main-section.gray-bg{
  padding: 72px 0;
}

.home-main-section .row{
  display: flex;
  align-items: stretch;
}

.home-main-section .content-column,
.home-main-section .image-column{
  display: flex;
}

.home-main-section .content-box,
.home-main-section .image-box{
  width: 100%;
}

.home-info-band .image-box .image,
.welcome-section .image-box .image{
  overflow: hidden;
  border-radius: 8px;
}

.home-info-band .image-box img,
.welcome-section .image-box img{
  width: 100%;
  min-height: 520px;
  height: 100%;
  object-fit: cover;
}

.welcome-section .image-box .image{
  min-height: 520px;
  background: #f2f1f0;
}

.home-main-section .image-box .image{
  min-height: 520px;
  height: 100%;
}

.home-main-section .image-box img{
  min-height: 520px;
}

.home-main-section .content-box{
  padding-top: 0;
}

.main-slider .content-box h2{
  color: #ffffff;
  font-size: clamp(46px, 5vw, 76px);
  line-height: 1.1;
  font-weight: 700;
  text-shadow: 0 4px 18px rgba(0, 0, 0, 0.34);
}

.main-slider .content-box .top-text{
  color: #ffffff;
  font-weight: 400;
  border-bottom-color: rgba(255, 255, 255, 0.82);
  text-shadow: 0 3px 12px rgba(0, 0, 0, 0.28);
}

.home-main-section .sec-title{
  margin-bottom: 32px;
}

.home-main-section .sec-title .top-title{
  display: inline-block;
  min-height: 0;
  padding: 0 2px 6px;
  border-radius: 0;
  background: transparent;
  color: #e72636;
  font-family: 'Schoolbell', Cursive;
  font-size: 24px;
  line-height: 32px;
  font-weight: 400;
  letter-spacing: 0;
}

.home-main-section .sec-title .top-title:before{
  display: block;
  height: 1px;
  background: #e72636;
  bottom: 3px;
}

.home-main-section .sec-title h1,
.home-main-section .sec-title h2{
  position: relative;
  display: inline-block;
  margin-top: 6px;
  padding-bottom: 14px;
  color: #3b3634;
  font-family: 'Arvo', serif;
  font-size: clamp(32px, 2.7vw, 46px);
  line-height: 1.18;
  font-weight: 700;
}

.home-main-section .sec-title h1:after,
.home-main-section .sec-title h2:after{
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 84px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(231, 38, 54, 0), #e72636, rgba(231, 38, 54, 0));
  transform: translateX(-50%);
}

.home-main-section .team-block-one .lower-content h3,
.home-main-section .team-block-one .lower-content h3 a{
  color: #3b3634;
  font-size: 24px;
  line-height: 31px;
  font-weight: 700;
}

.home-main-section .news-block-one .lower-content h3,
.home-main-section .news-block-one .lower-content h3 a{
  color: #3b3634 !important;
  font-weight: 700;
}

.home-blog-preview-section .news-block-one .lower-content h3{
  height: auto;
  min-height: 68px;
  margin-bottom: 16px;
}

.home-blog-preview-section .news-block-one .lower-content h3,
.home-blog-preview-section .news-block-one .lower-content h3 a{
  font-family: 'Arvo', serif !important;
  font-size: 21px;
  line-height: 30px;
  font-weight: 700;
  color: #2f2a28 !important;
  letter-spacing: 0;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.home-blog-preview-section .news-block-one .lower-content h3 a:hover{
  color: #2f2a28 !important;
}

.home-cat-carousel{
  position: relative;
}

.home-cat-carousel .team-block-one{
  height: 100%;
  padding: 14px 14px 0;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(59, 54, 52, 0.12);
}

.home-cat-carousel .team-block-one .image-box{
  display: block;
  width: 100%;
  height: 520px;
  border-radius: 8px;
  background: #f2f1f0;
}

.home-cat-carousel .team-block-one .image-box a{
  display: block;
  height: 100%;
}

.home-cat-carousel .team-block-one .image-box img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.home-cat-carousel .team-block-one:hover .image-box img{
  opacity: 0.9;
  transform: scale(1.035);
}

.home-cat-carousel .owl-nav,
.home-gallery-carousel .owl-nav,
.home-blog-carousel .owl-nav{
  position: absolute;
  top: 42%;
  left: 0;
  right: 0;
  height: 0;
  display: flex;
  justify-content: space-between;
  pointer-events: none;
  z-index: 12;
}

.home-cat-carousel .owl-nav .owl-prev,
.home-cat-carousel .owl-nav .owl-next,
.home-gallery-carousel .owl-nav .owl-prev,
.home-gallery-carousel .owl-nav .owl-next,
.home-blog-carousel .owl-nav .owl-prev,
.home-blog-carousel .owl-nav .owl-next{
  width: 54px;
  height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50% !important;
  background: #e72636 !important;
  color: #ffffff !important;
  font-size: 28px !important;
  line-height: 1 !important;
  box-shadow: 0 10px 24px rgba(59, 54, 52, 0.18);
  pointer-events: auto;
  cursor: pointer;
  position: relative;
  z-index: 13;
  border: 0 !important;
  outline: none;
}

.home-cat-carousel .owl-nav .owl-prev,
.home-gallery-carousel .owl-nav .owl-prev,
.home-blog-carousel .owl-nav .owl-prev{
  margin-left: -27px;
}

.home-cat-carousel .owl-nav .owl-next,
.home-gallery-carousel .owl-nav .owl-next,
.home-blog-carousel .owl-nav .owl-next{
  margin-right: -27px;
}

.home-blog-carousel{
  position: relative;
  padding-bottom: 34px;
}

.home-blog-carousel .owl-stage{
  display: flex;
}

.home-blog-carousel .owl-item{
  display: flex;
}

.home-blog-carousel .news-column,
.home-blog-carousel .news-block-one{
  width: 100%;
  height: 100%;
}

.home-blog-carousel .news-block-one{
  display: flex;
  flex-direction: column;
  margin-bottom: 0;
}

.home-blog-carousel .news-block-one .lower-content{
  flex: 1 1 auto;
}

.home-blog-carousel .owl-dots{
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  gap: 8px;
}

.home-blog-carousel .owl-dot{
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #d4cbc4 !important;
}

.home-blog-carousel .owl-dot.active{
  width: 28px;
  border-radius: 999px;
  background: #e72636 !important;
}

.home-gallery-carousel .single-gallery-block .image-box{
  height: 280px;
}

.home-gallery-carousel .single-gallery-block .image-box img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.news-section .row{
  row-gap: 30px;
}

.blog-list-page .news-block-one .image-box,
.home-blog-preview-section .news-block-one .image-box{
  height: 285px;
  background: #f7f4f2;
}

.blog-list-page .news-block-one .image-box a,
.home-blog-preview-section .news-block-one .image-box a{
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
}

.blog-list-page .news-block-one .image-box img,
.home-blog-preview-section .news-block-one .image-box img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  background: #f7f4f2;
}

.blog-list-page .news-block-one:hover .image-box img,
.home-blog-preview-section .news-block-one:hover .image-box img{
  opacity: 0.92;
  transform: scale(1.02);
}

.blog-list-page .news-block-one .lower-content h2,
.blog-list-page .news-block-one .lower-content h2 a,
.blog-detail-page .blog-single-content .news-block-one h2,
.blog-detail-page .blog-sidebar .sidebar-title,
.blog-detail-page .blog-sidebar .post .text a,
.blog-post-nav-card strong{
  color: #111111 !important;
  font-weight: 800;
}

.blog-list-page .news-block-one .lower-content h2 a:hover,
.home-blog-preview-section .news-block-one .lower-content h3 a:hover,
.blog-detail-page .blog-sidebar .post .text a:hover,
.blog-post-nav-card:hover strong{
  color: #111111 !important;
}

.blog-list-page .news-block-one .lower-content h2{
  font-size: 25px;
  line-height: 32px;
  margin-bottom: 18px;
}

.blog-detail-page .blog-single-content .news-block-one h2{
  font-size: 42px;
  line-height: 50px;
}

.blog-detail-page .blog-single-content .news-block-one .info-box li,
.blog-detail-page .blog-sidebar .post span,
.blog-post-nav-card span{
  color: #111111;
  font-weight: 800;
}

.cat-gender-badge{
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 20px;
  color: #ffffff;
  background: #3b3634;
  font-size: 14px;
  line-height: 1;
  font-weight: 700;
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.2);
}

.team-block-one .image-box,
.service-block-one .image-box{
  position: relative;
}

.cat-gender-badge.female{
  background: #3b3634;
}

.cat-gender-badge.male{
  background: #3b3634;
}

.cat-gender-badge.unknown{
  background: #615b58;
}

.cat-card-meta{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px 12px;
  min-height: 28px;
  margin: 6px 0 12px;
  padding: 8px 14px;
  border-radius: 8px;
  background: #f2f1f0;
  color: #615b58;
  font-size: 14px;
  line-height: 22px;
}

.cat-card-meta span{
  display: inline-flex;
  gap: 4px;
  align-items: baseline;
}

.cat-card-meta strong{
  color: #3b3634;
}

.cat-filter-tabs{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin: -18px 0 34px;
}

.cat-filter-tabs a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 20px;
  border: 1px solid #e0dcd9;
  border-radius: 24px;
  background: #ffffff;
  color: #3b3634;
  font-weight: 700;
  box-shadow: 0 10px 24px rgba(59, 54, 52, 0.08);
}

.cat-filter-tabs a:hover,
.cat-filter-tabs a.active{
  color: #ffffff;
  background: #e72636;
  border-color: #e72636;
}

.PageVideoBox{
  margin-bottom: 30px;
}

.blog-detail-page{
  padding: 95px 0 120px;
}

.blog-detail-page .blog-single-content .inner-box{
  padding-bottom: 30px;
}

.blog-detail-page .blog-single-content .news-block-one{
  margin-bottom: 34px;
}

.blog-detail-page .blog-single-content .news-block-one .image{
  margin-bottom: 0;
  overflow: hidden;
  border-radius: 8px;
  background: #f7f4f2;
}

.blog-detail-page .blog-single-content .news-block-one .image img{
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  object-position: center;
}

.blog-detail-page .blog-single-content .news-block-one .lower-content{
  padding: 28px 0 0;
}

.blog-detail-page .blog-single-content .news-block-one h2{
  margin-bottom: 0;
}

.blog-detail-page .blog-single-content .news-block-one .info-box{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 14px;
}

.blog-detail-page .blog-single-content .news-block-one .info-box li{
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 20px;
  background: #f2f1f0;
  color: #615b58;
  font-size: 14px;
  font-weight: 700;
}

.blog-article-body{
  color: #555555;
  font-size: 17px;
  line-height: 32px;
}

.blog-single-content .inner-box .blog-article-body p{
  display: block;
  margin-bottom: 24px;
  overflow: visible;
  min-height: 0;
  -webkit-line-clamp: unset;
  -webkit-box-orient: initial;
}

.blog-post-nav{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 30px;
}

.blog-post-nav-card{
  display: block;
  min-height: 132px;
  padding: 24px 26px;
  border: 1px solid rgba(59, 54, 52, 0.08);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 38px rgba(24, 33, 43, 0.08);
}

.blog-post-nav-card.next{
  text-align: right;
}

.blog-post-nav-card span{
  display: block;
  margin-bottom: 10px;
  color: #e72636;
  font-size: 14px;
  line-height: 20px;
  font-weight: 800;
  text-transform: uppercase;
}

.blog-post-nav-card strong{
  display: block;
  color: #3b3634;
  font-size: 18px;
  line-height: 27px;
  transition: color 260ms ease;
}

.blog-post-nav-card:hover strong{
  color: #e72636;
}

.blog-detail-page .blog-sidebar{
  position: sticky;
  top: 178px;
}

.blog-detail-page .blog-sidebar .sidebar-post{
  border-bottom: 2px solid #ffffff;
}

.blog-detail-page .blog-sidebar .post{
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.82);
}

.blog-detail-page .blog-sidebar .post:last-child{
  border-bottom: 0;
}

.cat-development-gallery{
  text-align: left;
}

.cat-timeline-section{
  overflow: hidden;
}

.cat-development-timeline{
  margin-top: 34px;
}

.cat-development-timeline > li .timeline-image{
  border-color: #e72636;
  background: #ffffff;
  box-shadow: 0 0 0 7px rgba(231, 38, 54, 0.12), 0 18px 38px rgba(59, 54, 52, 0.18);
}

.cat-development-timeline > li .timeline-image a{
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
}

.cat-development-timeline > li .timeline-image img{
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}

.cat-development-timeline > li:nth-child(odd) .line:before,
.cat-development-timeline > li:nth-child(even) .line:before{
  background-color: #e72636;
  box-shadow: 0 0 5px rgba(231, 38, 54, 0.45);
}

.cat-development-timeline .timeline-panel{
  padding-top: 8px;
}

.cat-development-timeline .timeline-heading h4{
  color: #e72636;
  font-size: 20px;
  line-height: 28px;
  font-weight: 800;
}

.cat-development-timeline .timeline-heading h4.subheading{
  color: #3b3634;
  font-size: 18px;
  line-height: 26px;
}

.cat-development-timeline .timeline-body .text-muted{
  color: #555555;
  font-size: 16px;
  line-height: 29px;
}

.cat-photo-gallery-section{
  background: #ffffff;
}

.cat-media-tabs-section{
  padding: 82px 0 90px;
}

.cat-media-tabs{
  padding: 0;
}

.cat-media-tabs .nav-tabs{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0 0 32px;
  border-bottom: 0;
}

.cat-media-tabs.CatTabMenu li{
  float: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border-radius: 8px 8px 0 0;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(59, 54, 52, 0.08);
}

.cat-media-tabs.CatTabMenu li a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0 28px;
  color: #3b3634;
  font-size: 16px;
  line-height: 22px;
}

.cat-media-tabs.CatTabMenu li.active{
  background: #e72636;
}

.cat-media-tabs.CatTabMenu li.active a{
  color: #ffffff;
}

.cat-media-tab-content{
  padding: 26px;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 42px rgba(24, 33, 43, 0.08);
}

.cat-media-tab-content .gallery-page-section{
  padding: 0;
}

.cat-photo-gallery-grid .single-gallery-block .image-box{
  height: 240px;
  border-radius: 8px;
  background: #f2f1f0;
}

.cat-photo-gallery-grid .single-gallery-block .image-box img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.cat-video-tab-grid{
  row-gap: 30px;
}

.cat-video-tab-grid .TabVideoBox{
  margin-bottom: 0;
}

.cat-video-tab-grid .TabVideoBox iframe,
.cat-video-tab-grid .TabVideoBox video{
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  border: 0;
  border-radius: 8px;
  background: #111111;
  box-shadow: 0 14px 30px rgba(59, 54, 52, 0.12);
}

.cat-tab-empty{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 170px;
  padding: 34px;
  border: 1px dashed rgba(231, 38, 54, 0.32);
  border-radius: 8px;
  background: #fffafa;
  color: #615b58;
  font-size: 17px;
  line-height: 29px;
  text-align: center;
}

.cat-development-grid{
  row-gap: 30px;
}

.cat-development-column{
  display: flex;
}

.cat-development-card{
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 38px rgba(59, 54, 52, 0.11);
}

.cat-development-card .image-box{
  position: relative;
  height: 420px;
  margin: 0;
  overflow: hidden;
  background: #f2f1f0;
}

.cat-development-card .image-box > a{
  display: block;
  height: 100%;
}

.cat-development-card .image-box img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 420ms ease, opacity 420ms ease;
}

.cat-development-card:hover .image-box img{
  opacity: 0.9;
  transform: scale(1.035);
}

.cat-development-card .icon-box{
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  background: rgba(24, 33, 43, 0.28);
  transition: opacity 260ms ease;
  pointer-events: none;
}

.cat-development-card:hover .icon-box{
  opacity: 1;
}

.cat-development-card .icon-box a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  color: #ffffff;
  background: #e72636;
  pointer-events: auto;
}

.cat-development-card p{
  margin: 0;
  padding: 20px 22px 24px;
  color: #555555;
  font-size: 16px;
  line-height: 28px;
}

.PageVideoBox iframe,
.youtube-lite-player,
.site-video-player{
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  border: 0;
  border-radius: 8px;
  background: #111111;
  box-shadow: 0 16px 34px rgba(59, 54, 52, 0.14);
}

.youtube-lite-player{
  position: relative;
  display: block;
  padding: 0;
  overflow: hidden;
  cursor: pointer;
}

.youtube-lite-player img{
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  opacity: 0.92;
  transition: opacity .18s ease, transform .18s ease;
}

.youtube-lite-player:hover img{
  opacity: 1;
  transform: scale(1.025);
}

.youtube-lite-play{
  position: absolute;
  left: 50%;
  top: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 68px;
  height: 68px;
  border-radius: 50%;
  background: #e72636;
  color: #ffffff;
  font-size: 24px;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.24);
  transform: translate(-50%, -50%);
}

.youtube-lite-play i{
  margin-left: 4px;
}

.youtube-lite-player iframe{
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
  border: 0;
}

.video-card-title{
  margin-top: 14px;
  color: #3b3634;
  font-size: 20px;
  line-height: 28px;
  text-align: center;
}

.certificate-section .row{
  row-gap: 30px;
}

.about-tabs-section{
  padding-top: 80px;
}

.about-tabs-nav{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0;
  max-width: 560px;
  margin: 0 auto 42px;
  padding: 6px;
  border: 1px solid #e0dcd9;
  border-radius: 30px;
  background: #ffffff;
  box-shadow: 0 14px 30px rgba(59, 54, 52, 0.08);
}

.about-tabs-nav a{
  flex: 1 1 220px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 24px;
  border-radius: 24px;
  background: transparent;
  color: #3b3634;
  font-weight: 700;
}

.about-tabs-nav a:hover,
.about-tabs-nav a.active{
  color: #ffffff;
  background: #e72636;
  border-color: #e72636;
}

.about-tabs-content{
  min-height: 420px;
}

.about-tabs-section .image-box .image{
  overflow: hidden;
  border-radius: 8px;
}

.about-tabs-section .image-box img{
  width: 100%;
  min-height: 480px;
  object-fit: cover;
}

.about-tabs-section .about-brand-logo-card{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 360px;
  padding: 46px;
  border: 1px solid rgba(34, 34, 34, 0.08);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 42px rgba(24, 33, 43, 0.08);
}

.about-tabs-section .about-brand-logo-card img{
  width: auto;
  max-width: 100%;
  max-height: 180px;
  min-height: 0;
  object-fit: contain;
}

.about-content-box{
  max-width: 1120px;
  margin: 0 auto;
}

.about-text-panel{
  padding: 30px 32px;
  border-left: 4px solid #e72636;
  border-radius: 8px;
  background: #ffffff;
  color: #555555;
  font-size: 17px;
  line-height: 32px;
  box-shadow: 0 16px 38px rgba(24, 33, 43, 0.07);
}

.certificate-card{
  height: 100%;
  padding: 12px;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 34px rgba(59, 54, 52, 0.1);
}

.certificate-card .image-box{
  height: 420px;
  border-radius: 8px;
  background: #f7f5f3;
}

.certificate-card .image-box img{
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 10px;
}

.seo-geo-keyword{
  color: #3b3634;
  font-weight: 700;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
  text-decoration-color: rgba(231, 38, 54, 0.58);
}

.gray-bg .seo-geo-keyword{
  color: #2f2a28;
}

.main-footer .seo-geo-keyword{
  color: #ffffff;
}

.enhanced-footer{
  margin-top: 70px;
  overflow: hidden;
  background: linear-gradient(135deg, #312b28 0%, #201c1a 58%, #171514 100%);
  color: #f6f1ee;
}

.enhanced-footer:before{
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, #e72636, #ff8b4d, #e72636);
}

.enhanced-footer .footer-top{
  padding: 0;
  border-bottom: 0;
}

.enhanced-footer .widget-section{
  padding: 58px 0 42px;
}

.enhanced-footer .row{
  align-items: stretch;
  row-gap: 30px;
}

.enhanced-footer .footer-column{
  margin-bottom: 0;
}

.enhanced-footer .footer-column:first-child{
  flex: 0 0 42%;
  max-width: 42%;
}

.enhanced-footer .footer-column:nth-child(2){
  flex: 0 0 24%;
  max-width: 24%;
}

.enhanced-footer .footer-column:nth-child(3){
  flex: 0 0 34%;
  max-width: 34%;
}

.enhanced-footer .footer-widget{
  height: 100%;
}

.enhanced-footer .logo-widget > .text{
  display: none;
}

.enhanced-footer .logo-widget{
  display: block;
}

.enhanced-footer .footer-logo{
  float: none;
  display: block;
  width: 100%;
  max-width: 440px;
  margin: 0 0 22px;
  padding: 18px 22px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.18);
}

.enhanced-footer .footer-logo a{
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.enhanced-footer .footer-logo img{
  width: auto;
  max-width: 100%;
  max-height: 88px;
  object-fit: contain;
  filter: none;
}

.footer-seo-text{
  clear: both;
  display: block;
  max-width: 520px;
  font-size: 16px;
  line-height: 29px;
  margin-top: 0;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.76);
}

.footer-social{
  float: none !important;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.footer-social li{
  margin: 0 !important;
}

.footer-social li a{
  width: 46px;
  height: 46px;
  line-height: 46px;
  text-align: center;
  border-radius: 50%;
  color: #ffffff;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.22);
  transform: none;
}

.enhanced-footer .links-widget,
.enhanced-footer .contact-widget{
  padding: 24px 0 24px 34px;
  border-left: 1px solid rgba(255, 255, 255, 0.12);
}

.enhanced-footer .footer-widget h3{
  position: relative;
  display: inline-block;
  margin-bottom: 24px;
  color: #ffffff;
  font-size: 28px;
  line-height: 34px;
}

.enhanced-footer .footer-widget h3:after{
  position: absolute;
  content: "";
  left: 0;
  bottom: -10px;
  width: 46px;
  height: 3px;
  border-radius: 3px;
  background: #e72636;
}

.enhanced-footer .links-list{
  margin: 0;
}

.enhanced-footer .links-list li{
  margin-bottom: 9px;
}

.enhanced-footer .links-list li a{
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 17px;
  line-height: 24px;
  transition: all 260ms ease;
}

.enhanced-footer .links-list li a:before{
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 10px;
  color: #e72636;
  transition: transform 260ms ease;
}

.enhanced-footer .links-list li a:hover{
  color: #ffffff;
  transform: translateX(4px);
}

.enhanced-footer .links-list li a:hover:before{
  transform: translateX(2px);
}

.footer-contact-list{
  margin: 0;
}

.enhanced-footer .contact-widget .footer-contact-list li{
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 16px;
  color: rgba(255, 255, 255, 0.8);
  font-size: 16px;
  line-height: 24px;
}

.footer-contact-list li i{
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  line-height: 42px;
  border-radius: 50%;
  text-align: center;
  color: #ffffff;
  background: rgba(231, 38, 54, 0.95);
  box-shadow: 0 10px 20px rgba(231, 38, 54, 0.18);
}

.footer-contact-list li a,
.footer-contact-list li span{
  color: rgba(255, 255, 255, 0.82);
}

.footer-contact-list li a:hover{
  color: #ffffff;
}

.footer-whatsapp{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  margin-top: 8px;
  padding: 0 18px;
  border-radius: 28px;
  color: #ffffff;
  background: #16bf57;
  box-shadow: 0 14px 28px rgba(22, 191, 87, 0.24);
  font-size: 15px;
  font-weight: 700;
  transition: all 260ms ease;
}

.footer-whatsapp:hover{
  color: #ffffff;
  background: #0ea849;
  transform: translateY(-2px);
}

.guest-share-section .sec-title{
  max-width: 820px;
  margin: 0 auto 22px;
}

.guest-share-section.sec-pad{
  padding-top: 44px;
  padding-bottom: 78px;
}

.guest-share-section .sec-title h2{
  margin-bottom: 8px;
  font-size: clamp(30px, 2.5vw, 44px);
  line-height: 1.14;
}

.seo-focus-section{
  padding: 22px 0;
  background: #ffffff;
  border-bottom: 1px solid rgba(34, 34, 34, 0.08);
}

.seo-focus-section p{
  max-width: 1050px;
  margin: 0 auto;
  color: #555555;
  font-size: 17px;
  line-height: 30px;
  text-align: center;
  overflow-wrap: anywhere;
}

.transfer-content-box .sec-title{
  margin-bottom: 24px;
}

.transfer-content-box{
  max-width: 1120px;
  margin: 0 auto;
}

.transfer-intro{
  margin-bottom: 24px;
  padding: 24px 26px;
  border-left: 4px solid #e72636;
  border-radius: 8px;
  background: #ffffff;
  color: #555555;
  font-size: 17px;
  line-height: 31px;
  box-shadow: 0 14px 34px rgba(24, 33, 43, 0.06);
}

.transfer-step-list{
  display: grid;
  gap: 18px;
}

.transfer-step{
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 20px;
  padding: 26px;
  border: 1px solid rgba(34, 34, 34, 0.08);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 38px rgba(24, 33, 43, 0.07);
}

.transfer-step-number{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  color: #ffffff;
  background: #e72636;
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 12px 24px rgba(231, 38, 54, 0.22);
}

.transfer-step-body p{
  margin: 0;
  color: #4d4d4d;
  font-size: 17px;
  line-height: 31px;
  word-break: normal;
  overflow-wrap: anywhere;
}

.transfer-step-body ul{
  margin: 16px 0 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

.transfer-step-body li{
  position: relative;
  padding-left: 24px;
  color: #555555;
  font-size: 16px;
  line-height: 28px;
  word-break: normal;
  overflow-wrap: anywhere;
}

.transfer-step-body li:before{
  position: absolute;
  content: "";
  left: 0;
  top: 11px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #e72636;
}

.transfer-calendar-section{
  padding: 34px 0 80px;
  background: #ffffff;
}

.transfer-year-bar{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 28px;
  max-width: 760px;
  margin: 0 auto 28px;
  padding: 14px 20px;
  border-radius: 8px;
  background: #5f8f1d;
  color: #ffffff;
}

.transfer-year-bar a{
  color: #ffffff;
  font-size: 24px;
  line-height: 1;
}

.transfer-year-bar strong{
  min-width: 120px;
  font-size: 24px;
  letter-spacing: 0;
}

.transfer-calendar-grid{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.transfer-month-card{
  border: 1px solid rgba(34, 34, 34, 0.10);
  border-radius: 8px;
  background: #ffffff;
  overflow: hidden;
  box-shadow: 0 14px 34px rgba(24, 33, 43, 0.06);
}

.transfer-month-card h3{
  margin: 0;
  padding: 12px 10px;
  background: #f2f4f0;
  color: #333333;
  font-size: 18px;
  line-height: 24px;
  text-transform: capitalize;
}

.transfer-weekdays,
.transfer-days{
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.transfer-weekdays span{
  padding: 8px 2px;
  background: #e2e6df;
  color: #262626;
  font-size: 12px;
  font-weight: 800;
}

.transfer-day{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  border-top: 1px solid #eeeeee;
  border-right: 1px solid #eeeeee;
  color: #444444;
  font-size: 13px;
  text-decoration: none;
}

.transfer-day:nth-child(7n){
  border-right: 0;
}

.transfer-day.empty{
  background: #fafafa;
}

.transfer-day.has-event{
  background: #e72636;
  color: #ffffff;
  font-weight: 800;
}

.transfer-day.has-event:hover{
  background: #b91522;
  color: #ffffff;
  text-decoration: none;
}

.transfer-event-list{
  max-width: 1060px;
  margin: 36px auto 0;
  text-align: left;
}

.transfer-event-list h3{
  margin: 0 0 18px;
  color: #333333;
  font-size: 28px;
  line-height: 36px;
  text-align: center;
}

.transfer-empty{
  margin: 0;
  padding: 18px;
  border: 1px dashed rgba(34, 34, 34, 0.18);
  border-radius: 8px;
  color: #666666;
  text-align: center;
}

.transfer-event-card{
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 22px;
  margin-bottom: 16px;
  padding: 22px;
  border: 1px solid rgba(34, 34, 34, 0.10);
  border-left: 4px solid #e72636;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(24, 33, 43, 0.06);
}

.transfer-event-card time{
  display: inline-block;
  margin-bottom: 8px;
  color: #e72636;
  font-weight: 800;
}

.transfer-event-card h4{
  margin: 0 0 10px;
  color: #333333;
  font-size: 22px;
  line-height: 30px;
}

.transfer-event-card p{
  margin: 0;
  color: #555555;
  font-size: 16px;
  line-height: 28px;
}

.transfer-event-card dl{
  margin: 0;
  padding: 16px;
  border-radius: 8px;
  background: #f6f7f5;
}

.transfer-event-card dt{
  color: #777777;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.transfer-event-card dd{
  margin: 3px 0 12px;
  color: #333333;
  font-size: 15px;
  line-height: 24px;
}

.about-tabs-content .tab-pane{
  display: none;
}

.about-tabs-content .tab-pane.show.active{
  display: block;
}

.guest-share-section .sec-title p{
  max-width: 760px;
  margin: 10px auto 0;
  color: #666666;
  font-size: 16px;
  line-height: 26px;
}

.guest-share-block{
  margin-bottom: 30px;
}

.guest-share-tabs{
  margin-top: 0;
}

.guest-share-tab-buttons{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-bottom: 32px;
}

.guest-share-tab-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 168px;
  padding: 13px 24px;
  border: 1px solid rgba(231, 38, 54, 0.18);
  border-radius: 8px;
  color: #222222;
  background: #ffffff;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
  box-shadow: 0 10px 26px rgba(24, 33, 43, 0.07);
  cursor: pointer;
  transition: all 220ms ease;
}

.guest-share-tab-btn span{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 28px;
  padding: 0 8px;
  border-radius: 999px;
  color: #ffffff;
  background: #e72636;
  font-size: 13px;
  line-height: 28px;
}

.guest-share-tab-btn:hover,
.guest-share-tab-btn.active{
  color: #ffffff;
  border-color: #e72636;
  background: #e72636;
  transform: translateY(-1px);
}

.guest-share-tab-btn:hover span,
.guest-share-tab-btn.active span{
  color: #e72636;
  background: #ffffff;
}

.guest-share-tab-panel{
  display: none;
}

.guest-share-tab-panel.active{
  display: block;
}

.guest-share-card{
  height: 100%;
  overflow: hidden;
  border: 1px solid rgba(34, 34, 34, 0.08);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 42px rgba(24, 33, 43, 0.08);
}

.guest-share-media{
  position: relative;
  margin: 0;
  height: 320px;
  overflow: hidden;
  background: #f2f4f7;
}

.guest-share-media img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 420ms ease;
}

.guest-share-card:hover .guest-share-media img{
  transform: scale(1.04);
}

.guest-share-media .icon-box{
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  background: rgba(24, 33, 43, 0.32);
  transition: opacity 260ms ease;
}

.guest-share-card:hover .guest-share-media .icon-box{
  opacity: 1;
}

.guest-share-media .icon-box a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  color: #ffffff;
  background: #e72636;
}

.guest-share-content{
  padding: 24px 24px 22px;
}

.guest-share-meta{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
  color: #777777;
  font-size: 14px;
  line-height: 20px;
}

.guest-share-meta strong{
  color: #222222;
  font-size: 15px;
  text-align: right;
}

.guest-share-content p{
  margin: 0;
  color: #555555;
  font-size: 16px;
  line-height: 29px;
}

.guest-share-video{
  padding: 0 24px 24px;
}

.guest-share-video.standalone{
  padding: 24px 24px 0;
}

.guest-share-video iframe,
.guest-share-video video{
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  border: 0;
  border-radius: 8px;
  background: #111111;
}

.guest-share-link{
  padding: 0 24px 24px;
}

.guest-share-link .theme-btn{
  padding: 10px 18px;
  border-radius: 999px;
  font-size: 14px;
  line-height: 20px;
}

.guest-share-empty{
  max-width: 720px;
  margin: 0 auto;
  padding: 42px 34px;
  border: 1px solid rgba(231, 38, 54, 0.14);
  border-radius: 8px;
  background: #ffffff;
  text-align: center;
  box-shadow: 0 16px 34px rgba(24, 33, 43, 0.06);
}

.guest-share-empty h3{
  margin-bottom: 12px;
  color: #222222;
  font-size: 28px;
  line-height: 36px;
}

.guest-share-empty p{
  margin: 0;
  color: #666666;
  font-size: 17px;
  line-height: 30px;
}

.guest-share-empty.compact{
  padding: 26px 28px;
}

.social-media-section .sec-title{
  max-width: 860px;
  margin: 0 auto 42px;
}

.social-media-section .sec-title p{
  margin-top: 16px;
  color: #666666;
  font-size: 18px;
  line-height: 31px;
}

.social-profile-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  margin-bottom: 48px;
}

.social-profile-card{
  display: flex;
  min-height: 142px;
  align-items: center;
  gap: 18px;
  padding: 24px;
  border: 1px solid rgba(34, 34, 34, 0.08);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 42px rgba(24, 33, 43, 0.08);
  transition: transform 220ms ease, box-shadow 220ms ease;
}

.social-profile-card:hover{
  transform: translateY(-3px);
  box-shadow: 0 22px 48px rgba(24, 33, 43, 0.12);
}

.social-profile-card span{
  display: inline-flex;
  width: 58px;
  height: 58px;
  flex: 0 0 58px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #ffffff;
  font-size: 26px;
}

.social-profile-card.instagram span{
  background: linear-gradient(135deg, #f58529, #dd2a7b, #8134af);
}

.social-profile-card.facebook span{
  background: #1877f2;
}

.social-profile-card.youtube span{
  background: #ff0000;
}

.social-profile-card strong{
  display: block;
  color: #2e2b2a;
  font-size: 22px;
  line-height: 28px;
}

.social-profile-card em{
  display: block;
  margin-top: 5px;
  color: #666666;
  font-style: normal;
  font-size: 15px;
  line-height: 23px;
}

.social-video-heading{
  margin-bottom: 28px;
  text-align: center;
}

.social-video-heading h3{
  color: #333333;
  font-size: 34px;
  line-height: 42px;
}

.enhanced-footer .footer-bottom{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 58px;
  padding: 16px 0 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.enhanced-footer .footer-bottom .copyright{
  float: none !important;
  color: rgba(255, 255, 255, 0.68);
  font-size: 14px;
  letter-spacing: 0;
  text-align: center;
}

html{
  overflow-x: hidden;
}

body{
  overflow-x: clip;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

img,
video,
iframe{
  max-width: 100%;
}

.container,
.row,
[class*="col-"],
.content-box,
.lower-content{
  min-width: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
li,
a,
span,
strong,
dd{
  overflow-wrap: anywhere;
}

.main-header{
  z-index: 999;
}

.owl-carousel,
.owl-stage-outer{
  max-width: 100%;
}

@media only screen and (max-width: 1199px){
  .home-main-section{
    padding: 64px 0;
  }

  .home-main-section .image-box .image,
  .home-main-section .image-box img{
    min-height: 470px;
  }

  .home-cat-carousel .team-block-one .image-box{
    height: 440px;
  }

  .enhanced-footer .footer-logo img{
    max-width: 320px;
  }

  .enhanced-footer .links-widget,
  .enhanced-footer .contact-widget{
    padding-left: 24px;
  }
}

@media only screen and (max-width: 991px){
  .home-main-section{
    padding: 56px 0;
  }

  .main-slider .content-box h2{
    font-size: 40px;
    line-height: 1.14;
  }

  .home-main-section .sec-title h1,
  .home-main-section .sec-title h2{
    font-size: 32px;
    line-height: 1.22;
  }

  .home-main-section .row{
    display: block;
  }

  .home-main-section .content-column,
  .home-main-section .image-column{
    display: block;
  }

  .home-main-section .image-column{
    margin-top: 26px;
  }

  .home-info-band.home-main-section .image-column{
    margin-top: 0;
    margin-bottom: 26px;
  }

  .home-main-section .image-box .image,
  .home-main-section .image-box img{
    min-height: 390px;
  }

  .main-header .header-top{
    display: block !important;
    padding: 10px 0;
  }

  .main-header .header-top .header-info{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px 14px;
  }

  .header-social-center,
  .header-language-select,
  .header-federation-icons{
    float: none !important;
    position: static !important;
    margin: 0 !important;
    transform: none;
  }

  .header-federation-icons .f-logo{
    width: 44px;
    height: 44px;
  }

  .header-language-select .dropdown-toggle{
    height: auto;
    line-height: 22px;
  }

  .social-profile-grid{
    grid-template-columns: 1fr;
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
  }

  .transfer-calendar-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .transfer-event-card{
    grid-template-columns: 1fr;
  }

  .main-header .header-bottom .container > .clearfix{
    display: block;
    min-height: 0;
  }

  .main-header .header-bottom .logo-box{
    float: none;
    display: block;
    width: 100%;
    margin: 0;
    padding: 18px 0 12px;
    text-align: center;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }

  .main-header .header-bottom .logo-box:before{
    display: none;
  }

  .main-header .header-bottom .logo-box a{
    min-height: 0;
  }

  .main-header .header-bottom .logo-box img{
    width: auto;
    max-width: 300px;
    max-height: 82px;
  }

  .main-header .header-bottom .nav-outer,
  .main-header .menu-area{
    float: none;
    display: block;
    width: 100%;
  }

  .main-menu .navbar-header{
    padding-bottom: 12px;
    text-align: center;
  }

  .main-menu .navbar-collapse{
    max-height: calc(100vh - 170px);
    overflow-y: auto;
  }

  .main-menu .navigation{
    display: block;
  }

  .main-menu .navigation > li,
  .main-menu .navigation > li > ul > li{
    width: 100%;
  }

  .main-menu .navigation > li > a,
  .main-menu .navigation > li > ul > li > a{
    white-space: normal;
    line-height: 24px;
  }

  .blog-detail-page{
    padding: 70px 0 90px;
  }

  .blog-detail-page .blog-sidebar{
    position: relative;
    top: auto;
    margin-top: 46px;
  }

  .cat-development-timeline > li:nth-child(odd),
  .cat-development-timeline > li:nth-child(even){
    left: 0;
    right: 0;
    height: auto;
    min-height: 0;
    margin-bottom: 42px;
    padding: 0;
  }

  .cat-development-timeline > li .timeline-image{
    position: relative;
    left: auto;
    top: auto;
    width: 180px;
    height: 180px;
    margin: 0 auto 22px;
  }

  .cat-development-timeline > li .timeline-panel,
  .cat-development-timeline > li.timeline-inverted > .timeline-panel{
    float: none;
    width: 100%;
    padding: 0;
    text-align: center;
  }

  .cat-development-timeline > li .line{
    display: none;
  }

  .enhanced-footer .footer-column:first-child,
  .enhanced-footer .footer-column:nth-child(2),
  .enhanced-footer .footer-column:nth-child(3){
    flex: 0 0 100%;
    max-width: 100%;
  }

  .enhanced-footer .links-widget,
  .enhanced-footer .contact-widget{
    padding: 18px 0 0;
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
  }

  .footer-seo-text{
    max-width: none;
  }
}

@media only screen and (max-width: 767px){
  .home-main-section{
    padding: 46px 0;
  }

  .main-slider .content-box h2{
    font-size: 32px;
    line-height: 1.16;
  }

  .home-main-section .sec-title{
    margin-bottom: 24px;
  }

  .home-main-section .sec-title .top-title{
    min-height: 0;
    padding: 0 2px 5px;
    font-size: 21px;
    line-height: 28px;
  }

  .home-main-section .sec-title h1,
  .home-main-section .sec-title h2{
    font-size: 27px;
    line-height: 1.24;
  }

  .home-main-section .team-block-one .lower-content h3,
  .home-main-section .team-block-one .lower-content h3 a{
    font-size: 21px;
    line-height: 27px;
  }

  .home-main-section .image-box .image,
  .home-main-section .image-box img{
    min-height: 310px;
  }

  .main-header{
    position: sticky;
  }

  .header-social-center li a{
    width: 36px;
    height: 36px;
    line-height: 37px;
    font-size: 18px;
  }

  .header-federation-icons .f-logo{
    width: 38px;
    height: 38px;
    padding: 4px;
  }

  .transfer-calendar-section{
    padding: 24px 0 58px;
  }

  .transfer-year-bar{
    gap: 18px;
    margin-bottom: 22px;
  }

  .transfer-calendar-grid{
    grid-template-columns: 1fr;
  }

  .transfer-month-card h3{
    font-size: 17px;
  }

  .transfer-day{
    min-height: 34px;
  }

  .transfer-event-list h3{
    font-size: 24px;
    line-height: 32px;
  }

  .transfer-event-card{
    padding: 18px;
  }

  .header-language-select .dropdown-toggle{
    min-width: 0;
    height: auto;
    padding: 4px 9px 4px 8px;
    line-height: 22px;
  }

  .main-header .header-bottom .logo-box img{
    width: auto;
    max-width: min(310px, 82vw);
    max-height: 78px;
  }

  .container{
    padding-left: 16px;
    padding-right: 16px;
  }

  .page-title{
    padding: 82px 0 74px;
  }

  .page-title h1,
  .page-title .content-box h1{
    font-size: 30px;
    line-height: 38px;
  }

  .sec-title h1,
  .sec-title h2{
    font-size: 30px;
    line-height: 38px;
  }

  .service-block-one,
  .team-block-one,
  .news-block-one,
  .single-gallery-block{
    max-width: 420px;
    margin-left: auto;
    margin-right: auto;
  }

  .service-block-one .image-box,
  .team-block-one .image-box,
  .single-gallery-block .image-box{
    min-height: 0;
  }

  .blog-detail-page .blog-single-content .news-block-one h2{
    font-size: 32px;
    line-height: 39px;
  }

  .blog-article-body{
    font-size: 16px;
    line-height: 30px;
  }

  .blog-post-nav{
    grid-template-columns: 1fr;
  }

  .blog-post-nav-card.next{
    text-align: left;
  }

  .home-cat-carousel .team-block-one .image-box{
    height: 430px;
  }

  .home-cat-carousel .owl-nav .owl-prev,
  .home-gallery-carousel .owl-nav .owl-prev,
  .home-blog-carousel .owl-nav .owl-prev{
    margin-left: 4px;
  }

  .home-cat-carousel .owl-nav .owl-next,
  .home-gallery-carousel .owl-nav .owl-next,
  .home-blog-carousel .owl-nav .owl-next{
    margin-right: 4px;
  }

  .enhanced-footer{
    margin-top: 26px;
  }

  .enhanced-footer .widget-section{
    padding: 30px 0 24px;
  }

  .enhanced-footer .footer-logo img{
    max-width: 100%;
    max-height: 58px;
  }

  .footer-seo-text{
    font-size: 13.5px;
    line-height: 23px;
  }

  .enhanced-footer .footer-widget h3{
    font-size: 21px;
    line-height: 27px;
  }

  .footer-social li a{
    width: 43px;
    height: 43px;
    line-height: 43px;
  }

  .enhanced-footer .contact-widget .footer-contact-list li{
    align-items: flex-start;
  }

  .guest-share-media{
    height: 290px;
  }

  .guest-share-section.sec-pad{
    padding-top: 24px !important;
    padding-bottom: 44px !important;
  }

  .guest-share-section .sec-title{
    margin-bottom: 14px !important;
  }

  .guest-share-section .sec-title h2{
    margin-bottom: 6px !important;
    font-size: 24px !important;
    line-height: 30px !important;
  }

  .guest-share-section .sec-title p{
    display: -webkit-box;
    max-width: 100%;
    margin-top: 7px !important;
    overflow: hidden;
    color: #555555;
    font-size: 13.5px !important;
    line-height: 20px !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  .guest-share-tab-buttons{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 16px;
  }

  .guest-share-tab-btn{
    min-width: 0;
    padding: 10px 8px;
    font-size: 14px;
    line-height: 19px;
  }

  .guest-share-tab-btn span{
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    font-size: 12px;
    line-height: 22px;
  }

  .guest-share-content{
    padding: 20px;
  }

  .guest-share-video{
    padding: 0 20px 20px;
  }

  .guest-share-video.standalone{
    padding: 20px 20px 0;
  }

  .guest-share-link{
    padding: 0 20px 20px;
  }

  .guest-share-meta{
    align-items: flex-start;
    flex-direction: column;
  }

  .guest-share-meta strong{
    text-align: left;
  }

  .social-profile-card{
    min-height: 126px;
    padding: 20px;
  }

  .social-video-heading h3{
    font-size: 28px;
    line-height: 36px;
  }

  .transfer-step{
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 14px;
    padding: 20px;
  }

  .transfer-step-number{
    width: 44px;
    height: 44px;
    font-size: 18px;
  }

  .transfer-intro,
  .transfer-step-body p{
    font-size: 16px;
    line-height: 29px;
  }

  .about-tabs-section .about-brand-logo-card{
    min-height: 240px;
    padding: 30px;
  }

  .about-tabs-section .about-brand-logo-card img{
    max-height: 130px;
  }

  .about-text-panel{
    padding: 24px 22px;
    font-size: 16px;
    line-height: 29px;
  }

  .cat-development-card .image-box{
    height: 360px;
  }

  .cat-development-card p{
    padding: 18px 18px 22px;
    font-size: 15px;
    line-height: 27px;
  }

  .cat-development-timeline > li .timeline-image{
    width: 150px;
    height: 150px;
  }

  .cat-development-timeline .timeline-heading h4{
    font-size: 18px;
    line-height: 26px;
  }

  .cat-development-timeline .timeline-body .text-muted{
    font-size: 15px;
    line-height: 27px;
  }

  .cat-photo-gallery-grid .single-gallery-block .image-box{
    height: 280px;
  }

  .cat-media-tabs-section{
    padding: 58px 0 66px;
  }

  .cat-media-tabs .nav-tabs{
    gap: 6px;
    margin-bottom: 22px;
  }

  .cat-media-tabs.CatTabMenu li{
    flex: 1 1 100%;
    border-radius: 8px;
  }

  .cat-media-tabs.CatTabMenu li a{
    width: 100%;
    min-height: 48px;
    padding: 0 18px;
  }

  .cat-media-tab-content{
    padding: 18px;
  }
}

@media only screen and (max-width: 575px){
  html,
  body{
    width: 100%;
    max-width: 100%;
    overflow-x: hidden !important;
  }

  .main-header .header-top{
    display: block !important;
    padding: 14px 0 !important;
    background: #3b3634 !important;
  }

  .main-header .header-top .container{
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }

  .main-header .header-top .header-info{
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }

  .mobile-header-contact{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 132px;
    min-height: 40px;
    padding: 0 16px;
    border-radius: 5px;
    background: #9bd52b;
    color: #ffffff !important;
    font-family: "Racing Sans One", sans-serif;
    font-size: 15px;
    line-height: 20px;
    text-transform: uppercase;
    text-decoration: none !important;
  }

  .header-social-center,
  .header-federation-icons{
    display: none !important;
  }

  .header-language-select{
    display: inline-flex !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  .LanSelect{
    float: none !important;
    margin: 0 !important;
  }

  .seo-focus-section{
    display: none !important;
  }

  .seo-focus-section .container{
    width: 100%;
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .seo-focus-section p{
    display: -webkit-box !important;
    width: 100%;
    max-width: 100%;
    margin: 0 auto !important;
    padding: 0 !important;
    font-size: 15px !important;
    line-height: 27px !important;
    text-align: center !important;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
  }

  .home-trust-badges{
    padding: 14px 0 12px !important;
  }

  .home-trust-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .home-trust-badge{
    grid-template-columns: 30px minmax(0, 1fr) !important;
    min-height: 72px !important;
    padding: 10px 9px !important;
    column-gap: 8px !important;
  }

  .home-trust-badge i{
    width: 30px !important;
    height: 30px !important;
    font-size: 14px !important;
  }

  .home-trust-badge strong{
    font-size: 13px !important;
    line-height: 17px !important;
  }

  .home-trust-badge span{
    margin-top: 2px !important;
    font-size: 11.5px !important;
    line-height: 16px !important;
  }
}

@media only screen and (max-width: 360px){
  .home-trust-grid{
    grid-template-columns: 1fr !important;
  }
}

/* Mobile focus pass: keep attention on kittens, parents, graduates and photos. */
@media only screen and (max-width: 991px){
  .main-slider .slide{
    min-height: 390px;
    padding: 74px 0 68px !important;
    background-position: center center;
  }

  .main-slider .content-box{
    max-width: 620px;
  }

  .main-slider .content-box .top-text{
    margin-bottom: 12px;
    font-size: 24px !important;
    line-height: 30px !important;
  }

  .main-slider .content-box h2{
    margin-bottom: 18px;
    font-size: 38px !important;
    line-height: 1.14 !important;
  }

  .main-slider .slider-btn .theme-btn{
    min-height: 42px;
    padding: 10px 22px;
    font-size: 16px;
    line-height: 22px;
  }

  .home-main-section{
    padding: 42px 0 !important;
  }

  .home-info-band.home-main-section,
  .welcome-section.home-main-section{
    padding: 28px 0 !important;
  }

  .home-info-band .content-box .text,
  .welcome-section.home-main-section .content-box .text{
    font-size: 15px;
    line-height: 26px;
  }

  .home-info-band .content-box .text p,
  .welcome-section.home-main-section .content-box .text p{
    margin-bottom: 12px;
  }

  .home-info-band .content-box .text p:nth-of-type(n+3),
  .welcome-section.home-main-section .content-box .text p:nth-of-type(n+3){
    display: none;
  }

  .home-main-section .sec-title{
    margin-bottom: 18px !important;
  }

  .home-main-section .sec-title .top-title{
    font-size: 18px !important;
    line-height: 24px !important;
  }

  .home-main-section .sec-title h1,
  .home-main-section .sec-title h2{
    margin-top: 2px;
    padding-bottom: 9px;
    font-size: 29px !important;
    line-height: 1.18 !important;
  }

  .home-main-section .sec-title h1:after,
  .home-main-section .sec-title h2:after{
    width: 58px;
    height: 2px;
  }

  .home-section-copy{
    max-width: 760px;
    margin: -4px auto 18px;
    font-size: 15px;
    line-height: 25px;
  }

  .home-section-copy p,
  .home-section-copy{
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .home-cat-carousel .team-block-one{
    padding: 9px 9px 0;
    box-shadow: 0 10px 22px rgba(59, 54, 52, 0.10);
  }

  .home-cat-carousel .team-block-one .image-box{
    height: clamp(340px, 56vw, 470px) !important;
  }

  .home-cat-carousel .team-block-one .lower-content{
    padding: 14px 6px 15px;
  }

  .home-cat-carousel .team-block-one .lower-content h3,
  .home-cat-carousel .team-block-one .lower-content h3 a{
    font-size: 20px !important;
    line-height: 26px !important;
  }

  .home-cat-carousel .owl-nav,
  .home-gallery-carousel .owl-nav,
  .home-blog-carousel .owl-nav{
    top: 44%;
  }

  .home-cat-carousel .owl-nav .owl-prev,
  .home-cat-carousel .owl-nav .owl-next,
  .home-gallery-carousel .owl-nav .owl-prev,
  .home-gallery-carousel .owl-nav .owl-next,
  .home-blog-carousel .owl-nav .owl-prev,
  .home-blog-carousel .owl-nav .owl-next{
    width: 42px;
    height: 42px;
    font-size: 19px;
  }

  .gallery-section.home-main-section{
    padding: 36px 0 !important;
  }

  .home-gallery-carousel .single-gallery-block .image-box{
    height: clamp(220px, 36vw, 300px);
  }

  .home-blog-preview-section{
    padding: 38px 0 44px !important;
  }

  .home-blog-preview-section .news-block-one .image-box{
    height: clamp(190px, 34vw, 255px);
  }

  .home-blog-preview-section .news-block-one .lower-content{
    padding: 18px 16px 20px;
  }

  .home-blog-preview-section .news-block-one .lower-content h3,
  .home-blog-preview-section .news-block-one .lower-content h3 a{
    min-height: 0;
    font-size: 18px !important;
    line-height: 25px !important;
  }

  .home-blog-preview-section .news-block-one .lower-content .text p{
    display: -webkit-box;
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 23px;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .home-main-section .message-btn.mt-5,
  .gallery-section .message-btn.mt-5,
  .home-blog-preview-section .message-btn.mt-5{
    margin-top: 18px !important;
  }
}

@media only screen and (max-width: 575px){
  .main-header .header-top{
    padding: 8px 0 !important;
  }

  .mobile-header-contact{
    min-width: 116px !important;
    min-height: 34px !important;
    padding: 0 10px !important;
    font-size: 13px !important;
    line-height: 18px !important;
  }

  .LanSelect button{
    min-height: 34px !important;
    padding: 0 8px !important;
    font-size: 12px !important;
    line-height: 34px !important;
  }

  .main-header .header-bottom .logo-box{
    padding: 10px 12px 8px !important;
  }

  .main-header .header-bottom .logo-box img{
    max-width: min(250px, 78vw) !important;
    max-height: 58px !important;
  }

  .main-menu .navbar-header{
    padding-bottom: 7px !important;
    display: flex !important;
    justify-content: center !important;
  }

  .main-menu .navbar-toggle{
    display: inline-flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 40px !important;
    height: 32px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #e72636 !important;
    box-shadow: 0 8px 18px rgba(231, 38, 54, .22);
  }

  .main-menu .navbar-toggle .icon-bar{
    display: block !important;
    width: 18px !important;
    height: 2px !important;
    margin: 2px 0 !important;
    border-radius: 999px;
    background: #ffffff !important;
  }

  .main-menu .navbar-toggle .icon-bar:nth-child(2){
    width: 22px !important;
  }

  .main-menu .navbar-toggle .icon-bar:nth-child(3){
    width: 15px !important;
  }

  .main-slider .slide{
    min-height: 320px;
    padding: 50px 0 48px !important;
    background-position: center center;
  }

  .main-slider .content-box{
    padding: 0 14px !important;
  }

  .main-slider .content-box .top-text{
    margin-bottom: 8px !important;
    padding-bottom: 4px !important;
    font-size: 17px !important;
    line-height: 22px !important;
  }

  .main-slider .content-box h2{
    margin-bottom: 14px !important;
    font-size: 25px !important;
    line-height: 1.15 !important;
  }

  .main-slider .slider-btn .theme-btn{
    min-height: 38px;
    padding: 8px 16px;
    font-size: 14px;
    line-height: 20px;
  }

  .home-trust-badges{
    padding: 10px 0 8px !important;
  }

  .home-trust-grid{
    gap: 6px !important;
  }

  .home-trust-badge{
    grid-template-columns: 24px minmax(0, 1fr) !important;
    min-height: 58px !important;
    padding: 8px 7px !important;
    column-gap: 6px !important;
  }

  .home-trust-badge i{
    width: 24px !important;
    height: 24px !important;
    font-size: 12px !important;
  }

  .home-trust-badge strong{
    font-size: 12px !important;
    line-height: 15px !important;
  }

  .home-trust-badge span{
    font-size: 10.5px !important;
    line-height: 14px !important;
  }

  .home-main-section{
    padding: 30px 0 !important;
  }

  .home-info-band.home-main-section,
  .welcome-section.home-main-section{
    padding: 20px 0 !important;
  }

  .home-info-band .image-column,
  .welcome-section.home-main-section .image-column{
    margin-top: 14px !important;
    margin-bottom: 12px !important;
  }

  .home-main-section .image-box .image,
  .home-main-section .image-box img{
    min-height: 0 !important;
  }

  .welcome-section.home-main-section .image-box img{
    max-height: 260px;
    object-fit: contain;
  }

  .home-info-band .content-box .text,
  .welcome-section.home-main-section .content-box .text{
    font-size: 14px !important;
    line-height: 23px !important;
  }

  .home-info-band .content-box .text p,
  .welcome-section.home-main-section .content-box .text p{
    margin-bottom: 8px !important;
  }

  .home-main-section .sec-title{
    margin-bottom: 14px !important;
  }

  .home-main-section .sec-title .top-title{
    padding-bottom: 3px !important;
    font-size: 15px !important;
    line-height: 20px !important;
  }

  .home-main-section .sec-title h1,
  .home-main-section .sec-title h2,
  .sec-title h1,
  .sec-title h2{
    font-size: 23px !important;
    line-height: 29px !important;
  }

  .home-section-copy{
    margin: -2px auto 12px !important;
    font-size: 13.5px !important;
    line-height: 22px !important;
    -webkit-line-clamp: 2;
  }

  .home-cat-carousel .team-block-one{
    padding: 7px 7px 0 !important;
  }

  .home-cat-carousel .team-block-one .image-box{
    height: min(74vh, 430px) !important;
    min-height: 330px;
  }

  .home-cat-carousel .team-block-one .lower-content{
    padding: 10px 4px 12px !important;
  }

  .home-cat-carousel .team-block-one .lower-content h3,
  .home-cat-carousel .team-block-one .lower-content h3 a{
    font-size: 18px !important;
    line-height: 23px !important;
  }

  .cat-gender-badge{
    top: 10px;
    left: 10px;
    min-height: 26px;
    padding: 4px 9px;
    font-size: 11px;
    line-height: 16px;
  }

  .home-cat-carousel .owl-nav .owl-prev,
  .home-gallery-carousel .owl-nav .owl-prev,
  .home-blog-carousel .owl-nav .owl-prev{
    margin-left: 2px !important;
  }

  .home-cat-carousel .owl-nav .owl-next,
  .home-gallery-carousel .owl-nav .owl-next,
  .home-blog-carousel .owl-nav .owl-next{
    margin-right: 2px !important;
  }

  .home-gallery-carousel .single-gallery-block .image-box{
    height: 245px !important;
  }

  .home-blog-preview-section .news-block-one .image-box{
    height: 210px !important;
  }

  .home-blog-preview-section .news-block-one .lower-content{
    padding: 15px 14px 18px !important;
  }

  .home-blog-preview-section .news-block-one .lower-content h3,
  .home-blog-preview-section .news-block-one .lower-content h3 a{
    font-size: 17px !important;
    line-height: 23px !important;
  }

  .theme-btn{
    min-height: 38px;
    padding: 9px 17px;
    font-size: 14px;
    line-height: 20px;
  }

  .enhanced-footer{
    margin-top: 16px !important;
  }

  .enhanced-footer .widget-section{
    padding: 24px 0 18px !important;
  }

  .enhanced-footer .row{
    row-gap: 14px !important;
  }

  .enhanced-footer .footer-logo{
    max-width: 250px !important;
    margin: 0 auto 10px !important;
    padding: 10px 12px !important;
  }

  .enhanced-footer .footer-logo a{
    justify-content: center !important;
  }

  .enhanced-footer .footer-logo img{
    max-height: 48px !important;
  }

  .footer-seo-text{
    max-width: 100% !important;
    margin: 0 auto 12px !important;
    font-size: 12.5px !important;
    line-height: 21px !important;
    text-align: center;
  }

  .footer-social{
    justify-content: center !important;
    gap: 7px !important;
    margin-top: 8px !important;
  }

  .footer-social li a{
    width: 34px !important;
    height: 34px !important;
    line-height: 34px !important;
    font-size: 15px !important;
  }

  .enhanced-footer .links-widget,
  .enhanced-footer .contact-widget{
    padding: 12px 0 0 !important;
  }

  .enhanced-footer .footer-widget h3{
    margin-bottom: 13px !important;
    font-size: 19px !important;
    line-height: 24px !important;
  }

  .enhanced-footer .footer-widget h3:after{
    bottom: -6px !important;
    width: 32px !important;
    height: 2px !important;
  }

  .enhanced-footer .links-list li{
    margin-bottom: 3px !important;
  }

  .enhanced-footer .links-list li a{
    min-height: 24px !important;
    font-size: 13px !important;
    line-height: 20px !important;
  }

  .enhanced-footer .links-list li a:before{
    margin-right: 7px !important;
    font-size: 11px !important;
  }

  .enhanced-footer .contact-widget .footer-contact-list li{
    gap: 8px !important;
    margin-bottom: 8px !important;
    font-size: 13px !important;
    line-height: 21px !important;
  }

  .enhanced-footer .contact-widget .footer-contact-list li i{
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    line-height: 26px !important;
    font-size: 12px !important;
  }

  .enhanced-footer .footer-bottom{
    min-height: 42px !important;
    padding: 10px 0 12px !important;
  }

  .enhanced-footer .footer-bottom .copyright{
    font-size: 11.5px !important;
    line-height: 19px !important;
  }
}

/* Clear mobile menu and compact trust strip. */
@media only screen and (max-width: 991px){
  .main-menu .navbar-header{
    display: flex !important;
    justify-content: center !important;
    padding-bottom: 8px !important;
  }

  .main-menu .navbar-toggle{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: auto !important;
    min-width: 86px !important;
    height: 36px !important;
    margin: 0 auto !important;
    padding: 0 12px !important;
    border: 1px solid rgba(231, 38, 54, .45) !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    box-shadow: 0 8px 18px rgba(59, 54, 52, .10) !important;
  }

  .mobile-menu-bars{
    display: inline-flex !important;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    width: 22px;
    height: 18px;
  }

  .main-menu .navbar-toggle .icon-bar{
    display: block !important;
    width: 22px !important;
    height: 2px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #e72636 !important;
  }

  .main-menu .navbar-toggle .icon-bar:nth-child(2),
  .main-menu .navbar-toggle .icon-bar:nth-child(3){
    width: 22px !important;
  }

  .mobile-menu-label{
    display: inline-block !important;
    color: #3b3634;
    font-family: 'Arvo', serif;
    font-size: 13px;
    line-height: 18px;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
  }

  .home-trust-badges{
    padding: 8px 0 6px !important;
    border-top: 1px solid #f0ebe6;
    border-bottom: 1px solid #f0ebe6;
  }

  .home-trust-badges .container{
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .home-trust-grid{
    display: flex !important;
    grid-template-columns: none !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 14px 3px !important;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }

  .home-trust-grid::-webkit-scrollbar{
    display: none;
  }

  .home-trust-badge{
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    min-height: 38px !important;
    padding: 7px 11px !important;
    column-gap: 0 !important;
    gap: 7px !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    scroll-snap-align: start;
  }

  .home-trust-badge i{
    flex: 0 0 auto;
    width: 24px !important;
    height: 24px !important;
    font-size: 12px !important;
  }

  .home-trust-badge strong{
    white-space: nowrap;
    font-size: 12.5px !important;
    line-height: 16px !important;
  }

  .home-trust-badge span{
    display: none !important;
  }
}

@media only screen and (max-width: 575px){
  .main-menu .navbar-header{
    padding-bottom: 6px !important;
  }

  .main-menu .navbar-toggle{
    min-width: 82px !important;
    height: 34px !important;
    padding: 0 10px !important;
  }

  .mobile-menu-label{
    font-size: 12px !important;
    line-height: 16px !important;
  }

  .home-trust-badges{
    padding: 6px 0 5px !important;
  }

  .home-trust-grid{
    gap: 6px !important;
    padding: 0 10px 2px !important;
  }

  .home-trust-badge{
    min-height: 34px !important;
    padding: 6px 9px !important;
    gap: 6px !important;
  }

  .home-trust-badge i{
    width: 21px !important;
    height: 21px !important;
    font-size: 10px !important;
  }

  .home-trust-badge strong{
    font-size: 11.5px !important;
    line-height: 15px !important;
  }
}

.home-feature-stack .container{
  max-width: 1040px;
}

.home-feature-stack .home-feature-image{
  max-width: 860px;
  margin: 0 auto 28px;
}

.home-feature-stack .home-feature-image .image{
  margin: 0;
  overflow: hidden;
  border-radius: 8px;
  background: #f4f1ee;
}

.home-feature-stack .home-feature-image img{
  display: block;
  width: 100%;
  max-height: 520px;
  object-fit: cover;
}

.home-feature-stack .home-feature-copy{
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.home-feature-stack .home-feature-copy .text{
  color: #5f5a57;
  font-size: 17px;
  line-height: 30px;
}

.home-feature-stack .home-feature-copy .text p{
  margin-bottom: 0;
}

@media only screen and (max-width: 991px){
  .mobile-menu-bars,
  .main-menu .navbar-toggle .icon-bar{
    display: none !important;
  }

  .mobile-menu-icon{
    display: inline-block !important;
    color: #e72636;
    font-size: 16px;
    line-height: 1;
  }

  .home-feature-stack{
    padding: 34px 0 !important;
  }

  .home-feature-stack .home-feature-image{
    margin-bottom: 18px;
  }

  .home-feature-stack .home-feature-image img{
    max-height: 390px;
  }

  .home-feature-stack .home-feature-copy .text{
    font-size: 15px;
    line-height: 25px;
  }

  .home-section-copy{
    max-width: 680px !important;
    margin-bottom: 14px !important;
    font-size: 14px !important;
    line-height: 23px !important;
  }

  .enhanced-footer .logo-widget{
    text-align: center;
  }

  .footer-seo-text,
  .enhanced-footer .logo-widget > .text{
    display: none !important;
  }
}

@media only screen and (max-width: 575px){
  .main-menu .navbar-toggle{
    min-width: 78px !important;
    height: 32px !important;
    gap: 7px !important;
    padding: 0 9px !important;
    border-color: rgba(59, 54, 52, .18) !important;
    background: #fff !important;
  }

  .mobile-menu-icon{
    font-size: 15px !important;
  }

  .home-feature-stack{
    padding: 24px 0 !important;
  }

  .home-feature-stack .home-feature-image{
    margin-bottom: 14px !important;
  }

  .home-feature-stack .home-feature-image img{
    max-height: 270px !important;
  }

  .home-feature-stack .home-feature-copy .sec-title{
    margin-bottom: 10px !important;
  }

  .home-feature-stack .home-feature-copy .text{
    font-size: 13.5px !important;
    line-height: 22px !important;
  }

  .home-feature-stack .home-feature-copy .text p{
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .home-section-copy{
    font-size: 13px !important;
    line-height: 21px !important;
    -webkit-line-clamp: 2 !important;
  }

  .enhanced-footer .widget-section{
    padding: 18px 0 12px !important;
  }
}

/* Professional mobile homepage: same identity, faster access to cats and photos. */
@media only screen and (max-width: 991px){
  body{
    -webkit-text-size-adjust: 100%;
  }

  .main-header{
    box-shadow: 0 6px 18px rgba(27, 24, 23, .08);
  }

  .main-header .header-bottom .container{
    padding-left: 10px;
    padding-right: 10px;
  }

  .main-menu .navbar-toggle{
    text-transform: none !important;
  }

  .main-menu .navbar-collapse{
    margin-top: 6px;
    border-top: 1px solid rgba(59, 54, 52, .08);
    background: #ffffff;
  }

  .main-menu .navigation > li > a,
  .main-menu .navigation > li > ul > li > a{
    font-size: 14px !important;
    line-height: 21px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }

  .main-slider .slide{
    min-height: 340px !important;
    padding: 58px 0 56px !important;
  }

  .main-slider .content-box .top-text{
    font-size: 18px !important;
    line-height: 23px !important;
  }

  .main-slider .content-box h2{
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
    font-size: 28px !important;
    line-height: 1.16 !important;
  }

  .seo-focus-section{
    display: none !important;
  }

  .home-trust-badges{
    position: relative;
    z-index: 2;
    background: #fffdf9 !important;
  }

  .home-feature-stack:first-of-type{
    padding-top: 24px !important;
  }

  .home-feature-stack:not(:first-of-type){
    display: none !important;
  }

  .home-feature-stack .home-feature-image{
    max-width: 620px;
  }

  .home-feature-stack .home-feature-image img{
    aspect-ratio: 16 / 10;
    height: auto;
    max-height: 330px;
    object-fit: cover;
  }

  .home-feature-stack .home-feature-copy .sec-title .top-title{
    font-size: 15px !important;
    line-height: 20px !important;
  }

  .home-feature-stack .home-feature-copy .sec-title h2{
    font-size: 24px !important;
    line-height: 30px !important;
  }

  .team-style-two.home-main-section{
    padding-top: 32px !important;
    padding-bottom: 34px !important;
  }

  .team-style-two.home-main-section .sec-title{
    margin-bottom: 10px !important;
  }

  .team-style-two.home-main-section .sec-title .top-title{
    display: none !important;
  }

  .team-style-two.home-main-section .sec-title h2{
    font-size: 25px !important;
    line-height: 31px !important;
  }

  .home-cat-carousel .team-block-one{
    max-width: none;
  }

  .home-cat-carousel .team-block-one .image-box{
    height: clamp(360px, 58vw, 450px) !important;
  }

  .home-main-section .message-btn .theme-btn{
    min-width: 210px;
  }

  .gallery-section.home-main-section,
  .home-blog-preview-section{
    padding-top: 32px !important;
  }
}

@media only screen and (max-width: 575px){
  .main-header .header-bottom .logo-box{
    padding-top: 8px !important;
    padding-bottom: 6px !important;
  }

  .main-header .header-bottom .logo-box img{
    max-width: min(232px, 76vw) !important;
    max-height: 54px !important;
  }

  .main-menu .navbar-collapse{
    max-height: calc(100vh - 118px) !important;
  }

  .main-menu .navigation > li > a,
  .main-menu .navigation > li > ul > li > a{
    font-size: 13px !important;
    line-height: 20px !important;
    padding-top: 9px !important;
    padding-bottom: 9px !important;
  }

  .main-slider .slide{
    min-height: 292px !important;
    padding: 42px 0 42px !important;
  }

  .main-slider .content-box h2{
    max-width: 300px;
    font-size: 23px !important;
    line-height: 28px !important;
  }

  .main-slider .slider-btn .theme-btn{
    min-height: 34px;
    padding: 7px 14px;
    font-size: 13px;
  }

  .home-feature-stack:first-of-type{
    padding: 18px 0 20px !important;
  }

  .home-feature-stack .home-feature-image img{
    max-height: 230px !important;
  }

  .home-feature-stack .home-feature-copy .sec-title h2{
    font-size: 20px !important;
    line-height: 26px !important;
  }

  .home-feature-stack .home-feature-copy .text p{
    -webkit-line-clamp: 3;
  }

  .team-style-two.home-main-section{
    padding-top: 25px !important;
    padding-bottom: 28px !important;
  }

  .team-style-two.home-main-section .sec-title h2{
    font-size: 22px !important;
    line-height: 28px !important;
  }

  .home-cat-carousel .team-block-one .image-box{
    height: min(68vh, 400px) !important;
    min-height: 315px !important;
  }

  .home-cat-carousel .owl-nav,
  .home-gallery-carousel .owl-nav,
  .home-blog-carousel .owl-nav{
    top: 43%;
  }

  .home-cat-carousel .owl-nav .owl-prev,
  .home-cat-carousel .owl-nav .owl-next,
  .home-gallery-carousel .owl-nav .owl-prev,
  .home-gallery-carousel .owl-nav .owl-next,
  .home-blog-carousel .owl-nav .owl-prev,
  .home-blog-carousel .owl-nav .owl-next{
    width: 36px !important;
    height: 36px !important;
    font-size: 17px !important;
  }
}

/* Mobile refinements requested on 2026-06-13. */
.read-more-toggle,
.read-more-link{
  display: none;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  margin-top: 8px;
  padding: 0 13px;
  border: 1px solid rgba(231, 38, 54, .35);
  border-radius: 999px;
  background: transparent;
  color: #e72636;
  font-size: 13px;
  line-height: 18px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}

.read-more-toggle:hover,
.read-more-link:hover{
  color: #ffffff;
  background: #e72636;
  text-decoration: none;
}

.read-more-block.is-expanded .read-more-content{
  display: block !important;
  -webkit-line-clamp: unset !important;
  overflow: visible !important;
}

@media only screen and (max-width: 991px){
  .read-more-toggle,
  .read-more-link{
    display: inline-flex;
  }

  .main-menu .navbar-toggle{
    min-width: 0 !important;
    height: 28px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .mobile-menu-icon{
    font-size: 18px !important;
  }

  .mobile-menu-label{
    font-size: 12px !important;
    line-height: 16px !important;
  }

  .home-trust-badges{
    padding: 4px 0 !important;
  }

  .home-trust-grid{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 4px !important;
    padding: 0 8px !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .home-trust-badge{
    justify-content: center !important;
    min-height: 26px !important;
    padding: 4px 5px !important;
    gap: 4px !important;
    border-radius: 5px !important;
    background: #fff !important;
  }

  .home-trust-badge i{
    width: 16px !important;
    height: 16px !important;
    font-size: 8px !important;
  }

  .home-trust-badge strong{
    font-size: 9.5px !important;
    line-height: 12px !important;
    white-space: normal !important;
  }

  .home-feature-stack .home-feature-copy .text p,
  .home-section-copy .read-more-content,
  .home-blog-preview-section .news-block-one .lower-content .text p{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .home-feature-stack .home-feature-copy .text p{
    -webkit-line-clamp: 3;
  }

  .home-section-copy .read-more-content{
    -webkit-line-clamp: 2;
  }

  .home-blog-preview-section .news-block-one .lower-content .text p{
    -webkit-line-clamp: 2;
  }

  .enhanced-footer .links-list li{
    margin-bottom: 0 !important;
  }

  .enhanced-footer .links-list li a{
    min-height: 20px !important;
    line-height: 18px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}

@media only screen and (max-width: 575px){
  .main-menu .navbar-toggle{
    height: 26px !important;
  }

  .mobile-menu-label{
    font-size: 11.5px !important;
  }

  .home-trust-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 3px !important;
    padding: 0 6px !important;
  }

  .home-trust-badge{
    min-height: 24px !important;
    padding: 3px 4px !important;
  }

  .home-trust-badge i{
    width: 14px !important;
    height: 14px !important;
    font-size: 7px !important;
  }

  .home-trust-badge strong{
    font-size: 8.7px !important;
    line-height: 11px !important;
  }

  .read-more-toggle,
  .read-more-link{
    min-height: 27px;
    margin-top: 6px;
    padding: 0 11px;
    font-size: 12px;
    line-height: 16px;
  }

  .enhanced-footer .footer-widget h3{
    margin-bottom: 8px !important;
  }

  .enhanced-footer .links-list li a{
    min-height: 18px !important;
    font-size: 12.5px !important;
    line-height: 17px !important;
  }
}

/* Match original mobile intro order: text first, photo second, both intro blocks visible. */
@media only screen and (max-width: 991px){
  .home-feature-stack:not(:first-of-type){
    display: block !important;
  }

  .home-feature-stack{
    padding: 22px 0 !important;
  }

  .home-feature-stack .container{
    display: flex;
    flex-direction: column;
  }

  .home-feature-stack .home-feature-copy{
    order: 1;
    max-width: 680px;
  }

  .home-feature-stack .home-feature-image{
    order: 2;
    width: 100%;
    max-width: 620px;
    margin: 14px auto 0 !important;
  }

  .home-feature-stack .home-feature-copy .sec-title{
    margin-bottom: 9px !important;
  }

  .home-feature-stack .home-feature-copy .sec-title .top-title{
    font-size: 13px !important;
    line-height: 18px !important;
  }

  .home-feature-stack .home-feature-copy .sec-title h2{
    max-width: 520px;
    margin-left: auto;
    margin-right: auto;
    font-size: 21px !important;
    line-height: 27px !important;
  }

  .home-feature-stack .home-feature-copy .text{
    font-size: 13.5px !important;
    line-height: 22px !important;
  }

  .home-feature-stack .home-feature-copy .text p{
    -webkit-line-clamp: 5;
  }

  .home-feature-stack .home-feature-image img{
    aspect-ratio: 16 / 10;
    max-height: 300px !important;
    object-fit: cover;
  }
}

@media only screen and (max-width: 575px){
  .home-feature-stack{
    padding: 18px 0 !important;
  }

  .home-feature-stack .home-feature-image{
    margin-top: 11px !important;
  }

  .home-feature-stack .home-feature-copy .sec-title .top-title{
    font-size: 12px !important;
    line-height: 16px !important;
  }

  .home-feature-stack .home-feature-copy .sec-title h2{
    font-size: 18px !important;
    line-height: 23px !important;
  }

  .home-feature-stack .home-feature-copy .text{
    font-size: 12.5px !important;
    line-height: 20px !important;
  }

  .home-feature-stack .home-feature-copy .text p{
    -webkit-line-clamp: 5;
  }

  .home-feature-stack .home-feature-image img{
    max-height: 220px !important;
  }
}

/* Read-more must override every mobile clamp rule after the button is clicked. */
.read-more-block.is-expanded,
.read-more-block.is-expanded .read-more-content,
.read-more-block.is-expanded p,
.home-section-copy.read-more-block.is-expanded,
.home-feature-stack .home-feature-copy .text.read-more-block.is-expanded p,
.home-blog-preview-section .news-block-one .lower-content .text.read-more-block.is-expanded p{
  display: block !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
  overflow: visible !important;
  max-height: none !important;
}

.read-more-block.is-expanded .read-more-toggle{
  margin-top: 10px;
}

.home-cat-carousel + .home-section-copy{
  margin-top: 20px;
}

@media only screen and (max-width: 767px){
  .home-cat-carousel + .home-section-copy{
    margin-top: 12px !important;
    margin-bottom: 4px !important;
    font-size: 12.5px !important;
    line-height: 20px !important;
  }
}

/* Final mobile header/footer refinements. */
.main-header{
  position: sticky !important;
  top: 0 !important;
  z-index: 3000 !important;
}

.mobile-header-contact{
  border: 0;
  cursor: pointer;
  font-family: inherit;
}

.home-blog-preview-section .read-more-link,
.home-blog-preview-section .read-more-link:before,
.home-blog-preview-section .read-more-link:after,
.home-blog-preview-section .news-block-one .lower-content .link a:before,
.home-blog-preview-section .news-block-one .lower-content .link a:after{
  display: none !important;
  content: none !important;
  border: 0 !important;
  background: transparent !important;
}

.home-blog-preview-section .news-block-one .lower-content .text .seo-geo-keyword,
.home-blog-preview-section .news-block-one .lower-content .text .seo-geo-keyword u{
  color: inherit !important;
  text-decoration: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

@media only screen and (max-width: 767px){
  .main-header .header-top .header-info{
    position: relative;
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
  }

  .main-header .header-top .header-social-center{
    order: -1;
    flex: 0 0 100%;
    display: none !important;
    justify-content: center !important;
    margin: 0 0 4px !important;
    padding: 2px 0 6px !important;
    position: static !important;
    float: none !important;
  }

  .main-header .header-top.mobile-social-open .header-social-center{
    display: flex !important;
  }

  .main-header .header-top .header-social-center li{
    margin: 0 3px !important;
  }

  .main-header .header-top .header-social-center li a{
    width: 32px !important;
    height: 32px !important;
    line-height: 32px !important;
    font-size: 14px !important;
  }

  .main-header .header-bottom{
    position: relative;
    z-index: 2;
  }

  .enhanced-footer .row{
    row-gap: 0 !important;
  }

  .enhanced-footer .footer-column{
    margin-bottom: 0 !important;
  }

  .enhanced-footer .footer-logo{
    margin-bottom: 6px !important;
  }

  .enhanced-footer .links-widget,
  .enhanced-footer .contact-widget{
    margin: 0 !important;
  }

  .enhanced-footer .footer-widget h3{
    min-height: 36px !important;
    padding: 0 !important;
  }

  .enhanced-footer .footer-tab-open .links-list,
  .enhanced-footer .footer-tab-open .footer-contact-list{
    padding-bottom: 4px !important;
  }
}

/* Mobile menu should open over the page content like the original mobile site. */
@media only screen and (max-width: 991px){
  .main-header,
  .main-header .header-bottom,
  .main-header .header-bottom .container,
  .main-header .header-bottom .container > .clearfix,
  .main-header .nav-outer,
  .main-header .menu-area,
  .main-menu{
    overflow: visible !important;
  }

  .main-menu .navbar-collapse,
  .main-menu .navbar-collapse.collapse.show,
  .main-menu .navbar-collapse.collapsing{
    position: absolute !important;
    top: calc(100% + 6px) !important;
    left: 50% !important;
    right: auto !important;
    width: min(92vw, 390px) !important;
    max-height: min(70vh, 520px) !important;
    transform: translateX(-50%) !important;
    z-index: 4500 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-y: auto !important;
    border-radius: 8px !important;
    background: rgba(51, 51, 51, 0.96) !important;
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.28) !important;
  }

  .main-menu .navbar-collapse > .navigation{
    border: 0 !important;
    border-radius: 8px !important;
  }

  .main-menu .navbar-collapse > .navigation > li{
    border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
  }

  .main-menu .navbar-collapse > .navigation > li:last-child{
    border-bottom: 0 !important;
  }

  .main-menu .navbar-collapse > .navigation > li > a,
  .main-menu .navbar-collapse > .navigation > li > ul > li > a{
    color: #ffffff !important;
    text-align: left !important;
  }

  .main-menu .navbar-collapse > .navigation > li > ul,
  .main-menu .navbar-collapse > .navigation > li > ul > li > ul{
    background: rgba(35, 35, 35, 0.98) !important;
  }
}

/* Softer blog carousel transition indicators. */
.home-blog-carousel{
  padding-bottom: 42px !important;
}

.home-blog-carousel .owl-dots{
  bottom: 4px !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 7px !important;
}

.home-blog-carousel .owl-dot{
  width: 28px !important;
  height: 4px !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: rgba(59, 54, 52, 0.18) !important;
  transition: width 240ms ease, background-color 240ms ease, opacity 240ms ease !important;
}

.home-blog-carousel .owl-dot.active{
  width: 42px !important;
  background: #3b3634 !important;
}

.home-blog-carousel .owl-dot span{
  display: none !important;
}

.home-blog-carousel:after{
  display: none !important;
}

.page-title .top-title{
  margin-bottom: 8px;
  color: #e72636;
  font-family: "Arvo", serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
}

@media only screen and (max-width: 575px){
  .page-title .top-title{
    margin-bottom: 4px;
    font-size: 14px;
    line-height: 19px;
  }
}

/* Footer aligned with the original mobile site: light, compact, with mobile tabs. */
.enhanced-footer{
  background: #f5f5f5 !important;
  color: #5f5b59 !important;
}

.enhanced-footer:before{
  display: none !important;
}

.main-footer .seo-geo-keyword,
.enhanced-footer .footer-widget h3,
.enhanced-footer .links-list li a,
.footer-contact-list li a,
.footer-contact-list li span,
.enhanced-footer .contact-widget .footer-contact-list li{
  color: #5f5b59 !important;
}

.enhanced-footer .footer-widget h3:after{
  background: #e72636 !important;
}

.enhanced-footer .links-widget,
.enhanced-footer .contact-widget{
  border-left-color: rgba(95, 91, 89, 0.12) !important;
}

.enhanced-footer .footer-logo{
  border-color: rgba(95, 91, 89, 0.12) !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.enhanced-footer .footer-bottom{
  background: #f5f5f5 !important;
  border-top: 1px solid rgba(95, 91, 89, 0.14) !important;
}

.enhanced-footer .footer-bottom .copyright{
  color: #6a6461 !important;
}

@media only screen and (max-width: 767px){
  .enhanced-footer{
    margin-top: 14px !important;
  }

  .enhanced-footer .widget-section{
    padding: 18px 0 10px !important;
  }

  .enhanced-footer .links-widget,
  .enhanced-footer .contact-widget{
    padding: 0 !important;
    border-left: 0 !important;
    border-top: 1px solid rgba(95, 91, 89, 0.14) !important;
  }

  .enhanced-footer .footer-widget h3{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 2px !important;
    color: #4e4947 !important;
    font-size: 15px !important;
    line-height: 20px !important;
    cursor: pointer;
  }

  .enhanced-footer .footer-widget h3:after{
    position: static !important;
    content: "\f107" !important;
    width: auto !important;
    height: auto !important;
    margin-left: 10px;
    background: transparent !important;
    color: #e72636;
    font-family: "Font Awesome 5 Free";
    font-size: 15px;
    font-weight: 900;
    transition: transform 220ms ease;
  }

  .enhanced-footer .footer-widget.footer-tab-open h3:after{
    transform: rotate(180deg);
  }

  .enhanced-footer .links-list,
  .enhanced-footer .footer-contact-list,
  .enhanced-footer .footer-whatsapp{
    display: none !important;
  }

  .enhanced-footer .footer-tab-open .links-list,
  .enhanced-footer .footer-tab-open .footer-contact-list{
    display: block !important;
    padding: 0 0 10px !important;
  }

  .enhanced-footer .footer-tab-open .footer-whatsapp{
    display: inline-flex !important;
    margin-bottom: 12px !important;
  }

  .enhanced-footer .links-list li a{
    min-height: 22px !important;
    font-size: 13px !important;
    line-height: 19px !important;
  }

  .enhanced-footer .contact-widget .footer-contact-list li{
    margin-bottom: 7px !important;
    font-size: 13px !important;
    line-height: 20px !important;
  }

  .enhanced-footer .footer-bottom{
    min-height: auto !important;
    padding: 9px 0 10px !important;
  }
}

/* Stable fixed header and restored media layout. */
:root{
  --site-header-height: 154px;
}

body{
  padding-top: var(--site-header-height) !important;
}

.main-header{
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 5000 !important;
  background: #ffffff !important;
  box-shadow: 0 8px 22px rgba(27, 24, 23, 0.08) !important;
}

.main-header .header-top,
.main-header .header-bottom{
  transform: translateZ(0);
}

.main-slider{
  margin-top: 0 !important;
}

.home-feature-stack .home-feature-image img{
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
  object-position: center !important;
}

.home-cat-carousel .owl-stage,
.home-blog-carousel .owl-stage{
  display: flex !important;
}

.home-cat-carousel .owl-item,
.home-blog-carousel .owl-item{
  display: flex !important;
}

.home-cat-carousel .home-cat-column,
.home-blog-carousel .news-column{
  width: 100% !important;
}

.home-cat-carousel .team-block-one .image-box{
  height: 520px !important;
}

.home-cat-carousel .team-block-one .image-box img,
.home-gallery-carousel .single-gallery-block .image-box img,
.home-blog-preview-section .news-block-one .image-box img{
  width: 100% !important;
  height: 100% !important;
}

.home-cat-carousel .team-block-one .image-box img{
  object-fit: cover !important;
  object-position: center !important;
}

.home-gallery-carousel .single-gallery-block .image-box{
  height: 280px !important;
}

.home-gallery-carousel .single-gallery-block .image-box img{
  object-fit: cover !important;
  object-position: center !important;
}

.home-blog-preview-section .news-block-one .image-box img{
  object-fit: contain !important;
  object-position: center !important;
}

@media only screen and (max-width: 991px){
  :root{
    --site-header-height: 150px;
  }

  .home-cat-carousel .team-block-one .image-box{
    height: clamp(340px, 56vw, 450px) !important;
  }

  .home-gallery-carousel .single-gallery-block .image-box{
    height: clamp(220px, 36vw, 300px) !important;
  }
}

@media only screen and (max-width: 575px){
  :root{
    --site-header-height: 128px;
  }

  .home-feature-stack .home-feature-image img{
    max-height: 230px !important;
  }

  .home-cat-carousel .team-block-one .image-box{
    height: min(68vh, 400px) !important;
    min-height: 315px !important;
  }

  .home-gallery-carousel .single-gallery-block .image-box{
    height: 245px !important;
  }
}

/* Desktop intro blocks match the original site: text left, photo right. */
@media only screen and (min-width: 992px){
  .home-feature-stack{
    padding: 92px 0 70px !important;
  }

  .home-feature-stack .container{
    max-width: 1240px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 520px) minmax(0, 644px) !important;
    align-items: center !important;
    justify-content: center !important;
    column-gap: 98px !important;
  }

  .home-feature-stack .home-feature-copy{
    order: 1 !important;
    max-width: 520px !important;
    margin: 0 !important;
    text-align: left !important;
  }

  .home-feature-stack .home-feature-copy .sec-title{
    margin-bottom: 42px !important;
    text-align: center !important;
  }

  .home-feature-stack .home-feature-copy .sec-title .top-title{
    margin-bottom: 18px !important;
    font-size: 22px !important;
    line-height: 28px !important;
  }

  .home-feature-stack .home-feature-copy .sec-title h2{
    max-width: 520px !important;
    margin: 0 auto !important;
    color: #282a34 !important;
    font-size: 38px !important;
    line-height: 40px !important;
    font-weight: 700 !important;
    text-align: center !important;
  }

  .home-feature-stack .home-feature-copy .text{
    color: #555b62 !important;
    font-size: 19px !important;
    line-height: 34px !important;
    text-align: left !important;
  }

  .home-feature-stack .home-feature-copy .text p{
    margin-bottom: 0 !important;
  }

  .home-feature-stack .home-feature-image{
    order: 2 !important;
    width: 100% !important;
    max-width: 644px !important;
    margin: 0 !important;
  }

  .home-feature-stack .home-feature-image .image{
    margin: 0 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
  }

  .home-feature-stack .home-feature-image img{
    display: block !important;
    width: 100% !important;
    height: 526px !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  .home-feature-stack.home-feature-reverse{
    padding: 38px 0 78px !important;
    background: #f2f2f2 !important;
  }

  .home-feature-stack.home-feature-reverse .container{
    grid-template-columns: minmax(0, 644px) minmax(0, 520px) !important;
    column-gap: 90px !important;
  }

  .home-feature-stack.home-feature-reverse .home-feature-image{
    order: 1 !important;
    max-width: 644px !important;
  }

  .home-feature-stack.home-feature-reverse .home-feature-copy{
    order: 2 !important;
    max-width: 520px !important;
  }

  .home-feature-stack.home-feature-reverse .home-feature-copy .sec-title{
    margin-bottom: 38px !important;
  }

  .home-feature-stack.home-feature-reverse .home-feature-copy .sec-title h2{
    font-size: 36px !important;
    line-height: 40px !important;
  }

  .home-feature-stack.home-feature-reverse .home-feature-copy .text{
    font-size: 18px !important;
    line-height: 33px !important;
  }
}

/* Blog article structure: readable headings, lists and data tables. */
/* Keep every blog image visually consistent, including new admin uploads. */
.blog-list-page .news-block-one .image-box,
.home-blog-preview-section .news-block-one .image-box{
  aspect-ratio: 16 / 10;
  height: auto !important;
  min-height: 285px;
  overflow: hidden;
  background: #f7f4f2;
}

.blog-list-page .news-block-one .image-box img,
.home-blog-preview-section .news-block-one .image-box img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.blog-detail-page .blog-single-content .news-block-one .image{
  aspect-ratio: 16 / 10;
  max-height: 520px;
}

.blog-detail-page .blog-single-content .news-block-one .image img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

@media only screen and (max-width: 767px){
  .blog-list-page .news-block-one .image-box,
  .home-blog-preview-section .news-block-one .image-box{
    min-height: 220px;
  }

  .blog-detail-page .blog-single-content .news-block-one .image{
    max-height: 340px;
  }
}

.blog-article-body h3{
  margin: 30px 0 13px;
  color: #2f2b2a;
  font-family: "Arvo", serif;
  font-size: 23px;
  line-height: 31px;
  font-weight: 700;
}

.blog-article-body p{
  margin-bottom: 17px;
}

.blog-article-list{
  margin: 0 0 22px 0;
  padding: 0;
  list-style: none;
}

.blog-article-list li{
  position: relative;
  margin-bottom: 9px;
  padding-left: 22px;
  color: #5e5a58;
  font-size: 16px;
  line-height: 27px;
}

.blog-article-list li:before{
  content: "";
  position: absolute;
  left: 0;
  top: 11px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ed2437;
}

.blog-table-wrap{
  width: 100%;
  margin: 22px 0 30px;
  overflow-x: auto;
  border: 1px solid rgba(47, 43, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(39, 35, 32, 0.06);
}

.blog-info-table{
  width: 100%;
  min-width: 620px;
  border-collapse: collapse;
  margin: 0;
}

.blog-info-table th,
.blog-info-table td{
  padding: 13px 15px;
  border-bottom: 1px solid rgba(47, 43, 42, 0.10);
  border-right: 1px solid rgba(47, 43, 42, 0.08);
  color: #55514f;
  font-size: 15px;
  line-height: 23px;
  vertical-align: top;
}

.blog-info-table th{
  color: #2f2b2a;
  background: #f7f3ef;
  font-weight: 700;
}

.blog-info-table tr:last-child td{
  border-bottom: 0;
}

.blog-info-table th:last-child,
.blog-info-table td:last-child{
  border-right: 0;
}

@media only screen and (max-width: 767px){
  .blog-article-body h3{
    margin: 22px 0 10px;
    font-size: 19px;
    line-height: 26px;
  }

  .blog-article-list li{
    font-size: 14px;
    line-height: 23px;
  }

  .blog-info-table{
    min-width: 560px;
  }

  .blog-info-table th,
  .blog-info-table td{
    padding: 10px 12px;
    font-size: 13px;
    line-height: 20px;
  }
}

/* Cleaner footer brand presentation. */
.enhanced-footer .logo-widget{
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 16px !important;
}

.enhanced-footer .footer-logo{
  width: auto !important;
  max-width: 390px !important;
  margin: 0 !important;
  padding: 14px 20px !important;
  border: 1px solid rgba(54, 48, 45, 0.08) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 36px rgba(42, 36, 33, 0.08) !important;
}

.enhanced-footer .footer-logo a{
  justify-content: center !important;
}

.enhanced-footer .footer-logo img{
  display: block !important;
  width: min(330px, 100%) !important;
  max-width: 100% !important;
  max-height: 74px !important;
  object-fit: contain !important;
}

.footer-brand-text{
  max-width: 430px !important;
  margin: 0 !important;
  color: #6a6461 !important;
  font-size: 15px !important;
  line-height: 26px !important;
  font-weight: 600 !important;
}

.enhanced-footer .footer-social{
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  float: none !important;
}

.enhanced-footer .footer-social li{
  display: block !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

.enhanced-footer .footer-social li a{
  width: 42px !important;
  height: 42px !important;
  line-height: 42px !important;
  font-size: 18px !important;
  transform: none !important;
}

@media only screen and (max-width: 991px){
  .enhanced-footer .logo-widget{
    align-items: center !important;
    text-align: center !important;
  }

  .footer-brand-text{
    max-width: 540px !important;
  }

  .enhanced-footer .footer-social{
    justify-content: center !important;
  }
}

@media only screen and (max-width: 575px){
  .enhanced-footer .footer-logo{
    max-width: 290px !important;
    padding: 10px 14px !important;
    border-radius: 14px !important;
  }

  .enhanced-footer .footer-logo img{
    width: min(250px, 100%) !important;
    max-height: 54px !important;
  }

  .footer-brand-text{
    font-size: 12.5px !important;
    line-height: 21px !important;
  }

  .enhanced-footer .footer-social li a{
    width: 34px !important;
    height: 34px !important;
    line-height: 34px !important;
    font-size: 15px !important;
  }
}

/* Keep the Maine Coon label visible above kitten, graduate and parent sections on mobile. */
@media only screen and (max-width: 991px){
  .team-style-two.home-main-section .sec-title .top-title,
  .gallery-section.home-main-section .sec-title .top-title{
    display: block !important;
    margin-bottom: 4px !important;
    color: #e72636 !important;
    font-size: 14px !important;
    line-height: 19px !important;
    font-weight: 800 !important;
  }
}

/* Mobile top bar: contact button left, language selector right. */
@media only screen and (max-width: 767px){
  .main-header .header-top .header-info{
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    justify-content: stretch !important;
    column-gap: 10px !important;
    row-gap: 6px !important;
    width: 100% !important;
  }

  .main-header .header-top .mobile-header-contact{
    grid-column: 1 !important;
    justify-self: start !important;
    min-width: 0 !important;
    min-height: 34px !important;
    padding: 0 12px !important;
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 18px !important;
    white-space: nowrap !important;
  }

  .main-header .header-top .header-language-select{
    grid-column: 2 !important;
    justify-self: end !important;
    margin: 0 !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    min-height: 34px !important;
    padding: 0 9px !important;
    font-size: 12.5px !important;
    line-height: 34px !important;
    white-space: nowrap !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle img{
    width: 23px !important;
    height: 15px !important;
    margin-right: 5px !important;
  }

  .main-header .header-top .header-social-center{
    grid-column: 1 / -1 !important;
    order: initial !important;
  }
}

/* SEO FAQ blocks and mobile-visible compact content. */
.home-faq-section{
  padding: 62px 0 54px !important;
  background: #ffffff !important;
}

.home-faq-grid,
.cat-faq-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.home-faq-card,
.cat-faq-panel article{
  padding: 22px 22px 20px;
  border: 1px solid rgba(59, 54, 52, 0.10);
  border-radius: 8px;
  background: #fffdf9;
  box-shadow: 0 12px 28px rgba(39, 35, 32, 0.06);
  text-align: left;
}

.home-faq-card h3,
.cat-faq-panel h3{
  margin-bottom: 10px;
  color: #2c2928;
  font-family: "Arvo", serif;
  font-size: 18px;
  line-height: 25px;
  font-weight: 700;
}

.home-faq-card p,
.cat-faq-panel p{
  margin: 0;
  color: #5f5b59;
  font-size: 15px;
  line-height: 25px;
}

.cat-faq-panel{
  margin: 26px 0 34px;
  padding: 26px;
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 32px rgba(39, 35, 32, 0.07);
  text-align: left;
}

.cat-faq-panel > h2{
  margin-bottom: 18px;
  color: #292624;
  font-family: "Arvo", serif;
  font-size: 25px;
  line-height: 32px;
  font-weight: 700;
  text-align: center;
}

.cat-faq-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cat-faq-panel article{
  background: #f9f7f4;
  box-shadow: none;
}

.home-main-section,
.service-page-section{
  content-visibility: auto;
  contain-intrinsic-size: auto 760px;
}

@media only screen and (max-width: 991px){
  .home-feature-stack:not(:first-of-type){
    display: block !important;
  }

  .home-feature-stack.home-feature-reverse{
    padding: 20px 0 24px !important;
    background: #f2f2f2 !important;
  }

  .home-feature-stack.home-feature-reverse .container{
    display: flex !important;
    flex-direction: column !important;
  }

  .home-feature-stack.home-feature-reverse .home-feature-image{
    order: 2 !important;
    max-width: 620px !important;
    margin: 14px auto 0 !important;
  }

  .home-feature-stack.home-feature-reverse .home-feature-copy{
    order: 1 !important;
  }

  .home-feature-stack.home-feature-reverse .home-feature-copy .sec-title{
    margin-bottom: 10px !important;
  }

  .home-feature-stack.home-feature-reverse .home-feature-copy .sec-title h2{
    font-size: 20px !important;
    line-height: 26px !important;
  }

  .home-feature-stack.home-feature-reverse .home-feature-copy .text p{
    -webkit-line-clamp: 4;
  }

  .home-faq-section{
    padding: 28px 0 28px !important;
  }

  .home-faq-grid,
  .cat-faq-grid{
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .home-faq-card,
  .cat-faq-panel article{
    padding: 16px;
  }

  .home-faq-card h3,
  .cat-faq-panel h3{
    font-size: 15px;
    line-height: 21px;
  }

  .home-faq-card p,
  .cat-faq-panel p{
    font-size: 13px;
    line-height: 21px;
  }

  .cat-faq-panel{
    margin: 18px 0 24px;
    padding: 17px;
  }

  .cat-faq-panel > h2{
    font-size: 19px;
    line-height: 25px;
  }
}

/* Desktop header: keep language selector pinned to the far right. */
@media only screen and (min-width: 992px){
  .main-header .header-top .header-info{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: 100% !important;
    gap: 18px !important;
  }

  .main-header .header-top .header-social-center,
  .main-header .header-top .site-header-search,
  .main-header .header-top .header-federation-icons,
  .main-header .header-top .header-language-select{
    float: none !important;
    position: static !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .main-header .header-top .site-header-search{
    order: 0 !important;
    display: flex !important;
    align-items: center !important;
    width: min(270px, 22vw) !important;
    min-width: 190px !important;
    height: 40px !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, 0.26) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.12) !important;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.03) !important;
  }

  .main-header .header-top .site-header-search .site-search-label{
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
  }

  .main-header .header-top .site-header-search input{
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 100% !important;
    padding: 0 8px 0 16px !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #ffffff !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 13px !important;
    line-height: 40px !important;
  }

  .main-header .header-top .site-header-search input::placeholder{
    color: rgba(255, 255, 255, 0.78) !important;
  }

  .main-header .header-top .site-header-search button{
    flex: 0 0 38px !important;
    width: 38px !important;
    height: 38px !important;
    border: 0 !important;
    border-left: 1px solid rgba(255, 255, 255, 0.18) !important;
    border-radius: 50% !important;
    background: #e72636 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    line-height: 38px !important;
    cursor: pointer !important;
  }

  .main-header .header-top .header-social-center{
    order: 1 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .main-header .header-top .header-federation-icons{
    order: 2 !important;
    margin-left: 4px !important;
    margin-right: 0 !important;
  }

  .main-header .header-top .header-language-select{
    order: 3 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .main-header .header-top .header-language-select .dropdown-menu{
    right: 0 !important;
    left: auto !important;
  }
}

/* Mobile header repair: keep language selector above the logo and restore contact social flyout. */
@media only screen and (max-width: 767px){
  .main-header,
  .main-header .header-top,
  .main-header .header-top .container,
  .main-header .header-top .header-info,
  .main-header .header-bottom{
    overflow: visible !important;
  }

  .main-header .header-top{
    position: relative !important;
    z-index: 120 !important;
    padding: 7px 0 !important;
    background: #3b3634 !important;
  }

  .main-header .header-bottom{
    position: relative !important;
    z-index: 70 !important;
  }

  .main-header .header-top .container{
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .main-header .header-top .header-info{
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(112px, 1fr) max-content !important;
    align-items: center !important;
    justify-content: stretch !important;
    column-gap: 8px !important;
    row-gap: 0 !important;
    min-height: 36px !important;
    width: 100% !important;
  }

  .main-header .header-top .mobile-header-contact{
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 132px !important;
    min-height: 40px !important;
    height: 40px !important;
    padding: 0 16px !important;
    margin: 0 !important;
    border-radius: 5px !important;
    background: #9bd52b !important;
    color: #ffffff !important;
    font-family: "Racing Sans One", sans-serif !important;
    font-size: 15px !important;
    line-height: 20px !important;
    font-weight: 400 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    z-index: 130 !important;
  }

  .main-header .header-top .header-language-select{
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    display: inline-flex !important;
    float: none !important;
    position: relative !important;
    z-index: 160 !important;
    margin: 0 !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 34px !important;
    height: 34px !important;
    max-width: 142px !important;
    padding: 0 9px !important;
    border-radius: 5px !important;
    font-size: 12px !important;
    line-height: 16px !important;
    white-space: nowrap !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle img{
    flex: 0 0 auto !important;
    width: 22px !important;
    height: 15px !important;
    margin-right: 5px !important;
    object-fit: cover !important;
  }

  .main-header .header-top .header-language-select .dropdown-menu{
    position: absolute !important;
    top: calc(100% + 6px) !important;
    right: 0 !important;
    left: auto !important;
    z-index: 10050 !important;
    min-width: 148px !important;
    margin: 0 !important;
    transform: none !important;
  }

  .main-header .header-top .header-social-center{
    grid-column: auto !important;
    display: flex !important;
    position: absolute !important;
    top: calc(100% + 7px) !important;
    left: 0 !important;
    right: auto !important;
    width: auto !important;
    min-width: 236px !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 7px 8px !important;
    border-radius: 999px !important;
    background: rgba(59, 54, 52, 0.94) !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(-8px) !important;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
    z-index: 150 !important;
  }

  .main-header .header-top.mobile-social-open .header-social-center{
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .main-header .header-top .header-social-center li{
    margin: 0 !important;
  }

  .main-header .header-top .header-social-center li a{
    width: 31px !important;
    height: 31px !important;
    line-height: 31px !important;
    font-size: 13px !important;
  }
}

/* Final carousel runtime guard. */

/* Reliable language selector: visible above header layers and independent from Bootstrap positioning. */
.main-header .header-top .header-language-select{
  position: relative !important;
  z-index: 10080 !important;
}

.main-header .header-top .header-language-select .dropdown-toggle{
  cursor: pointer !important;
}

.main-header .header-top .header-language-select .dropdown-menu{
  display: none;
  position: absolute !important;
  top: calc(100% + 6px) !important;
  right: 0 !important;
  left: auto !important;
  z-index: 10090 !important;
  min-width: 150px !important;
  margin: 0 !important;
  transform: none !important;
}

.main-header .header-top .header-language-select.show .dropdown-menu,
.main-header .header-top .header-language-select .dropdown-menu.show{
  display: block !important;
}

.main-header .header-top .header-language-select .dropdown-item{
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

/* Keep the opened language menu above the curved logo/header-bottom area. */
.main-header{
  overflow: visible !important;
}

.main-header .header-top{
  position: relative !important;
  z-index: 10070 !important;
  overflow: visible !important;
}

.main-header .header-top .container,
.main-header .header-top .header-info{
  overflow: visible !important;
}

.main-header .header-bottom{
  position: relative !important;
  z-index: 1000 !important;
}

.main-header .header-bottom .logo-box{
  z-index: 1000 !important;
  isolation: isolate !important;
}

.main-header .header-bottom .logo-box:before{
  z-index: 0 !important;
  pointer-events: none !important;
}

.main-header .header-bottom .logo-box .logo,
.main-header .header-bottom .logo-box a,
.main-header .header-bottom .logo-box img{
  position: relative !important;
  z-index: 2 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.team-style-two.home-main-section,
.gallery-section.home-main-section,
.home-blog-preview-section{
  content-visibility: visible !important;
  contain-intrinsic-size: auto !important;
}

.home-cat-carousel.owl-carousel,
.home-gallery-carousel.owl-carousel,
.home-blog-carousel.owl-carousel{
  display: block !important;
  visibility: visible !important;
}

/* Desktop header layer fix: the dark top strip must not crop the curved logo. */
@media only screen and (min-width: 768px){
  .main-header .header-top{
    z-index: auto !important;
  }

  .main-header .header-bottom{
    position: relative !important;
    z-index: 20 !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .container,
  .main-header .header-bottom .container > .clearfix{
    overflow: visible !important;
  }

  .main-header .header-bottom .logo-box{
    position: relative !important;
    z-index: 30 !important;
    overflow: visible !important;
    isolation: isolate !important;
  }

  .main-header .header-bottom .logo-box:before{
    z-index: 0 !important;
    pointer-events: none !important;
  }

  .main-header .header-bottom .logo-box .logo,
  .main-header .header-bottom .logo-box a,
  .main-header .header-bottom .logo-box img{
    position: relative !important;
    z-index: 2 !important;
  }

  .main-header .header-top .header-language-select,
  .main-header .header-top .header-language-select .dropdown-menu{
    z-index: 10090 !important;
  }
}

.main-header .header-top .header-language-select .dropdown-menu.site-language-floating{
  position: fixed !important;
  right: auto !important;
  z-index: 2147483000 !important;
  display: block !important;
  max-height: calc(100vh - 96px) !important;
  overflow-y: auto !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.18) !important;
}

#siteLanguageMenu.site-language-floating{
  position: fixed !important;
  right: auto !important;
  z-index: 2147483647 !important;
  display: block !important;
  min-width: 150px !important;
  padding: 6px 0 !important;
  margin: 0 !important;
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 4px !important;
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.22) !important;
  transform: none !important;
  max-height: calc(100vh - 96px) !important;
  overflow-y: auto !important;
}

#siteLanguageMenu.site-language-floating .dropdown-item{
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 8px 13px !important;
  color: #3b3634 !important;
  font-family: "Anton", sans-serif !important;
  font-size: 13px !important;
  line-height: 18px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

#siteLanguageMenu.site-language-floating .dropdown-item:hover{
  background: #f2f1f0 !important;
  color: #ee2839 !important;
}

#siteLanguageMenu.site-language-floating .dropdown-item img{
  width: 25px !important;
  height: auto !important;
  flex: 0 0 auto !important;
}

/* Compact desktop navigation row, closer to the original site spacing. */
@media only screen and (min-width: 992px){
  .main-header .header-bottom{
    min-height: 68px !important;
    background: #f2f1f0 !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .container > .clearfix{
    position: relative !important;
    min-height: 68px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .logo-box{
    position: absolute !important;
    left: 0 !important;
    top: -66px !important;
    float: none !important;
    margin-top: 0 !important;
    padding: 42px 15px 42px 0 !important;
    z-index: 30 !important;
  }

  .main-header .header-bottom .nav-outer,
  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-collapse{
    min-height: 68px !important;
  }

  .main-header .header-bottom .nav-outer{
    float: none !important;
    flex: 0 1 calc(100% - 390px) !important;
    width: calc(100% - 390px) !important;
    max-width: calc(100% - 390px) !important;
    margin-left: 390px !important;
    overflow: visible !important;
  }

  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-collapse{
    width: 100% !important;
  }

  .main-menu .navigation{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    min-height: 68px !important;
    width: 100% !important;
  }

  .main-menu .navigation > li{
    margin: 0 8px !important;
  }

  .main-menu .navigation > li > a{
    padding: 18px 0 17px !important;
    font-size: 20px !important;
    line-height: 26px !important;
    letter-spacing: 0 !important;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px){
  .main-header .header-bottom .nav-outer{
    flex-basis: calc(100% - 300px) !important;
    width: calc(100% - 300px) !important;
    max-width: calc(100% - 300px) !important;
    margin-left: 300px !important;
  }

  .main-menu .navigation > li{
    margin: 0 4px !important;
  }

  .main-menu .navigation > li > a{
    font-size: 16px !important;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px){
  .main-header .header-bottom .nav-outer{
    flex-basis: calc(100% - 340px) !important;
    width: calc(100% - 340px) !important;
    max-width: calc(100% - 340px) !important;
    margin-left: 340px !important;
  }

  .main-menu .navigation > li{
    margin: 0 5px !important;
  }

  .main-menu .navigation > li > a{
    font-size: 17px !important;
  }
}

/* Final desktop menu guard: reserve a real column for the curved logo so links cannot slide underneath it. */
@media only screen and (min-width: 992px){
  .main-header .header-bottom .container > .clearfix{
    display: grid !important;
    grid-template-columns: 390px minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: stretch !important;
    min-height: 68px !important;
  }

  .main-header .header-bottom .logo-box{
    grid-column: 1 !important;
    width: 390px !important;
    max-width: 390px !important;
  }

  .main-header .header-bottom .nav-outer{
    grid-column: 2 !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    min-width: 0 !important;
    justify-self: stretch !important;
    z-index: 35 !important;
  }

  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-collapse{
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .main-menu .navigation{
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .main-menu .navigation > li{
    flex: 0 0 auto !important;
    margin: 0 6px !important;
  }

  .main-menu .navigation > li > a{
    font-size: 18px !important;
    line-height: 24px !important;
    white-space: nowrap !important;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px){
  .main-header .header-bottom .container > .clearfix{
    grid-template-columns: 340px minmax(0, 1fr) !important;
  }

  .main-header .header-bottom .logo-box{
    width: 340px !important;
    max-width: 340px !important;
  }

  .main-menu .navigation > li{
    margin: 0 4px !important;
  }

  .main-menu .navigation > li > a{
    font-size: 16px !important;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px){
  .main-header .header-bottom .container > .clearfix{
    grid-template-columns: 300px minmax(0, 1fr) !important;
  }

  .main-header .header-bottom .logo-box{
    width: 300px !important;
    max-width: 300px !important;
  }

  .main-menu .navigation > li{
    margin: 0 3px !important;
  }

  .main-menu .navigation > li > a{
    font-size: 14px !important;
  }
}

/* Slim the desktop logo capsule so it no longer visually blends into the first menu item. */
@media only screen and (min-width: 1400px){
  .main-header .header-bottom .container > .clearfix{
    grid-template-columns: 450px minmax(0, 1fr) !important;
  }

  .main-header .header-bottom .logo-box{
    width: 350px !important;
    max-width: 350px !important;
    padding-right: 10px !important;
    border-top-right-radius: 68px !important;
    border-bottom-right-radius: 68px !important;
  }

  .main-header .header-bottom .logo-box:before{
    border-top-right-radius: 68px !important;
    border-bottom-right-radius: 68px !important;
  }

  .main-header .header-bottom .logo-box img{
    max-width: 300px !important;
    max-height: 78px !important;
  }

  .main-menu .navigation > li:first-child{
    margin-left: 0 !important;
  }
}

/* Clearer desktop navigation labels without changing the logo capsule or language selector. */
@media only screen and (min-width: 992px){
  .main-menu .navigation > li{
    position: relative !important;
  }

  .main-menu .navigation > li > a{
    display: inline-flex !important;
    align-items: center !important;
    min-height: 68px !important;
    padding: 18px 0 16px !important;
    border-bottom: 3px solid transparent !important;
    color: #252120 !important;
    font-family: "Arvo", Georgia, serif !important;
    font-style: normal !important;
    font-weight: 700 !important;
    text-transform: none !important;
    text-shadow: none !important;
    letter-spacing: 0 !important;
    transition: color .18s ease, border-color .18s ease !important;
  }

  .main-menu .navigation > li.current > a,
  .main-menu .navigation > li.current-menu-item > a,
  .main-menu .navigation > li:hover > a{
    color: #e72636 !important;
    border-bottom-color: #e72636 !important;
    background: transparent !important;
  }

  .main-menu .navigation > li.dropdown > a:before{
    color: currentColor !important;
  }
}

@media only screen and (min-width: 1400px){
  .main-menu .navigation > li{
    margin: 0 5px !important;
  }

  .main-menu .navigation > li > a{
    font-size: 15px !important;
    line-height: 22px !important;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px){
  .main-menu .navigation > li{
    margin: 0 5px !important;
  }

  .main-menu .navigation > li > a{
    font-size: 15px !important;
    line-height: 22px !important;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px){
  .main-menu .navigation > li{
    margin: 0 3px !important;
  }

  .main-menu .navigation > li > a{
    font-size: 13px !important;
    line-height: 20px !important;
  }
}

/* Slightly smaller, still clear navigation and homepage headings. */
@media only screen and (min-width: 992px){
  .main-menu .navigation > li > a{
    font-size: 16px !important;
    line-height: 23px !important;
  }

  .home-main-section .sec-title .top-title{
    font-size: 21px !important;
    line-height: 28px !important;
  }

  .home-main-section .sec-title h1,
  .home-main-section .sec-title h2{
    font-size: clamp(28px, 2.25vw, 39px) !important;
    line-height: 1.16 !important;
  }

  .main-slider .content-box h2{
    font-size: clamp(42px, 4.4vw, 66px) !important;
    line-height: 1.08 !important;
  }
}

@media only screen and (min-width: 1400px){
  .main-menu .navigation > li > a{
    font-size: 15px !important;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px){
  .main-menu .navigation > li > a{
    font-size: 14px !important;
    line-height: 21px !important;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px){
  .main-menu .navigation > li > a{
    font-size: 12.5px !important;
    line-height: 19px !important;
  }
}

@media only screen and (max-width: 991px){
  .home-main-section .sec-title h1,
  .home-main-section .sec-title h2{
    font-size: 25px !important;
    line-height: 31px !important;
  }
}

@media only screen and (max-width: 575px){
  .home-main-section .sec-title h1,
  .home-main-section .sec-title h2{
    font-size: 22px !important;
    line-height: 28px !important;
  }
}

/* Dedicated desktop menu row with clear, site-matched boxed navigation items. */
@media only screen and (min-width: 992px){
  .main-header .header-bottom{
    min-height: 84px !important;
    background: #f2f1f0 !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .container > .clearfix{
    display: grid !important;
    grid-template-columns: 450px minmax(0, 1fr) !important;
    align-items: center !important;
    position: relative !important;
    min-height: 84px !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .logo-box{
    position: absolute !important;
    left: 0 !important;
    top: -66px !important;
    float: none !important;
    z-index: 40 !important;
  }

  .main-header .header-bottom .nav-outer{
    display: flex !important;
    align-items: center !important;
    grid-column: 2 !important;
    position: relative !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-top: 0 !important;
    z-index: 45 !important;
  }

  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-collapse{
    display: block !important;
    float: none !important;
    width: 100% !important;
    min-height: 0 !important;
  }

  .main-menu .navigation{
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    width: 100% !important;
    min-height: 0 !important;
  }

  .main-menu .navigation > li{
    flex: 0 1 auto !important;
    margin: 0 !important;
  }

  .main-menu .navigation > li > a{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 36px !important;
    padding: 7px 10px !important;
    border: 1px solid rgba(59, 54, 52, 0.12) !important;
    border-bottom: 2px solid rgba(231, 38, 54, 0.18) !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #252120 !important;
    font-family: "Arvo", Georgia, serif !important;
    font-size: 13px !important;
    line-height: 17px !important;
    font-weight: 700 !important;
    white-space: nowrap !important;
    box-shadow: 0 8px 18px rgba(59, 54, 52, 0.08) !important;
  }

  .main-menu .navigation > li.current > a,
  .main-menu .navigation > li.current-menu-item > a,
  .main-menu .navigation > li:hover > a{
    border-color: rgba(231, 38, 54, 0.42) !important;
    border-bottom-color: #e72636 !important;
    background: #fff8f6 !important;
    color: #e72636 !important;
  }

  .main-menu .navigation > li > ul{
    top: calc(100% + 8px) !important;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px){
  .main-header .header-bottom .container > .clearfix{
    grid-template-columns: 360px minmax(0, 1fr) !important;
  }

  .main-menu .navigation{
    gap: 4px !important;
  }

  .main-menu .navigation > li > a{
    padding: 7px 7px !important;
    font-size: 12px !important;
  }
}

@media only screen and (min-width: 992px) and (max-width: 1199px){
  .main-header .header-bottom .container > .clearfix{
    grid-template-columns: 310px minmax(0, 1fr) !important;
  }

  .main-menu .navigation{
    gap: 3px !important;
  }

  .main-menu .navigation > li > a{
    min-height: 32px !important;
    padding: 6px 5px !important;
    font-size: 10.5px !important;
    line-height: 15px !important;
  }
}
/* Final compact trust badge strip for the home page. */
.home-trust-badges{
  padding: 10px 0 8px !important;
  background: #fffdf9 !important;
  border-top: 1px solid rgba(59, 54, 52, 0.06) !important;
  border-bottom: 1px solid rgba(59, 54, 52, 0.06) !important;
}

.home-trust-grid{
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

.home-trust-badge{
  display: grid !important;
  grid-template-columns: 30px minmax(0, 1fr) !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  min-height: 56px !important;
  padding: 9px 11px !important;
  column-gap: 8px !important;
  border: 1px solid rgba(59, 54, 52, 0.10) !important;
  border-radius: 7px !important;
  background: #ffffff !important;
  box-shadow: 0 8px 20px rgba(59, 54, 52, 0.055) !important;
}

.home-trust-badge:hover{
  border-color: rgba(231, 38, 54, 0.35) !important;
  background: #fff8f6 !important;
  transform: translateY(-1px) !important;
}

.home-trust-badge i{
  grid-row: 1 / span 2 !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  background: #e72636 !important;
  color: #ffffff !important;
  font-size: 13px !important;
}

.home-trust-badge strong{
  margin: 0 !important;
  color: #252120 !important;
  font-size: 13.5px !important;
  line-height: 17px !important;
  font-weight: 800 !important;
}

.home-trust-badge span{
  margin-top: 1px !important;
  color: #6d6764 !important;
  font-size: 11.5px !important;
  line-height: 15px !important;
}

@media only screen and (min-width: 992px) and (max-width: 1199px){
  .home-trust-grid{
    gap: 6px !important;
  }

  .home-trust-badge{
    grid-template-columns: 26px minmax(0, 1fr) !important;
    min-height: 52px !important;
    padding: 8px !important;
    column-gap: 6px !important;
  }

  .home-trust-badge i{
    width: 26px !important;
    height: 26px !important;
    font-size: 11px !important;
  }

  .home-trust-badge strong{
    font-size: 12px !important;
    line-height: 15px !important;
  }

  .home-trust-badge span{
    font-size: 10px !important;
    line-height: 13px !important;
  }
}

@media only screen and (max-width: 991px){
  .home-trust-badges{
    padding: 9px 0 8px !important;
    background: #ffffff !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
  }

  .home-trust-grid{
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 4px !important;
    padding: 0 !important;
    overflow: visible !important;
    scroll-snap-type: none !important;
  }

  .home-trust-badge{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 30px !important;
    padding: 4px 3px !important;
    gap: 3px !important;
    border: 1px solid #ece7df !important;
    border-radius: 7px !important;
    background: #fffdf9 !important;
    box-shadow: 0 6px 14px rgba(26, 26, 26, .045) !important;
  }

  .home-trust-badge i{
    flex: 0 0 16px !important;
    width: 16px !important;
    height: 16px !important;
    font-size: 8px !important;
  }

  .home-trust-badge strong{
    display: block !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    font-size: 8.8px !important;
    line-height: 11px !important;
    text-align: left !important;
  }

  .home-trust-badge span{
    display: none !important;
  }
}

@media only screen and (max-width: 360px){
  .home-trust-grid{
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 3px !important;
  }

  .home-trust-badge{
    min-height: 28px !important;
    padding: 4px 2px !important;
    gap: 2px !important;
  }

  .home-trust-badge i{
    flex-basis: 14px !important;
    width: 14px !important;
    height: 14px !important;
    font-size: 7px !important;
  }

  .home-trust-badge strong{
    font-size: 7.6px !important;
    line-height: 10px !important;
  }
}

/* Spanish menu labels are longer; keep only the Spanish desktop menu on one row. */
@media only screen and (min-width: 1200px){
  html[lang="es"] .main-menu .navigation{
    gap: 4px !important;
  }

  html[lang="es"] .main-menu .navigation > li > a{
    min-height: 34px !important;
    padding: 6px 7px !important;
    font-size: 12px !important;
    line-height: 15px !important;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1399px){
  html[lang="es"] .main-menu .navigation{
    gap: 3px !important;
  }

  html[lang="es"] .main-menu .navigation > li > a{
    padding: 6px 5px !important;
    font-size: 11px !important;
  }
}

/* Home cat cards: show short profile descriptions under kitten/graduate/parent names. */
.home-cat-carousel .team-block-one .lower-content{
  height: auto !important;
  min-height: 142px;
  padding: 18px 12px 20px !important;
  overflow: visible !important;
}

.home-cat-carousel .team-block-one .lower-content h3{
  margin-bottom: 8px !important;
}

.home-cat-summary{
  display: -webkit-box;
  max-width: 94%;
  min-height: 48px;
  margin: 0 auto;
  color: #615b58;
  font-size: 15px;
  line-height: 24px;
  font-weight: 500;
  text-align: center;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.home-cat-summary .seo-geo-keyword,
.home-cat-summary .seo-geo-keyword u{
  color: inherit;
}

@media only screen and (max-width: 991px){
  .home-cat-carousel .team-block-one .lower-content{
    min-height: 126px;
    padding: 13px 8px 15px !important;
  }

  .home-cat-summary{
    max-width: 100%;
    min-height: 42px;
    font-size: 13.5px;
    line-height: 21px;
  }
}

.CatProfil > a{
  display: block;
  width: 100%;
  height: 100%;
}

.CatProfil > a > img{
  display: block;
  width: 100% !important;
  max-height: 560px;
  object-fit: contain;
  border-radius: 8px;
}

@media only screen and (max-width: 767px){
  .CatProfil > a > img{
    min-height: 460px;
    height: 460px;
  }
}

.fancybox-container .fancybox-bg{
  background: #080706;
  opacity: .96 !important;
}

.fancybox-slide--image{
  padding: 8px !important;
}

.fancybox-image{
  object-fit: contain;
}

.fancybox-caption{
  font-size: 15px;
  line-height: 1.45;
}

@media only screen and (max-width: 767px){
  .fancybox-slide--image{
    padding: 0 !important;
  }
}

/* Photo gallery page: keep mixed portrait/landscape photos in a neat, equal grid
   without reprocessing images or changing home/profile gallery behavior. */
.photo-gallery-page-section > .container > .row{
  align-items: stretch;
}

.photo-gallery-page-section > .container > .row > .gallery-block{
  display: flex;
}

.photo-gallery-page-section > .container > .row > .gallery-block > .single-gallery-block{
  width: 100%;
  margin-bottom: 30px;
}

.photo-gallery-page-section > .container > .row > .gallery-block > .single-gallery-block .image-box{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 4 / 3;
  min-height: 0;
  overflow: hidden;
  border-radius: 8px;
  background: #f7f5f3;
}

.photo-gallery-page-section > .container > .row > .gallery-block > .single-gallery-block .image-box img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}

.photo-gallery-page-section > .container > .row > .gallery-block > .single-gallery-block .image-box .icon-box{
  inset: 0;
}

@media only screen and (max-width: 767px){
  .photo-gallery-page-section > .container > .row > .gallery-block > .single-gallery-block .image-box{
    aspect-ratio: 1 / 1;
  }
}

/* Final blog image lock: must stay after generic image rules. */
.blog-list-page .news-block-one .image-box,
.home-blog-preview-section .news-block-one .image-box{
  aspect-ratio: 16 / 10 !important;
  height: auto !important;
  min-height: 285px !important;
  overflow: hidden !important;
  background: #f7f4f2 !important;
}

.blog-list-page .news-block-one .image-box a,
.home-blog-preview-section .news-block-one .image-box a{
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

.blog-list-page .news-block-one .image-box img,
.home-blog-preview-section .news-block-one .image-box img{
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  background: #f7f4f2 !important;
}

.blog-detail-page .blog-single-content .news-block-one .image{
  aspect-ratio: 16 / 10 !important;
  max-height: 520px !important;
  overflow: hidden !important;
  background: #f7f4f2 !important;
}

.blog-detail-page .blog-single-content .news-block-one .image img{
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

@media only screen and (max-width: 767px){
  .blog-list-page .news-block-one .image-box,
  .home-blog-preview-section .news-block-one .image-box{
    min-height: 220px !important;
  }

  .blog-detail-page .blog-single-content .news-block-one .image{
    max-height: 340px !important;
  }
}

/* Mobile cat listing pages: put kitten/graduate/parent photos before long text blocks. */
@media only screen and (max-width: 767px){
  .cat-listing-page{
    padding: 18px 0 30px !important;
  }

  .cat-listing-page > .container{
    display: flex;
    flex-direction: column;
  }

  .cat-listing-page .cat-filter-tabs{
    order: 0;
    gap: 6px;
    margin: 0 0 12px !important;
    padding: 0 3px;
  }

  .cat-listing-page .cat-filter-tabs a{
    min-height: 36px;
    padding: 0 13px;
    border-radius: 999px;
    font-size: 13px;
    line-height: 18px;
    box-shadow: 0 8px 18px rgba(59, 54, 52, .08);
  }

  .cat-listing-page .inner-content{
    order: 1;
  }

  .cat-listing-page .cat-trust-strip{
    order: 2;
  }

  .cat-listing-page .cat-process-panel{
    order: 3;
  }

  .cat-listing-page .cat-faq-panel{
    order: 4;
  }

  .cat-listing-page .row{
    margin-left: -7px;
    margin-right: -7px;
  }

  .cat-listing-page .service-column{
    padding-left: 7px;
    padding-right: 7px;
    margin-bottom: 16px !important;
  }

  .cat-listing-page .service-block-one{
    max-width: 100%;
    margin: 0 auto;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 14px 30px rgba(39, 35, 32, .10);
  }

  .cat-listing-page .service-block-one .image-box{
    height: clamp(360px, 104vw, 520px) !important;
    margin-bottom: 0 !important;
    border-radius: 8px 8px 0 0;
  }

  .cat-listing-page .service-block-one .image-box img{
    object-fit: cover !important;
    object-position: center !important;
  }

  .cat-listing-page .service-block-one .lower-content{
    padding: 13px 12px 16px !important;
  }

  .cat-listing-page .service-block-one .lower-content h2{
    min-height: 0 !important;
    height: auto !important;
    margin-bottom: 8px;
    font-size: 22px !important;
    line-height: 28px !important;
  }

  .cat-listing-page .cat-card-meta{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px 8px;
    margin: 8px 0 9px;
    padding: 8px;
    border-radius: 8px;
    background: #f7f5f3;
    font-size: 12px;
    line-height: 16px;
    text-align: left;
  }

  .cat-listing-page .cat-card-meta span{
    min-width: 0;
  }

  .cat-listing-page .service-block-one .lower-content .text{
    display: -webkit-box;
    margin: 0 auto 11px;
    color: #615b58;
    font-size: 13.5px;
    line-height: 21px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .cat-listing-page .service-block-one .lower-content .link a{
    min-width: 126px;
    min-height: 38px;
    padding: 8px 18px;
    border-radius: 999px;
    background: #e72636;
    color: #ffffff;
    font-size: 14px;
    line-height: 20px;
    text-decoration: none;
  }

  .cat-listing-page .cat-trust-strip{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 5px !important;
    margin: 12px 0 12px !important;
  }

  .cat-listing-page .cat-trust-strip div{
    min-height: 36px;
    padding: 5px 4px;
    gap: 4px;
    font-size: 9.5px;
    line-height: 12px;
    box-shadow: none;
  }

  .cat-listing-page .cat-trust-strip i{
    font-size: 12px;
  }

  .cat-listing-page .cat-process-panel{
    margin: 0 0 12px;
    padding: 13px 14px;
    border-left-width: 3px;
  }

  .cat-listing-page .cat-process-panel h2{
    margin-bottom: 8px;
    font-size: 17px;
    line-height: 23px;
  }

  .cat-listing-page .cat-process-panel ol{
    padding-left: 17px;
  }

  .cat-listing-page .cat-process-panel li{
    display: -webkit-box;
    margin-bottom: 6px;
    font-size: 12.8px;
    line-height: 19px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .cat-listing-page .cat-faq-panel{
    margin: 0;
    padding: 13px;
  }

  .cat-listing-page .cat-faq-panel > h2{
    margin-bottom: 10px;
    font-size: 17px;
    line-height: 22px;
  }

  .cat-listing-page .cat-faq-grid{
    gap: 8px;
  }

  .cat-listing-page .cat-faq-panel article{
    padding: 12px;
  }

  .cat-listing-page .cat-faq-panel h3{
    margin-bottom: 5px;
    font-size: 13.5px;
    line-height: 18px;
  }

  .cat-listing-page .cat-faq-panel p{
    display: -webkit-box;
    font-size: 12.5px;
    line-height: 19px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
}

@media only screen and (max-width: 380px){
  .cat-listing-page .service-block-one .image-box{
    height: clamp(330px, 112vw, 470px) !important;
  }

  .cat-listing-page .cat-card-meta{
    grid-template-columns: 1fr;
  }
}

/* Mobile cat profile focus: photos first, text compact, desktop layout untouched. */
@media only screen and (max-width: 767px){
  .service-details.sec-pad{
    padding: 22px 0 14px !important;
  }

  .service-details .image-column,
  .service-details .content-column{
    padding-left: 10px;
    padding-right: 10px;
  }

  .CatProfil{
    margin-bottom: 14px !important;
  }

  .CatProfil > a > img{
    height: auto !important;
    min-height: 0 !important;
    max-height: 410px !important;
    object-fit: contain !important;
  }

  .service-details .content-box h2{
    margin-bottom: 8px;
    font-size: 27px !important;
    line-height: 33px !important;
    text-align: center;
  }

  .service-details .content-box .text p{
    display: -webkit-box;
    margin-bottom: 12px;
    font-size: 15px !important;
    line-height: 24px !important;
    text-align: center;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .service-details .table{
    margin-bottom: 12px;
    font-size: 14px;
    line-height: 20px;
  }

  .service-details .table th,
  .service-details .table td{
    padding: 7px 9px;
    vertical-align: middle;
  }

  .TableEveneyn{
    width: 38px !important;
    height: 38px !important;
    object-fit: cover;
  }

  .cat-profile-trust{
    margin: 12px 0;
    padding: 12px;
  }

  .cat-profile-trust h3{
    margin-bottom: 6px;
    font-size: 18px;
    line-height: 24px;
  }

  .cat-profile-trust p{
    display: -webkit-box;
    margin-bottom: 10px;
    font-size: 13.5px;
    line-height: 21px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .cat-profile-trust-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  .cat-profile-trust-grid li{
    min-height: 42px;
    padding: 8px 9px;
    gap: 7px;
    font-size: 12px;
    line-height: 16px;
  }

  .cat-profile-trust-grid li i{
    margin-top: 2px;
    font-size: 12px;
  }

  .cat-profile-contact-card{
    gap: 10px;
    margin-top: 12px;
    padding: 12px;
  }

  .cat-profile-contact-copy strong{
    font-size: 15px;
    line-height: 20px;
  }

  .cat-detail-actions{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    gap: 8px;
  }

  .cat-detail-actions .theme-btn{
    width: 100%;
    min-height: 40px;
    padding: 9px 10px;
    font-size: 14px;
    line-height: 20px;
    text-align: center;
  }

  .cat-detail-after-profile{
    display: flex;
    flex-direction: column;
  }

  .cat-detail-after-profile .cat-media-tabs-section{
    order: 1;
  }

  .cat-detail-after-profile .cat-timeline-section{
    order: 2;
  }

  .cat-media-tabs-section{
    padding: 18px 0 26px !important;
  }

  .cat-media-tabs .nav-tabs{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    margin-bottom: 12px;
  }

  .cat-media-tabs.CatTabMenu li{
    width: auto !important;
    flex: initial !important;
    border-radius: 8px;
  }

  .cat-media-tabs.CatTabMenu li a{
    width: 100%;
    min-height: 42px;
    padding: 0 6px;
    font-size: 12.5px;
    line-height: 16px;
    text-align: center;
  }

  .cat-media-tab-content{
    padding: 8px;
    border-radius: 8px;
  }

  .cat-photo-gallery-grid{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 0 !important;
  }

  .cat-photo-gallery-grid > .gallery-block{
    width: auto !important;
    max-width: none !important;
    flex: initial !important;
    padding: 0 !important;
  }

  .cat-photo-gallery-grid .single-gallery-block{
    margin: 0 !important;
  }

  .cat-photo-gallery-grid .single-gallery-block .image-box{
    height: clamp(150px, 43vw, 215px) !important;
    margin-bottom: 0;
  }

  .cat-timeline-section{
    padding: 24px 0 30px !important;
  }

  .cat-timeline-section .sec-title{
    margin-bottom: 14px !important;
  }

  .cat-timeline-section .sec-title h2{
    font-size: 25px !important;
    line-height: 31px !important;
  }

  .cat-development-timeline.timeline{
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin: 12px 0 0;
    padding: 0;
  }

  .cat-development-timeline.timeline > li,
  .cat-development-timeline.timeline > li:nth-child(even),
  .cat-development-timeline.timeline > li:nth-child(odd){
    left: auto !important;
    right: auto !important;
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr);
    align-items: center;
    gap: 12px;
    height: auto !important;
    min-height: 98px;
    margin: 0 !important;
    padding: 10px;
    border: 1px solid #efe8dd;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 10px 22px rgba(24, 33, 43, .06);
  }

  .cat-development-timeline.timeline > li:before,
  .cat-development-timeline.timeline > li:after{
    content: none !important;
  }

  .cat-development-timeline > li .timeline-image,
  .cat-development-timeline.timeline > li:nth-child(even) .timeline-image,
  .cat-development-timeline.timeline > li:nth-child(odd) .timeline-image{
    position: relative !important;
    left: auto !important;
    width: 78px !important;
    height: 78px !important;
    margin: 0 !important;
    border-width: 4px !important;
    box-shadow: 0 0 0 4px rgba(231, 38, 54, .10) !important;
  }

  .cat-development-timeline > li .timeline-panel,
  .cat-development-timeline > li.timeline-inverted > .timeline-panel{
    float: none !important;
    width: auto !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .cat-development-timeline .timeline-heading h4{
    margin: 0 0 2px !important;
    font-size: 15px !important;
    line-height: 20px !important;
  }

  .cat-development-timeline .timeline-heading h4.subheading{
    display: none;
  }

  .cat-development-timeline .timeline-body .text-muted{
    display: -webkit-box;
    font-size: 12.5px !important;
    line-height: 18px !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .cat-development-timeline .line{
    display: none !important;
  }
}

/* Compact cat profile trust block: less empty space before the following content. */
.service-details .cat-profile-trust{
  margin: 14px 0 12px !important;
  padding: 16px 18px !important;
  border-radius: 8px !important;
  box-shadow: 0 10px 24px rgba(59, 54, 52, .045) !important;
}

.service-details .cat-profile-trust h3{
  margin: 0 0 6px !important;
  font-size: 21px !important;
  line-height: 27px !important;
}

.service-details .cat-profile-trust p{
  margin: 0 0 10px !important;
  font-size: 14.5px !important;
  line-height: 23px !important;
}

.service-details .cat-profile-trust-grid{
  gap: 6px !important;
}

.service-details .cat-profile-trust-grid li{
  min-height: 42px !important;
  padding: 8px 10px !important;
  gap: 7px !important;
  font-size: 13px !important;
  line-height: 18px !important;
}

.service-details .cat-profile-trust-grid li i{
  margin-top: 2px !important;
  font-size: 13px !important;
}

.service-details .cat-profile-contact-card{
  margin-top: 10px !important;
}

@media only screen and (max-width: 767px){
  .service-details .cat-profile-trust{
    margin: 9px 0 9px !important;
    padding: 10px 11px !important;
  }

  .service-details .cat-profile-trust h3{
    margin-bottom: 4px !important;
    font-size: 17px !important;
    line-height: 22px !important;
  }

  .service-details .cat-profile-trust p{
    margin-bottom: 7px !important;
    font-size: 12.8px !important;
    line-height: 19px !important;
    -webkit-line-clamp: 2;
  }

  .service-details .cat-profile-trust-grid{
    gap: 5px !important;
  }

  .service-details .cat-profile-trust-grid li{
    min-height: 34px !important;
    padding: 6px 7px !important;
    font-size: 11.2px !important;
    line-height: 14px !important;
  }
}

/* Mobile brand emphasis: make the logo clearer without changing desktop header rules. */
@media only screen and (max-width: 767px){
  .main-header .header-bottom{
    min-height: 116px !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .container > .clearfix{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 116px !important;
    padding: 8px 10px 10px !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .logo-box{
    float: none !important;
    width: min(94vw, 390px) !important;
    max-width: min(94vw, 390px) !important;
    margin: -4px auto 8px !important;
    padding: 14px 20px !important;
    text-align: center !important;
    border-top-right-radius: 58px !important;
    border-bottom-right-radius: 58px !important;
  }

  .main-header .header-bottom .logo-box:before{
    border-top-right-radius: 58px !important;
    border-bottom-right-radius: 58px !important;
  }

  .main-header .header-bottom .logo-box img{
    width: auto !important;
    max-width: min(84vw, 350px) !important;
    max-height: 88px !important;
    object-fit: contain !important;
  }

  .main-header .header-bottom .nav-outer,
  .main-header .menu-area{
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media only screen and (max-width: 380px){
  .main-header .header-bottom{
    min-height: 108px !important;
  }

  .main-header .header-bottom .container > .clearfix{
    min-height: 108px !important;
  }

  .main-header .header-bottom .logo-box{
    width: 96vw !important;
    padding: 12px 16px !important;
  }

  .main-header .header-bottom .logo-box img{
    max-width: 86vw !important;
    max-height: 80px !important;
  }
}

/* Mobile development timeline: keep the same round connected visual language as desktop. */
@media only screen and (max-width: 767px){
  .cat-development-timeline.timeline{
    position: relative;
    display: block !important;
    margin: 16px 0 0 !important;
    padding: 0 0 8px !important;
    list-style: none;
  }

  .cat-development-timeline.timeline:before{
    content: "";
    position: absolute;
    top: 58px;
    bottom: 58px;
    left: 50%;
    width: 3px;
    transform: translateX(-50%);
    border-radius: 999px;
    background: #e72636;
    box-shadow: 0 0 8px rgba(231, 38, 54, .35);
  }

  .cat-development-timeline.timeline > li,
  .cat-development-timeline.timeline > li:nth-child(even),
  .cat-development-timeline.timeline > li:nth-child(odd){
    position: relative !important;
    left: auto !important;
    right: auto !important;
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 22px !important;
    padding: 0 0 14px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
  }

  .cat-development-timeline.timeline > li:last-child{
    margin-bottom: 0 !important;
  }

  .cat-development-timeline > li .timeline-image,
  .cat-development-timeline.timeline > li:nth-child(even) .timeline-image,
  .cat-development-timeline.timeline > li:nth-child(odd) .timeline-image{
    z-index: 2;
    position: relative !important;
    left: auto !important;
    float: none !important;
    display: block !important;
    width: 128px !important;
    height: 128px !important;
    margin: 0 auto 12px !important;
    border: 6px solid #e72636 !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 7px rgba(231, 38, 54, .12), 0 16px 32px rgba(59, 54, 52, .16) !important;
    overflow: hidden !important;
  }

  .cat-development-timeline > li .timeline-image a,
  .cat-development-timeline > li .timeline-image img{
    border-radius: 50% !important;
  }

  .cat-development-timeline > li .timeline-panel,
  .cat-development-timeline > li.timeline-inverted > .timeline-panel,
  .cat-development-timeline.timeline > li:nth-child(even) .timeline-panel,
  .cat-development-timeline.timeline > li:nth-child(odd) .timeline-panel{
    position: relative !important;
    z-index: 1;
    float: none !important;
    width: 100% !important;
    max-width: 360px;
    margin: 0 auto !important;
    padding: 10px 14px 12px !important;
    border-radius: 8px;
    background: rgba(255, 255, 255, .94);
    text-align: center !important;
    box-shadow: 0 10px 22px rgba(24, 33, 43, .06);
  }

  .cat-development-timeline .timeline-heading h4{
    margin: 0 0 2px !important;
    font-size: 16px !important;
    line-height: 21px !important;
  }

  .cat-development-timeline .timeline-heading h4.subheading{
    display: block !important;
    margin: 0 0 4px !important;
    font-size: 13px !important;
    line-height: 18px !important;
    color: #615b58 !important;
  }

  .cat-development-timeline .timeline-body .text-muted{
    display: -webkit-box;
    font-size: 12.8px !important;
    line-height: 19px !important;
    text-align: center !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .cat-development-timeline .line{
    display: none !important;
  }
}

/* Visual clarity pass: richer photos and sharper text without changing layout. */
html,
body{
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.main-header .header-top,
.main-header .header-bottom{
  transform: none !important;
  backface-visibility: visible !important;
}

.main-slider .slide:before{
  background: rgba(0, 0, 0, 0.10) !important;
}

.main-slider h1,
.main-slider h2,
.main-slider .top-text,
.sec-title h1,
.sec-title h2,
.sec-title h3,
.team-block-one .lower-content h3,
.service-block-one .lower-content h3,
.news-block-one .lower-content h3,
.blog-detail-page .blog-single-content{
  text-shadow: none !important;
  filter: none !important;
}

.main-slider .slide,
.team-block-one .image-box img,
.service-block-one .image-box img,
.single-gallery-block .image-box img,
.news-block-one .image-box img,
.home-feature-stack .home-feature-image img,
.CatProfil > a > img,
.cat-photo-gallery-grid img,
.photo-gallery-page-section img{
  image-rendering: auto !important;
  filter: saturate(1.07) contrast(1.04) !important;
  opacity: 1 !important;
}

.service-page-section .service-block-one:hover .image-box img,
.home-cat-grid .team-block-one:hover .image-box img,
.team-block-one:hover .image-box img,
.single-gallery-block:hover .image-box img,
.news-block-one:hover .image-box img{
  opacity: 1 !important;
}

@media only screen and (max-width: 767px){
  .main-slider .slide:before{
    background: rgba(0, 0, 0, 0.08) !important;
  }

  .main-slider h1,
  .main-slider h2,
  .main-slider .top-text,
  .home-main-section .sec-title h1,
  .home-main-section .sec-title h2,
  .cat-listing-page .service-block-one .lower-content h3{
    -webkit-font-smoothing: antialiased;
    transform: none !important;
  }
}

/* Desktop cat profile compaction and closer follow-up sections. */
@media only screen and (min-width: 768px){
  .service-details.sec-pad{
    padding-bottom: 30px !important;
  }

  .service-details .cat-profile-trust{
    margin: 10px 0 8px !important;
    padding: 13px 15px !important;
  }

  .service-details .cat-profile-trust h3{
    margin-bottom: 4px !important;
    font-size: 20px !important;
    line-height: 25px !important;
  }

  .service-details .cat-profile-trust p{
    margin-bottom: 8px !important;
    font-size: 13.5px !important;
    line-height: 21px !important;
  }

  .service-details .cat-profile-trust-grid{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 5px !important;
  }

  .service-details .cat-profile-trust-grid li{
    min-height: 38px !important;
    padding: 6px 8px !important;
    gap: 6px !important;
    font-size: 11.8px !important;
    line-height: 16px !important;
  }

  .service-details .cat-profile-trust-grid li i{
    margin-top: 1px !important;
    font-size: 12px !important;
  }

  .service-details .cat-profile-contact-card{
    margin-top: 8px !important;
    padding: 14px 16px !important;
  }

  .cat-detail-after-profile .cat-timeline-section.sec-pad,
  .cat-detail-after-profile .cat-media-tabs-section{
    padding-top: 34px !important;
  }
}

/* Home section CTA buttons: visible, lively and attached to their own section. */
@keyframes homeCtaBreath{
  0%, 100%{
    transform: translateY(0) scale(1);
    box-shadow: 0 12px 26px rgba(154, 205, 43, .28);
  }
  50%{
    transform: translateY(-3px) scale(1.025);
    box-shadow: 0 18px 34px rgba(231, 38, 54, .20);
  }
}

.home-main-section > .container > .message-btn,
.home-main-section > .container-fluid > .message-btn{
  position: sticky;
  bottom: 18px;
  z-index: 20;
  display: flex !important;
  justify-content: center;
  margin-top: 22px !important;
  margin-bottom: 10px !important;
  pointer-events: none;
}

.home-main-section > .container > .message-btn .theme-btn,
.home-main-section > .container-fluid > .message-btn .theme-btn{
  pointer-events: auto;
  animation: homeCtaBreath 2.8s ease-in-out infinite;
  will-change: transform;
}

.home-main-section > .container > .message-btn .theme-btn:hover,
.home-main-section > .container-fluid > .message-btn .theme-btn:hover{
  animation-play-state: paused;
  transform: translateY(-2px) scale(1.03);
}

@media (prefers-reduced-motion: reduce){
  .home-main-section > .container > .message-btn .theme-btn,
  .home-main-section > .container-fluid > .message-btn .theme-btn{
    animation: none !important;
  }
}

@media only screen and (max-width: 767px){
  .home-main-section > .container > .message-btn,
  .home-main-section > .container-fluid > .message-btn{
    bottom: 10px;
    margin-top: 14px !important;
    margin-bottom: 4px !important;
  }
}

/* Cat listing pages: keep cats/photos first and make process/FAQ text compact. */
.cat-listing-page{
  padding-top: 34px !important;
  padding-bottom: 36px !important;
}

.cat-listing-page > .container{
  display: flex !important;
  flex-direction: column !important;
}

.cat-listing-page .cat-filter-tabs{
  order: 0;
}

.cat-listing-page .inner-content{
  order: 2;
}

.cat-listing-page .cat-trust-strip{
  order: 1;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 14px 0 10px !important;
}

.cat-listing-page .cat-trust-strip div{
  min-height: 44px !important;
  padding: 8px 10px !important;
  gap: 7px !important;
  font-size: 12px !important;
  line-height: 16px !important;
  box-shadow: 0 8px 18px rgba(26, 26, 26, .045) !important;
}

.cat-listing-page .cat-trust-strip i{
  font-size: 14px !important;
}

.cat-listing-page .cat-process-panel{
  order: 3;
  width: 100%;
  max-width: 100% !important;
  margin: 8px auto 10px !important;
  padding: 13px 16px !important;
  border-left-width: 3px !important;
  box-shadow: 0 8px 20px rgba(26, 26, 26, .045) !important;
}

.cat-listing-page .cat-process-panel h2{
  margin-bottom: 8px !important;
  font-size: 18px !important;
  line-height: 24px !important;
}

.cat-listing-page .cat-process-panel ol{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  padding-left: 0 !important;
  counter-reset: catProcess;
  list-style: none;
}

.cat-listing-page .cat-process-panel li{
  position: relative;
  display: -webkit-box;
  min-height: 54px;
  margin: 0 !important;
  padding: 9px 10px 9px 34px;
  border: 1px solid #efe8dd;
  border-radius: 8px;
  background: #fff;
  color: #514b48;
  font-size: 12.5px !important;
  line-height: 18px !important;
  text-align: left;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.cat-listing-page .cat-process-panel li:before{
  counter-increment: catProcess;
  content: counter(catProcess);
  position: absolute;
  left: 9px;
  top: 9px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #e72636;
  color: #fff;
  font-size: 11px;
  line-height: 18px;
  font-weight: 700;
}

.cat-listing-page .cat-faq-panel{
  order: 4;
  margin: 0 !important;
  padding: 13px 16px !important;
  box-shadow: 0 8px 20px rgba(26, 26, 26, .045) !important;
}

.cat-listing-page .cat-faq-panel > h2{
  margin-bottom: 9px !important;
  font-size: 18px !important;
  line-height: 24px !important;
}

.cat-listing-page .cat-faq-grid{
  gap: 8px !important;
}

.cat-listing-page .cat-faq-panel article{
  padding: 11px 12px !important;
}

.cat-listing-page .cat-faq-panel h3{
  margin-bottom: 4px !important;
  font-size: 13.5px !important;
  line-height: 18px !important;
}

.cat-listing-page .cat-faq-panel p{
  display: -webkit-box;
  margin: 0 !important;
  font-size: 12.5px !important;
  line-height: 18px !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@media only screen and (max-width: 991px){
  .cat-listing-page .cat-process-panel ol{
    grid-template-columns: 1fr;
  }

  .cat-listing-page .cat-process-panel li{
    min-height: 0;
  }
}

@media only screen and (max-width: 767px){
  .cat-listing-page{
    padding-top: 16px !important;
    padding-bottom: 26px !important;
  }

  .cat-listing-page .cat-trust-strip{
    margin: 10px 0 8px !important;
  }

  .cat-listing-page .cat-process-panel,
  .cat-listing-page .cat-faq-panel{
    padding: 10px 11px !important;
  }

  .cat-listing-page .cat-process-panel h2,
  .cat-listing-page .cat-faq-panel > h2{
    font-size: 16px !important;
    line-height: 21px !important;
  }
}

/* Final listing readability fix: process text must not be cut, mobile badges stay one row. */
.cat-listing-page .cat-process-panel{
  overflow: visible !important;
}

.cat-listing-page .cat-process-panel li{
  display: block !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
}

.cat-listing-page .cat-faq-panel p{
  min-height: 0 !important;
}

@media only screen and (min-width: 992px){
  .cat-listing-page .cat-process-panel li{
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    font-size: 12.2px !important;
    line-height: 17px !important;
  }
}

@media only screen and (max-width: 767px){
  .cat-listing-page .cat-trust-strip{
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 3px !important;
    margin: 7px 0 8px !important;
  }

  .cat-listing-page .cat-trust-strip div{
    min-width: 0 !important;
    min-height: 30px !important;
    padding: 4px 3px !important;
    gap: 3px !important;
    border-radius: 6px !important;
    font-size: 9px !important;
    line-height: 11px !important;
    box-shadow: none !important;
  }

  .cat-listing-page .cat-trust-strip i{
    font-size: 10px !important;
  }

  .cat-listing-page .cat-trust-strip span{
    display: block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .cat-listing-page .cat-process-panel ol{
    gap: 5px !important;
  }

  .cat-listing-page .cat-process-panel li{
    padding: 7px 8px 7px 30px !important;
    font-size: 11.8px !important;
    line-height: 16px !important;
  }

  .cat-listing-page .cat-process-panel li:before{
    left: 7px !important;
    top: 7px !important;
    width: 17px !important;
    height: 17px !important;
    font-size: 10px !important;
    line-height: 17px !important;
  }
}

/* Final header search overrides: no dropdown, white field, visible on mobile. */
@media only screen and (min-width: 992px){
  .main-header .header-top .site-header-search{
    background: #ffffff !important;
    border-color: rgba(255, 255, 255, 0.82) !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08) !important;
  }

  .main-header .header-top .site-header-search input{
    color: #2f2a28 !important;
  }

  .main-header .header-top .site-header-search input::placeholder{
    color: #74706d !important;
  }
}

@media only screen and (max-width: 767px){
  .main-header .header-top .header-info{
    grid-template-columns: minmax(112px, 1fr) max-content !important;
    row-gap: 7px !important;
  }

  .main-header .header-top .site-header-search{
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    height: 36px !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, 0.82) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.10) !important;
  }

  .main-header .header-top .site-header-search .site-search-label{
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
  }

  .main-header .header-top .site-header-search input{
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 100% !important;
    padding: 0 8px 0 14px !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #2f2a28 !important;
    font-size: 13px !important;
    line-height: 36px !important;
  }

  .main-header .header-top .site-header-search input::placeholder{
    color: #777777 !important;
  }

  .main-header .header-top .site-header-search button{
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 34px !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #e72636 !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 34px !important;
  }
}

.main-header .header-top .site-header-search{
  position: relative !important;
}

.site-header-search-results{
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  z-index: 10120;
  overflow: hidden;
  border: 1px solid rgba(34, 34, 34, 0.10);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.16);
}

.site-header-search.search-open .site-header-search-results{
  display: block;
}

.site-header-search-result{
  display: block;
  padding: 10px 13px;
  border-bottom: 1px solid rgba(34, 34, 34, 0.07);
  color: #2f2a28;
  text-decoration: none;
}

.site-header-search-result:last-child{
  border-bottom: 0;
}

.site-header-search-result:hover{
  color: #e72636;
  background: #fff5f6;
  text-decoration: none;
}

.site-header-search-result strong{
  display: block;
  overflow: hidden;
  color: inherit;
  font-size: 13.5px;
  font-weight: 800;
  line-height: 18px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.site-header-search-result span{
  display: block;
  margin-top: 2px;
  color: #777777;
  font-size: 12px;
  line-height: 16px;
}

.site-header-search-empty{
  padding: 11px 13px;
  color: #777777;
  font-size: 13px;
  line-height: 18px;
}

@media only screen and (max-width: 767px){
  .site-header-search-results{
    top: calc(100% + 6px);
    max-height: 260px;
    overflow-y: auto;
  }

  .site-header-search-result{
    padding: 9px 12px;
  }
}

.main-header,
.main-header .header-top,
.main-header .header-top .container,
.main-header .header-top .header-info{
  overflow: visible !important;
}

.main-header .header-top .site-header-search.search-open{
  overflow: visible !important;
  z-index: 2147483000 !important;
}

.main-header .header-top .site-header-search.search-open .site-header-search-results{
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 2147483001 !important;
}

.main-header .header-top .site-header-search-results{
  position: fixed !important;
  min-width: 0;
  max-height: 340px;
  overflow-y: auto;
  border-radius: 0 0 18px 18px;
  border-top: 1px solid rgba(34, 34, 34, 0.06);
}

.main-header .header-top .site-header-search-result{
  display: grid;
  grid-template-columns: 24px 1fr;
  gap: 8px 12px;
  align-items: center;
}

.main-header .header-top .site-header-search-result::before{
  content: "\f002";
  display: inline-flex;
  grid-row: 1 / 3;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-right: 4px;
  border-radius: 50%;
  color: #ed2434;
  font-family: "Font Awesome 5 Free";
  font-size: 11px;
  font-weight: 900;
  background: #fff1f3;
}

.main-header .header-top .site-header-search-result strong,
.main-header .header-top .site-header-search-result span{
  grid-column: 2;
  padding-left: 0;
}

@media only screen and (max-width: 767px){
  .main-header .header-top .site-header-search.search-open{
    z-index: 2147483000 !important;
  }

  .main-header .header-top .site-header-search-results{
    max-height: 300px;
    border-radius: 0 0 14px 14px;
  }
}

/* Compact mobile header controls: contact, search and menu take less vertical space. */
@media only screen and (max-width: 767px){
  .main-header .header-top{
    padding: 5px 0 !important;
  }

  .main-header .header-top .container{
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .main-header .header-top .header-info{
    display: grid !important;
    grid-template-columns: auto minmax(118px, 1fr) auto !important;
    gap: 6px !important;
    align-items: center !important;
  }

  .main-header .header-top .mobile-header-contact{
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    min-height: 28px !important;
    height: 28px !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    font-size: 11.5px !important;
    line-height: 28px !important;
    white-space: nowrap !important;
  }

  .main-header .header-top .site-header-search{
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 28px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    box-shadow: none !important;
  }

  .main-header .header-top .site-header-search input{
    height: 28px !important;
    padding: 0 6px 0 10px !important;
    font-size: 12px !important;
    line-height: 28px !important;
  }

  .main-header .header-top .site-header-search button{
    flex: 0 0 28px !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    line-height: 28px !important;
    font-size: 12px !important;
  }

  .main-header .header-top .header-language-select{
    grid-column: 3 !important;
    grid-row: 1 !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    min-height: 28px !important;
    height: 28px !important;
    padding: 0 7px !important;
    font-size: 11px !important;
    line-height: 28px !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle img{
    width: 18px !important;
    height: 12px !important;
    margin-right: 4px !important;
  }

  .main-header .header-top .header-federation-icons{
    display: none !important;
  }

  .main-header .header-top .header-social-center{
    top: calc(100% + 4px) !important;
  }

  .main-header .header-bottom{
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }

  .main-header .header-bottom .container{
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .main-header .logo-box{
    min-height: 0 !important;
  }

  .main-header .logo-box .logo{
    padding: 0 !important;
  }

  .main-header .logo-box .logo img{
    max-height: 54px !important;
    width: auto !important;
  }

  .main-menu .navbar-header{
    padding: 0 !important;
  }

  .main-menu .navbar-toggle{
    height: 24px !important;
    min-width: 0 !important;
    padding: 0 !important;
    gap: 5px !important;
    line-height: 24px !important;
  }

  .mobile-menu-icon{
    font-size: 16px !important;
  }

  .mobile-menu-label{
    font-size: 11px !important;
    line-height: 14px !important;
  }
}

/* Mobile header hard reset: match the original mobile structure without desktop side effects. */
@media only screen and (max-width: 767px){
  body{
    padding-top: 0 !important;
  }

  .main-header{
    position: relative !important;
    top: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .main-header .header-top{
    height: 27px !important;
    min-height: 27px !important;
    padding: 0 !important;
    background: #332d2f !important;
    overflow: visible !important;
  }

  .main-header .header-top .container,
  .main-header .header-top .header-info{
    height: 27px !important;
    min-height: 27px !important;
    padding: 0 8px !important;
  }

  .main-header .header-top .header-info{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  .main-header .header-top .mobile-header-contact{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 18px !important;
    min-height: 18px !important;
    min-width: 82px !important;
    padding: 0 9px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #9fd126 !important;
    color: #ffffff !important;
    font-family: inherit !important;
    font-size: 9.5px !important;
    line-height: 18px !important;
    font-weight: 800 !important;
    font-style: italic !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
  }

  .main-header .header-top .header-language-select{
    display: inline-flex !important;
    margin-left: auto !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 7px !important;
    border-radius: 5px !important;
    font-size: 10px !important;
    line-height: 22px !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle img{
    max-height: 13px !important;
  }

  .main-header .header-top .header-site-search,
  .main-header .header-top .header-federation-icons{
    display: none !important;
  }

  .main-header .header-top .header-social-center{
    position: absolute !important;
    left: 8px !important;
    right: auto !important;
    top: calc(100% + 5px) !important;
    bottom: auto !important;
    z-index: 10100 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 5px !important;
    width: auto !important;
    max-width: calc(100vw - 16px) !important;
    padding: 5px 6px !important;
    border-radius: 999px !important;
    background: rgba(51, 45, 47, .96) !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.20) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(8px) !important;
  }

  .main-header .header-top.mobile-social-open .header-social-center{
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .main-header .header-top .header-social-center li{
    display: inline-flex !important;
    margin: 0 !important;
  }

  .main-header .header-top .header-social-center li a{
    width: 27px !important;
    height: 27px !important;
    min-width: 27px !important;
    line-height: 27px !important;
    font-size: 12px !important;
  }

  .main-header .header-bottom{
    height: 45px !important;
    min-height: 45px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #f1f1f1 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .container,
  .main-header .header-bottom .container > .clearfix{
    height: 45px !important;
    min-height: 45px !important;
    padding: 0 8px !important;
  }

  .main-header .header-bottom .logo-box{
    position: absolute !important;
    left: 50% !important;
    top: 8px !important;
    width: 210px !important;
    max-width: 66vw !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .main-header .header-bottom .logo-box:before,
  .main-header .header-bottom .logo-box:after{
    display: none !important;
    content: none !important;
  }

  .main-header .header-bottom .logo-box .logo,
  .main-header .header-bottom .logo-box .logo a{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }

  .main-header .header-bottom .logo-box img{
    width: auto !important;
    max-width: 205px !important;
    max-height: 28px !important;
    object-fit: contain !important;
    background: transparent !important;
  }

  .main-header .header-bottom .nav-outer{
    position: absolute !important;
    right: 12px !important;
    top: 12px !important;
    left: auto !important;
    bottom: auto !important;
    width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
    transform: none !important;
  }

  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-header,
  .main-menu .navbar-toggle{
    width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .main-menu .navbar-toggle{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .mobile-menu-icon{
    display: block !important;
    font-size: 18px !important;
    line-height: 22px !important;
    color: #e72636 !important;
  }

  .mobile-menu-label{
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
  }

  .main-menu .navbar-collapse,
  .main-menu .navbar-collapse.collapse.show,
  .main-menu .navbar-collapse.collapsing{
    position: absolute !important;
    top: calc(100% + 8px) !important;
    right: 0 !important;
    left: auto !important;
    width: min(310px, calc(100vw - 20px)) !important;
    max-height: calc(100vh - 82px) !important;
    overflow-y: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 8px !important;
    background: #2f2a28 !important;
    box-shadow: 0 18px 36px rgba(0,0,0,.22) !important;
  }

  .mobile-menu-search-item{
    display: block !important;
  }
}

/* Mobile header final override - must stay at the very end. */
@media only screen and (max-width: 767px){
  html, body{
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body{
    padding-top: 0 !important;
  }

  .main-header,
  .main-header.fixed-header{
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 10090 !important;
  }

  .main-header .header-top{
    position: relative !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: #332d2f !important;
    transition: height .22s ease !important;
  }

  .main-header .header-top.mobile-social-open{
    height: 66px !important;
    min-height: 66px !important;
    overflow: visible !important;
  }

  .main-header .header-top .container,
  .main-header .header-top .header-info{
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 28px !important;
    padding: 0 8px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  .main-header .header-top .header-info{
    position: relative !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    padding-top: 5px !important;
  }

  .main-header .header-top .mobile-header-contact{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 18px !important;
    min-height: 18px !important;
    min-width: 82px !important;
    padding: 0 9px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #99cf22 !important;
    color: #fff !important;
    font-size: 9.5px !important;
    line-height: 18px !important;
    font-weight: 800 !important;
    font-style: italic !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
  }

  .main-header .header-top .header-language-select{
    display: inline-flex !important;
    align-items: center !important;
    margin-left: auto !important;
    margin-top: -2px !important;
    z-index: 10098 !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 7px !important;
    border-radius: 5px !important;
    font-size: 10px !important;
    line-height: 22px !important;
  }

  .main-header .header-top .header-site-search,
  .main-header .header-top .header-federation-icons{
    display: none !important;
  }

  .main-header .header-top .header-social-center{
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    height: 28px !important;
    padding: 0 8px !important;
    margin: 0 !important;
    background: #332d2f !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(-8px) !important;
    transition: opacity .18s ease, transform .22s ease, visibility .18s ease !important;
  }

  .main-header .header-top.mobile-social-open .header-social-center{
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .main-header .header-top .header-social-center li{
    display: inline-flex !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  .main-header .header-top .header-social-center li a{
    width: 27px !important;
    height: 27px !important;
    min-width: 27px !important;
    line-height: 27px !important;
    font-size: 12px !important;
  }

  .main-header .header-bottom{
    position: relative !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #f1f1f1 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .container,
  .main-header .header-bottom .container > .clearfix{
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 0 8px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  .main-header .header-bottom .logo-box{
    position: absolute !important;
    left: 50% !important;
    top: 7px !important;
    width: 224px !important;
    max-width: 68vw !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateX(-50%) !important;
  }

  .main-header .header-bottom .logo-box:before,
  .main-header .header-bottom .logo-box:after{
    display: none !important;
    content: none !important;
  }

  .main-header .header-bottom .logo-box .logo,
  .main-header .header-bottom .logo-box .logo a{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 32px !important;
    background: transparent !important;
  }

  .main-header .header-bottom .logo-box img{
    content: url('/assets/images/logo.png') !important;
    width: auto !important;
    max-width: 210px !important;
    max-height: 32px !important;
    object-fit: contain !important;
    background: transparent !important;
  }

  .main-header .header-bottom .nav-outer{
    position: absolute !important;
    right: 10px !important;
    top: 8px !important;
    width: 34px !important;
    height: 30px !important;
    transform: none !important;
    z-index: 10120 !important;
  }

  .main-menu,
  .main-menu .navbar-header,
  .main-header .menu-area{
    width: 34px !important;
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .main-menu .navbar-toggle{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: #f28b22 !important;
    box-shadow: none !important;
  }

  .mobile-menu-icon{
    display: block !important;
    color: #fff !important;
    font-size: 18px !important;
    line-height: 30px !important;
  }

  .mobile-menu-label{
    display: none !important;
  }

  .main-menu .navbar-collapse,
  .main-menu .navbar-collapse.collapse.show,
  .main-menu .navbar-collapse.collapsing{
    position: fixed !important;
    top: 76px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: calc(100vh - 76px) !important;
    max-height: calc(100vh - 76px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 8px 0 24px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #231f20 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    z-index: 10100 !important;
  }

  .main-menu .navbar-collapse > .navigation{
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-sizing: border-box !important;
  }

  .main-menu .navbar-collapse > .navigation > li{
    float: none !important;
    clear: both !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.14) !important;
    background: transparent !important;
    box-sizing: border-box !important;
  }

  .main-menu .navbar-collapse > .navigation > li > a{
    float: none !important;
    display: block !important;
    width: 100% !important;
    padding: 15px 56px 15px 20px !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 20px !important;
    font-weight: 800 !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  .main-menu .navbar-collapse > .navigation > li > .dropdown-btn{
    position: absolute !important;
    right: 8px !important;
    top: 6px !important;
    width: 42px !important;
    height: 42px !important;
    color: #fff !important;
    line-height: 42px !important;
    text-align: center !important;
    z-index: 3 !important;
  }

  .main-menu .navbar-collapse > .navigation > li > ul{
    position: static !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 0 8px !important;
    margin: 0 !important;
    background: #2d292a !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
  }

  .main-menu .navbar-collapse > .navigation > li > ul > li,
  .main-menu .navbar-collapse > .navigation > li > ul > li > a{
    float: none !important;
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  .main-menu .navbar-collapse > .navigation > li > ul > li > a{
    padding: 10px 46px 10px 34px !important;
    color: #fff !important;
    font-size: 13px !important;
    line-height: 18px !important;
    text-align: left !important;
  }

  .mobile-menu-search-item{
    display: block !important;
    padding: 12px 14px !important;
    background: #231f20 !important;
  }

  .mobile-menu-search{
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    height: 38px !important;
    min-height: 38px !important;
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 999px !important;
    background: #fff !important;
    box-sizing: border-box !important;
  }

  .mobile-menu-search .site-search-input{
    height: 38px !important;
    line-height: 38px !important;
    font-size: 13px !important;
  }

  .mobile-menu-search .site-search-submit{
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
  }

  .main-slider .slide{
    min-height: 430px !important;
    padding: 88px 0 86px !important;
    background-size: cover !important;
    background-position: center center !important;
    filter: saturate(1.08) contrast(1.04) brightness(1.04);
  }

  .main-slider .slide:before{
    background: rgba(0,0,0,.06) !important;
  }
}

@media only screen and (max-width: 380px){
  .main-slider .slide{
    min-height: 395px !important;
    padding: 78px 0 !important;
  }
}

/* Final mobile header reset: original logo, original-style contact drawer and bounded menu. */
@media only screen and (max-width: 767px){
  html,
  body{
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body{
    padding-top: 0 !important;
  }

  .main-header,
  .main-header.fixed-header{
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 10090 !important;
  }

  .main-header .header-top{
    position: relative !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #332d2f !important;
    overflow: hidden !important;
    transition: height .22s ease !important;
    z-index: 10095 !important;
  }

  .main-header .header-top.mobile-social-open{
    height: 66px !important;
    min-height: 66px !important;
    overflow: visible !important;
  }

  .main-header .header-top .container,
  .main-header .header-top .header-info{
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 28px !important;
    padding: 0 8px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  .main-header .header-top .header-info{
    position: relative !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    padding-top: 5px !important;
    overflow: visible !important;
  }

  .main-header .header-top .mobile-header-contact{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 18px !important;
    min-height: 18px !important;
    min-width: 82px !important;
    padding: 0 9px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #99cf22 !important;
    color: #fff !important;
    font-size: 9.5px !important;
    line-height: 18px !important;
    font-weight: 800 !important;
    font-style: italic !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
  }

  .main-header .header-top .header-language-select{
    display: inline-flex !important;
    align-items: center !important;
    margin-left: auto !important;
    margin-top: -2px !important;
    z-index: 10098 !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 7px !important;
    border-radius: 5px !important;
    font-size: 10px !important;
    line-height: 22px !important;
  }

  .main-header .header-top .header-site-search,
  .main-header .header-top .header-federation-icons{
    display: none !important;
  }

  .main-header .header-top .header-social-center{
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 32px !important;
    bottom: auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 28px !important;
    padding: 0 8px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    background: #332d2f !important;
    box-shadow: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(-8px) !important;
    transition: opacity .18s ease, transform .22s ease, visibility .18s ease !important;
  }

  .main-header .header-top.mobile-social-open .header-social-center{
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .main-header .header-top .header-social-center li{
    display: inline-flex !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  .main-header .header-top .header-social-center li a{
    width: 27px !important;
    height: 27px !important;
    min-width: 27px !important;
    line-height: 27px !important;
    font-size: 12px !important;
  }

  .main-header .header-bottom{
    position: relative !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #f1f1f1 !important;
    box-shadow: none !important;
    overflow: visible !important;
    z-index: 10094 !important;
  }

  .main-header .header-bottom .container,
  .main-header .header-bottom .container > .clearfix{
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 0 8px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  .main-header .header-bottom .logo-box{
    position: absolute !important;
    left: 50% !important;
    top: 7px !important;
    width: 224px !important;
    max-width: 68vw !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateX(-50%) !important;
  }

  .main-header .header-bottom .logo-box:before,
  .main-header .header-bottom .logo-box:after{
    display: none !important;
    content: none !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .main-header .header-bottom .logo-box .logo,
  .main-header .header-bottom .logo-box .logo a{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 32px !important;
    background: transparent !important;
  }

  .main-header .header-bottom .logo-box img{
    content: url('/assets/images/logo.png') !important;
    width: auto !important;
    max-width: 210px !important;
    max-height: 32px !important;
    object-fit: contain !important;
    background: transparent !important;
  }

  .main-header .header-bottom .nav-outer{
    position: absolute !important;
    right: 10px !important;
    top: 8px !important;
    left: auto !important;
    bottom: auto !important;
    width: 34px !important;
    height: 30px !important;
    transform: none !important;
    z-index: 10120 !important;
  }

  .main-menu,
  .main-menu .navbar-header,
  .main-header .menu-area{
    width: 34px !important;
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .main-menu .navbar-toggle{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: #f28b22 !important;
    box-shadow: none !important;
  }

  .mobile-menu-icon{
    display: block !important;
    color: #fff !important;
    font-size: 18px !important;
    line-height: 30px !important;
  }

  .mobile-menu-label{
    display: none !important;
  }

  .main-menu .navbar-collapse,
  .main-menu .navbar-collapse.collapse.show,
  .main-menu .navbar-collapse.collapsing{
    position: fixed !important;
    top: 76px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: calc(100vh - 76px) !important;
    max-height: calc(100vh - 76px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    box-sizing: border-box !important;
    padding: 8px 0 24px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #231f20 !important;
    box-shadow: none !important;
    z-index: 10100 !important;
  }

  .main-menu .navbar-collapse > .navigation{
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
  }

  .main-menu .navbar-collapse > .navigation > li{
    float: none !important;
    clear: both !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.14) !important;
    background: transparent !important;
    box-sizing: border-box !important;
  }

  .main-menu .navbar-collapse > .navigation > li > a{
    float: none !important;
    display: block !important;
    width: 100% !important;
    padding: 15px 56px 15px 20px !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 20px !important;
    font-weight: 800 !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  .main-menu .navbar-collapse > .navigation > li > .dropdown-btn{
    position: absolute !important;
    right: 8px !important;
    top: 6px !important;
    width: 42px !important;
    height: 42px !important;
    color: #fff !important;
    line-height: 42px !important;
    text-align: center !important;
    z-index: 3 !important;
  }

  .main-menu .navbar-collapse > .navigation > li > ul{
    position: static !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 0 8px !important;
    margin: 0 !important;
    background: #2d292a !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
  }

  .main-menu .navbar-collapse > .navigation > li > ul > li{
    float: none !important;
    display: block !important;
    width: 100% !important;
  }

  .main-menu .navbar-collapse > .navigation > li > ul > li > a{
    display: block !important;
    width: 100% !important;
    padding: 10px 46px 10px 34px !important;
    color: #fff !important;
    font-size: 13px !important;
    line-height: 18px !important;
    text-align: left !important;
    box-sizing: border-box !important;
  }

  .mobile-menu-search-item{
    display: block !important;
    padding: 12px 14px !important;
    background: #231f20 !important;
  }

  .mobile-menu-search{
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    height: 38px !important;
    min-height: 38px !important;
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 999px !important;
    background: #fff !important;
    box-sizing: border-box !important;
  }

  .mobile-menu-search .site-search-input{
    height: 38px !important;
    line-height: 38px !important;
    font-size: 13px !important;
  }

  .mobile-menu-search .site-search-submit{
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
  }

  .main-slider .slide{
    min-height: 430px !important;
    padding: 88px 0 86px !important;
    background-size: cover !important;
    background-position: center center !important;
    filter: saturate(1.08) contrast(1.04) brightness(1.04);
  }

  .main-slider .slide:before{
    background: rgba(0,0,0,.06) !important;
  }
}

@media only screen and (max-width: 380px){
  .main-slider .slide{
    min-height: 395px !important;
    padding: 78px 0 !important;
  }
}

/* User-confirmed mobile header/menu behavior: contact pushes page down, orange menu opens full panel. */
@media only screen and (max-width: 767px){
  .main-header{
    position: relative !important;
    z-index: 10090 !important;
  }

  .main-header .header-top{
    height: 27px !important;
    min-height: 27px !important;
    overflow: visible !important;
    transition: height .22s ease !important;
  }

  .main-header .header-top.mobile-social-open{
    height: 66px !important;
    min-height: 66px !important;
    background: #332d2f !important;
  }

  .main-header .header-top .header-info{
    position: relative !important;
    height: 100% !important;
    min-height: 27px !important;
    align-items: flex-start !important;
    padding-top: 4px !important;
  }

  .main-header .header-top .mobile-header-contact{
    height: 18px !important;
    min-height: 18px !important;
    background: #99cf22 !important;
    color: #ffffff !important;
    font-size: 9.5px !important;
    line-height: 18px !important;
    font-style: italic !important;
    font-weight: 800 !important;
  }

  .main-header .header-top .header-language-select{
    margin-top: 0 !important;
  }

  .main-header .header-top .header-social-center{
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 31px !important;
    bottom: auto !important;
    z-index: 10100 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 30px !important;
    padding: 0 8px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    background: #332d2f !important;
    box-shadow: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(-8px) !important;
    transition: opacity .18s ease, transform .22s ease, visibility .18s ease !important;
  }

  .main-header .header-top.mobile-social-open .header-social-center{
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .main-header .header-top .header-social-center li a{
    width: 27px !important;
    height: 27px !important;
    min-width: 27px !important;
    line-height: 27px !important;
    font-size: 12px !important;
  }

  .main-header .header-bottom{
    height: 45px !important;
    min-height: 45px !important;
    background: #f1f1f1 !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .logo-box{
    top: 8px !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .main-header .header-bottom .logo-box:before,
  .main-header .header-bottom .logo-box:after{
    display: none !important;
    content: none !important;
  }

  .main-header .header-bottom .logo-box img{
    content: url('/assets/images/small-logo.png') !important;
    max-width: 205px !important;
    max-height: 28px !important;
  }

  .main-header .header-bottom .nav-outer{
    right: 10px !important;
    top: 8px !important;
    width: 34px !important;
    height: 30px !important;
    z-index: 10120 !important;
  }

  .main-menu .navbar-toggle,
  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-header{
    width: 34px !important;
    height: 30px !important;
    min-height: 30px !important;
  }

  .main-menu .navbar-toggle{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 3px !important;
    background: #f28b22 !important;
    box-shadow: none !important;
  }

  .mobile-menu-icon{
    color: #ffffff !important;
    font-size: 18px !important;
    line-height: 30px !important;
  }

  .mobile-menu-label{
    display: none !important;
  }

  .main-menu .navbar-collapse,
  .main-menu .navbar-collapse.collapse.show,
  .main-menu .navbar-collapse.collapsing{
    position: fixed !important;
    top: 72px !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    max-height: calc(100vh - 72px) !important;
    height: calc(100vh - 72px) !important;
    overflow-y: auto !important;
    padding: 8px 0 22px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #231f20 !important;
    box-shadow: none !important;
    z-index: 10100 !important;
  }

  .main-menu .navbar-collapse > .navigation{
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
  }

  .main-menu .navbar-collapse > .navigation > li{
    position: relative !important;
    width: 100% !important;
    border-bottom: 1px solid rgba(255,255,255,.14) !important;
    background: transparent !important;
  }

  .main-menu .navbar-collapse > .navigation > li > a{
    display: block !important;
    width: 100% !important;
    padding: 15px 54px 15px 20px !important;
    color: #ffffff !important;
    font-size: 15px !important;
    line-height: 20px !important;
    font-weight: 800 !important;
    text-align: left !important;
  }

  .main-menu .navbar-collapse > .navigation > li.dropdown > a::after{
    content: "\f105";
    position: absolute;
    right: 20px;
    top: 50%;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #ffffff;
    transform: translateY(-50%);
  }

  .main-menu .navbar-collapse > .navigation > li > .dropdown-btn{
    position: absolute !important;
    right: 8px !important;
    top: 6px !important;
    width: 42px !important;
    height: 42px !important;
    color: #ffffff !important;
    text-align: center !important;
    line-height: 42px !important;
    z-index: 3 !important;
  }

  .main-menu .navbar-collapse > .navigation > li > ul{
    position: static !important;
    display: none;
    width: 100% !important;
    padding: 0 0 8px !important;
    margin: 0 !important;
    background: #2d292a !important;
    box-shadow: none !important;
  }

  .main-menu .navbar-collapse > .navigation > li > ul > li > a{
    display: block !important;
    padding: 10px 46px 10px 34px !important;
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 18px !important;
    text-align: left !important;
  }

  .mobile-menu-search-item{
    padding: 12px 14px !important;
    background: #231f20 !important;
  }

  .mobile-menu-search{
    height: 38px !important;
    min-height: 38px !important;
  }

  .mobile-menu-search input{
    height: 38px !important;
    line-height: 38px !important;
    font-size: 14px !important;
  }

  .mobile-menu-search button{
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    line-height: 38px !important;
  }

  .main-slider .slide{
    min-height: 430px !important;
    padding: 88px 0 86px !important;
    background-size: contain !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    filter: saturate(1.08) contrast(1.04) brightness(1.04);
  }

  .main-slider .slide:before{
    background: rgba(0,0,0,.06) !important;
  }
}

@media only screen and (max-width: 380px){
  .main-slider .slide{
    min-height: 395px !important;
    padding: 78px 0 78px !important;
  }
}

@media only screen and (max-width: 380px){
  .main-header .header-top .header-info{
    grid-template-columns: auto minmax(96px, 1fr) auto !important;
    gap: 5px !important;
  }

  .main-header .header-top .mobile-header-contact{
    padding: 0 7px !important;
    font-size: 10.8px !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    padding: 0 6px !important;
    font-size: 10.5px !important;
  }
}

/* Final mobile header scale: keep the brand visible, but give the page back to the content. */
@media only screen and (max-width: 767px){
  .main-header .header-top{
    padding: 3px 0 !important;
  }

  .main-header .header-top .container{
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .main-header .header-top .header-info{
    grid-template-columns: auto minmax(92px, 1fr) auto !important;
    gap: 4px !important;
  }

  .main-header .header-top .mobile-header-contact,
  .main-header .header-top .header-language-select .dropdown-toggle{
    min-height: 24px !important;
    height: 24px !important;
    padding: 0 7px !important;
    border-radius: 999px !important;
    font-size: 10.5px !important;
    line-height: 24px !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle img{
    width: 16px !important;
    height: 11px !important;
    margin-right: 3px !important;
  }

  .main-header .header-top .site-header-search{
    height: 24px !important;
    border-radius: 999px !important;
  }

  .main-header .header-top .site-header-search input{
    height: 24px !important;
    padding: 0 5px 0 9px !important;
    font-size: 11px !important;
    line-height: 24px !important;
  }

  .main-header .header-top .site-header-search button{
    flex: 0 0 24px !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    line-height: 24px !important;
    font-size: 11px !important;
  }

  .main-header .header-bottom{
    min-height: 38px !important;
    padding-top: 2px !important;
    padding-bottom: 2px !important;
  }

  .main-header .header-bottom .container{
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .main-header .header-bottom .container > .clearfix{
    min-height: 38px !important;
    display: flex !important;
    align-items: center !important;
  }

  .main-header .header-bottom .logo-box{
    width: 180px !important;
    max-width: 56vw !important;
    min-height: 38px !important;
    height: 38px !important;
    margin-top: 0 !important;
    padding: 0 !important;
  }

  .main-header .header-bottom .logo-box:before{
    width: 205px !important;
    height: 46px !important;
    border-bottom-right-radius: 34px !important;
  }

  .main-header .header-bottom .logo-box .logo,
  .main-header .header-bottom .logo-box a{
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
  }

  .main-header .header-bottom .logo-box img{
    width: auto !important;
    max-width: 165px !important;
    max-height: 32px !important;
  }

  .main-header .header-bottom .nav-outer,
  .main-header .menu-area,
  .main-menu .navbar-header{
    min-height: 30px !important;
  }

  .main-menu .navbar-toggle{
    min-width: 0 !important;
    height: 22px !important;
    padding: 0 2px !important;
    gap: 4px !important;
    line-height: 22px !important;
  }

  .mobile-menu-icon{
    font-size: 14px !important;
  }

  .mobile-menu-label{
    font-size: 10px !important;
    line-height: 11px !important;
  }

  .quick-nav{
    top: auto !important;
    right: 10px !important;
    bottom: 16px !important;
    gap: 6px !important;
    z-index: 9999 !important;
  }

  .quick-nav-btn{
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    font-size: 13px !important;
    box-shadow: 0 8px 18px rgba(59, 54, 52, 0.16) !important;
  }
}

@media only screen and (max-width: 380px){
  .main-header .header-bottom .logo-box{
    width: 164px !important;
  }

  .main-header .header-bottom .logo-box:before{
    width: 188px !important;
  }

  .main-header .header-bottom .logo-box img{
    max-width: 150px !important;
    max-height: 30px !important;
  }

  .quick-nav{
    right: 8px !important;
    bottom: 14px !important;
  }

  .quick-nav-btn{
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    font-size: 12px !important;
  }
}

/* Mobile header layout v2: menu left, logo centered, search right in a compact white band. */
@media only screen and (max-width: 767px){
  .main-header{
    position: sticky !important;
    top: 0 !important;
    z-index: 10020 !important;
  }

  .main-header .header-top{
    min-height: 26px !important;
    padding: 2px 0 !important;
  }

  .main-header .header-top .container{
    padding-left: 7px !important;
    padding-right: 7px !important;
  }

  .main-header .header-top .header-info{
    display: grid !important;
    grid-template-columns: auto 1fr auto !important;
    min-height: 24px !important;
    gap: 5px !important;
    align-items: center !important;
    position: relative !important;
  }

  .main-header .header-top .mobile-header-contact{
    grid-column: 1 !important;
    width: auto !important;
    min-width: 0 !important;
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 7px !important;
    font-size: 10px !important;
    line-height: 22px !important;
  }

  .main-header .header-top .header-language-select{
    grid-column: 3 !important;
    margin-left: 0 !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 6px !important;
    font-size: 10px !important;
    line-height: 22px !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle img{
    width: 15px !important;
    height: 10px !important;
  }

  .main-header .header-bottom{
    min-height: 46px !important;
    height: 46px !important;
    padding: 0 !important;
  }

  .main-header .header-bottom .container{
    height: 46px !important;
    padding-left: 7px !important;
    padding-right: 7px !important;
  }

  .main-header .header-bottom .container > .clearfix{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    min-height: 46px !important;
    height: 46px !important;
    padding: 0 !important;
  }

  .main-header .header-bottom .logo-box{
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 150px !important;
    max-width: 42vw !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  .main-header .header-bottom .logo-box:before{
    left: 50% !important;
    width: 170px !important;
    height: 42px !important;
    transform: translateX(-50%) !important;
    border-bottom-right-radius: 28px !important;
    border-bottom-left-radius: 28px !important;
  }

  .main-header .header-bottom .logo-box img{
    max-width: 136px !important;
    max-height: 28px !important;
  }

  .main-header .header-bottom .nav-outer{
    position: absolute !important;
    left: 7px !important;
    top: 50% !important;
    z-index: 3 !important;
    width: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    transform: translateY(-50%) !important;
  }

  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-header{
    min-height: 0 !important;
    height: auto !important;
  }

  .main-menu .navbar-toggle{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 4px 14px rgba(59, 54, 52, 0.10) !important;
  }

  .mobile-menu-icon{
    font-size: 13px !important;
  }

  .mobile-menu-label{
    font-size: 9.5px !important;
    line-height: 10px !important;
  }

  .main-header .header-top .site-header-search{
    position: absolute !important;
    top: 32px !important;
    right: 7px !important;
    z-index: 10035 !important;
    display: flex !important;
    width: 116px !important;
    height: 28px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    box-shadow: 0 4px 14px rgba(59, 54, 52, 0.12) !important;
  }

  .main-header .header-top .site-header-search input{
    height: 28px !important;
    padding: 0 4px 0 10px !important;
    font-size: 11px !important;
    line-height: 28px !important;
  }

  .main-header .header-top .site-header-search button{
    flex: 0 0 28px !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    font-size: 11px !important;
    line-height: 28px !important;
  }

  .main-header .header-top .site-header-search-results{
    max-width: calc(100vw - 16px) !important;
  }
}

@media only screen and (max-width: 380px){
  .main-header .header-bottom .logo-box{
    width: 138px !important;
    max-width: 38vw !important;
  }

  .main-header .header-bottom .logo-box:before{
    width: 154px !important;
  }

  .main-header .header-bottom .logo-box img{
    max-width: 124px !important;
    max-height: 26px !important;
  }

  .main-header .header-top .site-header-search{
    width: 108px !important;
  }

  .main-menu .navbar-toggle{
    padding: 0 7px !important;
  }
}

/* Mobile header correction: three compact rows - contact, logo, then menu + search. */
@media only screen and (max-width: 767px){
  .main-header{
    position: sticky !important;
    top: 0 !important;
    z-index: 10020 !important;
  }

  .main-header .header-top{
    height: 26px !important;
    min-height: 26px !important;
    padding: 2px 0 !important;
    overflow: visible !important;
  }

  .main-header .header-top .container{
    padding-left: 7px !important;
    padding-right: 7px !important;
  }

  .main-header .header-top .header-info{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: 22px !important;
    min-height: 22px !important;
    gap: 6px !important;
    position: static !important;
  }

  .main-header .header-top .mobile-header-contact{
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 8px !important;
    font-size: 10.5px !important;
    line-height: 22px !important;
  }

  .main-header .header-top .header-language-select{
    flex: 0 0 auto !important;
    margin-left: auto !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 6px !important;
    font-size: 10.5px !important;
    line-height: 22px !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle img{
    width: 15px !important;
    height: 10px !important;
    margin-right: 3px !important;
  }

  .main-header .header-bottom{
    height: 56px !important;
    min-height: 56px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .container{
    height: 56px !important;
    min-height: 56px !important;
    padding-left: 7px !important;
    padding-right: 7px !important;
  }

  .main-header .header-bottom .container > .clearfix{
    display: block !important;
    position: relative !important;
    height: 56px !important;
    min-height: 56px !important;
    padding: 0 !important;
  }

  .main-header .header-bottom .logo-box{
    position: absolute !important;
    left: 50% !important;
    top: 2px !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 168px !important;
    max-width: 58vw !important;
    height: 26px !important;
    min-height: 26px !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateX(-50%) !important;
  }

  .main-header .header-bottom .logo-box:before{
    left: 50% !important;
    top: -2px !important;
    width: 188px !important;
    height: 30px !important;
    border-bottom-left-radius: 24px !important;
    border-bottom-right-radius: 24px !important;
    transform: translateX(-50%) !important;
  }

  .main-header .header-bottom .logo-box .logo,
  .main-header .header-bottom .logo-box a{
    padding: 0 !important;
    margin: 0 !important;
    line-height: 1 !important;
  }

  .main-header .header-bottom .logo-box img{
    width: auto !important;
    max-width: 150px !important;
    max-height: 24px !important;
  }

  .main-header .header-bottom .nav-outer{
    position: absolute !important;
    left: 7px !important;
    top: auto !important;
    bottom: 4px !important;
    z-index: 3 !important;
    width: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    transform: none !important;
  }

  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-header{
    height: 24px !important;
    min-height: 24px !important;
  }

  .main-menu .navbar-toggle{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 24px !important;
    min-height: 24px !important;
    padding: 0 9px !important;
    gap: 4px !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 4px 12px rgba(59, 54, 52, 0.10) !important;
    line-height: 24px !important;
  }

  .mobile-menu-icon{
    font-size: 13px !important;
  }

  .mobile-menu-label{
    font-size: 10px !important;
    line-height: 11px !important;
  }

  .main-header .header-top .site-header-search{
    position: absolute !important;
    top: 56px !important;
    right: 7px !important;
    z-index: 10035 !important;
    display: flex !important;
    width: 148px !important;
    max-width: calc(100vw - 98px) !important;
    height: 24px !important;
    min-height: 24px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 4px 12px rgba(59, 54, 52, 0.10) !important;
  }

  .main-header .header-top .site-header-search input{
    height: 24px !important;
    padding: 0 5px 0 10px !important;
    font-size: 11px !important;
    line-height: 24px !important;
  }

  .main-header .header-top .site-header-search button{
    flex: 0 0 24px !important;
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    font-size: 11px !important;
    line-height: 24px !important;
  }

  .main-header .header-top .site-header-search-results{
    max-width: calc(100vw - 14px) !important;
  }
}

@media only screen and (max-width: 380px){
  .main-header .header-bottom .logo-box{
    width: 150px !important;
  }

  .main-header .header-bottom .logo-box:before{
    width: 168px !important;
  }

  .main-header .header-bottom .logo-box img{
    max-width: 132px !important;
  }

  .main-header .header-top .site-header-search{
    width: 132px !important;
    max-width: calc(100vw - 92px) !important;
  }
}

/* Mobile logo row color: red band behind the white framed logo only. */
@media only screen and (max-width: 767px){
  .main-header .header-bottom{
    background: linear-gradient(
      to bottom,
      #e72636 0,
      #e72636 30px,
      #f6f6f6 30px,
      #f6f6f6 100%
    ) !important;
  }

  .main-header .header-bottom .logo-box:before{
    background: #ffffff !important;
    box-shadow: 0 5px 14px rgba(59, 54, 52, 0.14) !important;
  }
}

/* Mobile logo row color and alignment: black band with logo on the left. */
@media only screen and (max-width: 767px){
  .main-header .header-bottom{
    background: linear-gradient(
      to bottom,
      #141110 0,
      #141110 30px,
      #f6f6f6 30px,
      #f6f6f6 100%
    ) !important;
  }

  .main-header .header-bottom .logo-box{
    left: 7px !important;
    transform: none !important;
    margin: 0 !important;
  }

  .main-header .header-bottom .logo-box:before{
    left: 0 !important;
    transform: none !important;
  }
}

@media only screen and (max-width: 380px){
  .main-header .header-bottom .logo-box{
    left: 7px !important;
  }
}

/* Mobile header final: calm logo row, search left and menu right. */
@media only screen and (max-width: 767px){
  .main-header .header-bottom{
    background: #f6f6f6 !important;
  }

  .main-header .header-bottom .logo-box{
    left: 50% !important;
    top: 2px !important;
    width: 198px !important;
    max-width: 68vw !important;
    height: 28px !important;
    min-height: 28px !important;
    transform: translateX(-50%) !important;
  }

  .main-header .header-bottom .logo-box:before{
    left: 50% !important;
    top: -3px !important;
    width: 218px !important;
    height: 34px !important;
    background: #ffffff !important;
    border-bottom-left-radius: 26px !important;
    border-bottom-right-radius: 26px !important;
    box-shadow: 0 5px 14px rgba(59, 54, 52, 0.10) !important;
    transform: translateX(-50%) !important;
  }

  .main-header .header-bottom .logo-box img{
    max-width: 178px !important;
    max-height: 28px !important;
  }

  .main-header .header-bottom .nav-outer{
    left: auto !important;
    right: 7px !important;
    bottom: 4px !important;
    transform: none !important;
  }

  .main-menu .navbar-toggle{
    height: 24px !important;
    min-height: 24px !important;
    padding: 0 !important;
    gap: 3px !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #2f2a28 !important;
  }

  .mobile-menu-icon{
    font-size: 12px !important;
    color: #e72636 !important;
  }

  .mobile-menu-label{
    font-size: 9px !important;
    line-height: 10px !important;
    color: #2f2a28 !important;
  }

  .main-header .header-top .site-header-search{
    left: 7px !important;
    right: auto !important;
    top: 56px !important;
    width: 150px !important;
    max-width: calc(100vw - 96px) !important;
  }
}

@media only screen and (max-width: 380px){
  .main-header .header-bottom .logo-box{
    left: 50% !important;
    width: 180px !important;
    max-width: 62vw !important;
    transform: translateX(-50%) !important;
  }

  .main-header .header-bottom .logo-box:before{
    left: 50% !important;
    width: 198px !important;
    transform: translateX(-50%) !important;
  }

  .main-header .header-bottom .logo-box img{
    max-width: 160px !important;
    max-height: 27px !important;
  }

  .main-header .header-top .site-header-search{
    width: 138px !important;
    max-width: calc(100vw - 88px) !important;
  }
}

/* Mobile search order: magnifier on the left, input text area on the right. */
@media only screen and (max-width: 767px){
  .main-header .header-top .site-header-search{
    flex-direction: row-reverse !important;
  }

  .main-header .header-top .site-header-search input{
    padding: 0 10px 0 6px !important;
    text-align: left !important;
  }

  .main-header .header-top .site-header-search button{
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* Mobile header spacing: make search/menu row slimmer and keep it away from the logo. */
@media only screen and (max-width: 767px){
  .main-header .header-bottom{
    height: 58px !important;
    min-height: 58px !important;
  }

  .main-header .header-bottom .container,
  .main-header .header-bottom .container > .clearfix{
    height: 58px !important;
    min-height: 58px !important;
  }

  .main-header .header-bottom .nav-outer{
    bottom: 3px !important;
  }

  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-header,
  .main-menu .navbar-toggle{
    height: 20px !important;
    min-height: 20px !important;
    line-height: 20px !important;
  }

  .main-menu .navbar-toggle{
    padding: 0 !important;
    gap: 2px !important;
  }

  .mobile-menu-icon{
    font-size: 11px !important;
  }

  .mobile-menu-label{
    font-size: 8.5px !important;
    line-height: 9px !important;
  }

  .main-header .header-top .site-header-search{
    top: 60px !important;
    height: 20px !important;
    min-height: 20px !important;
    width: 142px !important;
  }

  .main-header .header-top .site-header-search input{
    height: 20px !important;
    padding: 0 8px 0 5px !important;
    font-size: 10px !important;
    line-height: 20px !important;
  }

  .main-header .header-top .site-header-search button{
    flex-basis: 20px !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    font-size: 10px !important;
    line-height: 20px !important;
  }
}

/* Final quick navigation: single animated back-to-top button. */
.quick-nav{
  right: 28px !important;
  bottom: 34px !important;
  z-index: 10010 !important;
  display: block !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translateY(-78px) scale(0.92) !important;
  transition: opacity 0.28s ease, transform 0.38s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.quick-nav.is-visible{
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: translateY(0) scale(1) !important;
}

.quick-nav-btn{
  position: relative !important;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  border-radius: 50% !important;
  background: #e72636 !important;
  color: #ffffff !important;
  font-size: 22px !important;
  box-shadow: 0 14px 28px rgba(231, 38, 54, 0.28) !important;
}

.quick-nav-btn::before{
  content: "";
  position: absolute;
  inset: -10px;
  z-index: -1;
  border-radius: 50%;
  background: rgba(231, 38, 54, 0.18);
  animation: quickNavPulse 2.4s ease-in-out infinite;
}

.quick-nav-btn:hover,
.quick-nav-btn:focus{
  color: #ffffff !important;
  background: #d91f2f !important;
}

@keyframes quickNavPulse{
  0%, 100%{
    transform: scale(0.9);
    opacity: 0.58;
  }
  50%{
    transform: scale(1.08);
    opacity: 0.22;
  }
}

@media only screen and (max-width: 767px){
  .quick-nav{
    right: 14px !important;
    bottom: 22px !important;
    transform: translateY(-64px) scale(0.92) !important;
  }

  .quick-nav.is-visible{
    transform: translateY(0) scale(1) !important;
  }

  .quick-nav-btn{
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    font-size: 18px !important;
    box-shadow: 0 10px 22px rgba(231, 38, 54, 0.26) !important;
  }

  .quick-nav-btn::before{
    inset: -8px;
  }
}

/* Final mobile header: original-style compact header, search inside menu. */
.mobile-menu-search-item{
  display: none;
}

@media only screen and (max-width: 767px){
  html,
  body{
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  .boxed_wrapper,
  .page-wrapper{
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  .main-header{
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    z-index: 9999 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    transform: none !important;
  }

  .main-header.fixed-header,
  .main-header.header-style-one{
    position: relative !important;
    top: auto !important;
    transform: none !important;
  }

  .main-header .header-top{
    position: relative !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background: #332d2f !important;
  }

  .main-header .header-top .container,
  .main-header .header-top .header-info{
    height: 32px !important;
    min-height: 32px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .main-header .header-top .header-info{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    position: relative !important;
  }

  .main-header .header-top .mobile-header-contact{
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 82px !important;
    height: 20px !important;
    min-height: 20px !important;
    padding: 0 9px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #99cf22 !important;
    color: #ffffff !important;
    font-size: 10px !important;
    line-height: 20px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
  }

  .main-header .header-top .header-language-select{
    position: relative !important;
    display: inline-flex !important;
    margin-left: auto !important;
    right: auto !important;
    top: auto !important;
    z-index: 10030 !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    height: 24px !important;
    min-height: 24px !important;
    padding: 0 7px !important;
    border-radius: 5px !important;
    font-size: 10px !important;
    line-height: 24px !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle img{
    max-height: 14px !important;
    width: auto !important;
  }

  .main-header .header-top .header-language-select .dropdown-menu{
    top: calc(100% + 3px) !important;
    right: 0 !important;
    left: auto !important;
    z-index: 10050 !important;
  }

  .main-header .header-top .header-site-search{
    display: none !important;
  }

  .main-header .header-top .header-federation-icons{
    display: none !important;
  }

  .main-header .header-top .header-social-center{
    position: absolute !important;
    left: 0 !important;
    right: auto !important;
    top: auto !important;
    bottom: calc(100% + 7px) !important;
    z-index: 10040 !important;
    display: flex !important;
    width: auto !important;
    height: auto !important;
    max-width: calc(100vw - 20px) !important;
    padding: 6px 7px !important;
    margin: 0 !important;
    gap: 5px !important;
    border-radius: 999px !important;
    background: rgba(51, 45, 47, 0.96) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(10px) !important;
    transition: opacity .2s ease, transform .2s ease, visibility .2s ease !important;
  }

  .main-header .header-top.mobile-social-open .header-social-center{
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .main-header .header-top .header-social-center li{
    display: inline-flex !important;
    margin: 0 !important;
  }

  .main-header .header-top .header-social-center li a{
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    line-height: 28px !important;
    font-size: 13px !important;
  }

  .main-header .header-bottom{
    position: relative !important;
    height: 70px !important;
    min-height: 70px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background: #f6f6f6 !important;
    box-shadow: 0 10px 20px rgba(36, 31, 30, 0.06) !important;
  }

  .main-header .header-bottom .container,
  .main-header .header-bottom .container > .clearfix{
    position: relative !important;
    height: 70px !important;
    min-height: 70px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .main-header .header-bottom .logo-box{
    position: absolute !important;
    left: 50% !important;
    top: 6px !important;
    width: 225px !important;
    max-width: 70vw !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
    z-index: 2 !important;
  }

  .main-header .header-bottom .logo-box:before{
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: -4px !important;
    width: 245px !important;
    height: 40px !important;
    max-width: 76vw !important;
    border-radius: 0 0 28px 28px !important;
    background: #ffffff !important;
    box-shadow: 0 6px 14px rgba(59, 54, 52, 0.10) !important;
    transform: translateX(-50%) !important;
    z-index: -1 !important;
  }

  .main-header .header-bottom .logo-box .logo,
  .main-header .header-bottom .logo-box .logo a{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 32px !important;
    margin: 0 !important;
  }

  .main-header .header-bottom .logo-box img{
    display: block !important;
    width: auto !important;
    max-width: 205px !important;
    max-height: 32px !important;
    object-fit: contain !important;
  }

  .main-header .header-bottom .nav-outer{
    position: absolute !important;
    right: 10px !important;
    bottom: 5px !important;
    left: auto !important;
    top: auto !important;
    width: auto !important;
    height: 24px !important;
    min-height: 24px !important;
    transform: none !important;
    z-index: 5 !important;
  }

  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-header{
    position: relative !important;
    width: auto !important;
    height: 24px !important;
    min-height: 24px !important;
    padding: 0 !important;
    margin: 0 !important;
    float: none !important;
  }

  .main-menu .navbar-toggle{
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    height: 24px !important;
    min-height: 24px !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 1px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #2f2a28 !important;
  }

  .mobile-menu-icon{
    font-size: 13px !important;
    line-height: 13px !important;
    color: #e72636 !important;
  }

  .mobile-menu-label{
    display: block !important;
    font-size: 8.5px !important;
    line-height: 9px !important;
    color: #2f2a28 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
  }

  .mobile-menu-search-item{
    display: block !important;
    padding: 9px 10px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
    background: rgba(255, 255, 255, 0.08) !important;
  }

  .mobile-menu-search{
    position: relative !important;
    display: flex !important;
    flex-direction: row-reverse !important;
    align-items: center !important;
    width: 100% !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .mobile-menu-search .site-search-label{
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0,0,0,0) !important;
  }

  .mobile-menu-search input{
    flex: 1 1 auto !important;
    width: auto !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 0 12px 0 2px !important;
    border: 0 !important;
    background: #ffffff !important;
    color: #2f2a28 !important;
    font-size: 13px !important;
    line-height: 34px !important;
    text-align: left !important;
  }

  .mobile-menu-search button{
    flex: 0 0 34px !important;
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #e72636 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    line-height: 34px !important;
  }

  .mobile-menu-search .site-header-search-results{
    position: absolute !important;
    top: calc(100% + 6px) !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 10070 !important;
    max-height: 260px !important;
    overflow-y: auto !important;
    border-radius: 8px !important;
  }

  .main-menu .navbar-collapse,
  .main-menu .navbar-collapse.collapse.show,
  .main-menu .navbar-collapse.collapsing{
    position: absolute !important;
    top: calc(100% + 8px) !important;
    right: 0 !important;
    left: auto !important;
    width: min(310px, calc(100vw - 24px)) !important;
    max-height: calc(100vh - 120px) !important;
    overflow-y: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #2f2a28 !important;
    box-shadow: 0 18px 36px rgba(0,0,0,.22) !important;
    z-index: 10060 !important;
  }

  .main-menu .navbar-collapse > .navigation{
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
  }

  .main-menu .navbar-collapse > .navigation > li > a,
  .main-menu .navbar-collapse > .navigation > li > ul > li > a{
    color: #ffffff !important;
    font-size: 13px !important;
    line-height: 18px !important;
  }
}

@media only screen and (min-width: 768px){
  .mobile-menu-search-item{
    display: none !important;
  }
}

/* Mobile header correction: compact original-style header only on phones. */
@media only screen and (max-width: 767px){
  .main-header,
  .main-header.fixed-header,
  .main-header.header-style-one{
    position: relative !important;
    top: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  .main-header .header-top{
    height: 28px !important;
    min-height: 28px !important;
    overflow: visible !important;
  }

  .main-header .header-top .container,
  .main-header .header-top .header-info{
    height: 28px !important;
    min-height: 28px !important;
  }

  .main-header .header-top .mobile-header-contact{
    height: 18px !important;
    min-height: 18px !important;
    min-width: 76px !important;
    padding: 0 8px !important;
    font-size: 9.5px !important;
    line-height: 18px !important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 7px !important;
    font-size: 9.5px !important;
    line-height: 22px !important;
  }

  .main-header .header-top .header-social-center{
    top: calc(100% + 5px) !important;
    bottom: auto !important;
    left: 0 !important;
    display: flex !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(-6px) !important;
  }

  .main-header .header-top.mobile-social-open .header-social-center{
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .main-header .header-bottom{
    height: 48px !important;
    min-height: 48px !important;
    background: #f6f6f6 !important;
    box-shadow: 0 8px 16px rgba(36, 31, 30, 0.05) !important;
  }

  .main-header .header-bottom .container,
  .main-header .header-bottom .container > .clearfix{
    height: 48px !important;
    min-height: 48px !important;
  }

  .main-header .header-bottom .logo-box{
    top: 6px !important;
    width: 220px !important;
    height: 34px !important;
    min-height: 34px !important;
  }

  .main-header .header-bottom .logo-box:before{
    top: -3px !important;
    width: 238px !important;
    height: 38px !important;
    border-radius: 0 0 25px 25px !important;
    background: #ffffff !important;
  }

  .main-header .header-bottom .logo-box .logo,
  .main-header .header-bottom .logo-box .logo a{
    height: 34px !important;
  }

  .main-header .header-bottom .logo-box img{
    max-width: 202px !important;
    max-height: 32px !important;
  }

  .main-header .header-bottom .nav-outer{
    right: 12px !important;
    top: 15px !important;
    bottom: auto !important;
    height: 20px !important;
    min-height: 20px !important;
  }

  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-header,
  .main-menu .navbar-toggle{
    height: 20px !important;
    min-height: 20px !important;
  }

  .main-menu .navbar-toggle{
    width: 24px !important;
    min-width: 24px !important;
  }

  .mobile-menu-icon{
    display: block !important;
    font-size: 18px !important;
    line-height: 20px !important;
    color: #e72636 !important;
  }

  .mobile-menu-label{
    display: none !important;
  }

  .main-menu .navbar-collapse,
  .main-menu .navbar-collapse.collapse.show,
  .main-menu .navbar-collapse.collapsing{
    top: calc(100% + 10px) !important;
    right: -2px !important;
    width: min(310px, calc(100vw - 20px)) !important;
    max-height: calc(100vh - 86px) !important;
  }

  .mobile-menu-search-item{
    display: block !important;
  }
}

/* Mobile contact final: same green pill and upward social opening as the original mobile site. */
@media only screen and (max-width: 767px){
  .main-header .header-top{
    overflow: visible !important;
    z-index: 10080 !important;
  }

  .main-header .header-top .header-info{
    overflow: visible !important;
  }

  .main-header .header-top .mobile-header-contact{
    position: relative !important;
    z-index: 10090 !important;
    background: #99cf22 !important;
    color: #ffffff !important;
    border: 0 !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    text-transform: uppercase !important;
  }

  .main-header .header-top .mobile-header-contact:hover,
  .main-header .header-top .mobile-header-contact:focus,
  .main-header .header-top.mobile-social-open .mobile-header-contact{
    background: #99cf22 !important;
    color: #ffffff !important;
  }

  .main-header .header-top .header-social-center{
    position: absolute !important;
    left: 0 !important;
    right: auto !important;
    top: auto !important;
    bottom: calc(100% + 6px) !important;
    z-index: 10100 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 5px !important;
    width: auto !important;
    max-width: calc(100vw - 18px) !important;
    padding: 6px 7px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    background: rgba(51, 45, 47, 0.96) !important;
    box-shadow: 0 10px 22px rgba(0,0,0,.18) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(8px) !important;
    transition: opacity .2s ease, transform .2s ease, visibility .2s ease !important;
  }

  .main-header .header-top.mobile-social-open .header-social-center{
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .main-header .header-top .header-social-center li{
    display: inline-flex !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
  }

  .main-header .header-top .header-social-center li a{
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    line-height: 28px !important;
    font-size: 13px !important;
  }
}

/* Absolute last mobile header override: no oval, no menu text, original contact pill. */
@media only screen and (max-width: 767px){
  .main-header,
  .main-header.fixed-header{
    position: relative !important;
    top: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  .main-header .header-top{
    height: 27px !important;
    min-height: 27px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #332d2f !important;
    overflow: visible !important;
    z-index: 10080 !important;
  }

  .main-header .header-top .container,
  .main-header .header-top .header-info{
    height: 27px !important;
    min-height: 27px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .main-header .header-top .header-info{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    overflow: visible !important;
  }

  .main-header .header-top .mobile-header-contact{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 18px !important;
    min-height: 18px !important;
    min-width: 82px !important;
    padding: 0 9px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #99cf22 !important;
    color: #ffffff !important;
    font-size: 9.5px !important;
    line-height: 18px !important;
    font-weight: 800 !important;
    font-style: italic !important;
    text-transform: uppercase !important;
    box-shadow: none !important;
  }

  .main-header .header-top .header-social-center{
    position: absolute !important;
    left: 8px !important;
    right: auto !important;
    top: calc(100% + 5px) !important;
    bottom: auto !important;
    display: flex !important;
    gap: 5px !important;
    padding: 5px 6px !important;
    border-radius: 999px !important;
    background: rgba(51, 45, 47, .96) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateY(8px) !important;
  }

  .main-header .header-top.mobile-social-open .header-social-center{
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
  }

  .main-header .header-bottom{
    height: 45px !important;
    min-height: 45px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #f1f1f1 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  .main-header .header-bottom .container,
  .main-header .header-bottom .container > .clearfix{
    height: 45px !important;
    min-height: 45px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .main-header .header-bottom .logo-box{
    position: absolute !important;
    left: 50% !important;
    top: 8px !important;
    width: 210px !important;
    max-width: 66vw !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: translateX(-50%) !important;
  }

  .main-header .header-bottom .logo-box:before,
  .main-header .header-bottom .logo-box:after{
    display: none !important;
    content: none !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .main-header .header-bottom .logo-box .logo,
  .main-header .header-bottom .logo-box .logo a{
    height: 28px !important;
    background: transparent !important;
  }

  .main-header .header-bottom .logo-box img{
    content: url('/assets/images/small-logo.png') !important;
    max-width: 205px !important;
    max-height: 28px !important;
    background: transparent !important;
    object-fit: contain !important;
  }

  .main-header .header-bottom .nav-outer{
    position: absolute !important;
    right: 12px !important;
    top: 12px !important;
    left: auto !important;
    bottom: auto !important;
    width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
    transform: none !important;
  }

  .main-menu .navbar-toggle,
  .main-header .menu-area,
  .main-menu,
  .main-menu .navbar-header{
    width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .mobile-menu-icon{
    display: block !important;
    font-size: 18px !important;
    line-height: 22px !important;
    color: #e72636 !important;
  }

  .mobile-menu-label{
    display: none !important;
  }

  .main-header .header-top .header-site-search{
    display: none !important;
  }

  .mobile-menu-search-item{
    display: block !important;
  }
}

/* Mobile header final override - must stay at the real EOF. */
@media only screen and (max-width: 767px){
  html, body{max-width:100%!important;overflow-x:hidden!important;}
  body{padding-top:0!important;}
  .main-header,.main-header.fixed-header{position:relative!important;top:0!important;left:0!important;right:0!important;width:100%!important;max-width:100vw!important;margin:0!important;padding:0!important;transform:none!important;z-index:10090!important;}
  .main-header .header-top{position:relative!important;height:42px!important;min-height:42px!important;padding:0!important;margin:0!important;overflow:hidden!important;background:#332d2f!important;transition:height .22s ease!important;}
  .main-header .header-top.mobile-social-open{height:88px!important;min-height:88px!important;overflow:visible!important;}
  .main-header .header-top .container,.main-header .header-top .header-info{width:100%!important;max-width:100%!important;height:100%!important;min-height:42px!important;padding:0 9px!important;margin:0!important;box-sizing:border-box!important;}
  .main-header .header-top .header-info{position:relative!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding-top:0!important;}
  .main-header .header-top .mobile-header-contact{display:inline-flex!important;align-items:center!important;justify-content:center!important;height:22px!important;min-height:22px!important;min-width:98px!important;padding:0 12px!important;margin:0!important;border:0!important;border-radius:999px!important;background:#99cf22!important;color:#fff!important;font-size:11px!important;line-height:22px!important;font-weight:800!important;font-style:italic!important;text-transform:uppercase!important;box-shadow:none!important;}
  .main-header .header-top .header-language-select{display:inline-flex!important;align-items:center!important;margin-left:auto!important;margin-top:0!important;z-index:10098!important;}
  .main-header .header-top .header-language-select .dropdown-toggle{height:24px!important;min-height:24px!important;padding:0 8px!important;border-radius:5px!important;font-size:11px!important;line-height:24px!important;}
  .main-header .header-top .header-site-search,.main-header .header-top .header-federation-icons{display:none!important;}
  .main-header .header-top .header-social-center{position:absolute!important;left:0!important;right:0!important;top:48px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;width:100%!important;height:32px!important;padding:0 8px!important;margin:0!important;background:#332d2f!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(-8px)!important;transition:opacity .18s ease,transform .22s ease,visibility .18s ease!important;}
  .main-header .header-top.mobile-social-open .header-social-center{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translateY(0)!important;}
  .main-header .header-top .header-social-center li{display:inline-flex!important;flex:0 0 auto!important;margin:0!important;}
  .main-header .header-top .header-social-center li a{width:30px!important;height:30px!important;min-width:30px!important;line-height:30px!important;font-size:13px!important;}
  .main-header .header-bottom{position:relative!important;height:62px!important;min-height:62px!important;padding:0!important;margin:0!important;background:#f1f1f1!important;box-shadow:none!important;overflow:visible!important;}
  .main-header .header-bottom .container,.main-header .header-bottom .container>.clearfix{position:relative!important;width:100%!important;max-width:100%!important;height:62px!important;min-height:62px!important;padding:0 9px!important;margin:0!important;box-sizing:border-box!important;}
  .main-header .header-bottom .logo-box{position:absolute!important;left:10px!important;top:11px!important;width:238px!important;max-width:66vw!important;height:40px!important;min-height:40px!important;padding:0!important;margin:0!important;background:transparent!important;box-shadow:none!important;transform:none!important;}
  .main-header .header-bottom .logo-box:before,.main-header .header-bottom .logo-box:after{display:none!important;content:none!important;}
  .main-header .header-bottom .logo-box .logo,.main-header .header-bottom .logo-box .logo a{display:flex!important;align-items:center!important;justify-content:flex-start!important;height:40px!important;background:transparent!important;}
  .main-header .header-bottom .logo-box img{content:url('/assets/images/logo.png')!important;width:auto!important;max-width:228px!important;max-height:40px!important;object-fit:contain!important;background:transparent!important;}
  .main-header .header-bottom .nav-outer{position:absolute!important;right:8px!important;top:9px!important;width:38px!important;height:34px!important;transform:none!important;z-index:10120!important;}
  .main-menu,.main-menu .navbar-header,.main-header .menu-area{width:38px!important;height:34px!important;min-height:34px!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important;}
  .main-menu .navbar-toggle{display:flex!important;align-items:center!important;justify-content:center!important;width:38px!important;height:34px!important;min-height:34px!important;padding:0!important;margin:0!important;border:0!important;border-radius:4px!important;background:#f28b22!important;box-shadow:none!important;}
  .mobile-menu-icon{display:block!important;color:#fff!important;font-size:20px!important;line-height:34px!important;}
  .mobile-menu-label{display:none!important;}
  .main-menu .navbar-collapse,.main-menu .navbar-collapse.in,.main-menu .navbar-collapse.collapse.show,.main-menu .navbar-collapse.collapsing{position:fixed!important;top:104px!important;left:auto!important;right:0!important;bottom:0!important;width:56vw!important;min-width:218px!important;max-width:286px!important;height:calc(100vh - 104px)!important;max-height:calc(100vh - 104px)!important;overflow-x:hidden!important;overflow-y:auto!important;padding:8px 0 24px!important;margin:0!important;border:0!important;border-radius:0 0 0 12px!important;background:#231f20!important;box-shadow:-14px 18px 28px rgba(0,0,0,.22)!important;box-sizing:border-box!important;transform:none!important;z-index:10100!important;}
  .main-menu .navbar-collapse>.navigation{float:none!important;display:block!important;width:100%!important;margin:0!important;padding:0!important;background:transparent!important;box-sizing:border-box!important;}
  .main-menu .navbar-collapse>.navigation>li{float:none!important;clear:both!important;position:relative!important;display:block!important;width:100%!important;margin:0!important;border-bottom:1px solid rgba(255,255,255,.14)!important;background:transparent!important;box-sizing:border-box!important;}
  .main-menu .navbar-collapse>.navigation>li>a{float:none!important;display:block!important;width:100%!important;padding:14px 46px 14px 16px!important;color:#fff!important;font-size:14px!important;line-height:19px!important;font-weight:800!important;text-align:left!important;box-sizing:border-box!important;}
  .main-menu .navbar-collapse>.navigation>li>.dropdown-btn{position:absolute!important;right:0!important;top:4px!important;width:42px!important;height:42px!important;color:#fff!important;line-height:42px!important;text-align:center!important;border-left:1px solid rgba(255,255,255,.12)!important;z-index:3!important;box-sizing:border-box!important;}
  .main-menu .navbar-collapse>.navigation>li>ul{position:static!important;float:none!important;width:100%!important;max-width:100%!important;padding:0 0 8px!important;margin:0!important;background:#2d292a!important;box-shadow:none!important;box-sizing:border-box!important;}
  .main-menu .navbar-collapse>.navigation>li>ul>li,.main-menu .navbar-collapse>.navigation>li>ul>li>a{float:none!important;display:block!important;width:100%!important;box-sizing:border-box!important;}
  .main-menu .navbar-collapse>.navigation>li>ul>li>a{padding:10px 46px 10px 34px!important;color:#fff!important;font-size:13px!important;line-height:18px!important;text-align:left!important;}
  .mobile-menu-search-item{display:block!important;padding:12px 14px!important;background:#231f20!important;}
  .mobile-menu-search{display:flex!important;flex-direction:row-reverse!important;align-items:center!important;height:38px!important;min-height:38px!important;width:100%!important;max-width:100%!important;border-radius:999px!important;background:#fff!important;box-sizing:border-box!important;}
  .mobile-menu-search .site-search-input{height:38px!important;line-height:38px!important;font-size:13px!important;}
  .mobile-menu-search .site-search-submit{width:38px!important;height:38px!important;min-width:38px!important;}
  .main-slider .slide{min-height:430px!important;padding:88px 0 86px!important;background-size:cover!important;background-position:center center!important;filter:saturate(1.08) contrast(1.04) brightness(1.04);}
  .main-slider .slide:before{background:rgba(0,0,0,.06)!important;}
}
@media only screen and (max-width:380px){.main-slider .slide{min-height:395px!important;padding:78px 0!important;}}

/* Mobile menu uses full-row taps; dropdown arrow buttons are no longer shown. */
@media only screen and (max-width: 767px){
  .main-menu .navbar-collapse>.navigation>li>.dropdown-btn{
    display:none!important;
  }
  .main-menu .navbar-collapse>.navigation>li>a{
    padding-right:16px!important;
  }
  .main-menu .navbar-collapse>.navigation>li>ul>li>a{
    padding-right:16px!important;
  }
}

/* Mobile blog detail: keep only a small breathing space before the article photo. */
@media only screen and (max-width: 767px){
  .sidebar-page-container.blog-detail-page{
    padding-top:12px!important;
  }
  .blog-detail-page .blog-single-content .inner-box{
    padding-top:0!important;
  }
  .blog-detail-page .blog-single-content .news-block-one{
    margin-top:0!important;
  }
  .blog-detail-page .blog-single-content .news-block-one .image{
    margin-top:0!important;
  }
}

/* Mobile menu panel should end after the last navigation item. */
@media only screen and (max-width: 767px){
  .main-menu .navbar-collapse,
  .main-menu .navbar-collapse.in,
  .main-menu .navbar-collapse.collapse.show,
  .main-menu .navbar-collapse.collapsing{
    bottom:auto!important;
    height:auto!important;
    max-height:calc(100vh - 104px)!important;
    padding-bottom:0!important;
    overflow-y:auto!important;
    background:#231f20!important;
  }
  .main-menu .navbar-collapse>.navigation>li:last-child{
    border-bottom:0!important;
  }
}

/* Mobile menu legibility: use crisp system text and remove any inherited decorative rendering. */
@media only screen and (max-width: 767px){
  .main-menu .navbar-collapse,
  .main-menu .navbar-collapse *{
    -webkit-font-smoothing: antialiased!important;
    -moz-osx-font-smoothing: grayscale!important;
    text-rendering: geometricPrecision!important;
    text-shadow:none!important;
    filter:none!important;
  }

  .main-menu .navbar-collapse>.navigation>li>a,
  .main-menu .navbar-collapse>.navigation>li>ul>li>a{
    font-family:Arial, Helvetica, sans-serif!important;
    color:#ffffff!important;
    font-style:normal!important;
    font-weight:900!important;
    letter-spacing:.01em!important;
    text-transform:none!important;
    opacity:1!important;
  }

  .main-menu .navbar-collapse>.navigation>li>a{
    font-size:15px!important;
    line-height:20px!important;
  }

  .main-menu .navbar-collapse>.navigation>li>ul>li>a{
    font-size:14px!important;
    line-height:19px!important;
    color:#f7f7f7!important;
  }
}

/* Mobile header readability and compact-text previews. */
@media only screen and (max-width: 767px){
  .main-header .header-top{
    height:48px!important;
    min-height:48px!important;
  }

  .main-header .header-top.mobile-social-open{
    height:98px!important;
    min-height:98px!important;
  }

  .main-header .header-top .container,
  .main-header .header-top .header-info{
    min-height:48px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }

  .main-header .header-top .mobile-header-contact{
    height:27px!important;
    min-height:27px!important;
    min-width:112px!important;
    padding:0 14px!important;
    font-size:12px!important;
    line-height:27px!important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle{
    height:31px!important;
    min-height:31px!important;
    padding:0 9px!important;
    font-size:12px!important;
    line-height:31px!important;
  }

  .main-header .header-top .header-language-select .dropdown-toggle img{
    width:24px!important;
    height:16px!important;
    object-fit:cover!important;
    margin-right:5px!important;
  }

  .main-header .header-top .header-social-center{
    top:56px!important;
  }

  .main-menu .navbar-collapse,
  .main-menu .navbar-collapse.in,
  .main-menu .navbar-collapse.collapse.show,
  .main-menu .navbar-collapse.collapsing{
    top:110px!important;
    max-height:calc(100vh - 110px)!important;
  }

  .home-trust-badges,
  .home-trust-grid,
  .home-trust-badge{
    overflow:visible!important;
  }

  .home-trust-badges{
    position:relative!important;
    z-index:20!important;
  }

  .home-trust-badge{
    position:relative!important;
  }

  .home-trust-badge[data-preview]::after{
    content:attr(data-preview);
    position:fixed!important;
    left:10px!important;
    right:10px!important;
    top:112px!important;
    z-index:20000!important;
    display:block!important;
    width:auto!important;
    max-width:none!important;
    min-height:0!important;
    padding:8px 12px!important;
    border-radius:8px!important;
    background:rgba(35,31,32,.96)!important;
    color:#fff!important;
    font-size:11.5px!important;
    line-height:15.5px!important;
    font-weight:700!important;
    text-align:center!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    box-sizing:border-box!important;
    box-shadow:0 12px 28px rgba(0,0,0,.22)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-5px)!important;
    transition:opacity .16s ease, transform .16s ease, visibility .16s ease!important;
  }

  .home-trust-badge[data-preview]:hover::after,
  .home-trust-badge[data-preview]:focus::after,
  .home-trust-badge[data-preview]:focus-visible::after{
    opacity:1!important;
    visibility:visible!important;
    transform:translateY(0)!important;
  }
}

/* Mobile trust badges: no floating preview, only compact two-line titles. */
@media only screen and (max-width: 767px){
  .home-trust-badge[data-preview]::after,
  .home-trust-badge[data-preview]:hover::after,
  .home-trust-badge[data-preview]:focus::after,
  .home-trust-badge[data-preview]:focus-visible::after{
    content:none!important;
    display:none!important;
  }

  .home-trust-badges{
    overflow:hidden!important;
  }

  .home-trust-grid{
    display:flex!important;
    grid-template-columns:none!important;
    flex-wrap:nowrap!important;
    gap:6px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
  }

  .home-trust-grid::-webkit-scrollbar{
    display:none!important;
  }

  .home-trust-badge{
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:auto!important;
    min-width:112px!important;
    max-width:128px!important;
    min-height:42px!important;
    height:42px!important;
    padding:5px 7px!important;
    gap:5px!important;
    border-radius:6px!important;
    overflow:hidden!important;
  }

  .home-trust-badge i{
    flex:0 0 18px!important;
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    font-size:9px!important;
    line-height:18px!important;
  }

  .home-trust-badge span{
    display:none!important;
  }

  .home-trust-badge strong{
    display:-webkit-box!important;
    min-width:0!important;
    max-width:88px!important;
    margin:0!important;
    color:#202020!important;
    font-size:10.4px!important;
    line-height:12px!important;
    font-weight:900!important;
    text-align:left!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow:hidden!important;
    -webkit-line-clamp:2!important;
    line-clamp:2!important;
    -webkit-box-orient:vertical!important;
  }

  .main-header .header-top{
    height:48px!important;
    min-height:48px!important;
    overflow:hidden!important;
  }

  .main-header .header-top.mobile-social-open{
    height:88px!important;
    min-height:88px!important;
    overflow:hidden!important;
    background:#332d2f!important;
  }

  .main-header .header-top .container,
  .main-header .header-top .header-info{
    height:48px!important;
    min-height:48px!important;
  }

  .main-header .header-top .header-social-center{
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:48px!important;
    bottom:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    width:100%!important;
    height:40px!important;
    padding:5px 8px!important;
    margin:0!important;
    background:#332d2f!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translateY(-6px)!important;
    transition:opacity .18s ease, transform .2s ease, visibility .18s ease!important;
  }

  .main-header .header-top.mobile-social-open .header-social-center{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translateY(0)!important;
  }

  .main-header .header-top .header-social-center li{
    display:inline-flex!important;
    flex:0 0 auto!important;
    margin:0!important;
  }

  .main-header .header-top .header-social-center li a{
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    line-height:28px!important;
    font-size:13px!important;
  }
}

@media only screen and (max-width: 390px){
  .home-trust-badge{
    min-width:102px!important;
    max-width:116px!important;
    padding-left:6px!important;
    padding-right:6px!important;
  }

  .home-trust-badge strong{
    max-width:78px!important;
    font-size:9.4px!important;
    line-height:11px!important;
  }
}

/* Mobile section headings: keep the current layout, make kitten/graduate/parent titles clearer. */
@media only screen and (max-width: 767px){
  .home-main-section .sec-title,
  .team-style-two.home-main-section .sec-title,
  .gallery-section.home-main-section .sec-title,
  .news-section.home-main-section .sec-title{
    margin-bottom:12px!important;
    text-align:center!important;
  }

  .home-main-section .sec-title .top-title,
  .team-style-two.home-main-section .sec-title .top-title,
  .gallery-section.home-main-section .sec-title .top-title,
  .news-section.home-main-section .sec-title .top-title{
    display:inline-block!important;
    margin:0 0 3px!important;
    padding:0 2px 3px!important;
    color:#e72636!important;
    font-size:15px!important;
    line-height:19px!important;
    font-weight:500!important;
    letter-spacing:0!important;
  }

  .home-main-section .sec-title .top-title:before,
  .team-style-two.home-main-section .sec-title .top-title:before,
  .gallery-section.home-main-section .sec-title .top-title:before,
  .news-section.home-main-section .sec-title .top-title:before{
    height:1px!important;
    bottom:1px!important;
    background:#e72636!important;
  }

  .home-main-section .sec-title h1,
  .home-main-section .sec-title h2,
  .team-style-two.home-main-section .sec-title h2,
  .gallery-section.home-main-section .sec-title h2,
  .news-section.home-main-section .sec-title h2{
    display:inline-block!important;
    margin:0!important;
    padding-bottom:8px!important;
    color:#262323!important;
    font-family:inherit!important;
    font-size:25px!important;
    line-height:30px!important;
    font-weight:900!important;
    letter-spacing:0!important;
    text-shadow:none!important;
  }

  .home-main-section .sec-title h1:after,
  .home-main-section .sec-title h2:after,
  .team-style-two.home-main-section .sec-title h2:after,
  .gallery-section.home-main-section .sec-title h2:after,
  .news-section.home-main-section .sec-title h2:after{
    width:56px!important;
    height:2px!important;
    bottom:0!important;
    background:#e72636!important;
    box-shadow:0 4px 10px rgba(231,38,54,.22)!important;
  }
}

@media only screen and (max-width: 390px){
  .home-main-section .sec-title h1,
  .home-main-section .sec-title h2,
  .team-style-two.home-main-section .sec-title h2,
  .gallery-section.home-main-section .sec-title h2,
  .news-section.home-main-section .sec-title h2{
    font-size:23px!important;
    line-height:28px!important;
  }
}

/* Mobile cat profile order: keep photos first and move the trust note to the page end. */
.cat-profile-trust-mobile-end{
  display:none;
}

.cat-health-mobile-end{
  display:none;
}

@media only screen and (max-width: 767px){
  .service-details > .container > .row:first-child{
    display:block!important;
  }

  .service-details .image-column,
  .service-details .content-column{
    float:none!important;
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
    position:relative!important;
    z-index:auto!important;
  }

  .service-details .content-column{
    margin-top:8px!important;
  }

  .service-details .content-box{
    position:relative!important;
    z-index:auto!important;
    margin:0!important;
  }

  .service-details .content-box h2,
  .service-details .content-box .text,
  .service-details .content-box .table,
  .service-details .cat-profile-contact-card{
    position:relative!important;
    z-index:auto!important;
  }

  .service-details .cat-profile-support-row{
    display:none!important;
  }

  .service-details .content-box > .cat-profile-trust{
    display:none!important;
  }

  .cat-health-mobile-end{
    display:block!important;
    padding:6px 0 0!important;
    margin:0!important;
  }

  .cat-health-mobile-end .cat-health-panel{
    margin:0!important;
    padding:8px 9px!important;
    border-radius:7px!important;
    box-shadow:0 8px 18px rgba(59,54,52,.045)!important;
  }

  .cat-health-mobile-end .cat-health-panel h3{
    margin:0 0 4px!important;
    font-size:14px!important;
    line-height:18px!important;
  }

  .cat-health-mobile-end .cat-health-table th,
  .cat-health-mobile-end .cat-health-table td{
    padding:4px 5px!important;
  }

  .cat-health-mobile-end .cat-health-table th{
    font-size:10.2px!important;
    line-height:12px!important;
  }

  .cat-health-mobile-end .cat-health-date{
    font-size:9.8px!important;
    line-height:11px!important;
  }

  .cat-health-mobile-end .cat-health-state{
    margin-top:0!important;
    padding:1px 4px!important;
    font-size:8.8px!important;
    line-height:10px!important;
  }

  .cat-profile-trust-mobile-end{
    display:block!important;
    padding:6px 0 16px!important;
    margin:0!important;
  }

  .cat-profile-trust-mobile-end .cat-profile-trust{
    margin:0!important;
    padding:8px 9px!important;
    border-radius:7px!important;
    box-shadow:0 8px 18px rgba(59,54,52,.05)!important;
  }

  .cat-profile-trust-mobile-end .cat-profile-trust h3{
    margin:0 0 3px!important;
    font-size:15px!important;
    line-height:19px!important;
  }

  .cat-profile-trust-mobile-end .cat-profile-trust p{
    display:-webkit-box!important;
    margin:0 0 5px!important;
    font-size:11.2px!important;
    line-height:15px!important;
    -webkit-line-clamp:2!important;
    line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }

  .cat-profile-trust-mobile-end .cat-profile-trust-grid{
    display:grid!important;
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
    gap:5px!important;
  }

  .cat-profile-trust-mobile-end .cat-profile-trust-grid li{
    min-height:30px!important;
    padding:5px 7px!important;
    gap:5px!important;
    font-size:10.8px!important;
    line-height:13px!important;
  }

  .cat-profile-trust-mobile-end .cat-profile-trust-grid li i{
    margin-top:1px!important;
    font-size:11px!important;
  }

  .cat-detail-after-profile .cat-media-tabs-section{
    padding-top:14px!important;
    padding-bottom:12px!important;
  }

  .cat-detail-after-profile .cat-timeline-section.sec-pad{
    padding-top:10px!important;
    padding-bottom:16px!important;
  }

  .cat-media-tabs .nav-tabs{
    margin-bottom:8px!important;
  }

  .cat-media-tab-content{
    margin-bottom:0!important;
  }

  .cat-timeline-section .sec-title{
    margin-bottom:8px!important;
  }

  .cat-development-timeline{
    margin-top:8px!important;
  }
}

/* Compact vaccination and parasite tracking for cat profiles. */
.cat-health-panel{
  margin:12px 0 14px;
  padding:12px;
  border:1px solid #eee2da;
  border-radius:8px;
  background:#fffdfa;
}

.cat-health-panel h3{
  margin:0 0 9px;
  color:#2c2928;
  font-size:18px;
  line-height:23px;
  font-weight:800;
}

.cat-health-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}

.cat-health-item{
  position:relative;
  min-height:72px;
  padding:9px 10px 8px 12px;
  border:1px solid #efe3dc;
  border-left:4px solid #e72636;
  border-radius:7px;
  background:#fff;
}

.cat-health-item strong,
.cat-health-item span,
.cat-health-item em{
  display:block;
}

.cat-health-item strong{
  color:#2c2928;
  font-size:13px;
  line-height:16px;
  font-weight:800;
}

.cat-health-item span{
  margin-top:3px;
  color:#665f5b;
  font-size:12px;
  line-height:15px;
}

.cat-health-item em{
  margin-top:5px;
  color:#e72636;
  font-size:11px;
  line-height:13px;
  font-style:normal;
  font-weight:800;
}

.cat-health-item.is-done{
  border-left-color:#1ba35b;
}

.cat-health-item.is-done em{
  color:#1ba35b;
}

.cat-health-item.is-postponed{
  border-left-color:#d58a00;
}

.cat-health-item.is-postponed em{
  color:#b97300;
}

.cat-health-item.is-not-needed{
  border-left-color:#88909a;
}

.cat-health-item.is-not-needed em{
  color:#667085;
}

.admin-health-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:14px 0;
}

.admin-health-card{
  padding:14px;
  border:1px solid #dbe2ea;
  border-radius:8px;
  background:#fff;
}

.admin-health-card h3{
  margin:0 0 10px;
  font-size:19px;
  line-height:24px;
  font-weight:800;
}

@media only screen and (max-width: 767px){
  .cat-health-panel{
    margin:8px 0 10px;
    padding:9px;
  }

  .cat-health-panel h3{
    margin-bottom:7px;
    font-size:15px;
    line-height:19px;
  }

  .cat-health-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
  }

  .cat-health-item{
    min-height:64px;
    padding:7px 7px 7px 9px;
    border-left-width:3px;
  }

  .cat-health-item strong{
    font-size:11px;
    line-height:14px;
  }

  .cat-health-item span{
    font-size:10.2px;
    line-height:13px;
  }

  .cat-health-item em{
    font-size:10px;
    line-height:12px;
  }

  .admin-health-grid{
    grid-template-columns:1fr;
  }
}

/* Cat profile support row: health table and trust note share the same visual level. */
.cat-profile-support-row{
  margin-top:18px;
  align-items:stretch;
}

.cat-profile-support-row .cat-health-panel,
.cat-profile-support-row .cat-profile-trust{
  height:100%;
  margin:0!important;
  padding:16px 18px!important;
  border:1px solid #ece7df!important;
  border-radius:8px!important;
  background:#fffdf9!important;
  box-shadow:0 10px 24px rgba(59,54,52,.045)!important;
}

.cat-profile-support-row .cat-health-panel h3{
  margin:0 0 10px;
  color:#202020;
  font-size:21px;
  line-height:27px;
  font-weight:800;
}

.cat-health-table{
  width:100%;
  margin:0;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border:1px solid #f0e6dd;
  border-radius:7px;
  background:#fffdf9;
}

.cat-health-table th,
.cat-health-table td{
  padding:8px 10px;
  border-bottom:1px solid #f0e6dd;
  vertical-align:middle;
}

.cat-health-table tr:last-child th,
.cat-health-table tr:last-child td{
  border-bottom:0;
}

.cat-health-table th{
  width:52%;
  color:#282321;
  font-size:13px;
  line-height:17px;
  font-weight:800;
}

.cat-health-table td{
  text-align:right;
  white-space:nowrap;
}

.cat-health-date{
  display:block;
  color:#5f5752;
  font-size:12px;
  line-height:15px;
  font-weight:700;
}

.cat-health-state{
  display:inline-block;
  margin-top:3px;
  padding:2px 7px;
  border-radius:999px;
  background:#f6eef0;
  color:#e72636;
  font-size:10px;
  line-height:13px;
  font-weight:800;
}

.cat-health-table tr.is-done .cat-health-state{
  background:#eaf8ef;
  color:#16834a;
}

.cat-health-table tr.is-postponed .cat-health-state{
  background:#fff4df;
  color:#a96500;
}

.cat-health-table tr.is-not-needed .cat-health-state{
  background:#eef0f3;
  color:#626a75;
}

.cat-health-dose-table thead th{
  width:auto;
  padding:7px 8px;
  background:#f8f2ec;
  color:#2a2523;
  text-align:center;
  font-size:12px;
  line-height:15px;
  font-weight:900;
  border-bottom:1px solid #eadfd6;
}

.cat-health-dose-table tbody th{
  width:34%;
  color:#241f1d;
  text-align:left;
}

.cat-health-dose-table tbody td{
  width:33%;
  text-align:center;
  white-space:normal;
}

.cat-health-dose-line{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  min-height:34px;
}

.cat-health-dose-line + .cat-health-dose-line{
  margin-top:5px;
  padding-top:5px;
  border-top:1px dashed #e9ddd3;
}

.cat-health-dose-name{
  display:block;
  color:#6a625d;
  font-size:10px;
  line-height:12px;
  font-weight:900;
}

.cat-health-dose-line.is-done .cat-health-state{
  background:#eaf8ef;
  color:#16834a;
}

.cat-health-dose-line.is-postponed .cat-health-state{
  background:#fff4df;
  color:#a96500;
}

.cat-health-dose-line.is-not-needed .cat-health-state{
  background:#eef0f3;
  color:#626a75;
}

.cat-health-empty{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  color:#8d8580;
  font-size:13px;
  line-height:16px;
  font-weight:900;
}

@media only screen and (max-width: 767px){
  .cat-profile-support-row{
    margin-top:8px;
  }

  .cat-profile-support-row .cat-health-panel{
    padding:9px 10px!important;
  }

  .cat-profile-support-row .cat-health-panel h3{
    margin-bottom:5px;
    font-size:15px;
    line-height:18px;
  }

  .cat-profile-support-row .cat-profile-trust{
    display:none!important;
  }

  .cat-health-table th,
  .cat-health-table td{
    padding:5px 6px;
  }

  .cat-health-table th{
    font-size:10.8px;
    line-height:13px;
  }

  .cat-health-date{
    font-size:10.2px;
    line-height:12px;
  }

  .cat-health-state{
    margin-top:1px;
    padding:1px 5px;
    font-size:9.2px;
    line-height:11px;
  }

  .cat-health-dose-table thead th{
    padding:4px 3px;
    font-size:9px;
    line-height:11px;
  }

  .cat-health-dose-table tbody th{
    width:32%;
    font-size:9.4px;
    line-height:11px;
  }

  .cat-health-dose-table tbody td{
    width:34%;
    padding:4px 3px;
  }

  .cat-health-dose-line{
    min-height:26px;
    gap:1px;
  }

  .cat-health-dose-line + .cat-health-dose-line{
    margin-top:3px;
    padding-top:3px;
  }

  .cat-health-dose-name{
    font-size:8.4px;
    line-height:10px;
  }

  .cat-health-empty{
    min-height:22px;
    font-size:10px;
    line-height:12px;
  }
}

.transfer-day.has-event.selected{
  background: #3b3634 !important;
  color: #fff !important;
  box-shadow: 0 0 0 3px rgba(231, 38, 54, 0.18);
}

.cat-profile-yavrular .CatProfil{
  width: 100% !important;
  min-height: 620px !important;
}

.cat-profile-yavrular .CatProfil > a{
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  height: 620px !important;
}

.cat-profile-yavrular .CatProfil > a > img{
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  height: 620px !important;
  min-height: 620px !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.cat-listing-yavrular .service-block-one .image-box img{
  object-fit: cover !important;
  object-position: center center !important;
}

@media only screen and (max-width: 767px){
  .cat-profile-yavrular .CatProfil{
    min-height: 410px !important;
  }

  .cat-profile-yavrular .CatProfil > a{
    height: 410px !important;
  }

  .cat-profile-yavrular .CatProfil > a > img{
    height: 410px !important;
    min-height: 410px !important;
    max-height: 410px !important;
  }
}
