@font-face {
    font-family: 'the secret things';
    src: url('../fonts/TheSecretThings.eot');
    src: url('../fonts/TheSecretThings.eot?#iefix') format('embedded-opentype'),
        url('../fonts/TheSecretThings.woff2') format('woff2'),
        url('../fonts/TheSecretThings.woff') format('woff'),
        url('../fonts/TheSecretThings.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Adobe Clean';
    src: url('../fonts/AdobeClean-Bold.eot');
    src: url('../fonts/AdobeClean-Bold.eot?#iefix') format('embedded-opentype'),
        url('../fonts/AdobeClean-Bold.woff2') format('woff2'),
        url('../fonts/AdobeClean-Bold.woff') format('woff'),
        url('../fonts/AdobeClean-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Adobe Clean';
    src: url('../fonts/AdobeClean-Regular.eot');
    src: url('../fonts/AdobeClean-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/AdobeClean-Regular.woff2') format('woff2'),
        url('../fonts/AdobeClean-Regular.woff') format('woff'),
        url('../fonts/AdobeClean-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

* {font-family: "futura-pt";}
h1, h2, h3, h4, h5, h6 {font-family: "Adobe Clean" !important;}
.handwritten, .handwritten * {font-family: "the secret things" !important; letter-spacing: -0.09em;}

html, body {width:100vw;overflow-x: hidden;}
.btn {white-space: nowrap;display:flex}
.btn:last-of-type{margin-right:0;}

/* header */ 
.footer-nav-container a {color:#fff; line-height: 1.6em;}
.mob-nav-toggle {width:35px;height:20px;margin-right: 0px; margin-left: 0px; display:flex;flex-direction: column;justify-content: space-between;padding:0;transform-origin: 0% 0%;position: relative;}
.mob-nav-toggle span {border-radius:2px; display:flex;width: 100%;height: 3px;background: #000;transition: all 0.2s linear;position: absolute; left:0%;top:50%; transform: rotate(0deg) translate(0%, -50%);transform-origin: 0% 0%;}
.mob-nav-toggle span:first-of-type{top:0;transform: rotate(0deg) translate(0%, 0%);width:90%}
.mob-nav-toggle span:nth-of-type(even){transform: rotate(0deg) translate(0%, -50%);}
.mob-nav-toggle span:last-of-type{top:auto;bottom:0px; width:66%;transform: rotate(0deg) translate(0%, 0%);}

.mob-nav-toggle:hover span {background: #fff;}
.mob-nav-toggle:hover span:first-of-type{width:100%}
.mob-nav-toggle:hover span:nth-of-type(even){width:33%; left:67%;}
.mob-nav-toggle:hover span:last-of-type{width:100%;}

.mob-nav-toggle.on span { transition: all 0.2s linear;transform: rotate(45deg) translateX(-50%); top: 50%;left: 50%;}
.mob-nav-toggle.on span:last-of-type {transform: rotate(135deg) translateX(-50%);}
.mob-nav {display: flex;}
.mob-nav-container {opacity: 0;transition: top 0.5s ease-in-out, opacity 0.5s linear ;display: flex;position: fixed;background: rgba(255,255,255,0.95);top:-100vh;left: 0;width: 100vw;height: 100vh;pointer-events: none;overflow: hidden;z-index: 999;justify-content: center;align-items: center; flex-direction: column;padding:0;box-shadow: 0 0 100px rgba(0,0,0,1);}
.mob-nav-scroll {z-index:0;display:flex; width:100%; height:100vh; position: relative;overflow: scroll;pointer-events: all;justify-content: center; flex-wrap: wrap;}
.mob-nav-container > .mob-nav-toggle {display:block; pointer-events:all; position:absolute; top: 25px;right: 25px;background: #fff; box-shadow: 0 0 25px rgb(0 0 0 / 16%);z-index: 10;}
.mob-nav-scroll > .header-nav {flex-direction: column; margin: 0;width:80%;height:auto; margin:auto; text-align:center;list-style:none;}
.mob-nav-container.on {top:0;opacity: 1;}
.mob-nav-container .mob-nav-toggle {transition: all 0.2s ease-in-out 0.8s; opacity: 0;left:45px;position: absolute;top:31px;box-shadow: none;}
.mob-nav-container.on .mob-nav-toggle.on {transition: all 0.2s ease-in-out 0.8s; opacity: 1;}

.mob-nav-container.on .mob-nav-toggle.on span {width:35px; transform:rotate(45deg) translate(-50%, -50%)}
.mob-nav-container.on .mob-nav-toggle.on span:nth-of-type(3){transform:rotate(-45deg) translate(-50%, -50%)}
.mob-nav-container.on .mob-nav-toggle.on:hover span {opacity: 0.5;background:#000}
.mob-nav-container.on .mob-nav-toggle.on span:nth-of-type(2),
.mob-nav-container.on .mob-nav-toggle.on:hover span:nth-of-type(2) {opacity: 0;}
.mob-nav-scroll .header-nav {padding:50px 0}
.mob-nav-container .header-menu-item {flex-direction: column;display:flex;}
.mob-nav-container .header-menu-item ul {display: block; position: relative;left: 0;top: 0;opacity: 1;transform: translate(0,0);box-shadow: none;background: none;padding: 0; margin: 0;width: auto;pointer-events:all; padding: 25px 0;border-top: 1px solid #231F20;border-bottom: 1px solid #231F20;}
.mob-nav-container .header-menu-item ul::after {display: none;}
.mob-nav-container .header-menu-item ul li {padding:0; width:100%}
.mob-nav-scroll > .header-nav .header-menu-item ul li a {padding:15px; line-height:1em;}
.mob-nav-scroll > .header-nav .header-menu-item ul li a:hover {text-decoration:underline}
.mob-nav-scroll > .header-nav .header-menu-item a {line-height: 1em;font-size:35px;padding:25px 0}
.mob-nav-scroll > .header-nav .header-menu-item a:hover {text-decoration: underline;}
.footer-nav-container > a {flex-grow: unset;margin: 0 15px;}
.footer-nav-container > a:hover {text-decoration: underline;}
.footer-bottom-content > .footer-nav-container > a {margin: 0 10px; font-size: 12px;}
.footer-bottom-content > .footer-nav-container > a:hover {text-decoration: underline;}

.mob-nav-container:before {
    content:"";
    display:block;
    position: absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background-image: url(/wp-content/uploads/2023/06/Knapton-Wright-Text-Logo-Black.svg);
    background-repeat: no-repeat;
    background-position: 50% 20px;
    background-size: 100px;
    opacity: 1;
}
@media(max-width:1440px){
    .header-menu-item a {font-size: 1.5vw;}
    .mob-nav-scroll > .header-nav .header-menu-item:last-of-type{margin-right:0px;width: auto;justify-content: center;}
    .mob-nav-scroll > .header-nav .header-menu-item a {font-size: 2.2vw;padding: 15px 0;}
}
@media(max-width:1300px) {
    .mob-nav-scroll > .header-nav .header-menu-item a {font-size: 2.5vw;padding: 15px 0;}
}
@media(max-width:1200px) {
    .header-nav {display:none;}
    .mob-nav, .mob-nav-container .header-nav {display:flex}
    .mob-nav-scroll > .header-nav .header-menu-item a {font-size: 3vw;padding: 25px;}
    a.header-logo {width:120px; height:150px}
    nav.header-nav-container {padding-left:135px}
}
@media(max-width:992px){
    .header-row .header-contact-group a {font-size: 2vw;}
    .footer-nav-container a {font-size: 16px;}
}
@media(max-width:768px){
    .mob-nav .header-btn {display:none;}
    .header-row .header-contact-group a {font-size: 2.2vw;}
    .mob-nav-scroll > .header-nav .header-menu-item a {font-size: 25px;line-height: 1.2em;}
    .footer-nav-container a {margin:0 10px; line-height: 1.6em; flex-grow: unset;}
}
@media(max-width:480px){
    a.header-logo {width:80px; height:100px}
}
@media(max-width:300px){
    .mob-nav-scroll > .header-nav .header-menu-item a {font-size: 6vw;line-height: 0;padding:6vw;}
    .mob-nav-container .header-menu-item ul {padding:2vw}
}
/* /header */

/* footer */
footer {z-index: 10}
footer > div > div {padding-top:0 !important}



/* /blocks */

/* forms */
.wpcf7 .form-request-container {display:flex;flex-direction: column;}
.wpcf7 .form-request-container input:focus-visible, .wpcf7 .form-request-container textarea:focus-visible {outline: 5px solid #2fab66;}
.wpcf7, .wpcf7-form {display: flex;flex-direction: column; width:100%;line-height: 1em;}
.wpcf7-form-control-wrap{flex-grow:1;display: flex;flex-direction: column;}
.off-screen, .screen-reader-response {width:0;height:0;position: absolute;overflow: hidden;top:-99999px;left:-99999px;}
.screen-reader-response, .screen-reader-response p, .screen-reader-response ul {line-height: 1em;padding: 0; margin: 0;}
.input-line {width:100%; display:flex; flex-direction: row;padding-bottom: 20px;justify-content: flex-start;}
.wpcf7-form > .input-line:last-of-type {padding-bottom: 0px;}
.input-box {position:relative; display: flex; flex-direction: column;padding:0 5px;width:100%}
.input-line > .input-box:first-of-type:not(.checkbox-list-container) {padding-left: 0;}
.input-line > .input-box:last-of-type:not(.checkbox-list-container) {padding-right: 0;}
.input-line label {font-size:12px;position:relative; display:flex; flex-direction: column;}
.wpcf7 .label {display:none;position:absolute; padding: 5px 10px;position: absolute; background: #fff;border-radius: 0px; line-height: 1em;transform: translate(10px, -50%); border: 1px solid #f7f7f7;}
.input-box input {height: 70px;}
.input-box input, .input-box textarea {color:#106269;background:#fff;padding:35px 50px; height:0;font-size:25px;border:1px solid #000; width:100%;display:flex;font-family: 'futura-pt';box-shadow: 10px 10px 0 rgba(0,0,0,0.25);}
.input-box input[type='checkbox'] {width:36px; height:36px;}

.input-box textarea {flex-grow: 1;height: 200px; resize: none;}
input::placeholder, textarea::placeholder {color:#106269;font-weight: 100;font-size: 25px;}
.wpcf7-not-valid-tip, .wpcf7-form.invalid .wpcf7-response-output, .wpcf7-form.sent .wpcf7-response-output {color: rgb(0, 122, 138);background: rgba(0, 122, 138, 0.1);border-radius: 0px;padding: 25px 25px;border: 0.5px solid rgb(0, 122, 138); width: 100%;transition: all 0.2s ease-in;}
.wpcf7-form.invalid .wpcf7-response-output, input.wpcf7-not-valid, .wpcf7-not-valid-tip {color: #ff7777;background: #ffe7e7dc;border: 0.5px solid #ff7777}
.wpcf7-form.sent .wpcf7-response-output {color: #00b992;background: #defff8;border: 0.5px solid #00b992}
form.wpcf7-form .input-line:last-of-type {padding-bottom: 0 !important; justify-content: flex-end;}
.wpcf7-response-output {margin-top:0px;}
.wpcf7-form.invalid .wpcf7-response-output {margin-top:10px;}
.wpcf7-not-valid-tip {padding: 10px 15px;width: auto;min-width: 0; margin: 5px 0 0 0;background: rgba(255,255,255,25.85);box-shadow: 10px 10px 0 rgba(0,0,0,0.25);line-height: 1.2m;position: relative;}
.wpcf7-not-valid-tip:after {bottom: 100%;left: 55px;border: solid transparent;content: "";height: 0;width: 0;position: absolute;pointer-events: none;border-color: rgba(255, 255, 255, 0);border-bottom-color: #ffffff; border-width: 10px;margin-left: -10px}

.wpcf7-form-control.wpcf7-checkbox {display: flex; width: 100%; flex-direction: row; flex-wrap: wrap;gap:10px;}

.wpcf7-list-item{display: flex;flex-direction: row-reverse; align-content: center;flex-wrap: wrap; justify-content: flex-end; gap: 10px; width:calc((100% - 20px) / 3);}
.input-box.checkbox-list-container, .input-box.checkbox .wpcf7-checkbox {background: #f7f7f7; padding: 35px;}
.input-box.checkbox .wpcf7-checkbox {width:100%;}
.input-box.checkbox .wpcf7-checkbox .wpcf7-list-item {flex-direction: row;justify-content: flex-start; width:100%;}
.input-box .checkbox-title {position:relative;margin-bottom:15px;text-align: left;}
.wpcf7-list-item .wpcf7-list-item-label {position: relative; line-height: 1.2em;display: flex;flex-flow: column;flex-wrap: wrap;align-content: flex-start; align-items: flex-start; justify-content: center;color: #777;font-size: 1.4vw;}

@media(max-width:1400px) {
    .wpcf7-list-item {width:calc((100% - 10px) / 2);}
    .wpcf7-list-item .wpcf7-list-item-label {font-size: 15px;}
}



/* /forms */

/* /responsive column count */

/* animations */

.spin {
    animation: rotation-centred 30s infinite linear;
}
.spin-slow {
    animation: rotation 60s infinite linear;
}
.spin-centre {
    animation: rotation-centred 30s infinite linear;
}
.spin-centre-counter {
    animation: rotation-centred-counter 120s infinite linear;
}
.spin-centre-slow {
    animation: rotation-centred 320s infinite linear;
}
#hero-bg, .fade-in-up-bg {
    opacity: 0;
    transform: translate(-50%, -50%) scale(1);
    transition: opacity 2s, transform 15s;
}
#hero-bg.loaded, .fade-in-up-bg.loaded {
    opacity: 1;
    transform: translate(-50%, -52.5%) scale(1.1);
}


@keyframes hero-intro-animation {
    0% { opacity: 0;}
    50% {opacity: 1;}
    100% {opacity: 1;}
}

@keyframes rotation {
    from {
      transform: rotate(0deg);
    }
    to {
      transform: rotate(359deg);
    }
}
@keyframes custom-animation-1 {
    from {
      transform: rotate(0deg);
    }
    to {
      transform: rotate(359deg);
    }
}
@keyframes rotation-centred {
    from {
      transform: rotate(0deg) translate(-50%, -50%);
      transform-origin: 0 0;
    }
    to {
      transform: rotate(359deg) translate(-50%, -50%);
      transform-origin: 0 0;
    }
}
@keyframes rotation-centred-counter {
    from {
      transform: rotate(0deg) translate(-50%, -50%);
      transform-origin: 0 0;
    }
    to {
      transform: rotate(-359deg) translate(-50%, -50%);
      transform-origin: 0 0;
    }
}

.giant-text::after {display: none;}
[data-aos^=zoom][data-aos^=zoom].aos-init > .giant-text{
    transition: all 5s ease-in-out;
    filter: blur(25px);
}
[data-aos^=zoom][data-aos^=zoom].aos-init.aos-animate > .giant-text{
    transition: all 5s ease-in-out;
    filter: blur(0px);
}
/* /custom overrides */

/* Formatting Improvements */

