/*
Theme Name: Dmac Theme
Theme URI: https://dmacmedia.com/ie/
Author: Dmac Media
Author URI: https://dmacmedia.com/ie/
Description: A Dmac WordPress theme.
Version: 1.0
License: GPL-2.0-or-later
Text Domain: dmac-theme
*/

html { scroll-behavior: smooth; overflow-x: hidden; overflow-y: scroll; }
body.site-body{background: var(--site-background-colour); font-family: var(--primary-font); font-size: 1.125rem; line-height: 1.4; overflow: hidden;}
body.site-body *{box-sizing: border-box;}

/* DISPLAY CLASSES */
.full-width-fix { width: 100vw !important; max-width: 100vw !important; position: relative !important; left: 50%; right: 50%; margin-left: -50vw; 
	margin-right: -50vw; }
.hidden { display: none; }
.hideImportant { display: none !important; }

a:focus-visible { background-color: #f9dc4a !important; color: #000 !important; outline: 1px solid #000 !important; }

a.skiptocontent { position: absolute; top: 0; left: 0; opacity: 0; width: 1px; height: 1px; }
a.skiptocontent:focus, a.skiptocontent:active { display: flex; align-items: center; justify-content: center; height: 30px; padding: 0 20px; border: 1px solid #000; background: #f9dc4a; color: #000; font-size: 0.875rem; font-weight: bold; opacity: 1; width: auto; z-index: 10000; }

img { max-width: 100%; max-height: 100%; }

h1, h2, h3, h4, h5, h6 { display: block; margin: 0 0 10px 0; font-weight:600; font-family: var(--secondary-font); line-height: 1.4;}
h1 { font-size: 2.625rem;}
h2 { font-size: 2.25rem;}
h3 { font-size: 1.938rem;}
h4 { font-size: 1.375rem;}
h5 { font-size: 1.25rem;}
h6 { font-size: 1.125rem;}
p { padding: 5px 0 20px 0; font-size: 1.125rem; line-height: 1.4; }
a { text-decoration: none;}
ul { list-style-position: outside; padding: 5px 0 20px 20px; font-size: 0.875rem; color: inherit; list-style-type: disc; line-height: 24px; }
ul li { padding: 0 0 15px 0; line-height: 20px; }
ol { list-style-position: outside; padding: 5px 0 20px 20px; font-size: 0.875rem; color: inherit; list-style-type: decimal; line-height: 24px; }
ol li { padding: 0 0 5px 0; }
hr { color: #D8D8D8; background: #D8D8D8; height: 1px; border: 0; margin-bottom: 20px; position: relative; }

.button-primary { display: inline-flex; align-items: center; justify-content: center; padding: 0px 40px; margin: 0; line-height: 1; height: 50px; background: #fff;
    text-align: center; color: #000; text-decoration: none; transition: 0.2s ease-in all; font-size: 0.938rem; font-weight: 700; text-transform: uppercase;}
.button-secondary {  display: inline-flex; align-items: center; justify-content: center; padding: 0px 40px; margin: 0; line-height: 1; height: 50px; background: #000;
    text-align: center; color: #fff; text-decoration: none; transition: 0.2s ease-in all; font-size: 0.938rem; font-weight: 700; text-transform: uppercase;}

.content-wrap{min-height: 600px;}

/*Header*/
.site-header{z-index: 3000; position: relative; font-family: var(--secondary-font); font-weight: 500;}
.header-wrap{height: 200px; position: relative; background: var(--header-colour);}
.header-wrap > div{display: flex; gap:20px; height: 100%; align-items: center; justify-content: space-between; position: relative;}
.logo{height: 100%; flex-shrink: 0;}
.logo a{display: flex; align-items: center; height: 100%;}
.logo img{max-width: 100%; max-height: 90%; height: auto; width: auto;}
.header-right{display: flex; gap:25px; height: 100%; align-items: center; flex-direction: column; align-items: flex-end; justify-content: center;}
.header-right-top{ display:flex; align-items: center; gap:10px;}

.social-links{display: flex; align-items: center; gap:12px;}
.social-links a{height: 34px; width: 34px; display: flex; align-items: center; justify-content: center; border-radius: 100%; transition: ease-in-out all .3s; background: var(--fourth-colour);}
.social-links a::before{content: ""; background-size: contain; background-repeat: no-repeat; background-position: center; height: 16px; width: 16px;}
.social-links a.bluesky::before{background-image: url(images/bluesky.svg);}
.social-links a.facebook::before{background-image: url(images/facebook.svg);}
.social-links a.twitter::before{background-image: url(images/twitter.svg);}
.social-links a.instagram::before{background-image: url(images/instagram.svg);}
.social-links a.youtube::before{background-image: url(images/youtube.svg);}
.social-links a.linkedin::before{background-image: url(images/linkedin.svg);}
.social-links a:hover{transform: translateY(-5px);}

.header-right-bottom{display: flex; align-items: center; gap:30px;}
.header-right-bottom > div{display: flex; align-items: center; gap:5px;}
.header-phone{border: 1px solid #74973C; background: var(--primary-colour); color: #fff; padding: 16px 28px; font-size: 1.063rem; border-radius: 30px; font-weight: 500; display: flex; align-items: center; gap:10px;}
.header-phone::before{content: ""; height: 27px; width: 27px; background: url(images/phone.svg) center no-repeat; background-size:27px; }
.header-phone strong{font-weight: 600;}
.header-phone:hover{color: #ffff; text-decoration: underline;}

.header-search{height: 61px; width: 61px; background: #13AAAC; border: 1px solid #128C8E; border-radius: 100%; display: flex; align-items: center; justify-content: center; flex-shrink: 0;}
.header-search::before{content: ""; height: 27px; width: 27px; background: url(images/search.svg) center no-repeat; transition: ease-in-out all .1s;}

/*Saerch Bar*/
.search-bar{position: absolute; right: 7px; top: 100%; display: none;}
.search-bar > form{background: var(--tertiary-colour); border-radius: 0 0 10px 10px; padding: 15px 25px 15px 15px; width: 800px;
    display: flex; align-items: center; gap:25px;}
.search-bar > form > div{display: flex; align-items: center; flex-grow: 1;}
.search-bar input{height: 60px; flex-grow: 1; background: #fff; font-size: 1rem; border-radius: 5px 0 0 5px; border: 0; outline: 0; padding: 0 15px;}
.search-bar input::placeholder{font-style: italic; color: inherit;}
.search-bar button{background: var(--fourth-colour); flex-shrink: 0; height: 60px; padding: 0 40px; color:#fff; border: 0; outline:0; font-size:1.063rem; }
.search-bar .close-search{height: 21px; width: 21px; background: url(images/close.svg) center no-repeat;}

/*Top Menu*/
.top-menu-wrap ul{padding: 0; margin: 0; display: flex; list-style: none;}
.top-menu-wrap ul li{padding: 0 10px; line-height: 14px; border-right: 1px solid #00788B;}
.top-menu-wrap ul li:last-child{border: 0;}
.top-menu-wrap ul li a{color: #00788B; font-size: 0.875rem; text-transform: capitalize;}
.top-menu-wrap ul ul{display: none;}

/*Menu*/
.main-menu-wrap{position: relative; height: 60px; display: flex; align-items: center;}
.main-menu-wrap > div{height: 100%;}
.main-menu{display: flex; align-items: center; gap:30px; list-style: none; padding: 0; margin: 0; height: 100%;}
.main-menu li{padding: 0; position: relative;}
.main-menu li a{ font-size: 0.875rem; line-height: 22px; transition: ease-in-out all .3s; color: #fff; display: block; padding: 5px 0; text-transform: capitalize;}
.main-menu li a:hover{text-decoration: none; color: var(--secondary-colour);}
.main-menu li.menu-open > a{color: var(--secondary-colour);}
.main-menu > li{height: 100%; display: flex; align-items: center;}
.main-menu > li > a{font-size: 1.063rem; color: var(--text-colour); display: flex; align-items: center; gap:10px; align-items: center;}
.main-menu > li.menu-item-has-children > a::after{content: ""; height: 8px; width: 8px; transform: rotate(45deg); border: solid var(--secondary-colour); border-width: 0 2px 2px 0;}
.main-menu li ul{list-style: none; margin: 0; padding:15px; position: absolute; left: 0; top: 100%; width: 300px; background:var(--primary-colour);  
    display: flex; flex-direction: column;}
.main-menu li ul li ul{left: 100%; top:0;}

.main-menu > li:last-child > ul{left: initial; right: 0;}
.main-menu > li:last-child > ul > li > ul{left: initial; right: 100%;}

/*Effect on sub menu*/
.main-menu li ul{visibility:hidden; opacity:0; transform: translateY(10px); transition: ease-in-out all .3s; z-index: -1; }
.main-menu li.menu-item-has-children:hover > ul, .main-menu li.menu-open > ul{visibility:visible; opacity:1; z-index: 1000; transform: translateY(0px);}

/*Overlay*/
.overlay { background: rgba(0, 0, 0, .3); position: fixed; top: 0; height: 100vh; width: 100%; left: 0; z-index: -1; visibility:hidden; 
    opacity:0; transition: ease-in-out all .4s;}
.overlay.hover { visibility:visible; opacity:1; z-index: 999;}

/*Footer*/
.site-footer{position: relative; z-index: 2999;display: flex; flex-direction: column; align-items: flex-start;}

/*Main Footer*/
.footer-wrap{background: var(--footer-colour); width: 100%; padding: 40px 0;}
.footer-wrap > div{display: flex; gap:20px;}
.footer-wrap > div > div{flex:1; display: flex; flex-direction: column; gap:20px;}
.footer-wrap > div > div > span{color:#3E3E3E; display: flex; flex-direction: column; font-family: var(--secondary-font); gap:10px; font-size: 1rem; font-weight: 600;}
.footer-logo img{max-width:200px; height: auto;}

.footer-intro > p{font-size: 0.875rem; color: #3E3E3E; padding: 0;}
.footer-intro .social-links a{background-color: #00B2AA;}

.footer-address p{padding: 0; margin: 0; color: #6E6E6E; font-size: 1rem;}
.footer-phone{font-size: 0.875rem; display: flex; align-items: center; gap:10px;}
.footer-phone::before{content: ""; height: 30px; width: 30px; background: url(images/phone.svg) center no-repeat var(--primary-colour); border-radius: 100%;}
.footer-email{font-size: 0.875rem; display: flex; align-items: center; gap:10px;}
.footer-email::before{content: ""; height: 30px; width: 30px; background: url(images/email.svg) center no-repeat var(--primary-colour); border-radius: 100%;}

.footer-outro > p{font-size: 0.75rem; color: #4A4A4A;}
.footer-outro a{color: #6E6E6E;}
.footer-outro a:hover{color: #6E6E6E; }

.footer-menu ul{padding: 0; margin: 0; list-style: none; display: flex; flex-direction: column; gap:15px;}
.footer-menu ul li{padding: 0; margin: 0; list-style: none;}
.footer-menu ul li a{color: #6E6E6E; font-size: 1.063rem; text-transform: capitalize;}
.footer-menu ul ul{display: none;}

/*Byline*/
.byline-wrap{background: var(--byline-colour); font-family: var(--secondary-font); width: 100%; padding: 30px 0;}
.byline-wrap > div{display: flex; justify-content: space-between; align-items: center; gap:20px; width: 100%;}
.byline-menu{}
.byline-menu ul{list-style: none; padding: 0; margin: 0; display: flex; row-gap:15px; flex-wrap: wrap; justify-content: center;}
.byline-menu ul li{list-style: none; padding: 0; margin: 0; line-height: 12px; }
.byline-menu ul li::after{content: "/"; color:#fff; font-size: inherit;}
.byline-menu ul li:last-child::after{content: none;}
.byline-menu ul li a{color: #fff;  font-size: 0.938rem; padding: 0 10px;}
.byline-menu ul ul{display: none;}
.byline-wrap p{padding: 0; margin: 0; color: #fff; font-size: 0.938rem; }

/*Articles*/

/*Search Page*/
body.site-body.blog{background: #fff;}

.posts-header{padding: 70px 0 40px 0; display:flex; flex-direction: column; gap:30px; position: relative; width: 100vw !important; max-width: 100vw !important; position: relative !important; left: 50%; right: 50%; margin-left: -50vw; 
    margin-right: -50vw; overflow: hidden;}
.posts-header::before{content: ""; height:1800px; width: 1800px; background: #f0f8fa; border-radius: 100%; position: absolute; top: -1425px; left: calc(50%);
    transform: translateX(-50%); z-index: -1;}
.posts-header > div{}
.posts-header > div > div:first-child{text-align: center; width: 100%;}

.posts-search-bar{background: #BE0177; border: 1px solid #8E055B; padding: 30px 50px; border-radius: 5px;}
.posts-search-bar form{display: flex; gap:20px; align-content: center; width: 100%;}
.posts-search-bar form > div{width: calc(50% - 10px); display: flex; flex-direction: column; gap:5px;}
.posts-search-bar form > div > div{width: 100%; display: flex; align-content: center;}
.posts-search-bar label{color: #fff; padding: 0; margin: 0;}
.posts-search-bar input{height: 60px; width: calc(100% - 60px); padding: 0 15px; border-radius: 5px 0 0 5px; border: 0; outline: none;}
.posts-search-bar input::placeholder{color: inherit; font-style: italic;}
.posts-search-bar button{height: 60px; width: 60px; background: url(images/search.svg) center no-repeat #097C93; border: 0; outline: none; padding: 0;
    border-radius: 0 5px 5px 0;}

.posts-search-bar select{height: 60px; border-radius: 5px; text-indent: 15px;}

.blog-post-list{display: flex; gap:10px; row-gap:20px; flex-wrap: wrap;}

.blog-pagination{display: flex; margin: 20px 0;}
.blog-pagination ul{list-style: none; padding: 0; margin: 0; display: flex; align-items: center; gap:15px; justify-content: center; width: 100%;}
.blog-pagination ul li{list-style: none; padding: 0; margin: 0;}
.blog-pagination ul li a{color: #000; font-size: 1rem;}
.blog-pagination ul li span.current{color: #BE0177; font-size: 1.125rem}

/*Block*/
.blog-post{width: calc(50% - 5px); border: 1px solid #E8E8E8;  box-shadow: 0px 0px 6px #00000015; font-family: var(--secondary-font);}
.blog-post > a{display: flex; align-items: center; gap:10px; padding: 35px 15px;}
.blog-post > a:hover{text-decoration: none;}
.blog-post .post-thumbnail{width: 200px; height: 200px; flex-shrink: 0; display: flex; align-items: center; justify-content: center;}
.blog-post .post-thumbnail a{display: flex; align-items: center; justify-content: center; width: 100%; height: 100%;}
.blog-post .post-info{display: flex; flex-direction: column; gap:10px; width: 100%;}
.blog-post .post-title{margin: 0; color: #0D3E48; font-weight: 600;}
.blog-post .post-excerpt{max-height: 75px; overflow: hidden;}
.blog-post .post-excerpt p{padding: 0; color: #0D3E48;}
.blog-post .post-footer{display: flex; align-items: center; justify-content: space-between;}
.blog-post .post-footer span{color: #0D3E48; display: flex; align-items: center; gap:6px; font-weight:600;}
.blog-post .post-footer span::after{content: ""; height: 7px ; width: 7px; transform: rotate(45deg); border: solid #097C93; border-width: 2px 2px 0 0;}
.blog-post .post-category{color: #fff; font-size: 0.75rem; background: #8EB84A; border-radius: 20px; padding: 13px 20px; position: relative; z-index: 10;}

/*Details Page*/
.single-post-header {position: relative; height: 340px; background-size: cover; background-position: center; background-repeat: no-repeat; border-radius: 5px; display: flex; flex-direction: column; justify-content: center; gap: 10px; padding: 50px; overflow: hidden; margin: 20px 0; } 
.single-post-header::before {content: ""; position: absolute; inset: 0; background: rgba(0, 0, 0, .6); z-index: 1; } 
.single-post-header .post-top {display: flex; align-items: center; gap: 10px; z-index: 100; position: relative; } 
.single-post-header .post-categories {padding-right: 10px; display: flex; flex-wrap: wrap; gap: 10px; align-content: center; border-right: 1px solid #fff; } 
.single-post-header .post-categories a {color: #fff; } 
.single-post-header .post-categories a:hover {color: #fff; } 
.single-post-header .post-date {color: #fff; } 
.single-post-header .post-title {position: relative; z-index: 100; color: #fff; margin: 0; } 
.post-body {width: 100%; display: flex; gap: 30px; } 
.post-content {width: 75%; } 

/* Sidebar */ 
.post-sidebar {width: 25%; display: flex; flex-direction: column; gap: 10px; } 
.post-sidebar > span {color: #2A4E53; font-family: var(--secondary-font); font-weight: 600; } 
.related-posts {display: flex; flex-direction: column; border-top: 1px solid #D6D6D6; } 
.related-post-item {padding: 15px 0; border-bottom: 1px solid #D6D6D6; } 
.related-post-item a {display: flex; gap: 10px; align-items: center; } 
.related-post-thumb {height: 90px; width: 90px; flex-shrink: 0; } 
.related-post-info {display: flex; flex-direction: column; gap: 10px; } 
.related-post-info .related-post-title {color: #0D3E48; font-weight: 500; } 
.related-post-info span {font-weight: 600; color: #2291A3; } 
.post-sidebar .more-posts {color: #fff; background: #097C93; width: 100%; padding: 15px 0; font-weight: 600; text-align: center; font-size: 1rem; }

/*Post Carousel*/
.post-carousel{padding: 20px 0;}
.post-carousel > div{display: flex; flex-direction: column; gap:30px; position: relative; padding: 0;}
.post-carousel .posts-wrap{width: 100%;}
.post-carousel.list .posts-wrap > div{flex-wrap: wrap; gap:20px;}
.post-carousel.list .post-block-carousel {width: calc((100%/3) - 15px)}

.post-block-carousel{border: 1px solid #939393; height: auto;}
.post-block-carousel > a{display: flex; flex-direction: column; }
.post-block-carousel > a:hover{text-decoration: none;}
.post-block-carousel .post-thumbnail{height: 290px; background-color: #e1e1e1; background-size: cover; background-position: center; background-repeat: no-repeat;}
.post-block-carousel .post-info{display: flex; flex-direction: column; align-items: flex-start; gap:10px; padding: 15px;}
.post-block-carousel .post-category{color: #000; font-size: 0.75rem; padding: 10px 15px; background: #D7F4F3; border: 1px solid #ADD8D6;}
.post-block-carousel .post-title{margin: 0; font-weight: 600; font-size: 1.313rem; color: #0D0D0D;}
.post-block-carousel .post-excerpt{max-height: 70px; margin: 0; overflow: hidden;}
.post-block-carousel .post-excerpt *{padding: 0; margin: 0; color: var(--text-colour); font-size: 1rem;}
.post-block-carousel .post-footer{display: flex; flex-direction: column; gap:20px;}
.post-block-carousel .post-footer span{font-weight: 600; display: flex; align-items: center; gap:10px; font-size: 1.125rem; color: #0D0D0D;}
.post-block-carousel .post-footer span::after{content: ""; height: 8px; width: 8px; transform: rotate(45deg); border: solid var(--secondary-colour); 
    border-width: 2px 2px 0 0; }
.post-block-carousel .post-footer > div{font-size: 0.875rem; color: #484646;}

/*Carousel*/
.pc-gal-pagination{display: flex; align-items: center; justify-content: center; gap:10px; height: 30px;}
.pc-gal-pagination a{height: 14px; width: 14px; background:#E8E8E8; border-radius:100%; margin: 0 !important; opacity: 1; transition: ease-in-out all .2s;}
.pc-gal-pagination a.active{background: var(--secondary-colour);}

.stripe-payment .d-flex.hidden {
    display: none !important;
}

.dmac-stripe-payment {
    border: 1px solid #EBE7E7;
    background: #fff;
    padding: 50px 20px 20px;
    border-radius: 5px;
}

.stripe-donation-form { 
    flex: 1;
}

.stripe-payment-text {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding-bottom: 20px;
    border-bottom: 1px solid #EBE7E7;
    margin-bottom: 20px;
}

.stripe-payment-right {
    background: #FAFAFA;
    border-radius: 4px;
    width: 50%;
    padding: 20px;
    flex: 0 0 auto;
}

.stripe-donation .stripe-header {
    font-size:1.5rem;
}
.stripe-payment-recap {
    font-size: 1rem;
}


.payment-step {gap: 20px;}

.dmac-stripe-payment input[type=submit], .dmac-stripe-payment button{border-radius: 4px; color: #fff; font-size: 1.063rem; padding: 15px 20px; display: flex; align-items: center; gap:10px; font-weight: 600; border: 0; outline: 0; background: var(--primary-colour);}

.stripe-header { font-weight: 600;}

@media (min-width:1600px) {
    .container { max-width: 1560px !important; }

}

@media (min-width:992px) and (max-width:1599px) {
    /*Block*/
    .blog-post .post-thumbnail{height: 150px; width: 150px;}
    .blog-post .post-category{padding: 10px 15px;}
    .blog-post .post-title{font-size: 1rem;}
    .blog-post .post-excerpt{height: 60px;}
    .blog-post .post-excerpt *{font-size: 0.875rem;}
    .blog-post .post-footer span{font-size: 0.875rem;}

}

@media (min-width:1200px) and (max-width:1599px) {

    /*Header*/
    .header-right-bottom{gap:20px;}
    .header-phone{font-size: 1rem; padding: 14px 15px;}
    .header-search{height: 50px; width: 50px;}
    .header-search::before, .header-phone::before{background-size: contain; height: 20px; width: 20px;}

    /*Menu*/
    .main-menu{gap:20px;}
    .main-menu > li > a{font-size: 1rem;}

    /*Footer*/
    .footer-menu ul li a, .footer-address p, .byline-wrap p, .byline-menu ul li a{font-size: 0.875rem;}
}

@media (min-width:992px) {
    .footer-menu-wrap .footer-menu{display: block !important;}
    .footer-menu-wrap > span{pointer-events: none !important;}
} 

/* --------------------------------------- */
/* -------- LARGE SCREEN >1200px --------- */
/* --------------------------------------- */

@media only screen and (min-width:1200px) {
    .mobile:not(.desktop-large), .tablet:not(.desktop-large), .desktop:not(.desktop-large), .desktop-hidden { display: none !important; }

}

/* --------------------------------------- */
/*-------------DESKTOP < 1199px------------*/
/* --------------------------------------- */
@media (min-width:992px) and (max-width:1199px) {
    .mobile:not(.desktop), .tablet:not(.desktop), .desktop-large:not(.desktop), .desktop-hidden { display: none !important; }

    /*Header*/
    .logo img{max-width: 160px;}
    .header-right-bottom{gap:20px;}
    .header-phone{font-size: 0.875rem; padding: 14px 15px;}
    .header-search{height: 50px; width: 50px;}
    .header-search::before, .header-phone::before{background-size: contain; height: 20px; width: 20px;}

    /*Menu*/
    .main-menu{gap:20px;}
    .main-menu > li > a{font-size: 0.875rem;}

    /*Post Carousel*/
    .post-block-carousel .post-thumbnail{height: 240px;}
    .post-block-carousel .post-info{padding: 10px;}
    .post-block-carousel .post-title {font-size: 1.125rem;}
    .post-block-carousel .post-footer span{font-size: 1rem;}

}

/* ------------------------------------------------- */
/* --------------TABLET & MOBILE ------------------- */
/* ------------------------------------------------- */

@media (max-width:991px) {
    .header-wrap > div{max-width: 100%;}

    .menu-toggle{height: 100%; display: flex; align-items: center; justify-content: center; z-index: 2000; position: relative;}
    .menu-toggle > div{display: flex; align-items: center; justify-content: space-between; flex-direction:column; 
        height:19px; width:25px; }
    .menu-toggle > div::before{content: ""; height: 3px; transition: ease-in-out all .2s; width: 27px; background: var(--secondary-colour);}
    .menu-toggle > div::after{content: ""; height: 3px; transition: ease-in-out all .2s; width: 27px; background: var(--secondary-colour);}
    .menu-toggle > div > div{width: 27px; height: 3px; transition: ease-in-out all .2s; background: var(--secondary-colour); }

    .menu-toggle.active > div > div{opacity: 0;}
    .menu-toggle.active > div::before{ transform:rotate(45deg) translate(6px, 4px);}
    .menu-toggle.active > div::after{transform:rotate(-45deg) translate(7px, -6px);}

     /* ----- MOBILE MENU ----- */
    .responsive-menu-wrap{opacity: 0; z-index: -1; visibility: hidden; background: var(--header-colour); width: 100%; position: absolute; top: 100%; right: 0;
        transition: ease-in-out all .2s; height: initial; padding-bottom: 10px; font-family: var(--secondary-font);}
    .responsive-menu-wrap.open{opacity: 1; z-index: 1000; visibility: visible;}

    .responsive-menu-wrap ul{list-style: none; padding: 0; margin: 0;}
    .responsive-menu li{list-style: none; padding: 0; display: flex; flex-direction: column; position: relative; }
    .responsive-menu li a{color: #000; font-size: 0.875rem; padding: 10px; font-weight: 400; width: 100%; text-transform: capitalize;}
    .responsive-menu li.menu-item-has-children {padding-right: 40px;}
    .responsive-menu > ul ul{padding: 0;}
    .responsive-menu > li {border-bottom: 1px solid #F3F3F3;}
    .responsive-menu > li:last-of-type{border-color: transparent;}
    .responsive-menu > li:first-child{border-top: 1px solid #F3F3F3;}
    .responsive-menu > li > a{font-weight: bold;}
    .responsive-menu li ul li a{padding-left: 10px;}
    .responsive-menu li ul li ul li a{padding-left: 20px;}

    .responsive-menu .sub-menu{display: none;}
    .responsive-menu li a.toggle-sub{height: 40px; width: 40px; position: absolute; right: 0; top:0; padding: 0;}
    .responsive-menu li a.toggle-sub::before{content:""; height: 10px; width: 10px; transform: rotate(45deg); border:solid var(--secondary-colour); border-width:0 2px 2px 0; position: absolute; top:13px; right:13px; transition: ease-in-out all .3s;}
    .responsive-menu li.open a.toggle-sub::before{transform: rotate(225deg); top:17px;}

    .responsive-menu-wrap .top-responsive-menu{border-top: 1px solid #F3F3F3; padding-top: 10px;}
    .responsive-menu-wrap .top-responsive-menu li a{color: #000; font-size: 0.875rem; padding: 10px; font-weight: 400; width: 100%; text-transform: capitalize;}
    
    .menu-footer{height: 60px; padding: 0 10px; display: flex; justify-content: flex-end; align-items: center; width: 100%; border-top: 1px solid #F3F3F3;}
    .menu-footer a{color: #000; font-size: 0.75rem; line-height: 24px; text-decoration: underline;}
    .menu-footer a:hover{color: #000;} 

    /*Footer*/
    .footer-wrap > div{flex-direction: column; gap:0;}
    .footer-wrap > div > div > span{font-size: 1rem; color: #000;}

    .footer-outro{order: 1; margin-bottom:30px; }
    .footer-menu-1{order: 2;}
    .footer-menu-2{order: 3;}
    .footer-menu-3{order: 4;}
    .footer-intro{order: 5; margin-top: 30px; align-items: center;}
    
    .footer-address p, .footer-outro a{color: #000;}
    .footer-address{display: flex; gap:10px; align-items: flex-start;}
    .footer-address::before{content: ""; height: 14px; width: 16px; background:url(images/pin.svg) center no-repeat; background-size: contain;}
    .footer-phone{font-size: 1rem;}
    .footer-phone::before{height: 14px; width: 16px; background:url(images/phone-mobile.svg) center no-repeat; background-size: contain; border-radius: 0;}
    .footer-email{font-size: 1rem;}
    .footer-email::before{height: 14px; width: 16px; background:url(images/email-mobile.svg) center no-repeat; background-size: contain; border-radius: 0;}

    .footer-wrap > div > div.footer-menu-wrap:nth-child(2){border-top: 1px solid #E2E2E2;}
    .footer-wrap > div > div.footer-menu-wrap{gap:0; border-bottom: 1px solid #E2E2E2;}
    .footer-wrap > div > div.footer-menu-wrap span{line-height:50px; position: relative;}
    .footer-menu-wrap span::before{content: ""; height: 10px; width: 10px; border:solid #000; border-width:  0 2px 2px 0; transform: rotate(45deg); position: absolute;
        right: 10px; top: 15px; transition: ease-in-out all .3s;}
    .footer-menu-wrap.active span::before{ transform:rotate(225deg); top:20px; }
    .footer-menu{display: none;}
    .footer-menu > div{margin-bottom: 20px;}
    .footer-menu ul li a{color: #000; font-size: 0.875rem;}
    .footer-intro img{max-width: 140px;}

    .byline-wrap{}
    .byline-wrap > div{flex-direction: column; justify-content: center; text-align: center;}
    .byline-wrap p{font-size: 0.875rem;}
    .byline-menu ul li a{font-size: 0.75rem;}

    /****Articles*****/

    /*Search page*/
    .posts-search-bar{padding: 15px;}
    .posts-search-bar form{flex-direction: column; gap:10px;}
    .posts-search-bar form > div{width: 100%;}
    .posts-search-bar input{height: 50px; width: calc(100% - 50px);}
    .posts-search-bar button{height: 50px; width: 50px;}
    .posts-search-bar select{height: 50px;}

    /*Block*/
    .blog-post{width: 100%;}
    .blog-post > a{flex-direction: column; padding: 10px 10px 15px 10px;}
    .blog-post .post-info{align-items: flex-start;}
    .blog-post .post-thumbnail{height: 275px; width: 100%;}
    .blog-post .post-category{padding: 10px 15px;}
    .blog-post .post-title{font-size: 1rem;}
    .blog-post .post-excerpt{height: 60px;}
    .blog-post .post-excerpt *{font-size: 0.875rem;}
    .blog-post .post-footer span{font-size: 0.875rem;}

    /*Details*/
    .single-post-header{height: 290px; padding: 15px;}
    .single-post-header .post-categories a, .single-post-header .post-date{font-size: 0.813rem;}
    .single-post-header .post-title{font-size: 1.5rem;}
    .post-body{flex-direction: column;}
    .post-content, .post-sidebar{width: 100%;}
    .post-content *{font-size: 0.875rem;}

    .stripe-payment-right {
        display: none !important;
    }

}

/* --------------------------------------- */
/* --------------TABLET------------------- */
/* --------------------------------------- */

@media (min-width:768px) and (max-width:991px) {
    .desktop-large:not(.tablet), .desktop:not(.tablet), .mobile:not(.tablet), .tablet-hidden { display: none !important; }

    /*Header*/
    .header-wrap{height: 120px;}
    .header-phone{font-size: 1rem; padding: 14px 20px;}
    .header-phone::before{height: 20px ;width: 20px; background-size: contain;}
    .header-search{height: 52px; width: 52px;}
    .header-right-bottom{gap:20px;}
    .search-bar > form {width: 700px;}

    /*Post Carousel*/
    .post-carousel.list .posts-wrap > div{gap:10px; row-gap: 20px;}
    .post-carousel.list .post-block-carousel{width: calc(50% - 5px)}
   

}

/* --------------------------------------- */
/* --------------MOBILE------------------- */
/* --------------------------------------- */

@media (max-width:767px) {
    .tablet:not(.mobile), .desktop:not(.mobile), .desktop-large:not(.mobile), .mobile-hidden { display: none !important; }

    body.site-body{font-size:1rem; }

    h1 { font-size: 2.5rem; }
    h2 { font-size: 2.125rem; }
    h3 { font-size: 1.813rem; }
    h4 { font-size: 1.25rem; }
    h5 { font-size: 1.125rem; }
    h6 { font-size: 1rem; }
    p{font-size:1rem; }

    /*Top Header*/
    .top-header{height: 40px; background: var(--primary-colour); font-family: var(--secondary-font);}
    .top-header > div{max-width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;}
    .top-header .top-phone{color: #fff; display: flex; align-items: center; justify-content:center; font-size: 0.75rem; gap:10px;}
    .top-header .top-phone::before{content: ""; width:21px; height:21px; background:url(images/phone.svg) center no-repeat; background-size:21px; }

    /*Header*/
    .header-wrap{height: 80px;}
    .header-search{height: 40px; width: 40px;}
    .header-search::before{height: 18px; width: 18px; background-size: contain;}
    .header-right-bottom{gap:15px;}

    .search-bar{right: 0; width: 100%;}
    .search-bar > form{width: 100%; padding: 12px; border-radius: 0;}
    .search-bar input{height: 46px;}
    .search-bar button{width: 46px; height: 46px; padding: 0; background: url(images/search.svg) center no-repeat #097C93; background-size:18px; }
    .header-search.active::before{background-image: url(images/close.svg); background-size: 15px;}

     /*Post Carousel*/
    .post-carousel.list .posts-wrap > div{gap:10px; row-gap: 20px; flex-direction: column;}
    .post-carousel.list .post-block-carousel{width: 100%;}
    .post-block-carousel .post-thumbnail{height: 215px;}
    .post-block-carousel .post-info{padding: 10px;}
    .post-block-carousel .post-title{font-size: 1.063rem;}
    .post-block-carousel .post-excerpt {max-height: 60px;}
    .post-block-carousel .post-excerpt *{font-size: 0.875rem;}
    .post-block-carousel .post-footer span{font-size: 0.938rem;}

}