/*
Theme Name: Scriptorium of the Crows
Author: Seven Hills Creative
Author URI: https://www.sevenhillscreative.co.uk/
Description: Another custom theme for a happy customer!
Tags: accessibility-ready, one-column, two-columns, custom-menu, featured-images, microformats, sticky-post, threaded-comments, translation-ready
Version: 2022.1
Requires at least: 5.2
Requires PHP: 7.0
*/



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%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{text-decoration:none}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="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;}input[type="search"]{-webkit-appearance:textfield}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:none}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{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}




/* ///// BASE ///// */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    color: #0B233B;
    box-sizing: border-box;
    font-family: "Fredericka the Great", serif;
    /* transition: all 0.4s ease; */
    /* outline: 1px solid red !important; */
}

html{
    overflow-x: hidden !important;
  }
  
body{
    font-family: "Fredericka the Great", serif;
    overflow-x: hidden !important;
    display: grid;
    word-break: break-word;
  }


@media only screen and (max-width: 1100px) {}
@media only screen and (max-width: 960px) {}
@media only screen and (max-width: 760px) {}
@media only screen and (max-width: 660px) {}
@media only screen and (max-width: 560px) {}
@media only screen and (max-width: 460px) {}
@media only screen and (max-width: 360px) {}
@media only screen and (max-width: 320px) {
    body, header, main, section, footer {
        width: 320px;
    }
}

@font-face {
    font-family: tahoma, sans-serif;
    src: url('/wp-content/themes/Scriptorium-of-the-Crows/Fonts/tahoma.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}



#primary {
    display: grid;
    grid-column: 2/16;
}

/* LAYOUT ************************************************/

section, article, main, nav, header {
    display: grid;
    grid-template-columns: repeat(16, 1fr);
    grid-column: 1 / 17;
    justify-self: center;
    max-width: 2000px;
    width: 100%;
}

footer {
    display: grid;
    grid-template-columns: repeat(16, 1fr);
    grid-column: 1 / 17;
    justify-self: center;
    max-width: 2000px;
    width: 100%;
}
  
footer img{
    max-width: 200px;
    max-height: 200px;
    object-fit: contain;
}

ul, li {
    font-family: "Fredericka the Great", serif;
    letter-spacing: 0.1em;
    line-height: 30px
}

ul, ol {
    font-family: "Fredericka the Great", serif;
    letter-spacing: 0.05em;
}


img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}




/*  BUTTON LINKS  */
.all-button {
    justify-self: center;
    font-family: tahoma, sans-serif;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    padding: 1em 2em;   
    min-width: 200px;
    text-transform: uppercase;
}

/* Brown Button */
.brown-button {
    background: #A45C24;
    border: 2px solid #A45C24;
    color: #fff;
}

/* Pattern Button */
.pattern-button {
    background-image: url('/wp-content/uploads/2025/11/background.png');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border: none;
    color: #fff;
}


/* FORM SUBMIT BUTTON */
input[type=submit] {
    justify-self: center;
    font-family: "Fredericka the Great", serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 19px;
    letter-spacing: 0.05em;
    text-align: center;  
    padding: 0.7em 2em;   
    text-transform: capitalize;
    background: #5BBDB2;
    border: 2px solid #0B233B;
    color: #0B233B;
    border-radius: 25px;
}

input[type=submit]:hover {
    background: transparent;
    border: 2px solid white;
    color: white;
} 



/* ///// TEXT //// */
h1, h2, h3, h4, h5, h6{
    letter-spacing: 0.05em;
    color:#fff;
    letter-spacing: 0.1em; 

    text-transform: uppercase;
}

h1{
    font-size: 40px;
    font-weight: 300;
}

h2{
    font-size: 45px;
    font-weight: 300;
    color: black;
}

h3{
    font-size: 30px;
    font-weight: 400;
}

h4{
    font-size: 16px;
    font-weight: 300;
}


p{
    color: black;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5em;
    letter-spacing: 0.05em;
    font-family: tahoma, sans-serif;
}

label{
    font-size: 18px;
    font-weight: 400;
    line-height: 21px;
}

ul {
    list-style-type: disc;
    color: #5BBDB2;
    font-family: tahoma, sans-serif;
    list-style-position: inside;
}

ul.main-nav{
  padding: 0;
}

ol{
  list-style-type: decimal;
}

li {
    color: black;
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5em;
    letter-spacing: 0.05em;
    font-family: tahoma, sans-serif;

}

li::marker {
    color: #5BBDB2;
    list-style: disc;
  }
  

strong{
  font-weight: 700;
}

em{
  font-style: italic;
}

.underline{
  text-decoration: underline;
}

a{
  cursor: pointer !important;
  text-decoration: none;

}

@media only screen and (max-width: 800px) {

    h1{
        font-size: 24px;
    }
    
    h2{
        font-size: 30px;
    }
    
    h3{
        font-size: 16px;
    }
    
    h4{
        font-size: 16px;
    }
        
    p , li{
        font-size: 16px;
        line-height: 24px;
    }        

}






/* MENU BAR DESKTOP VIEW */

@media only screen and (min-width: 1170px) {

    #hamburger-input:checked, #hamburger-menu #sidebar-menu{
        display: none;
    }

    .grid-header-section {
        display: grid;      
        z-index: 2;
    }

    .grid-header-outer {
        display: flex;
        grid-template-columns: auto 1fr auto;
        grid-column: 2 / 16;
        align-items: center;
        /* margin: 1em 0; */
        background-color: transparent;
        justify-content: space-between;
    }
    

    .grid-header-outer a img{
        max-width: 165px;
        width: 100%;
        display: grid;
    }

    .grid-header-outer i {
        font-size: 28px;
    }

    .grid-header-outer {
        font-size: 14px;
        font-weight: 600;
        line-height: 17px;
        letter-spacing: 0.2em;
    }

    .menu-sec-one {
        justify-items: start;
    }

    .menu-sec-two {
        justify-items: end;
    }

    .header-menu {
        display: grid;
    }

    .header-menu ul{
        display: flex;
        text-align: center;
        justify-content: space-between;
        align-items: center;
        gap: 2em;
    }

    .header-menu ul li {
        list-style: none;
    }

    .header-menu a {
        font-size: 25px;
        font-weight: 400;;
        letter-spacing: 0em;
        text-transform: uppercase;
        font-family: "Fredericka the Great", serif;
    }
   
    #hamburger-input, .overlay, #hamburger-menu, #sidebar-menu, .header-bar  {
        display: none;
    }

    .menu-item.parent:hover .sub-menu {
        display: block;
        width: 20%;
    }

    .menu-item.parent i {
        font-size: 14px;
        margin-left: 5px;
    }

    .menu-item-has-children > a:after {
        content: '\2304';
        margin-left: 5px;
        font-weight: 900;
        font-size: 1em;
        color: #000;
    }
    



    /* SUB MENU */

    .menu-item .sub-menu {
        display: none;
    }

    .menu-item .sub-menu .menu-item .sub-menu {
        display: none;
    }

    .menu-item .sub-menu .menu-item a {
        color:#0B233B;
        font-size: 16px;
        font-weight: 400;
        line-height: 18px;
        letter-spacing: 0.05em;
    }

    .menu-item .sub-menu .menu-item a:hover {
        color: #395A4C;
    }

    /* .menu-item .sub-menu { */
    .menu-item:hover .sub-menu {
        display: grid;
        grid-template-columns: 1fr;
        width: 15%;
        gap: 1em;
        background-color: #fff;
        padding: 2em;
        text-align: left;
        z-index: 50 !important;    
        /* justify-self: center; */
        margin: auto;
        position: absolute; 
    }

    .menu-item .sub-menu  {
        position: relative;
    }

    .menu-item .sub-menu .menu-item {
        padding: 1em;
        border-bottom: 1px solid #F08017;
    }

    .logo {
        z-index: 21;
        justify-self: center;
    }

    .contact-menu-link {
        background-image: url("/wp-content/uploads/2025/11/background.png");
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        padding: 1em;
    }

    .contact-menu-link a span {
        color: #fff;
        font-size: 25px;
        font-weight: 500;
        text-transform: uppercase;
        font-family: "Fredericka the Great", serif;
    }

    .header-menu .menu-item-has-children > a::after {
        content: '\f078'; 
        font-family: "Font Awesome 5 Pro";
        font-size: 20px;
        margin-left: 10px;
        display: inline-block;
        vertical-align: middle;
        color: #A45C24;
    }

}


    

/* RESPONSIVE MENU UNCLICKED */
@media only screen and (max-width: 1170px) {

    .grid-header-outer, .outer-banner-message-outer{
        display: none;
    }

    .header-bar {
        display:grid;
        grid-template-columns: 60% 1fr;
        grid-column:  2 / 16; 
        align-self: center;
        margin: 1em 0;
        z-index: 20;
    }

    .header-bar a {
        justify-self: left;
    }
    
    .header-bar img{
        max-width: 101px;
        width: 100%;
        object-fit: contain;
    }

    .responsive-menu {
        align-self: center;
    }

    #sidebar-menu ul li a span {
        color: #000;
        font-family: "Fredericka the Great", serif;
        font-size: 30px;
    }

    #sidebar-menu ul li a:hover{
        color:#5BBDB2;
    }

    .menu-icon {
        width: 33px;
        height: 2px;
        background-color: #0B233B;
        margin: 3px 0;
    }

    
    #hamburger-input{
        display: none;
    }
    
    #hamburger-menu {
        display: flex;
        align-items: end;
        flex-direction: column;
    }

    #hamburger-menu #sidebar-menu {
        grid-template-columns: 1fr;
        visibility: hidden;
        position: fixed;
        top: 0;
        right: -100%;
        width: 100%;
        background-color: #fff;
        transition: 0.3s;
        box-sizing: border-box;
        z-index: 20;
        padding: 2em;;
    }

    #hamburger-menu ul {
        margin: 2em 0;
        width: 100%;
    }

    #hamburger-menu ul .sub-menu{
        margin: 1em 0 1em 1em;
    }

    #hamburger-menu ul .sub-menu li {
        border-bottom: none;
    }

    #hamburger-menu li {
        list-style-type: none;
        padding: 0.5em 0;
        border-bottom: 1px solid #A45C24;
    }

    #hamburger-menu a {
        color: #1E1E1E;
        text-decoration: none;
        transition: transform 0.5s;
        align-items: center;
        display: flex;
        padding: 0.5em 0;
    }

    #hamburger-menu i {
        font-size: 28px;
        color: #A45C24;
    }

    #hamburger-menu a:active{
        -ms-transform: translateX(30px);
        -webkit-transform: translateX(30px);
        transform: translateX(3px);
    }

    #hamburger-input:checked + #hamburger-menu #sidebar-menu {
        visibility: visible;
        right: 0;
    }

    /* Scroll Side Menu */
    #sidebar-menu {
        max-height: 95vh;
        overflow-y: auto;
    }

    /* Hide sub-menu by default */
    .sub-menu.hidden {
        display: none;
    }

    /* Style for the toggle icon */
    .toggle-icon::before {
        content: '\f078';
        font-family: "Font Awesome 5 Pro";
        font-size: 1em;
        color: #A45C24;
        cursor: pointer;
    }

    /* Rotate icon when menu is open */
    .menu-item-has-children > a .toggle-icon.open::before {
        content: '\f077'; 
    }

    .open {
        margin-top: 0.8em !important;
    }

    .social-media-mobile {
        justify-content: start !important;
    }

}




/* INFO BANNER */
.info-banner {
    background-color: #A45C24;
    padding: 0.5em 0;
}

.inner-info-banner {
    grid-column: 2/16;
    justify-content: center;
    display: grid;
    position: relative;
}

.info-bar-content {
    display: flex;
    align-items: center;
}

.info-bar-content p {
    font-size: 1em;
    color: #fff;
    font-family: "Fredericka the Great", serif;
    text-transform: uppercase;
}

.info-bar-content i {
    color: #fff;
}

.info-bar-social {
    position: absolute;
    right: 0;
}




@media only screen and  (max-width: 1000px){

    .inner-info-banner {
        justify-content: space-between;
    }

}


/* MAIN BANNER */
.main-banner {
    min-height: 70vh;
    background-attachment: fixed !important;
}

.main-banner-sub {
   /* margin-bottom: 2em; */
}

.split-main-banner {
    display: grid;
    grid-template-columns: 1fr;
    grid-column: 2 / 16;
    align-self: center;
    justify-self: left;
    text-align: left;
    gap: 2em;
    max-width: 820px;
    /* width: 100%; */
    /* margin-top: 2em; */
    background-color: rgb(255, 255, 255, 0.7);
    padding: 4em 2em;
}

.split-main-banner h1 {
    color: #000;
    font-size: 50px;
}

.split-main-banner label {
    color:#A45C24;
    text-transform: uppercase;
    letter-spacing: 2.2px;
    font-size: 25px;
}

.split-main-banner-sub {
    display: grid;
    grid-template-columns:  repeat(2, 1fr);
    grid-column:  1 / 17; 
}

.split-main-banner-sub-product {
    grid-template-columns:  1fr;
}

.split-main-banner a {
    justify-self: start;
}

.split-main-banner-sub img {
    width: 100%;
    max-height: 60vh;
}

.sub-header {
    background-color: #395a4c;
    display: grid;
    padding: 0 2em;
}

.sub-header h1 {
    align-self: center;
    justify-self: center;
    font-size: 70px;
    text-align: center;
}

@media only screen and  (max-width:1000px){

    .main-banner {
        min-height: 80vh;
        align-content: center;
        background-attachment: scroll !important;
    }

    .split-main-banner h1 {
        font-size: 28px;
    }

    .split-main-banner label {
        font-size: 18px;
    }

    .split-main-banner {
        padding: 3em 1em;
        grid-template-columns: 1fr;
        text-align: center;
    }

    .split-main-banner a {
        justify-self: center;
    }
        
    
    .split-main-banner img{
        max-width: 118px;
    }

    .split-main-banner-sub {
        grid-template-columns: 1fr;
    }

    .split-main-banner-sub img {
        display: none;
    }

    .split-main-banner-sub h1{
        padding: 3em 0;
    }

    .sub-header {
        padding: 0 1em;
    }

    .sub-header h1 {
        align-self: center;
        justify-self: center;
        font-size: 30px;
    }
    
     
}




/* MAIN BANNER */

.text-video {
    margin: 5em 0;
}

.inner-text-video {
    display: grid;
    grid-template-columns: 1fr 50%;
    grid-column: 2 / 16;
    gap: 2em;
}

.text-video-content {
    display: grid;
    gap: 2em;
    position: relative;
}

.text-video-content p {
    font-family: tahoma, sans-serif;
    font-size: 18px;
}

.text-video-content a {
    justify-self: left;
}

.text-video-content img {
    position: absolute;
    opacity: 0.07;
    z-index: -1;
    object-fit: cover;
    overflow: visible;
}

.text-video-video {
    position: relative;
    display: flex;
    overflow: visible;
    -webkit-mask-image: url(/wp-content/uploads/2025/11scribble-mask.svg);
    mask-image: url(/wp-content/uploads/2025/11/scribble-mask.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    mask-position: center center;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-color: black;
}

/* Make the video fill the container */
.text-video-video video {
    display: grid;
    align-self: center;
    width: 100%;
    height: 100%;
    overflow: visible;
    object-fit: cover;
}


    
       
@media  only screen and  (max-width: 950px){
    
    .text-video {
        margin: 4em 0;
    }

    .inner-text-video {
        grid-template-columns: 1fr;
    }

    .text-video-content p,  .text-video-content h2 {
        text-align: center;
    }

    .text-video-content a {
        justify-self: center;
    }
    
}





/* CTA BOXES */
.cta-boxes {
    margin: 5em 0;
}

.inner-cta-boxes {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column: 2 / 16;
    gap: 2em;
}

.cta-box:nth-child(1) {
    grid-row-start: span 2;
    display: grid;
    justify-content: center;
}

.cta-box {
    min-height: 25em;
    display: grid;
}

.cta-box:nth-child(2) a, 
.cta-box:nth-child(3) a {
    justify-items: right;
    display: grid;
    justify-self: center;
}

.cta-box a {
    text-decoration: underline;
    align-self: center;
    background-color: rgb(255 255 255 / 70%);
    padding: 1em;
    justify-self: center;
    text-decoration: none;
}

.cta-box a h3 {
    color: #000;
}

.cta-box-dual {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background-color: #BAA87B;
}

.cta-box-dual-mobile {
    display: none;
}

@media  only screen and  (max-width: 950px){
    .inner-cta-boxes {
        grid-template-columns: 1fr;
        grid-column: 2 / 16;
    }

    .cta-box-dual {
        display: none;
        grid-template-columns: 1fr;
    }

    .cta-box-dual-mobile {
        display: grid;
    }

    .cta-box:nth-child(2) h3, .cta-box:nth-child(3) h3, .cta-box h3 {
        justify-self: center;
    }

    .cta-boxes {
        margin: 0 0 4em 0;
    }

    .cta-box a {
        background-color: rgb(255 255 255 / 75%);
    }

    .cta-box a h3 {
        color: #A45C24;
        font-weight: 800;
        text-decoration: none;
    }
}



/* CROW INFO SECTION */

.crow-info {
    background-color: #7daaa3;
    border-top: 4px solid #395a4c;
    border-bottom: 4px solid #395a4c;
    padding: 6em 0;
    overflow: visible;
    z-index: 999;
}

.inner-crow-info {
    display: flex;
    grid-template-columns: 1fr 1fr;
    grid-column: 2 / 16;
    gap: 2em;
    position: relative;
}

.info-box {
    display: grid;
    gap: 2em;
    text-align: center;
    min-height: 30em;
    align-content: center;
    padding: 0 0.5em;
    max-width: 500px;
    width: 100%;
    transition: transform 0.2s ease;
}

.info-box:hover {
    transform: scale(1.03);
    transition: transform 0.2s ease;
}

.info-box i {
    font-size: 50px;
    color: 000;
}

.crow-box {
    padding: 0;
    width: 100%;
    position: relative;
    justify-content: end;
    display: grid;
}

.crow-box img {
    position: absolute;
    max-width: 25em;
    overflow: visible;
    right: 0;
}

@media  only screen and  (max-width: 850px){

    .inner-crow-info {
        flex-wrap: wrap;
        justify-content: center;
    }

    .crow-info {
        padding: 2em 0;
        margin: 0;
    }

    .info-box {
        min-height: 10em;
        padding: 2em 0;
    }

    .crow-box {
        display: none;
    }
}




/* FOOTER */

footer {
    /* background-color: rgb(57, 90, 76); */
    background-image: url('/wp-content/uploads/2025/11/Scrolls-scaled-1.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
}

footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(57, 90, 76, 0.8);
    z-index: 1;
}

footer * {
    position: relative;
    z-index: 2; 
}

.footer h3 {
    display: grid;
    grid-column: 2 / 16;
    text-align: center;
}

.footer-areas {
    display: grid;
    grid-template-columns: auto auto auto auto;
    grid-column: 2 / 16;
    padding: 4em 0;
    gap: 3em;
}

.footer-box p, 
.footer-box h3,
.footer-box p strong {
    color: #fff;
}

.footer-box {
    display: grid;
    gap: 1em;
    align-self: start;
}

.footer-logo {
    align-self: center;
}

.footer-box p {
    font-size: 18px;
}

.footer-box h3 {
    display: flex;
    align-items: center;
    /* padding-left: 5px; */
}

.footer-p {
    margin: 0;
}

.footer-box a svg {
    max-width: 396px;
    height: auto;
    object-fit: contain;
    padding-bottom: 2em;
}

.footer-box-right {
    justify-self: right;
    align-self: end;
}

.lower-footer-area {
    display: grid;
    grid-template-columns: 1fr;
    grid-column: 2 / 16;
    align-self: center;
    justify-self: end;
}

.footer-box li {
    padding: 0.5em 0;
    /* margin-left: 2em; */
    list-style: none;
}

.footer-box li a span {
    color: #fff;
    font-size: 18px;
    text-transform: none;
    font-weight: 300;
}

.social-media {
    display: flex;
    gap: 2em;
}

.social-media i {
    color: #fff;
    font-size: 28px;
    display: grid;
    justify-content: center;
    width: 28px;
}

.inner-social-media {
    border: none;
}

.inner-social-media-header a{
    padding: 0 !important;
}

.company-details {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1em;
}

.company-details i {
    color: #fff;
    font-size: 20px;
    padding-top: 8px;
}

.lower-footer {
    grid-column: 2 / 16;
    justify-self: end;
}

.lower-footer p {
    color: #fff;
}

.footer-cog {
    justify-self: start;
    align-self: end;
}

.first-contact-link, .last-contact-link {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
    color: inherit;
}

.inner-lower-footer {
    display: grid;
    border-top: 1px solid #A45C24;
    grid-column: 1 / 17;
}

.inner-lower-footer p {
    grid-column: 2 / 16;
    padding: 1em 0;
    color: #fff;
}



@media only screen and (max-width: 1025px) {
 
    .footer-areas {
        grid-template-columns: 1fr;
        padding: 2em 0;
        gap: 2em;
    }

    .company-details {
        grid-template-columns: 1fr;
        text-align: center;
        margin: 0;
    }

    .lower-footer {
        text-align: center;
    }

    .footer-box h3 {
        justify-content: center;
        display: grid;
        font-size: 30px;
    }

    .footer-box li {
        text-align: center;
        margin: 0;
    }

    .footer-box {
        text-align: center;
    }

    .social-media {
        justify-content: center;
    }

    .inner-lower-footer p {
        text-align: center;
    }
    
}






/* GALLERY */

.masonry-gallery {
    column-count: 4;
    column-gap: 1em;
    grid-column: 2 / 16;
    padding: 2em 0;
}

.masonry-item {
  break-inside: avoid;
  margin-bottom: 1em;
}

.masonry-item img {
  width: 100%;
  display: block;
}

/* Increase overlay opacity */
.glightbox-overlay {
  background: rgba(0,0,0,0.85);
}

/* Caption styling */
.glightbox-desc {
  font-size: 0.9rem;
  color: #eee;
}

/* Responsive tweaks */
@media (max-width: 900px) {
  .masonry-gallery { column-count: 2; }
}
@media (max-width: 600px) {
  .masonry-gallery { column-count: 1; }
}



.gallery-copyright {
    grid-column: 2/16;
    margin: 4em 0;
}

.gallery-copyright h3 {
    color: black;
    margin-bottom: 1em;
}






  /* COMMISSIONS TEXT*/
  .com-text {
    position: relative;
    padding: 5em 0;
  }

  .com-text img {
    position: absolute;
    opacity: 0.15;
    z-index: -1;
    object-fit: cover;
  }

  .inner-com-text{
    display: grid;
    grid-template-columns: 1fr;
    grid-column: 2 / 16;
    gap: 2em;
    text-align: center;
    max-width: 1000px;
    justify-self: center;
  }

  .inner-com-text h2 {
    text-align: center;
  }

  .inner-com-text ul {
    text-align: left;
    justify-self: center;
  }









/* COMMISSIONS OPTIONS */

.inner-coms-options {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 1em;
    grid-column: 2/16;
    margin: 5em 0;
}

.coms-box {
    min-height: 40em;
    align-content: center;
    text-align: center;
    display: grid;
}

.coms-box h2 {
    background-color: #fff;
    justify-self: center;
    margin: 0 3%;
    padding: 0.2em;
    transition: transform 0.3s ease-in-out;
}

.coms-box h2:hover {
    transform: translateY(-10px);
}

@media screen and (max-width: 1280px) {
    .inner-coms-options {
        grid-template-columns: repeat(2,1fr);
    } 

    .coms-box {
        min-height: 30em;
    }
}

@media screen and (max-width: 600px) {
    .inner-coms-options {
        grid-template-columns: 1fr;
    } 

    .coms-box {
        min-height: 20em;
    }
}



/* COMMISSIONS CTA */

.inner-coms-cta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column: 2 / 16;
    gap: 1em;
    padding: 2em 0;
}

.coms-cta-img {
    display: grid;
    align-items: center;
}

.coms-cta-img img {
    /* max-width: 27em; */
    justify-self: center;
    max-height: 800px;
}

.coms-cta-content {
    align-self: center;
    display: grid;
    gap: 1em;
}

.coms-cta-content a {
    justify-self: left;
}

@media screen and (max-width: 860px) {
    .inner-coms-cta {
        grid-template-columns: 1fr;
    }
}






/* SERVICE SUB PAGE */

.inner-services {
    display: grid;
    grid-column: 2 / 16;
    padding: 2em 0;
}

.service-item {
    display: grid;
    grid-template-columns: 1fr 40%;
    align-items: center;
    gap: 2em;
}

.inner-services .service-item:nth-child(odd) {
    grid-template-columns: 1fr 1fr;
    border-bottom: 2px solid #A45C24;
    padding: 2em 0;
}

.inner-services .service-item:nth-child(odd) .services-images {
    order: 1; 
}

.inner-services .service-item:nth-child(odd) .services-content {
    order: 2;
}

.inner-services .service-item:nth-child(even) {
    grid-template-columns: 1fr 1fr;
    border-bottom: 2px solid #A45C24;
    padding: 2em 0;
}

.inner-services .service-item:nth-child(even) .services-images {
    order: 2;
}

.inner-services .service-item:nth-child(even) .services-content {
    order: 1;
    text-align: right;
}

.services-images img {
    max-height: 500px;
    max-width: 100%;
    align-self: center;
    object-fit: contain;
}

.services-content {
    display: grid;
    gap: 1em;
    align-self: center;
}

.services-content a {
    justify-self: start;
}

.inner-services .service-item:last-child {
    border: 0;
}

.contained-image img {
    object-fit: contain;  
}



.full-image img {
    object-fit: cover;

}



@media screen and (max-width: 900px) {

    .service-item {
        grid-template-columns: 1fr !important; 
    }
    
    .services-images {
        order: 2 !important;
    }
    
    .services-content {
        order: 1 !important;
    }

    .services-images img {
        height: 350px;
    }

    .inner-services .service-item:nth-child(even) .services-content {
        text-align: left;
    }
}

@media screen and (max-width: 450px) {
    .services-content a {
        justify-self: center;
        width: 100%; 
    }
}













/* SERVCIES SLIDER*/

.main-services-slider {
    background-color: #EAEDED;
    padding: 5em 0;
}

.main-services-slider h2 {
    grid-column: 2 / 16;
    text-align: center;
}

.services-slider {
    display: grid;
    grid-column: 3 / 15;
    margin: 3em 0 0 0;
}

.inner-services-slider {
    display: grid;
    grid-template-columns: auto 1fr auto;
    grid-column: 3 / 15;
}

.services-slider-arrows {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    align-self: center;
  }

  .services-slider-arrows i {
    color: #A45C24;
    font-size: 2em;
  }
    
  .prev-arrowc {
    margin-right: 10px;
  }
  
  .next-arrowc {
    margin-left: 10px;
  }
  
  .prev-arrowc,  .next-arrowc  {
    font-size: 33px;
    cursor: pointer;
  }

.services-test-slider {
    overflow: hidden;
    position: relative;
    display: flex;
    justify-content: center;
}

.services-test-slider-container {
    display: flex;
    transition: transform 0.5s ease-in-out;
    width: 100%;
}

.servicesslider {
    flex: 0 0 33.333%; 
    text-align: left;
    display: grid;
    gap: 0.5em;
    border-radius: 5px;
    transform: scale(0.9); 
    transition: transform 0.5s; 
    text-align: center;
    min-width: 350px;
}

.image-slider {
    transform: scale(0.96); 
    padding: 1em 0 0.5em 0 !important;
}

.inner-servicesslider {
    max-height: 500px;
}

.servicesslider h3, .servicesslider i {
    color: #D31C1B;
    text-transform: uppercase;
}

.servicesslider p {
    color: #313537;
    margin-bottom: 0;
}

.servicesslider i {
    font-size: 4em;
}

.fa-duotone:before {
    color: #000 !important;
    opacity: 1 !important;
}

.chev-arrows {
    display: grid;
}

.slider-button-line {
    background-color: #EAEDED;
    padding: 0 0 3em 0;
}

div.outer-single-machine-plans{
    display: grid;
}

div.outer-single-machine-plans h2{
    margin: 16px 0;
    text-align: center;
}

img.plans-img{
    height: auto;
    object-fit: initial;
    width: 80%;
    max-width: 450px;
    justify-self: center;
}

.slider-button {
    grid-column: 2/16;
}




  @media only screen and (max-width: 700px) {

    .main-services-slider {
        padding: 3em 0 2em 0;
    }
    
    .services-slider-grid {
        display: flex;
        justify-content: center;
        margin-top: 20px;
      }

    .services-slider-outer {
        display: grid;
        grid-template-columns: 1fr;
        grid-column: 2 / 16;
        padding: 0 .2em;
    }
    
      .inner-services-slider {
        grid-template-columns: auto 1fr auto;
        padding: 0;
    }

    .servicesslider img,  .icon-grid img {
        width: 100%;
      }

    .servicesslider,
    .machine-slider {
        flex: 0 0 100%;
        padding: 0;
        margin: 0;
        min-width: 200px;
      }

    .services-slider {
        grid-template-columns: 1fr;
        grid-column: 2 / 16;
        margin: 0;
    }

    .chev-arrows {
        grid-template-columns: 1fr;
        justify-items: center;
    }

    .services-slider h2 {
        text-align: center;
    }

    .inner-servicesslider {
        align-self: start;
        padding: 1em 0;
      }

      .slider-button-line {
        padding: 0 0 2em 0;
        margin: 0;
    }

    .services-slider-arrows i {
        font-size: 1em;
    }

}












/* ABOUT */

.about-text-image {
    position: relative;
    margin: 3em 0;
}

.inner-about-text-image {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column: 2 / 16;
    gap: 2em;
}

.about-image{
    height: 80vh;
}

.about-text {
    display: grid;
    gap: 1em;
    align-self: center;
}

.about-text a {
    justify-self: start;
}


@media only screen and (max-width: 900px) {
  
    .inner-about-text-image {
        grid-template-columns: 1fr;
    }

    .about-image {
        height: 50vh;
    }

  }






/* CONTACT SECTION */

.contact-me {
    padding: 2em 0;
}

.contact-me .contact-me-p {
    grid-column: 4 / 14; 
    text-align: center;
    display: grid;
    max-width: 800px;
    justify-self: center;
    margin: 3em 0;
}

.inner-contact-me  {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-column: 4 / 14;
    gap: 2em;
    background-color: #7daaa3;
    padding: 3em;
    align-items: start;
}

.contact-me-box {
    display: grid;
    gap: 1em;
}

.contact-me-box h3 {
    color: #fff;
    font-size: 24px;
}

.contact-me-box p, .contact-me-box p a {
    color: #fff;
    font-size: 18px;
}

.outer-contact-form {
    align-self: center;
    grid-column: 4 / 14;
    background: url('/wp-content/uploads/2024/06/background.png');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

form input.wpcf7-form-control.wpcf7-submit {
    display: block;
    margin: 0 auto;
    cursor: pointer;
}

.outer-contact-form form {
    background: #fff;
    padding: 2em 2em 0 2em;
    margin: 4em;
}

.inner-contact-form {
    display: grid;
    grid-template-columns: 1fr 1fr; 
    gap: 20px; 
}

.message-area {
    grid-column: 1 / span 2; 
    margin-top: 20px;
}

.submit-btn {
    text-align: center;
    margin-top: 20px;
}

.outer-contact-form form input[type=text], 
.outer-contact-form form input[type=tel],
.outer-contact-form form input[type=email],
.outer-contact-form form textarea
 {
    width: 100%;
    padding: 1.1em;
    border: none;
    margin-bottom: 1em;
    resize: vertical;
    background: white;
    color: #313537;border: 1px solid #000;
}

.outer-contact-form form input[type=text]::placeholder,
.outer-contact-form form input[type=email]::placeholder,
.outer-contact-form form input[type=tel]::placeholder,
.outer-contact-form form textarea::placeholder {
    font-size: 16px;
    font-weight: 300;
    line-height: 18px;
    letter-spacing: 0.05em;
    text-align: left;
    color:#313537;
}

/* FORM SUBMIT BUTTON */
.outer-contact-form form input[type=submit] {
    font-size: 20px;
    font-weight: 600;
    padding: 1em;
    text-transform: uppercase;
    letter-spacing: 2px;
    background: #BAA87B;
    border: 2px solid #BAA87B;
    color: #fff;
    border-radius: 0;
}

.contact-social {
    display: flex;
    flex-direction: row;
    gap: 1em;
}

.contact-social i {
    color: #fff;
    font-size: 30px;
}




@media only screen and (max-width: 1400px) {
    .contact-me .contact-me-p,  .inner-contact-me, .outer-contact-form  {
        grid-column: 2 / 16; 
    }
}


@media only screen and (max-width: 1000px) {
    .contact-me .contact-me-p,  .inner-contact-me {
        grid-template-columns: 1fr;
    }

    .outer-contact-form form {
        Padding: 1em;
        margin: 2em 1em;
    }

    .inner-contact-me {
        padding: 2em 1em;
        gap: 3em;
        text-align: center;
    }
    
    .inner-contact-form {
        grid-template-columns: 1fr; 
    }

    .contact-me .contact-me-p {
        margin: 1em 0;
    }

    .contact-social {
        justify-content: center;
    }
}






/* === Shop archive two-column layout === */

.post-type-archive-product .content-area,
.tax-product_cat .content-area {
    grid-column: 2 / 16;
}

/* Wrapper */
.shop-archive {
    margin: 3rem 0;
}

/* 2-column layout */
.shop-layout {
    display: grid;
    grid-column: 2/16;
    grid-template-columns: 250px 1fr;
    gap: 2.5rem;
    align-items: flex-start;
}

/* LEFT SIDEBAR */
.shop-sidebar {
    border-right: 1px solid #e2e2e2;
    padding-right: 1.5rem;
}

.shop-sidebar__title {
    font-size: 1.25rem;
    margin: 0 0 1rem;
}

.shop-category-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.shop-category-list__item {
    margin-bottom: 0.5rem;
}

.shop-category-list__item a {
    text-decoration: none;
    color: #333;
    display: inline-block;
    padding: 0.25rem 0;
}

.shop-category-list__item.is-active > a {
    font-weight: 600;
    color: #000;
}

/* RIGHT COLUMN (products) */
.shop-main {
}

/* Responsive: stack on smaller screens */
@media (max-width: 1000px) {
    .shop-layout {
        grid-template-columns: 1fr;
    }

    .shop-sidebar {
        border-right: none;
        border-bottom: 1px solid #e2e2e2;
        padding-right: 0;
        /* padding-bottom: 1.5rem; */
        /* margin-bottom: 1.5rem; */
    }

    .shop-archive {
       margin: 0;
    } 

    .woocommerce ul.products {
        padding: 2em 0;
    }

    .wc-block-checkout__actions .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
        width: 100% !important;
    }
}

#shop-products.is-loading {
    opacity: 0.5;
    pointer-events: none;
}





/* SINGLE PRODUCT PAGE */

.single-product .content-area {
    grid-column: 1/17;
}

.expand-button {
    border: 0;
    padding-top: 1em;
    background-color: transparent;
}

.single-product-section {
    display: grid;
    grid-template-columns: repeat(16,1fr);
}

.single-product {
    display: grid;
    grid-column: 2 / 16;
}

.single-product1 {
    display: grid;
    margin: 2em 0;
}

.related, .reviews_tab, #tab-reviews  {
    display: none !important;
}

.woocommerce-message {
    border-top-color: #395A4C;
}

.woocommerce-message::before {
    color: #395A4C;
}

.product_title {
    color: #000
}

.woocommerce div.product div.images img {
    max-height: 500px;
}

.woocommerce div.product div.summary {
    display: grid;
    gap: 2em;
}

.woocommerce div.product div.images.woocommerce-product-gallery {
    display: grid;
    gap: 1em;
}

.woocommerce div.product div.images .flex-control-thumbs {
    display: flex;
    gap: 1em;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt {
    justify-self: center;
    font-family: tahoma, sans-serif;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    padding: 1em 2em;   
    min-width: 200px;
    text-transform: uppercase;
    background: #A45C24;
    border: 2px solid #A45C24;
    color: #fff;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover {
    background: #A45C24;
}

.sub-header-product {
    height: 5vh;
}

.sub-header-product-tax {
    height: 30vh;
}

.woocommerce-Tabs-panel--description h2,
.product_meta {
    display: none;
}

.woocommerce-Tabs-panel--description div,
.woocommerce-product-details__short-description div {
    font-family: tahoma, sans-serif;
    line-height: 1.5;
}

.woocommerce .quantity .qty,
.woocommerce div.product form.cart div.quantity {
    height: 100%;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    font-family: "Fredericka the Great", serif;
}

.woocommerce-Price-amount {
    font-size: 2em;
}

.woocommerce div.product div.summary {
    margin: 2em 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    font-weight: 500;
}

.woocommerce-cart .wp-block-woocommerce-cart,
.woocommerce-checkout .wp-block-woocommerce-checkout  {
    grid-column: 2/16;
    padding-bottom: 2em;
}

.woocommerce-cart .wp-content-section h1,
.woocommerce-checkout .wp-content-section h1  {
    grid-column: 2 / 16;
    color: #000;
    padding: 2em 0;
}

.wc-block-components-button:not(.is-link) {
    background-color: #A45C24;
    border: 0;
}

.wc-block-components-button__text,
.wc-block-components-checkout-place-order-button span {
    color: #fff;
    font-family: "Fredericka the Great", serif;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    padding: 1em 2em;
    min-width: 200px;
    text-transform: uppercase;
}

.wc-block-components-checkout-place-order-button span {
    padding: 0;
}

.wp-block-woocommerce-checkout-actions-block .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button .wc-block-components-checkout-place-order-button__text {
    display: block;
    color: #fff;
}



/* BREADCRUMBS */

.breadcrumbs-section {
    display: grid;
    grid-column: 1 / 17; 
    background-color: #F2F2F2;
}

.breadcrumbs-inner {
    display: grid;
    grid-column: 2 / 16;
}

.woocommerce .woocommerce-breadcrumb {
    padding: 2em 0 !important;
    grid-column: 2 / 16;
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) .woocommerce-breadcrumb, nav.woocommerce-breadcrumb {
    margin: 0;
}

.woocommerce .woocommerce-breadcrumb a {
    color: #000;
    font-size: 16px;
    font-weight: 400;
    grid-column: 2 / 16;
    text-transform: uppercase;
}

.woocommerce .woocommerce-breadcrumb:last-child{
    color: #A45C24;
    font-size: 16px;
    font-weight: 400;
    text-transform: uppercase;
}

nav.woocommerce-breadcrumb {
    background: transparent;
    display: block;
    padding-bottom: 0.5em !important;

}

/* Style the last breadcrumb element */
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) .woocommerce-breadcrumb, nav.woocommerce-breadcrumb {
    color: #A45C24; 
    text-transform: uppercase;
}

.woocommerce-result-count {
    display: none;
}

.woocommerce .woocommerce-ordering {
    grid-column: 2 / 16;
    margin: 0;
}



@media only screen and (max-width: 800px) { 

    .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt {
        padding: .618em 1em;
        min-width: auto;
    }
    
    
    .woocommerce div.product div.images.woocommerce-product-gallery {
        gap: 0.5em;
    }

    .woocommerce div.product div.images .flex-control-thumbs {
        gap: 0.5em;
    }

    .woocommerce-message {
        display: grid;
        gap: 1em;
    }

    .woocommerce-message a {
        justify-self: left;
    }

    .post-type-archive-product .content-area .popluar-box h4 {
        font-size: 22px;
    }

}



/* 404 PAGE */

section.error{
    min-height: 60vh;
    align-content: center;
    grid-column: 2 / 16;
}

section.error h1{
    color: #313537;
    text-align: center;
    grid-column: 2 / 16;
}

section.error p{
    text-align: center;
    grid-column: 2 / 16;
}






 .wp-content-section .woocommerce {
    grid-column: 2/16;
 }

  .woocommerce-order-details .woocommerce-order-details__title,
  .woocommerce-column__title,
  .woocommerce-table.woocommerce-table--order-details.shop_table.order_details,
  .woocommerce-customer-details address {
    grid-column: 1/17;
 }



 .sub-header-order-received {
    min-height: 20vh;
 }




 .woocommerce ul.products li.product .button {
    justify-self: center;
    font-family: tahoma, sans-serif;
    font-size: 18px;
    font-weight: 500;
    text-align: center;
    padding: 1em;
    text-transform: uppercase;
    background-image: url(/wp-content/uploads/2025/11/background.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border: none;
    color: #fff;
}



.wpcf7 form.sent .wpcf7-response-output {
    border-color: #BAA87B;
    text-align: center;
}

.inner-wp-content {
    display: grid;
    grid-column: 2 / 16;
    gap: 2em;
    padding: 2em 0;
}

.inner-wp-content h1 {
    color: #000;
    font-size: 60px;
    text-align: center;
}