/*
Theme Name: CustomTheme
Author: Acorn Web Design
Description: Wordpress theme created by Acorn Web Design
Version: 2023.1
*/


html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;vertical-align:baseline}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="reset"],input[type="submit"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}

.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}.screen-reader-text{clip:rect(1px, 1px, 1px, 1px);position:absolute !important}

    @font-face {
    font-family: 'Zain-Regular';
    font-style: normal;
    font-weight: 400;
    src: local('Zain-Regular'), url('fonts/Zain-Regular.woff') format('woff');
    }
    
    @font-face {
    font-family: 'Nunito-Regular';
    font-style: normal;
    font-weight: normal;
    src: local('Nunito-Regular'), url('fonts/Nunito-Regular.woff') format('woff');
    }
    
    @font-face {
    font-family: 'Nunito-SemiBold';
    font-style: normal;
    font-weight: normal;
    src: local('Nunito-SemiBold'), url('fonts/Nunito-SemiBold.woff') format('woff');
    }

* {padding:0;border:none;margin:0;color:#333333;
--dark-colour: #664886;
--mid-colour: #ac90c3;
--xpale-colour: #f2eef6;
--pale-colour:#e6dbec;
--link-colour: #af74df;
--menu-bar-colour: #ffffff;
--warning-colour: #860042;
--content-font: 'Nunito-Regular', sans-serif;
--heading-font: 'Zain-Regular', sans-serif;}
*:focus {outline: 3px dashed var(--dark-colour);}


html {scroll-behavior: smooth;}
[id] {scroll-margin-top: 120px;}


/* SCROLLBAR */

/* width */
::-webkit-scrollbar {width: 10px;}
/* Track */
::-webkit-scrollbar-track {background: var(--pale-colour);}
/* Handle */
::-webkit-scrollbar-thumb {background: var(--dark-colour);}
/* Handle on hover */
::-webkit-scrollbar-thumb:hover {background: var(--dark-colour);}
html {scrollbar-color: var(--dark-colour) var(--pale-colour);scrollbar-width:thin;scroll-behavior: smooth;}

/* GENERIC */

body {margin: 0;padding:0;background-color: #ffffff;font-size:130%;line-height: 150%;font-family:var(--content-font);}
a:link {color: var(--link-colour);text-decoration:none!important;}
a:hover {color: var(--dark-colour);text-decoration:none!important;}
a:active {color: var(--link-colour);text-decoration:none!important;}
a:visited {color: var(--link-colour);text-decoration:none!important;}
.mail-link span {color: var(--background-colour)!important;text-decoration:none!important;}
p {padding:0.8em 0;}
h1 {padding:0.8em 0;font-size:250%;letter-spacing:1px;line-height:102%;font-family:var(--heading-font);color:var(--dark-colour);display:block;text-align:center;}
h1.main-page-head {padding:0.4em 0;}
h1.entry-title {}
h2 {font-size:200%;line-height:102%;font-family:var(--heading-font), sans-serif;font-family:var(--heading-font);color:var(--dark-colour);display:block;text-align:center;}
h3 {padding:0.8em 0;font-size:160%;font-family:var(--heading-font);color:var(--dark-colour);}

/* BACKGROUND COLORS */
.intro {background-color:var(--xpale-colour);border: 1px solid transparent;}
.first {background-color:var(--pale-colour);border: 1px solid transparent;}
.odd {background-color:var(--xpale-colour);border: 1px solid transparent;}
.even {background-color:var(--pale-colour);border: 1px solid transparent;}
.cta {background-color:var(--mid-colour);border: 1px solid transparent;}
#footer {background-color: var(--dark-colour);border: 1px solid transparent;}


/* HEADER */
#header-container {background-color: #ffffff;position: -webkit-sticky;position: sticky;top: 0px;z-index: 999;display:block;}
#header {width:100%;max-width:1450px;}
#site-title {display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: space-between;padding-left:2%;padding-right:2%;}
#logo {width:45%;padding-bottom:1px;padding-top:10px;}
#logo img {width:100%;transition: width 0.3s ease;}
#logo.small-logo img {width: 75%; }
.custom-logo-link {width:100%;}
.custom-logo-link img {width:100%;max-width:400px;}
#top-image {width:100%;overflow:hidden;}
#top-image img {width:220%;display:block;transform: translateX(-20%);}
#top-border {position: absolute;top: 0;z-index:5;}
#top-border img {width:100%;display:block;}
#bottom-border {position: absolute;bottom: 0;z-index:5;}
#bottom-border img {width:100%;display:block;}
#hero-container {position:relative;display:block;}

#book-button {margin-top:50px;display:none;}
#book-button a {color: #fff;margin-top:40px;width: 100%;text-align: center;background-color: var(--link-colour);padding: 10px;border-radius: 8px;border: 1px solid #fff;font-size: 100%;}
#caption {position:absolute;width:44%;border-radius: 10px;z-index:2;top:4%;}
#caption-text {color:#ffffff!important;font-size:95%;text-shadow: 0px 0px 8px rgba(0,0,0,0.9);line-height:100%;font-family:var(--heading-font), sans-serif;padding: 10px;text-align:center;}
.wp-block-button {border: 1px solid #ffffff;border-radius: 8px;}




/* FOOTER */

#footer {margin-top: -1px;}
#menu-bottom-menu {display:flex;flex-direction:column;flex-wrap: nowrap;justify-content:space-evenly;align-items: center;padding-bottom:30px;}
#menu-bottom-menu li {width: 100%;text-align:center;padding-top:20px;}
#menu-bottom-menu li a {padding:9px;color:#ffffff;}
#menu-bottom-menu li a:hover {color:#ffffff;}
#footer-image {position:relative;z-index:-1;clear:both;}
#footer-image img {width:100%; height:auto;display:block;}


/* HAMBURGER MENU */

#menu-control {padding-top:15px;padding-bottom:10px;font-size:140%;text-align: right;padding-right:10px;}
.hamburger-button {display: inline-block;cursor: pointer;border: none;background: none;padding: 10px;}
.hamburger-button span {display: block;width: 24px;height: 3px;margin: 5px auto;background-color: var(--link-colour); transition: background-color 0.3s ease;}
.hamburger-button:hover span {background-color:var(--dark-colour);}
#menu {display:none;}
#menu.responsive {display:block;max-height: 100vh;overflow-y: scroll;background-color:var(--menu-bar-colour);display: block;position: relative;margin-top:25px;}
#menu-container {width:100%;background-color:var(--menu-bar-colour); }
#menu li a {display: block;padding-top:9px;padding-bottom:9px;padding-left:2%;padding-right:2%;border-top: solid 1px var(--pale-colour);color:var(--link-colour);text-align:center;}
#menu li a:hover {color:var(--dark-colour)!important;background-color:var(--mid-colour);border-radius:8px;}
.menu-item:hover>ul {display: block;}
.sub-menu {display: none;}
.sub-menu li {background-color:var(--menu-bar-colour);line-height: 30px;width: 100%;text-align:left!important;}
#menu li .sub-menu li a:hover {background-color:var(--mid-colour);}
.sub-menu li .sub-menu li {background-color:var(--menu-bar-colour);}




/* Content Styling */

.standard-content {margin-left:auto;margin-right:auto;max-width:1450px;padding-left:2%;padding-right:2%;margin-top:10px;margin-bottom:10px;}
#footer-content {margin: 0 4%;}
.page-content ol {counter-reset: item;}
.page-content ol li {display: block;margin-left: 2em;padding:0.5em 0;}
.page-content ol li:before {content: counter(item) ". ";counter-increment: item;position: absolute;margin-left: -2em;}
.page-content ul {list-style:bullets!important;}
.page-content ul li {list-style-type: disc!important;}
.page-content li {margin-left: 2em;padding:0.5em 0;}
.text-image-right img {width:100%;height:auto;}
.wp-block-image figcaption {display:none;}
.wp-block-image img  {display:block;}

.Item-group .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained {display: flex;justify-content:space-between;flex-wrap: nowrap;align-items:center;padding-top:10px;padding-bottom:10px;flex-direction:column;}
.item .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained {display: block;}
.wp-block-group.item {width:100%;}
.wp-block-group.item img {width:98%; border-radius: 20%;
  background-color: var(--mid-colour);
  padding: 10px;
  margin-top: 10px;
  box-shadow: 8px 8px 0px var(--dark-colour); }



.intro {padding-top:20px;padding-bottom:20px;}
.first {padding-top:20px;padding-bottom:20px;}
.odd {padding-top:20px;padding-bottom:20px;}
.even {padding-top:20px;padding-bottom:20px;}
.cta {padding-top:20px;padding-bottom:0px;}
.cta h2 {color:#ffffff!important;}
.cta p {color:#ffffff!important;}
.cta a {color:#ffffff!important;}
.cta label {color:#ffffff!important;}

#copyright {text-align:center;font-size:80%;margin-top: 20px;}
#acorn {text-align:center;font-size:80%;margin-top: 20px;margin-bottom:80px;}


/*TABLE */
.wp-block-table.is-style-stripes tbody tr:first-child {background-color: var(--dark-colour)!important;}
.wp-block-table.is-style-stripes tbody strong {color: #ffffff!important;font-size:140%;letter-spacing:1px;font-family:var(--heading-font);}
.wp-block-table.is-style-stripes td:nth-child(2) {width:30%;}
.wp-block-table.is-style-stripes tbody tr:nth-child(even) {background-color:var(--pale-colour);}
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {background-color:var(--xpale-colour);}
.page-content .wp-block-table.is-style-stripes {border-radius: 20px;overflow: hidden;border: 2px solid var(--dark-colour);background-color: var(--dark-colour);}
.page-content td {padding:10px;}
.page-content td.has-text-align-center {padding: 0.5rem;text-align: center;}


/* CONTACT FORM */

.wpcf7-form textarea, input[type="text"], input[type="email"], input[type="button"], input[type="submit"], input[type="reset"] {border: 1px solid rgba(41, 41, 41, .4);padding:0.5em;}
.wpcf7-form textarea, input[type="text"], input[type="email"], input[type="button"], input[type="submit"] {width:100%;}
input.wpcf7-form-control.wpcf7-submit {width: 150px;background-color: var(--dark-colour);color: var(--background-colour);font-size:100%;border-radius:5px;}
input.wpcf7-form-control.wpcf7-submit:hover {background-color: var(--link-colour);color: var(--background-colour);}
.wpcf7 form.sent .wpcf7-response-output {border-color: var(--pale-colour);border-radius: 8px;color:}
.wpcf7 form .wpcf7-response-output {border: 2px solid var(--pale-colour);}
.wpcf7-not-valid-tip {color: var(--warning-colour);}

/* COMPLIANZ */
.cc-color-override-2132646379.cc-revoke {color: #ffffff!important;}
.cc-link, .cc-revoke:hover {text-decoration: none!important;}
.cc-animate.cc-revoke.cc-bottom {transform: none!important;}
#cmplz-document {font-size: 100%!important;max-width: 100%!important;}
#cmplz-cookies-overview .cmplz-dropdown a, #cmplz-cookies-overview .cmplz-dropdown p, #cmplz-document .cmplz-dropdown a, #cmplz-document .cmplz-dropdown p, #cmplz-document li, #cmplz-document p, #cmplz-document td {font-size: 100%!important;}

@media all and (min-width:350px){
#caption-text {font-size:110%;}
}

@media all and (min-width:400px){
#top-image img {width:180%;transform: translateX(-17%);}
#caption-text {font-size:115%;}
}

@media all and (min-width:450px){
#logo {width: 40%;}
#caption-text {font-size:135%;}
}

@media all and (min-width:500px){
#logo {width: 37%;}
#top-image img {width:160%;transform: translateX(-15%);}
#caption-text {font-size:140%;}
}

@media all and (min-width:550px){
#caption-text {font-size:145%;}
#caption {top:5%}
#logo {width: 32%;}
}

@media all and (min-width:600px){
#caption-text {font-size:150%;}
#caption {top:7%;width:40%;}
#top-image img {width:130%;transform: translateX(-7%);}
#logo {width: 30%;}
}
	
@media all and (min-width:650px){
#logo {width: 28%;}
#caption {margin-left:1%;width:37%;}
#top-image img {width:110%;left: 0%;transform: translateX(-4%);}

}

@media all and (min-width:750px){
#logo {width: 26%;}
#menu-bottom-menu {flex-direction:row;}
#top-image img {width:120%;left: 0%;transform: translateX(-0%);}
#caption-text {font-size:160%;}
#caption {width:40%;top:25%;transform: translateY(0%);}
#caption-text {text-align:left;}
}

@media all and (min-width:850px){
#caption {margin-left:2%;}
#caption-text {font-size:180%;}	
}



@media all and (min-width:950px){
#caption-text {font-size:200%;}
	
/* NORMAL MENU */	
#header {display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin-left:auto;margin-right:auto;}
#site-title {width:28%;}
#logo {padding-left:0;width:90%;max-width:210px;}
#menu-control {display:none;}
#menu-container {width:70%;}
#menu {display:block;width:100%;}	
#menu-main-menu {width:100%;display:flex;flex-direction:row;justify-content: space-between;flex-wrap: nowrap;font-size:100%;}	
#menu-main-menu li {padding:1px;flex:auto;}
#menu li a {padding:7px;display:block;border-top:0;text-align:center;}
#menu li a.active {color: #fff;background-color: var(--mid-colour);border-radius:8px;}		
.menu-item:hover>ul {position: absolute;}
}

@media all and (min-width:1000px){
.Item-group .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained {flex-direction:row;}
.wp-block-group.item {width:48%;}
#top-image img {width:110%;}
}

@media all and (min-width:1100px){
#caption-text {font-size:230%;}
}


@media all and (min-width:1300px){
#caption-text {font-size:260%;}
#caption {width:35%;top:22%;}
#top-image img {width:100%;}
}

@media all and (min-width:1450px){
#caption {margin-left: calc((100vw - 1450px) / 2 + 1%);}
#caption-text {font-size:265%;}
}


@media all and (min-width:1600px){
#caption-text {font-size:268%;}
#caption {width:28%;top:25%;}
}

@media all and (min-width:1700px){
#caption {width:27%;}
}