/*
 Theme Name:     Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Divi Child Theme
 Author:         Elegant Themes
 Author URI:     https://www.elegantthemes.com
 Template:       Divi
 Version:        1.0.0
*/


/* =Theme customization starts here
------------------------------------------------------- */



.efs-footer{
  --efs-bg:#1C3B4A;
  --efs-accent:#5BC6D3;
  --efs-text:#FFFFFF;
  --efs-muted:rgba(255,255,255,.68);
  --efs-line:rgba(255,255,255,.14);

  background:var(--efs-bg);
  color:var(--efs-text);
  font-family:inherit;
  padding:90px 6% 30px;
  overflow:hidden;
}

.efs-footer *{
  box-sizing:border-box;
}

.efs-footer a{
  text-decoration:none;
  color:inherit;
  transition:
    color .25s ease,
    border-color .25s ease,
    background .25s ease;
}

.efs-footer a:hover{
  color:var(--efs-accent);
}


/* =========================
   TOP
========================= */

.efs-top{
  display:grid;
  grid-template-columns:1.35fr 1.15fr 1fr;
  gap:60px;
  align-items:start;
}

.efs-logo img{
  max-width:210px;
  height:auto;
  display:block;
}

.efs-claim{
  margin-top:42px;
  font-size:clamp(1.5rem,2.3vw,2.1rem);
  line-height:1.32;
  font-weight:400;
  max-width:22ch;
}

.efs-claim span{
  color:var(--efs-accent);
}


/* =========================
   CONTACT / CABINETS
========================= */

.efs-info-block{
  margin-bottom:35px;
}

.efs-info-block:last-child{
  margin-bottom:0;
}

.efs-info-title{
  font-size:1.12rem;
  font-weight:600;
  margin-bottom:12px;
  color:var(--efs-text);
}

.efs-info-text{
  font-size:.95rem;
  line-height:1.7;
  color:var(--efs-muted);
}

.efs-info-text a{
  display:inline-block;
}

.efs-cabinet{
  margin-bottom:22px;
}

.efs-cabinet:last-child{
  margin-bottom:0;
}

.efs-cabinet-name{
  display:block;
  color:var(--efs-text);
  font-weight:500;
  margin-bottom:3px;
}

.efs-cabinet-address{
  display:block;
  margin-bottom:3px;
}

.efs-cabinet-phone{
  display:inline-block;
  color:var(--efs-accent) !important;
  font-weight:500;
}


/* =========================
   DIVIDER
========================= */

.efs-divider{
  height:1px;
  background:var(--efs-line);
  margin:65px 0 0;
}


/* =========================
   BOTTOM
========================= */

.efs-bottom{
  padding-top:28px;

  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;

  gap:20px;

  font-size:.9rem;
  color:var(--efs-muted);
}

.efs-legal{
  display:flex;
  gap:30px;
  flex-wrap:wrap;
}

.efs-legal a{
  color:var(--efs-muted);
}

.efs-legal a:hover{
  color:var(--efs-accent);
}


/* =========================
   TABLET
========================= */

@media (max-width:1200px){

  .efs-top{
    grid-template-columns:1.2fr 1fr 1fr;
    gap:40px;
  }
}


/* =========================
   SMALL TABLET
========================= */

@media (max-width:980px){

  .efs-footer{
    padding:70px 6% 26px;
  }

  .efs-top{
    grid-template-columns:1fr 1fr;
    gap:44px;
  }

  .efs-logo-wrap{
    grid-column:1 / -1;
  }

  .efs-claim{
    margin-top:28px;
    max-width:30ch;
  }
}


/* =========================
   MOBILE
========================= */

@media (max-width:640px){

  .efs-footer{
    padding:55px 22px 24px;
  }

  .efs-top{
    grid-template-columns:1fr;
    gap:36px;
  }

  .efs-logo-wrap{
    grid-column:auto;
  }

  .efs-logo img{
    max-width:180px;
  }

  .efs-claim{
    font-size:1.42rem;
    max-width:100%;
    margin-top:26px;
  }

  .efs-divider{
    margin:45px 0 0;
  }

  .efs-bottom{
    flex-direction:column;
    align-items:flex-start;
    padding-top:24px;
  }

  .efs-legal{
    gap:14px 22px;
  }
}

::selection{
  background:rgba(91,198,211,.65);
  color:#1C3B4A;
}

::-moz-selection{
  background:rgba(91,198,211,.65);
  color:#1C3B4A;
}

/* ============================
   EYES FOR SIGHT — BACK TO TOP
============================ */

#efs-totop{
  --size: 56px;
  --primary: #5bc6d3;
  --accent: #8fb9bd;
  --track: rgba(31, 59, 70, .14);

  position: fixed;
  right: 28px;
  bottom: 28px;
  z-index: 99999;

  width: var(--size);
  height: var(--size);

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 0;
  border: 0;
  border-radius: 50%;

  background: rgba(255,255,255,.96);
  color: var(--primary);

  cursor: pointer;

  box-shadow:
    0 8px 30px rgba(0,0,0,.10),
    0 2px 8px rgba(0,0,0,.05);

  opacity: 0;
  visibility: hidden;
  transform: translateY(15px) scale(.92);

  transition:
    opacity .35s ease,
    visibility .35s ease,
    transform .35s cubic-bezier(.22,1,.36,1),
    box-shadow .3s ease,
    background-color .3s ease,
    color .3s ease;
}

#efs-totop.is-visible{
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}

#efs-totop i{
  position: relative;
  z-index: 2;
  font-size: 16px;
  line-height: 1;

  transition:
    transform .3s cubic-bezier(.22,1,.36,1),
    color .3s ease;
}

#efs-totop svg{
  position: absolute;
  inset: 0;

  width: 100%;
  height: 100%;

  transform: rotate(-90deg);
  pointer-events: none;
}

#efs-totop .efs-totop__track{
  fill: none;
  stroke: var(--track);
  stroke-width: 2;
}

#efs-totop .efs-totop__bar{
  fill: none;
  stroke: var(--primary);
  stroke-width: 2.5;

  stroke-linecap: round;
  stroke-dasharray: 150.8;
  stroke-dashoffset: 150.8;

  transition:
    stroke-dashoffset .08s linear,
    stroke .3s ease;
}

#efs-totop:hover{
  background: var(--primary);
  color: #fff;

  transform: translateY(-4px) scale(1.04);

  box-shadow:
    0 14px 35px rgba(31,59,70,.20),
    0 4px 12px rgba(0,0,0,.08);
}

#efs-totop:hover i{
  color: #fff;
  transform: translateY(-2px);
}

#efs-totop:hover .efs-totop__bar{
  stroke: var(--accent);
}

#efs-totop:active{
  transform: translateY(-1px) scale(.96);
}

#efs-totop:focus-visible{
  outline: 2px solid var(--accent);
  outline-offset: 4px;
}


/* MOBILE */

@media (max-width: 767px){

  #efs-totop{
    --size: 50px;
    right: 18px;
    bottom: 18px;
  }

  #efs-totop i{
    font-size: 14px;
  }

}

#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
	content: '\4d'
}

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,ul.et_mobile_menu li.page_item_has_children .mobile-toggle,.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,.et-db #et-boc .et-l ul.et_mobile_menu li.page_item_has_children .mobile-toggle {
	width: 44px;
	height: 100%;
	padding: 0px!important;
	max-height: 44px;
	border: none;
	position: absolute;
	right: 0px;
	top: 0px;
	z-index: 999;
	background-color: transparent
}

ul.et_mobile_menu>li.menu-item-has-children,ul.et_mobile_menu>li.page_item_has_children,ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children,.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children,.et-db #et-boc .et-l ul.et_mobile_menu>li.page_item_has_children,.et-db #et-boc .et-l ul.et_mobile_menu>li.menu-item-has-children .sub-menu li.menu-item-has-children {
	position: relative
}

.et_mobile_menu .menu-item-has-children>a,.et-db #et-boc .et-l .et_mobile_menu .menu-item-has-children>a {
	background-color: transparent
}

ul.et_mobile_menu .menu-item-has-children .sub-menu,#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu,.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu,.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu {
	display: none!important;
	visibility: hidden!important
}

ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible {
	display: block!important;
	visibility: visible!important
}

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle {
	text-align: center;
	opacity: 1
}

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after,.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after {
	top: 10px;
	position: relative;
	font-family: "ETModules";
	content: '\33';
	color: #fff;
	background: #5bc6d3;
	border-radius: 50%;
	padding: 3px;
	font-size: 13px
}

.et_mobile_menu li li {
	padding-left: 0
}

ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after,.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children.dt-open>.mobile-toggle::after {
	content: '\32'
}

.et_pb_menu_0.et_pb_menu .et_mobile_menu:after {
	position: absolute;
	right: 5%;
	margin-left: -20px;
	top: -14px;
	width: 0;
	height: 0;
	content: '';
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-bottom: 20px solid #ffffff
}

.et_pb_menu_0.et_pb_menu .et_mobile_menu,.et_pb_menu_0.et_pb_menu .et_mobile_menu ul {
	background-color: #ffffff!important;
	border-radius: 10px
}

.et_pb_menu_0_tb_header.et_pb_menu .nav li ul {
	background-color: #0c1633!important;
	border-color: #0c1633!important
}
@media (max-width: 767px) {
  h2 {
    font-size: 30px !important;
  }
}

