/*
 Theme Name:   Twenty Twenty Child
 Theme URI:    https://diviextended.com/
 Description:  A child theme of Twenty Twenty WordPress theme.
 Author:       Elicus Technologies
 Author URI:   https://elicus.com
 Template:     twentytwenty
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
*/

@import url("../twentytwenty/style.css");

/* GLOBAL */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Lora', serif!important;
}
p, a, span, li, ol, ul {
    font-family: 'Open Sans', sans-serif!important;
    font-size: 16px;
}
a {
    font-weight: bold;
    text-transform: uppercase;
    color: black!important;
}
p a  {
    text-transform: none;
}
h2 {
    font-size: 40px!important;
    font-weight: 400!important;
}
h1, h1 span.lighter {
    font-size: 56px;
    font-family: 'Lora', serif!important;
}
span.lighter {
    font-weight: 400;
}
.no-margin-left {
    margin-left: 0!important;
}
.page.editorskit-title-hidden .entry-header {
    display: none;
}
.full-width-p {
    margin-top: 0!important;
}
.full-width-p p {
    max-width: 120rem!important;
    width: 100%!important;
}
.no-margin-bottom {
    margin-bottom: 0!important;
} 
.no-margin-top {
    margin-top: 0!important;
}

/* HEADER */
header#site-header {
    transition: all 0.2s ease-in-out;
    z-index:99999;
}
header#site-header.sticky {
    position: sticky;
    top: 0;
    box-shadow: 0 0 5px rgba(0,0,0,0.2);
    background-color: white;
    z-index: 99999;
}
header.sticky .site-title a {
    font-size:22px;
}
.site-title a:hover  {
    text-decoration: none!important;
}
header.sticky .header-inner {
    padding-top: 10px;
    padding-bottom: 10px;
}
.site-title a {
    font-family: 'Lora', serif!important;
    font-size: 34px;
    text-transform: none!important;
}
ul.primary-menu {
    display: flex;
    align-items: center;
    justify-content: center;
}
ul.primary-menu li.menu-item a {
    text-decoration: none;
    color: black!important;
    text-transform: none;
    font-weight: 400;
}
.primary-menu .icon {
    color: black!important;
}
#menu-item-345, #menu-item-258 {
    background-color: black;
    padding: 15px 30px;
    border-radius: 5px;
}
#menu-item-345 a, #menu-item-258 a {
    color: white!important;
}
ul.sub-menu {
    background-color: white!important;
}
ul.primary-menu li.menu-item.menu-item-has-children ul.sub-menu li a {
    color: black!important;
    font-weight: 400;
}
body:not(.overlay-header) .primary-menu > li > ul:after {
    border-bottom-color: #ffffff!important;
}
.primary-menu li {
    margin-right: 10px;
}
.primary-menu li:nth-last-child(1) {
    margin-right: 0;
}
.trp-language-switcher-container ul.sub-menu {
    width: 47px;
    padding: 0;
    background-color: transparent !important;
}
.trp-language-switcher-container ul.sub-menu::after {
    content: none;
}
.trp-language-switcher-container ul.sub-menu li a {
    padding: 0!important;
}
/* HOME */
.homepage-intro {
    margin-top: 10vh!important;
    margin-bottom: 20vh!important;
}
.services-intro h2, .services-intro p {
    width: 100%!important;
    max-width: 100%!important;
}
.homepage-intro p.no-margin-left {
    margin-left: 0!important;
}
.services-intro h2 {
    border-bottom: 1px solid black;
}
.first-service-section {
    border-top: 1px solid black;
}
.service-section {
    border-bottom: 1px solid black;
    margin-top: 0px!important;
    margin-bottom: 0px!important;
    transition: background-color 0.2s ease-in-out;
    background-color: transparent;
    /* opacity: 0; */
    /* top: 20px; */
}
.service-section a {
    width: 100%!important;
    max-width: 100%!important;
}
.service-section:hover {
    background-color: white;
}
.service-section-flex .wp-block-group__inner-container {
    display: flex;
    align-items:center;
    justify-content: space-between;
}
.service-section img {
    opacity: 0;
    transition: all 0.2s ease-in-out;
}
.service-section-flex {
    position: relative;
    max-width: 120rem!important;
}
.service-section:hover img {
    opacity: 1;
    top: 0;
}
.service-section .wp-block-group__inner-container > * {
    margin-top: 0;
    margin-bottom: 0;
}
.service-section h3 {
    font-size: 32px;
    font-weight: 400;
}
.reviews-slider-container .n2-ss-no-bga-fixed {
    width: 120rem!important;
    margin-left: calc((100vw - 120rem) / 2);
}
.nextend-arrow {
    border: 6px solid #F6F2F2;
    border-radius: 100%;
    background-color: white;
    padding: 10px;
}
.nextend-arrow-previous {
    margin-left: -25px!important;
}
.nextend-arrow-next {
    margin-right: -25px!important;
}
.nextend-arrow img {
    width: 20px!important;
}

/* BLOG */
.eb-parent-eb-post-grid-4aqwu {
    width: 100%!important;
    max-width: 100%!important;
}
.ebpg-grid-post-link {
    font-family: 'Lora', serif!important;
    text-transform: none;
    font-size: 22px!important;
}
.eb-post-grid-wrapper.eb-post-grid-4aqwu .ebpg-header-meta {
    order: 2!important;
}
.ebpg-meta a {
    text-transform: none;
    font-weight: 400;
}
.ebpg-meta a:hover {
    background: rgba(217,217,217,1)!important;
    opacity: 0.8;
    color: black!important;
}
.pagination-single {
    display: none;
}
.post-meta-single {
    display: none;
}
.dashicons-arrow-right-alt2:before, .dashicons-arrow-down-alt2:before {
    content:"";
    width: 20px;
    height: 20px;
    background-image: url(https://fbvfamilylaw.co.uk/wp-content/uploads/2024/05/next-4.png);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    transition: all 0.2s ease-in-out;
}
.dashicons-arrow-down-alt2:before {
    transform: rotate(90deg);
}
.eb-accordion-31gi5.eb-accordion-container .eb-accordion-content-wrapper .eb-accordion-content {
    color: black!important;
    background-color: white;
    border-color: transparent!important;
}
article.post .entry-header-inner {
    max-width: 120rem !important;
    text-align: left;
}
.singular .featured-media-inner {
    left: 0 !important;
    margin-bottom: 50px;
}
#site-content .post-inner {
    padding-top: 0!important;
}
article.post .entry-categories-inner {
    justify-content: flex-start;
    margin-top: 20px;
}
article.post .entry-content .wp-block-columns .wp-block-column li, article.post .entry-content .wp-block-columns .wp-block-column a, article.post .entry-content .wp-block-columns .wp-block-column > * {
    font-size: 20px !important;
    line-height: 1.5;
}
article.post .entry-header {
    padding-bottom: 4rem;
}
.single-post .entry-categories {
    margin-bottom: 0!important;
}
.entry-categories-inner a, .ebpg-categories-meta a {
    pointer-events: none !important;
} 
.entry-categories-inner a {
    background-color: rgba(217, 217, 217, 1);
    font-size: 14px;
    padding: 7px 18px !important;
    border-radius: 3px;
    text-decoration: none;
    border-bottom-color: transparent;
    margin-right: 10px !important;
}
article.post .entry-content .wp-block-columns .wp-block-column h2, h2.related-posts-title {
    font-size: 36px !important;
}
article.post .entry-content .wp-block-columns .wp-block-column h3 {
    font-size: 28px !important;
}
.entry-date {
    margin-top: 10px;
}

/* ABOUT */
ul.aligned-left {
    margin-left: 0!important;
    max-width: 100%!important;
}
ul.aligned-left li {
    margin-bottom: 15px;
}
h2.subtitle {
    font-size: 22px!important;
    font-weight: 400!important;
    font-family: 'Open sans', sans-serif!important;
    color: #474747;
    margin-top: 0!important;
}
.youtube-video figure {
    margin-top: 0!important;
}

/* CONTACT */
.white-background h1 {
    margin-top: 0!important;
}
.white-background {
    background-color: white;
    padding: 50px;
}
.google-map iframe {
    max-width: 100%!important;
}
input, textarea {
    border-bottom: 1px solid black;
    border-color: transparent!important;
    border-bottom-color: black!important;
    background: transparent!important;
    padding-left: 0!important;
}
input::placeholder, textarea::placeholder {
    color: black!important;
}
input[type=checkbox] {
    background-color: white!important;
    border-bottom-color: transparent!important;
}
.wpcf7-checkbox .wpcf7-list-item {
    margin-left: 0;
}
.wpcf7-submit {
    color: black!important;
    text-transform: none!important;
    background-color: white!important;
    text-align: center;
    padding: 17px 60px!important;
}
.wpcf7-submit:hover {
    text-decoration: none!important;
}
input:focus-visible, textarea:focus-visible {
    outline: none!important;
}
span[data-name="checkbox-178"] {
    margin-top: 44px;
    margin-bottom: 44px;
    display: block;
}

/* BLOG */
.eb-post-grid-wrapper.eb-post-grid-blq95 .ebpg-header-meta {
    order: 2!important;
}
.eb-parent-wrapper.eb-parent-eb-post-grid-blq95 {
    width: 100%!important;
    max-width: 100%!important;
}
.ebpg-entry-title {
    line-height: 0.7!important;
}

/* SERVICES */
.white-background.sidebar .wp-block-image {
    margin-top: 0!important;
    margin-bottom: 0!important;
}
.white-background.sidebar .contact-info {
    margin-top: 0!important;
    margin-bottom: 0!important;
}
.white-background.sidebar .contact-info.with-margin-bottom {
    margin-bottom: 20px!important;
}
.white-background.sidebar input[type=checkbox] {
    border: 1px solid black!important;
}
.white-background.sidebar .wpcf7-submit {
    border: 1px solid black!important;
}

/* GLOSSARY */
.glossary-container-column ul li {
    margin-bottom: 20px;
}


/* FOOTER */
.footer-nav-widgets-wrapper.header-footer-group {
    background-color: white;
    border-top-color: transparent;
}
.footer-nav-widgets-wrapper.header-footer-group a {
    text-transform: none;
    text-decoration: none;
    font-weight: 400;
}
.footer-widgets.column-one .widget_block {
    margin-top: 0;
}
.footer-widgets.column-one .widget_block .wp-block-columns {
    margin-top: 20px;
    margin-bottom: 0;
}
.geoffroycrabieres svg {
    width: 25px;
    transition: all 0.2s ease-in-out;
    transform: rotate(0deg);
}
.geoffroycrabieres svg path {
    fill: black;
}
.geoffroycrabieres svg:hover {
    transform: rotate(15deg);
}
#site-footer {
    background-color: white!important;
    padding: 20px 0;
}
#site-footer a {
    text-transform: none;
    text-decoration: none;
    font-weight: 400;
}
.footer-widgets-outer-wrapper {
    /* border-color: transparent!important; */
    padding-bottom: 0px;
}

/* RESPONSIVE */
@media all and (max-width: 781px) and (orientation: portrait) {
    .service-section p {
        display: none;
    }
    .service-section img {
        opacity: 1;
    }
    .service-section .wp-block-image {
        width: 40px!important;
        height: 40px;
    }
    .service-section .wp-block-image figure {
        float: left;
        width: 40px;
        margin: unset;
        margin-top: 10px;
    }
    .service-section h3 {
        padding-left: 20px;
        font-size: 24px;
    }
    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column.contact-type {
        flex-basis: 35%!important;
    }
    .footer-contact {
        flex-direction: row!important;
        flex-wrap: nowrap!important;
    }
    .footer-logo figure {
        margin-top:10px!important;
        margin-bottom:10px!important;
    }
    .resolution-logo img {
        width: 123px;
    }
    .footer-logo {
        flex-direction: row;
        flex-wrap: nowrap!important;
    }
    .footer-logo .wp-block-column {
        align-self: center;
    }
    .contact-info {
        flex-direction: row;
        flex-wrap: nowrap!important;
    }
    .contact-info .wp-block-column:nth-of-type(1) {
        flex-basis: 20px!important;
    }
    .mobile-nav-toggle .toggle-text {
        display: none;
    }
    .menu-item a {
        text-transform: none;
        font-size: 16px!important;
    } 
    .mobile-menu .menu-item-48 {
        position: fixed;
        bottom: 0;
        width: 100%;
        text-align: center;
        background-color: black;
        color: white;
    }
    .mobile-menu .menu-item-48 a {
        color: white!important;
    }
    button.close-nav-toggle {
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .menu-modal {
        z-index:99999999;
    }
    .homepage-intro {
        margin-top: 5vh!important;
    }
    .homepage-intro h1, .homepage-intro h1 span {
        font-size: 40px; 
    }
}