



/*
Theme Name: Thehaven Custom Theme
Theme URI: https://www.thehaven.org.uk/
Author: Thehaven Team
Description: A compassionate, purpose-built WordPress theme for The Haven, designed to support individuals and families affected by domestic abuse. The theme focuses on clear access to support services, helplines, resources, and guidance, while promoting awareness, education, and community outreach. Built for trust, accessibility, and ease of use, it supports sensitive content presentation, mobile responsiveness, and intuitive navigation to ensure help is easy to find when it matters most.
Version: 1.0
*/




*{
    box-sizing: border-box;
}
body{
    margin: 0px;
}
div#thehaven-header {
        border-bottom: 1px solid #e5e7eb!important;
    background: #fafafa!important;
}

body .custom-logo {
    width: 250px !important;
    height: auto !important;
    
}

.thehaven-content-area {
    font-size: 16px;
    
    line-height: 24px;
}
.thehaven-container p{
    font-size:16px!important;
}
.thehaven-container {
    max-width: 1140px!important;
    width: 100%;
    margin: auto;
    padding: 20px 20px 20px 20px!important;
}
.thehaven-page-content p a{
	color:#2927a5;
}
.thehaven-page-content li a {
    color:#2927a5;
}
.campaign-list-item_more-btns{
    display:none;
}
.thehaven-content-area h1 {
    font-size: 36px;
    font-weight: bold;
    text-align: center;
    line-height: 45px;
}

.thehaven-content-area h2 {
    font-size: 30px;
    font-weight: bold;
    line-height: 40px;
}

.thehaven-content-area h3 {
    font-size: 27px;
    font-weight: bold;
    line-height: 35px;
}

.thehaven-content-area h4 {
    font-size: 24px;
    font-weight: bold;
    line-height: 30px;
}

.thehaven-content-area h5 {
    font-size: 20px;
    font-weight: bold;
    line-height: 28px;
}

.thehaven-content-area h6 {
    font-size: 18px;
    font-weight: bold;
    line-height: 25px;
}

.thehaven-content-area ol li {
    list-style: decimal;
}

.thehaven-content-area ul li {
    list-style: disc;
}

.thehaven-content-area ol,
.thehaven-content-area ul {
    padding-left: 30px;
}

h1, h2, h3, h4, h5, h6, p {
    margin: 10px 0 !important;
}
ol, ul {
    box-sizing: border-box;
    padding: 0;
}
.thehaven-content-area table {
    border-collapse: collapse;
    width: 100%;
    margin: 25px 0;
}

.thehaven-content-area td,
.thehaven-content-area th {
    border: 1px solid #ccc;
    padding: 8px;
    font-size: 16px;
}

.thehaven-content-area dl {
    margin: 20px;
    padding: 0;
    font-family: Arial, sans-serif;
    border: 1px solid #ddd;
    border-radius: 5px;
    background-color: #f9f9f9;
}

.thehaven-content-area dt {
    font-weight: bold;
    margin: 10px 0 5px;
    padding: 10px;
    background-color: #eee;
    border-bottom: 1px solid #ddd;
}

.thehaven-content-area dd {
    margin: 0 0 10px 20px;
    padding: 10px;
    border-left: 2px solid #ddd;
    background-color: #fff;
}

.thehaven-content-area li {
    line-height: 30px;
}

.thehaven-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}


  .thehaven-toggle-menu.on i {
        transform: rotate(180deg);
        left:8px;
        position: relative;
    }
 .fa-angle-down:before {
    content: "\f107";
    position: relative;
    left: 4px;
    cursor: pointer;
}
 .menu-item-has-children .dropdown-toggle{
     display: inline-block;

 }
.menu-item-has-children .thehaven-toggle-menu{
    display: inline-block;
}
.thehaven-nav-menu li.menu-item-has-children:hover > a::after {
    transform: rotate(-180deg);
}



.thehaven-navigation {
    position: relative;
    display: inline-block;
    width: 100%;
}

.thehaven-navigation a {
    display: block;
    font-size: 17px;
    line-height: 40px !important;
    color: #000!important;
    text-decoration: none;
}


.sub-menu li a {
    line-height: 24px;
    margin: 5px 0;
    color: #000;
}

.thehaven-navigation li {
    position: relative;
    display: inline-block;
    padding: 0 20px;
}

.thehaven-nav-select {
    display: inline-block;
    width: 100%;
    text-align: right;
}

.thehaven-navigation a:hover,
.thehaven-navigation a:focus {
    color: #000;
}
.thehaven-navigation .sub-menu a:hover,
.thehaven-navigation .sub-menu a:focus {
    color: #000;
}

.thehaven-navbar-toggle-wrapper {
    display: none;
}

.sub-menu {
    display: none;
    position: absolute;
    left: 0;
    background: #fff;
    width: 180px;
    text-align: left;
    padding: 10px 0;
    box-shadow: 0 0 6px #ddd;
    top: 34px;
    z-index: 999;
}

.menu-item:hover .sub-menu {
    display: block;
}

.sub-menu li {
    width: 100%;
}

.sub-menu .sub-menu {
    left: auto !important;
    right: 100%;
    top: -10px !important;
}

.thehaven-nav-select .sub-menu > li > .sub-menu {
    display: none;
    position: absolute;
}

.thehaven-nav-select .thehaven-menu__list > li:hover > .sub-menu,
.thehaven-nav-select .sub-menu > li:hover > .sub-menu {
    display: block;
}

.thehaven-footer {
    text-align: center;
}
.aligncenter {
    clear: both;
    display: block;
    margin: auto;
}

.campaign-list-item_key-features ul li {
    list-style: none;

}

.campaign-list-item_key-features ul {
    padding-left: 0;
}

a.su-button {
    background: #000  !important;
}

.site-header {
     border-bottom: 1px solid var(--border);
    background: #fafafa;
}
.main-navigation .menu-toggle {
    top: 3rem;
    background: unset;
}
.site-header .logo {
    top: 3rem;
    width: unset;
}
.site-footer .site-info p {
    font-size: 16px;
    text-align: center;
    margin-bottom: 0 !important;
}
div#site-info {
    width: 100%;
}
.site-footer ul {
    justify-content: center;
}


#menu-footer-menu{
        display: flex;
    justify-content: center;
    list-style: none;
}
#menu-footer-menu li{
 padding: 0px 20px;
}
#menu-footer-menu li a{
   text-decoration: none;
   color: #000;
}

.thehaven-navigation.menu-open {
    display: block;
}
@media only screen and (max-width: 590px) {
    body .custom-logo {
    width: 215px !important;
   
    
}
    #menu-footer-menu li{
 padding: 10px 20px;
}
    #menu-footer-menu{
        flex-direction: column;
        align-items: center;
    }
	  .thehaven-content-area table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }
    
}

body .sub-menu .thehaven-toggle-menu.on .sub-menu{
    display:block!important;
}

.sub-menu{
    overflow:visible!important;
}

.sub-menu .sub-menu {
    left: auto !important;
    right: 0%;
    overflow: visible!important;
    z-index: 999;
    top: 41px !important;
}
@media only screen and (max-width: 991px) {

  
.sub-menu .sub-menu {
   
    top: 0px !important;
}
    .thehaven-table-auto {
        overflow-x: scroll;
        width: 100%;
    }

.site-header .logo {
    top: 4rem;
}
.main-navigation .menu-toggle {
    top: 4.4rem;
}

    .thehaven-navigation {
        position: absolute;
        right: 0;
        top: 70px;
        width: 100%;
        cursor: pointer;
        text-align: left;
        background: #fff;
        box-shadow: 0 0 4px #ddd;
        display: none;
        padding: 14px;
        z-index: 999;
    }

    .thehaven-navbar-toggle-wrapper {
        display: flex !important;
        background-color: #fff;
        width: 40px;
        height: 40px;
        position: absolute;
        top: -10px;
        right: 15px;
        align-items: center;
        justify-content: center;
        border-radius: 3px;
        cursor: pointer;
        color: transparent;
    }

    .thehaven-navbar-toggle-wrapper span {
        width: 20px;
        height: 2px;
        background-color: #000;
        display: inline-block;
        position: relative;
        top: 0px;
        right: 0;
    }

    .thehaven-navbar-toggle-wrapper span::before,
    .thehaven-navbar-toggle-wrapper span::after {
        content: "";
        position: absolute;
        background-color: #000;
        width: 100%;
        height: 2px;
        left: 0;
    }

    .thehaven-navbar-toggle-wrapper span::before {
        top: -7px;
    }

    .thehaven-navbar-toggle-wrapper span::after {
        top: 7px;
    }


.thehaven-navigation li {
        position: relative;
        display: inline-block;
        Padding: 0 20px;
        margin: 0;
        width: 100%;
        box-sizing: border-box;

    }


    .sub-menu {
        display: block;
        position: relative !important;
        left: 0 !important;
        background: transparent;
        width: 100%;
        padding: 0 !important;
        box-shadow: none;
        top: auto;
    }

    .sub-menu .sub-menu {
        left: 0;
        right: 0;
        top: 0;
    }

    .thehaven-toggle-menu {
        position: absolute;
        right: -7px;
        width: 40px;
        height: 30px;
        font-size: 15px;
        top: 7px;
        cursor: pointer;
        z-index: 999;
        display: block;
        color: #000;
        transform: rotate(0deg);
        text-align: center;
    }

    .thehaven-toggle-menu i {
        transition: transform 0.3s ease;
    }

   

    .thehaven-nav-select {
        display: inline-block;
        width: 100%;
        text-align: left;
        margin: 0;
    }
    .thehaven-nav-select .sub-menu > li > .sub-menu {
    display: block;
    position: relative;
}

.thehaven-nav-select .thehaven-menu__list > li:hover > .sub-menu,
.thehaven-nav-select .sub-menu > li:hover > .sub-menu {
    display: block;
}

}

/*AUTHOR SECTION START*/
.main-title{
    text-align:left;
}
.custom_top_author {
    display: flex;
    align-items: center;
    gap: 16px;
   background: #f2f2f2;
    border-radius: 10px;
    padding: 10px;
    
}
.author_imag img {
    width: 60px;
    min-width:60px;
    height: 60px;
    border-radius: 100%;
    object-fit: cover;
}
.name_author_out {
    display: flex;
}
.name_author_out span.lbl {
    margin-right: 5px;
}
.name_author_out h4 {
    margin: 0;
    color: #000;
    line-height: 24px;
    font-size: 18px;
    font-weight: normal;
}
.name_author_out p{
margin:0 !important;
}
 
 .custom_author_info a{
    text-decoration: none!important;
 }
/*AUTHOR SECTION And Page START*/
 
.main-title {
    text-align: left;
}
 
.custom_top_author {
    display: flex;
    align-items: center;
    gap: 16px;
}
 
.author_imag img {
    width: 60px;
    min-width: 60px;
    height: 60px;
    border-radius: 100%;
    object-fit: cover;
}
 
.name_author_out {
    display: flex;
    align-items: center;
}
 
.name_author_out span.lbl {
    margin-right: 5px;
}
 
.name_author_out h4,
.name_author_out p {
    margin: 0;
    padding: 0;
    font-weight: normal;
}
 
.name_author_out a p {
    font-weight: 600;
    font-size: 16px;
}
 
.name_author_out a:hover p {
    color: #ea0101;
}
 
 .modifyDetails {
        background: #F2F2F2;
    border-radius: 20px;
    padding: 10px;
    margin-bottom: 20px;
 }
 

 
.author_imag img {
    width: 60px;
    min-width: 60px;
    height: 60px;
    border-radius: 100%;
    object-fit: cover;
}
 
.author_imag {
    line-height: 0;
}
 
.name_author_out {
    display: flex;
}
 
.name_author_out span.lbl {
    margin-right: 5px;
}
 
.name_author_out a {
    color: inherit;
}
 
/*Author Page css*/
.header-profile-details h2 {
    font-size: 30px;
    margin-bottom: 0;
    margin-top: 0;
}
 
.profile-header-container {
    display: flex;
    align-items: center;
    gap: 30px;
}
 
.header-avatar-container img {
    padding: 0;
    border: 0;
    width: 75px;
    height: 75px;
    object-fit: cover;
}
 
.header-profile-details h2 {
    font-size: 30px;
    margin-bottom: 0;
    margin-top: 0;
}
 
.profile-fields-group.profile-fields-group-1 {
    border: 1px solid #eee;
    margin: 1.5rem 0 0;
    padding: 15px 20px;
    border-top-right-radius: 3px;
    border-top-left-radius: 3px;
    letter-spacing: 1px;
}
 
.profile-fields-group.profile-fields-group-1 h3 {
    margin-top: 0;
    margin-bottom: 20px;
    color: #000;
}
.home-page.author-box-wrapper {
    padding: 30px 20px 30px;
    box-shadow: none;
    max-width:1140px;
width:100%;
    margin:auto;
}
 
.author-f-name .label, .author-description-name .label {
    font-weight: 600 !important;
    font-size: inherit;
    line-height: inherit;
    background: transparent;
    color: #222222;
    padding: 0px;
}
.profile-fields-table .data{
    color: #222222;
}
 
.author-f-name {
    display: flex;
    gap: 15px;
    font-size: 20px;
}
 .header-profile-details h2{
    color:#222;
 }
.author-description-name {
    margin-top: 20px;
    font-size: 20px;
}
.name_author_out a:hover,
.name_author_out a:hover p {
    color: #fff ;
    text-decoration-color: #fff ;
}

.custom_author_info span a,
.custom_author_info span b,
.custom_author_info  a p,
.custom_author_info span{
    color:#000!important;
}
.thehaven-footer{
    padding:20px;
}
.thehaven-footer a{
   color:#c0c0c0;
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1023px) {
    .toplist-techcity__offer-logo:before {
        right: 40px !important;
    }
}


@media only screen and   (min-width: 1024px){
.sub-menu {
    left:0px!important;
}
}
.sub-menu{
    overflow:hidden!important;
}

body .toplist-techcity__offer-cta-btn{
    color:#fff!important;
}
