/*
Theme Name: Certus Legal
Theme URI: https://certuslegal.ee/
Author: innosoftworks
Author URI: https://innosoftworks.com/
Description: Wordpress theme designed for utemountain with Blog Integration.
Version: 1.1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: certuslegal.ee
Tags: one-column, two-columns, custom-menu, featured-images, left-sidebar, right-sidebar
*/
*{margin: 0;padding: 0;box-sizing: border-box;}
:root{
  --primary:#071A3D;
  --secondary:#555e94;
  --light:#F5F5F5;
  --light-pink:#D1D5DB;
  --gold:#C9A86A;
  --bronze:#B08D57;
  --black:#000000;
  --white:#ffffff;
  --font1:"Montserrat";

}
body{font-size: 16px;font-family: var(--font1);}
ul, ol{padding: 0;list-style: none;}
li{padding: 0;margin: 0;}
a{display: inline-block;color: var(--black);text-decoration: none;}
img{max-width: 100%;object-fit: cover;}
h1, h2, h3, h4, h5, h6{font-weight: 600; color: var(--primary);}
h1{font-size: 36px;line-height:1.4em;}
h2{font-size: 30px;line-height: 1.4;}
h3{font-size: 27px;line-height:1.4;}
h4{font-size: 20px;line-height: 1.4em;}
h5{font-size: 18px;line-height: 1.4;}
p{font-size: 16px;}

.forn-control{box-shadow: none;}
.forn-control:focus{box-shadow: none;}
/* buttons */
button{border: none;background-color: transparent;}
.btn-primary {
  border-radius: 8px;
  background-color: var(--primary);
  color: var(--white);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 7px 24px;
  gap: 12px;
  font-weight: 600;
  border: 1px solid var(--primary);
  font-size: 16px;
  transition: all .3s ease-in;
  width: fit-content;

}
.btn-secondary{
  border-radius: 8px;
  background-color: var(--primary);
  color: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 40px;
  gap: 12px;
  font-weight: 600;
  border: 1px solid var(--primary);
  font-size: 16px;
  transition: all .3s ease-in;
  width: fit-content;min-width: 240px;
}


.btn-primary:hover{border-color: var(--light-pink);background-color: var(--light-pink);color: var(--primary);}
.btn-secondary:hover{border-color: var(--light-pink);background-color: var(--white);color: var(--primary);}



/* ========= */

.btn-primary-2:hover{background-color: var(--white);color: var(--primary);}
.btn-primary-2:hover span{background-color: var(--primary);}
.btn-primary-2:hover span img{filter: invert(0);}

header {position: relative; z-index: 2;  padding: 0px 0;border-bottom: 1px solid var(--white);}

  ul.top_right {padding:0; margin:0; list-style: none; text-align: right;}
  ul.top_right li {display: inline-block; margin-right:25px;}
  ul.top_right li:last-child {margin-right: 0;}
  ul.top_right li a {font-size: 18px;font-weight: 500;font-family: "Inter";color: #000000;}

  .top_featured_wrap {position: relative;}
  #menu{position:relative;display: flex;align-items:center;gap: 48px;}
  #menu ul {
    list-style: none;
    margin: 28px 0;
    display: flex;
    align-items: center;
    gap: 43px;
    justify-content: center;
}

  #menu ul li{display:inline-block;position:relative;}
  #menu ul li:first-child a{color: var(--gold);}
  #menu ul li a{color:var(--primary);display:block;text-decoration:none;position:relative; -webkit-transition:all .3s linear;font-size: 16px;font-weight: 400; transition:all .3s linear;}
  #menu ul li a::before{content: "";transition: all .3s ease; position: absolute;bottom: -1.5px;left:0;right: 0;width: 0%;margin: auto; height: 1.3px;background-color: var(--white);}
  #menu ul li a:hover::before{width: 70%;}
  #menu li > a:after { content: '\f107'; font-family:'Bootstrap'; margin-left:5px;}
  #menu li > a:only-child:after { margin-left: 0; content: '';}
  #menu ul li a:hover,#menu ul li.active a,#menu ul li.current_page_item>a,#menu ul li.current-menu-ancestor>a,#menu ul li.current-menu-item>a,#menu ul li.current-menu-parent>a{color: var(--primary);}
  #menu li.active ul li a{color:#fff;background:#000}
  #menu li.active ul li a:hover{color:#fff;background:#333}
  #menu li>ul{position:absolute;left:0;top:100%;z-index:999;white-space:nowrap;padding-left: 0;flex-direction: column;gap: 0;}
  #menu ul li.active ul li a { background:#fff; color:#C71846;}
  #menu li>ul li{background:#fff;border-bottom:1px solid rgba(0,0,0,0.09);display:block;position:relative; margin:0; text-align:left;}
  #menu li>ul li:hover{background:var(--info-dark);border-bottom:1px solid rgba(0,0,0,0.09)}
  #menu li>ul li a{color:#333;font-size:13px; padding:10px 15px;  border-right:0;}
  #menu li>ul li a:hover{color:#fff;text-decoration:none}
  #menu li ul li.current_page_item>a,#menu li ul li.current-menu-ancestor>a,#menu li ul li.current-menu-item>a,#menu li ul li.current-menu-parent>a{background: #333;color:#fff}
  #menu>li{border-left:1px solid #999}
  #menu>li:first-child,#menu>li.has-submenu+li{border-left:0}
  #menu li>ul>li>ul{position:absolute;left:100%;top:0;transition:all linear .2s 0s;-webkit-transition:all linear .2s 0s;visibility:hidden;opacity:0}
  #menu li>ul>li:hover>ul{visibility:visible;opacity:1;display:block}
  #menu li>ul{transition:all linear .2s 0s;-webkit-transition:all linear .2s 0s;visibility:hidden;opacity:0}
  #menu li:hover>ul{visibility:visible;opacity:1}
  #menu li>ul li a{padding:0 23px;transition:all linear .2s 0s;-webkit-transition:all linear .2s 0s}
  #menu li:hover>ul li a{padding:10px 23px}
  #menu li>ul li:hover a {color:#fff;}
  #menu li>ul li:hover ul li a {color:#000;}
  #menu li>ul li ul li a:hover {color:#ff9e00;}
  @keyframes menu_sticky {
    0%   {margin-top:-240px;}
    50%  {margin-top: -90px;}
    100% {margin-top: 0;}
  }
  header.sticky {  margin:0;  position: fixed; background: var(--light-pink); top:0; left:0; width:100%; z-index:99999; animation-name:menu_sticky; animation-duration: 0.60s; animation-timing-function:ease-out; }

  header.sticky .top-header,header.sticky .sub-manu{display: none;}
  header.sticky .logo img{width: 160px;}
  header .logo img{max-width: 160px;}
  #menu ul li a:after{content: "";  position: absolute;bottom: 0;left: 0;width: 0%;background: #000;height: 2px; transition: all .3s ease;}
  #menu ul li a:hover::after{transform-origin:100% ;}


section{position: relative;padding: 80px 0;overflow: hidden;}
.hero-banner {background: var(--light);}
.hero-banner .hero-content{display: flex;flex-direction: column;gap: 40px;}
.hero-banner .hero-content .btn-primary{ padding: 16px 40px;min-width: 240px;align-items: center;justify-content: center;color: var(--white);}
.hero-banner .hero-content p{color: var(--secondary);}
.blog-card{display: flex;flex-direction: column;gap: 16px;}
.blog-card .img-box img{border-radius: 8px;}
.blog-card .title a{font-size: 14px;font-weight: 600;text-transform: uppercase;color: var(--secondary);}
.blog-card .title {  display: flex;  flex-direction: column;  gap: 16px;}
.blog-card .title a:hover{color: var(--primary);}
.blog-card .title h4{text-transform: capitalize;}
.lawyer {display: flex; gap: 16px;align-items: center; margin-top: 0;padding-top: 16px;border-top:1px solid #e4e4f5; font-weight: 400; font-size: 18px; line-height: 1.4; color: var(--secondary);}
.lawyer strong{font-weight: 500;}
.lawyer small{font-size: 14px;margin-top: 4px;}
.lawyer img{width: 60px;aspect-ratio: 1/1;border-radius: 50%;overflow: hidden;}
.focus-sec .heading{ padding-bottom: 30px;  border-bottom:1px solid #e4e4f5;text-align: center;}
.legal-sec{background-color: var(--light);}
.legal-sec .legal-count{  display: flex;  flex-direction: row;
  justify-content: center;  align-items: center;gap: 16px;  padding: 24px;  border-radius: 8px;  background-color: var(--white);  color: var(--primary);}
.legal-sec .legal-count p{margin-bottom: 0;    align-items: center; min-height: 60px; padding-left: 16px; padding-right: 8px;font-weight: 500; border-left: 2px solid #e4e4f5;display: flex;}
.legal-sec .legal-count h3{ white-space: nowrap;margin-bottom: 0;}
.gap-60{min-height: 60px;}
.blog-post-sec .heading{padding-bottom: 30px;  border-bottom:1px solid #e4e4f5;}
.blog-post-sec a{height: 100%;display: flex;}
.blog-post-sec .card {display: flex;flex-direction: column;gap: 16px;border: none;cursor: pointer;}
.blog-post-sec .card .img-box{height: 166px;border-radius: 0;overflow: hidden;}
.blog-post-sec .card .img-box img{height: 100%;width: 100%;}
.blog-post-sec .card .content{display: flex;flex-direction: column;gap: 16px;flex-grow: 1;}
.blog-post-sec .card .content h5{flex-grow: 1;}
.blog-post-sec .card .content small{color: var(--secondary);font-weight: 600;text-transform: uppercase;}
.blog-post-sec .card .content span{font-size: 12px;font-weight: 600;color: var(--secondary);text-transform: uppercase;}

.news-latter-box{background-color: var(--light-pink);padding: 48px;text-align: center;border-radius: 16px;position: relative;display: flex;flex-direction: column;gap:15px;align-items: center;}
.news-latter-box .effect{position: absolute;  width: 150px;left: 20px;z-index: 1;}


.book-sec{background-color:var(--light-pink);padding-bottom: 0;}
.book-sec .book-heading{text-align: center;margin-bottom: 20px;}
.book-sec .book-heading h2{margin-bottom: 25px;}
.book-sec .book-heading p{color:var(--primary);}
.book-sec .book-btn{width: fit-content;margin-inline: auto;margin-bottom: 90px;}
.book-sec .book-btn .btn-primary{padding: 10px 70px;color: var(--white);}
.book-sec .book-btn .btn-primary:hover{background-color: var(--white);color: var(--primary);}


footer{background: var(--primary);padding: 60px 0;}
.footer-logo-box{display: flex; align-items: center;gap: 30px;flex-wrap:wrap;}
.footer-logo-box .footer-links{display:flex;align-items: center; gap:20px;margin: 0;}
.footer-logo-box .footer-links li a{color: var(--white);transition:all .3s ease-in;}
footer p{color:var(--white);margin-bottom: 0;}
.footer-logo-box .footer-links li a:hover{color: var(--light-pink);}


.left-box{overflow: hidden;  border-radius: 12px;  background-color: var(--white);  box-shadow: 0 4px 4px 0 rgba(2, 21, 100, .150);}
.left-box .title{  display: flex; flex-direction: column;grid-gap: 16px; flex-grow: 1; padding: 32px;}
.left-box .title h4{font-size: 24px;}
.left-box .title span{font-size: 12px;color: var(--secondary);text-transform: uppercase;font-weight: 600;}
.left-box .blog-card{gap: 0;}
.left-box .blog-card img{border-radius: 0;}
.right-box .blog-card{flex-direction:row; border-radius: 12px;overflow: hidden;  background-color: var(--white);  box-shadow: 0 4px 4px 0 rgba(2, 21, 100, .150);}
.right-box .blog-card .title{  display: flex; flex-direction: column;grid-gap: 16px; flex-grow: 1; padding: 32px;}
.right-box .blog-card .title a +a{flex-grow: 1;}
.right-box .blog-card .title h4{font-size: 18px;}
.right-box .blog-card .title span{font-size: 12px;color: var(--secondary);text-transform: uppercase;font-weight: 600;}
.right-box .blog-card  .img-box{min-width: 270px;aspect-ratio: 1/1;}
.right-box .blog-card  .img-box img{width: 100%;object-fit:cover;height: 100%;border-radius:0 ;}
.right-box .blog-card{gap: 0;}
.right-box{height: 100%; }
.blog-sec{background: var(--light);}
.learn{color: var(--primary);text-decoration: underline;margin-inline: auto;width: fit-content;}


.inner-banner{background: var(--light);text-align: center;}
.text-main {max-width: 800px;margin: 0 auto;}
.text-main .heading{border-bottom: 1px solid var(--primary);padding-bottom: 24px;margin-bottom: 25px;}
.text-main h3{margin-bottom: 20px;}
.text-sec .text-main ul,.text-sec .text-main p{margin-bottom: 30px;}
.text-sec .text-main ul{background: var(--light);padding: 30px; padding-left: 2.5rem;color: var(--primary);}
.text-sec .text-main ul li{list-style: disc;margin-bottom: 15px;}
.text-sec .text-main ul li:nth-last-child(1){margin-bottom: 0;}
.text-sec p b{color: var(--primary);}
.text-sec a{color: var(--primary);text-decoration: underline;}
.map {position: relative;margin: 32px 0;}
.map img{width: 100%;height: auto;}
.map svg {position: absolute;top: 0;left: 0;width: 100%;height: auto;}
.contact-info-sec .contect-box{background: var(--light);color: var(--primary);padding: 30px;margin-bottom: 30px;}
.contact-info-sec .contect-box h4{margin-bottom: 20px;}
.contact-info-sec .contect-box a{color: var(--primary);text-decoration: underline;}
.contact-sec form .form-control, .contact-sec form .form-select {
  height: 48px;
  border: 1px solid black;
}
.contact-sec form .form-control:focus,.contact-sec form .form-select:focus{box-shadow: none;outline: 0;}
.contact-sec form textarea{min-height: 100px;}
footer span.logo-footer{color: var(--white);}
footer .social-iocns a{font-size: 24px;color: var(--white);}
footer .social-iocns {display: flex;justify-content: end;gap: 20px;}

.hero-banner .bg-banner,.bg-img .bg-banner{position: absolute;top: 0;left: 0;right: 0;bottom: 0; margin: auto;opacity: .3;z-index: 0;}
.hero-banner .container,.bg-img .container{position: relative;z-index: 2;}


.blog-grid {
  display: grid ;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 40px;
}
.blog-grid .blog-card:nth-child(1){
  grid-column: span 1;
  grid-row: span 2;
  flex-direction: column;
  max-height: none;
}

.blog-grid .blog-card:nth-child(1) .img-box{height: 400px;}
.blog-grid .blog-card{flex-direction: row;}
.blog-grid .blog-card .img-box{min-width: 270px;aspect-ratio: 1 / 1;}
.blog-grid .blog-card  img {
  width: 100%;
  object-fit: cover;
  height: 100%;
  border-radius: 0;
}

.blog-grid .blog-card{flex-direction:row-reverse; border-radius: 12px;overflow: hidden;  background-color: var(--white);  box-shadow: 0 4px 4px 0 rgba(2, 21, 100, .150);}
.blog-grid .blog-card .title{  display: flex; flex-direction: column;grid-gap: 16px; flex-grow: 1; padding: 32px;}
.blog-grid .blog-card .title a +a{flex-grow: 1;}
.blog-grid .blog-card .title h4{font-size: 18px;}
.blog-grid .blog-card .title span{font-size: 12px;color: var(--secondary);text-transform: uppercase;font-weight: 600;}
.blog-grid .blog-card  .img-box{min-width: 270px;aspect-ratio: 1/1;}
.blog-grid .blog-card .img-box img{width: 100%;object-fit:cover;height: 100%;border-radius:0 ;}
.blog-grid .blog-card{gap: 0;}
.blog-grid .blog-card{height: 100%;}
.blog-grid .blog-card  .img-box a{display: block;height: 100%;}
/* .blog-grid .blog-card{height: 100%;max-height: 270px; } */
.blog-post-detail h1{max-width:900px;margin-bottom: 0;}
.blog-post-detail .detail-date{font-weight: 600;font-size: 22px;}
.blog-post-detail .img-box img{    margin-bottom: 20px;
  height: 600px;    width: 100%;}
.blog-post-detail .post-btn{margin-bottom: 20px;}
.news-form .newslater-box{border: 1px solid #071A3D70;padding: 20px;}
.news-form form {
  justify-content: end;
  display: flex;
  gap: 10px;
  align-items: start;
}
.news-form form p{margin-bottom: 0;}

.wpcf7-spinner{display: none !important;}
.news-form form .form-control{box-shadow: none !important;height: 45px; border:1px solid #071A3D60 !important;border-radius: 0;}
.news-form form .form-control:focus{box-shadow: none !important;}
.news-form form input.btn-primary{border-radius: 0 !important;height: 45px;}

.blog-post-detail .blog-post-heading{display: flex;align-items: end;margin-bottom: 20px;justify-content: space-between;}






.time-line-main{display: flex;justify-content: space-between;position: relative;}
    .time-line-main .time-line-box{display: flex;flex-direction: column;align-items: center;position: relative;}
    .time-line-main .time-line-box .number{    width: 70px;    height: 70px;    position: relative;   margin: auto;    border: 1px solid grey;background-color: white;    border-radius: 50%;  font-size: 2rem;    color: grey;
    text-align: center;display: flex;align-items: center;justify-content: center;}
    .time-line-main .time-line-box .number span + span{display: none;}
    .time-line-main .time-line-box h6{font-size: 12px;margin-top: 10px;color:black;}
    .time-line-main:before{content:"";width: 90%;height: 1px;background-color: black;position: absolute;top: 35px;left: 35px;}
    .booking-sec .form-select{padding: 12px 12px;margin-top: 10px;border-color: var(--primary);}
    .booking-sec form label{font-size: 14px;}
    .booking-sec .form-select:focus,.booking-sec form textarea:focus,.booking-sec form .form-control:focus{outline: none;box-shadow: none;}
    .booking-sec form label span{color:var(--primary);font-weight: 700;}
    .inner-btn {gap: 20px;justify-content: end;}
    .booking-sec form textarea{height: 160px;border-color:var(--primary) ;}
    .booking-sec form textarea::placeholder{color:var(--primary);}
    .booking-sec form .form-control{border-color:var(--primary) ;padding: 12px 12px;}
    .booking-sec form  p{margin-bottom: 0;}
    .booking-sec form  p a{color:var(--primary);}
    .booking-sec form .btn-secondary{padding: 7px 24px;background: transparent;border-color:gray;color: gray;border-radius: 30px; margin-right: 30px; }
    .booking-sec form .btn-primary{margin-left: auto;border-radius: 30px;    background: transparent;      color: black;}
    .booking-sec form .inner-btn p{display: flex;}
    .time-line-main .time-line-box .number.blue{color: var(--primary);border-color:var(--primary)}
    .time-line-main .time-line-box .number.blue  span:first-child{display: none;}
    .time-line-main .time-line-box .number.blue span:last-child{display: block;}
    @media(max-width:767px){
      .time-line-main:before{width: 79%;}
    }