/*
Theme Name: LD Block Theme
Author: Lawrence Davis
Author URI: https://lawrencedavis.co.uk
Requires at least: 6.1
Tested up to: 6.3
Requires PHP: 5.6
Version: 0.1
Text Domain: ld_block_theme
*/


/* LAYOUT */

main {
margin-block-start: 0;
margin-block-end: 0;
}
.entry-content.wp-block-post-content {
margin-block-start: 0;
}
.wp-site-blocks {
padding-top: 0;
padding-bottom: 0;
}
.has-global-padding > .alignfull {
margin-right: 0 !important;
margin-left: 0 !important;
}
.has-global-padding > .alignfull > .has-global-padding, .has-global-padding, .wp-block-group.fixed-after {
padding-right: 0;
padding-left: 0;
}


/* COLOR REF */

.has-base-color path,
.has-base-color rect {
fill: var(--wp--preset--color--base);
}
.has-cool-grey10-color path,
.has-cool-grey10-color rect {
fill: var(--wp--preset--color--cool-grey-10);
}
.has-red-color path,
.has-red-color rect {
fill: var(--wp--preset--color--red);
}
.has-corporate-green-color path,
.has-corporate-green-color rect {
fill: var(--wp--preset--color--corporate-green);
}
.has-alumni-brown-color path,
.has-alumni-brown-color rect {
fill: var(--wp--preset--color--alumni-brown);
}


/* GENERAL */

html {
overflow-x: clip;
}
body {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
a {
-webkit-transition: all .8s ease;
transition: all .8s ease;
}
strong, b {
font-weight: 700;
}
.relative {
position: relative;
}
.absolute {
position: absolute;
}
.multiply {
mix-blend-mode: multiply;
}
.wp-block-separator {
border-top-width: 2px;
}
.overflow-hidden {
overflow: hidden;
}
.overflow-visible {
overflow: visible;
}
.large-shadow {
box-shadow: 0px 0px 50px 0px rgba(0,0,0,.15);
}
.text-shadow {
text-shadow: 0px 0px 10px rgba(0,0,0,.5);
}
.background-lines {
background: repeating-linear-gradient(-35deg, transparent, transparent 3px, rgba(255,255,255,0.07) 3px, rgba(255,255,255,0.07) 5px);
}


/* QUOTE */

blockquote {
position: relative;
margin: 0;
}
blockquote.wp-block-quote::before,
blockquote.wp-block-quote:after {
display: inline-block;
line-height: 1;
font-family: serif;
font-weight: 700;
color: currentcolor;
}
blockquote.wp-block-quote::before {
content: open-quote;
position: relative;
font-size: 100px;
top: 30px;
height: 40px;
margin-top: -30px;
opacity: 0.5;
}
blockquote.wp-block-quote:after {
content: close-quote;
font-size: 10rem;
height: 80px;
right: 0;
bottom: -10px;
position: absolute;
opacity: 0.15;
}


/* HEADER */

header, #site-header {
width: 100%;
}
#site-header {
z-index: 999;
position: relative;
}
#site-header:not(.absolute) {
background-color: rgba(255,255,255,1);
}
/*
#site-header.absolute {
position: absolute !important;
}
*/
body.home header {
position: absolute !important;
}
nav.main-nav.wp-block-navigation {
background-color: var(--wp--preset--color--cool-grey-10);
padding: 5px 10px;
}
body.home nav.main-nav.wp-block-navigation {
background-color: var(--wp--preset--color--corporate-green);
}
.main-nav.wp-block-navigation .wp-block-navigation__responsive-container-open svg {
transform: scaleX(1.8) scaleY(1.1);
pointer-events: all;
}
.horizontal.wp-block-navigation .wp-block-navigation-item__content::before {
content: "";
background-color: currentColor;
display: block;
height: 1px;
width: 0;
left: 50%;
bottom: -3px;
position: absolute;
transform: translateX(-50%);
transition: .8s ease;
}
.horizontal.wp-block-navigation .wp-block-navigation-item__content:hover::before {
width: 100%;
}


/* STICKY HEADER */

header > .sticky-element-active + #site-header {
background-color: #fffffff2;
transition: all 0.5s;
}
body.home header > .sticky-element-active + #site-header {
background-color: #474c55f2;
position: fixed !important;
}


/* LOGO */

#header-logo .icon-container {
max-width: clamp(150px, calc(9.375rem + ((1vw - 3.2px) * 9.375)), 300px);
}
body:not(.home) #header-logo .icon-container #frame-chevron, body:not(.home) #header-logo .icon-container #red {
fill: var(--wp--preset--color--red);
}


/* NAVIGATION */

.main-nav button.wp-block-navigation__responsive-container-close {
background-color: var(--wp--preset--color--base);
padding: 5px;
border-radius: 50%;
}
.main-nav button.wp-block-navigation__responsive-container-close:hover {
-webkit-transform: rotate(-90deg) scale(1.15);
-moz-transform: rotate(-90deg) scale(1.15);
transform: rotate(-90deg) scale(1.15);
}
.main-nav button.wp-block-navigation__responsive-container-close svg {
-webkit-transform: scale(1.2);
transform: scale(1.2);
}
.main-nav button.wp-block-navigation__responsive-container-close path {
fill: var(--wp--preset--color--corporate-green);
}
.main-nav .wp-block-navigation__responsive-close {
width: 100%;
height: 100%;
}
.main-nav.wp-block-navigation .wp-block-navigation__responsive-container {
overflow-x: hidden;
background-color: var(--wp--preset--color--corporate-green) !important;
padding: var(--wp--preset--spacing--40);
box-sizing: border-box;
-webkit-backdrop-filter: blur(10px);
backdrop-filter: blur(10px);
}
.main-nav.wp-block-navigation .wp-block-navigation__responsive-container::before {
content:"";
display: block;
width: 110%;
height: 110%;
background-image: url('/wp-content/uploads/WGS-emblem03.svg');
background-repeat: no-repeat;
background-size: cover;
position: absolute;
top: 0;
right: -5%;
transform: rotate(14deg);
margin: 0 auto;
opacity: 0.2;
mix-blend-mode: multiply;
}
.wp-block-navigation__responsive-dialog {
align-content: center;
align-items: center;
justify-content: center;
display: flex;
height: 100%;
width: 100%;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
align-items: flex-start;
justify-content: flex-start;
padding-top: 0;
align-content: center;
width: 100%;
max-width: clamp(350px, calc(21.875rem + ((1vw - 3.2px) * 15.625)), 600px);
}
.main-nav.wp-block-navigation__container {
max-width: 100%;
}
.main-nav.wp-block-navigation__container li.wp-block-navigation-item {
width: 100%;
max-width: 100%;
text-align: left;
}
.main-nav.wp-block-navigation__container li.wp-block-navigation-item .wp-block-navigation-item__content {
width: 100%;
}
.main-nav.wp-block-navigation__container > li.wp-block-navigation-item > .wp-block-navigation-item__content {
font-family: var(--wp--preset--font-family--martel);
font-size: var(--wp--preset--font-size--medium);
}
.main-nav.wp-block-navigation__container li.wp-block-navigation-item .wp-block-navigation-item__content:hover,
.main-nav.wp-block-navigation__container li.wp-block-navigation-item.current-menu-item > a,
.main-nav.wp-block-navigation__container li.wp-block-navigation-item.current-menu-item > button > span,
.main-nav.wp-block-navigation__container li.wp-block-navigation-item.current-menu-ancestor > button > span {
color: var(--wp--preset--color--cool-grey-3);
background: transparent;
}
.main-nav .wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open {
background: transparent;
}

/* sub-nav */
.main-nav.wp-block-navigation .wp-block-navigation__submenu-icon {
margin-block-start: 0;
}
.main-nav .wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle + .wp-block-navigation__submenu-icon
{
display: block;
margin: 0 0.3em;
position: absolute;
right: 0;
top: 15px;
height: 0.8em;
width: 0.8em;
transition: all 0.2s ease-in-out;
}
.main-nav .wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle + .wp-block-navigation__submenu-icon path {
fill: none;
}
.main-nav .wp-block-navigation__responsive-container-open:not(.always-shown) {
display: flex !important;
}
.main-nav ul.wp-block-navigation__submenu-container {
-webkit-transition: all 0.3s linear;
transition: all 0.3s linear;
max-width: 100%;
width: 100%;
padding: 0;
}
.main-nav .wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded="false"] ~ ul.wp-block-navigation__submenu-container {
position: absolute;
visibility: hidden;
opacity: 0;
height: 0;
width: 100%;
display: none;
}
.main-nav .wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ ul.wp-block-navigation__submenu-container {
display: block;
opacity: 1;
overflow: visible;
visibility: visible;
width: 100%;
height: auto;
padding-right: 0;
}
.main-nav ul.wp-block-navigation__submenu-container > li > a {
padding: 0 0 0.6em;
}

@media screen and (min-width: 782px) {
.main-nav.wp-block-navigation__container,
.main-nav.wp-block-navigation__container .wp-block-navigation__submenu-container {
max-width: 100%;
min-width: 50%;
width: 50%;
gap: 1.5rem !important;
}
.main-nav .wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ ul.wp-block-navigation__submenu-container {
padding-left: 2em;
}
.main-nav.wp-block-navigation__container li.wp-block-navigation-item
{
flex-direction: row;
}
.main-nav .wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle[aria-expanded="true"] {
padding-left: 1.5em;
}
.main-nav .wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle[aria-expanded="true"] span {
color: var(--wp--preset--color--cool-grey-3);
border-bottom: 1px solid var(--wp--preset--color--cool-grey-3);
}
.main-nav .wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle {
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.main-nav .wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle + .wp-block-navigation__submenu-icon
{
top: 50%;
right: 25%;
-webkit-transform: translateY(-60%) rotate(-90deg);
transform: translateY(-60%) rotate(-90deg);
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.main-nav .wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle[aria-expanded="true"] + .wp-block-navigation__submenu-icon::after {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
.main-nav.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ ul.wp-block-navigation__submenu-container {
top: 0;
position: absolute;
left: 100%;
padding-top: 0;
}
}

@media screen and (min-width: 1201px) {
.main-nav.wp-block-navigation .wp-block-navigation__responsive-container {
right: 0;
top: 0;
margin-left: auto;
max-width: 50vw;
}
}

@media screen and (max-width: 1200px) {
.main-nav.wp-block-navigation .wp-block-navigation__responsive-container {
right: 0;
top: 0;
}
}

@media screen and (max-width:781px) {
.main-nav.wp-block-navigation .wp-block-navigation__responsive-container::before {
max-width: 600px;
right: unset;
left: -5%;
background-position: right center;
}
.main-nav.wp-block-navigation .wp-block-navigation__responsive-dialog {
align-content: flex-start;
align-items: flex-start;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
padding-top: 3.5rem;
}
.main-nav.wp-block-navigation ul.wp-block-navigation__container {
margin: 0 auto;
width: 100%;
gap: 0 !important;
overflow-y: scroll;
}
.main-nav .wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ ul.wp-block-navigation__submenu-container {
padding: 10px 0;
}
.main-nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content {
padding: 0.5em 0;
width: 100%;
}
.main-nav.wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content > .wp-block-navigation-item__content {
border-bottom: 2px solid var(--wp--preset--color--light-grey);
}
.main-nav .wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle + .wp-block-navigation__submenu-icon
{
top: 10px;
}
}


/* SUB MENU */

.sub-nav {
border-bottom: 2px solid var(--wp--preset--color--light-grey);
overflow: hidden;
}
.sub-nav ul.wp-block-navigation__container {
max-width: 100vw;
overflow: scroll hidden;
flex-wrap: nowrap;
white-space: nowrap;
scroll-behavior: smooth;
scrollbar-width: none;
}
.sub-nav .wp-block-navigation__container a {
padding-top: 1.2em;
padding-bottom: 1.2em;
}
.sub-nav .wp-block-navigation__container a span {
position: relative;
z-index: 1;
}
.sub-nav .wp-block-navigation__container a::after {
content:"";
display: block;
width: 100%;
height: 5px;
bottom: 0;
left: 0;
position: absolute;
background-color: transparent;
}
.sub-nav .wp-block-navigation__container a:hover {
color: var(--wp--preset--color--red);
}
/*
.sub-nav .wp-block-navigation__container li.current-menu-item {
order: -1;
}
*/
.sub-nav .wp-block-navigation__container a[aria-current="page"]::after {
background-color: var(--wp--preset--color--light-grey);
}


/* FORM */

.wpcf7-form .input-group {
margin-block-end: 1rem;
}
.wpcf7-form hr {
border: 0;
border-bottom: 2px solid rgba(0,0,0,0.05);
margin: 1.5rem 0;
}
.wpcf7-form h3 {
font-weight: 700;
border-bottom: 2px solid rgba(0,0,0,0.05);
}
.wpcf7-form p {
font-size: var(--wp--preset--font-size--x-small);
font-weight: 400;
margin-block-start: 0;
margin-block-end: 0.3rem;
}
.wpcf7-form a {
font-weight: 700;
}
.wpcf7-form label {
font-family: var(--wp--preset--font-family--martel);
font-weight: 700;
text-align: left;
line-height: 1.3;
}
.wpcf7-list-item-label {
font-weight: 400;
font-family: var(--wp--preset--font-family--roboto);
}
.req-symbol {
font-weight: 400;
color: var(--wp--preset--color--red);
}
.wpcf7-spinner {
display: block !important;
margin: 5px auto 0 !important;
}
select, textarea, input[type="text"], input[type="email"], input[type="number"], input[type="tel"], input[type="date"] {
width: 100%;
max-width: 100%;
}
select, textarea, input[type="text"], input[type="email"], input[type="number"], input[type="tel"], input[type="date"], input[type="search"] {
font-family: var(--wp--preset--font-family--roboto);
font-size: var(--wp--preset--font-size--small);
color: var(--wp--preset--color--cool-grey-10);
border: 1px solid var(--wp--preset--color--cool-grey-3);
border-radius: 0;
padding: 0.7em;
margin-top: 5px;
background-color: var(--wp--preset--color--base);
box-sizing: border-box;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
input[type="search"] {
background: var(--wp--preset--color--base);
}
.wpcf7 input[type="file"] {
padding: 1em 0;
}
textarea:focus, input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus, input[type="number"]:focus,  input[type="date"]:focus, input[type="search"]:focus {
border-color: var(--wp--preset--color--cool-grey-6);
}
textarea:focus-visible, input[type="text"]:focus-visible,
input[type="email"]:focus-visible, input[type="tel"]:focus-visible, input[type="number"]:focus-visible, input[type="date"]:focus-visible,
button:focus-visible, input[type="search"]:focus-visible {
outline: transparent;
}
input[type="reset"], input[type="submit"], button {
font-family: var(--wp--preset--font-family--roboto);
font-size: var(--wp--preset--font-size--x-small);
line-height: 1;
background: var(--wp--preset--color--red);
color: var(--wp--preset--color--base);
border: 0;
border-radius: 0;
padding: calc(1.2em + 1px) calc(2em + 1px);
text-transform: uppercase;
width: auto;
display: block;
box-sizing: border-box;
-webkit-appearance: none !important;
appearance: none;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
input[type="reset"]:hover, input[type="submit"]:hover, button:hover {
background: var(--wp--preset--color--contrast);
color: var(--wp--preset--color--base);
border-radius: 0 15px 0 15px;
}
textarea {
min-height: 1em;
}
.wpcf7-form-control::-moz-placeholder,
.wpcf7-form-control::-ms-input-placeholder,
.wpcf7-form-control::-webkit-input-placeholder  {
color: var(--wp--preset--color--cool-grey-6);
opacity: 1;
}
.wpcf7-form-control.wpcf7-radio,
.wpcf7-form-control.wpcf7-checkbox {
height: 45px;
align-items: center;
display: flex;
margin: 5px 0 0;
}
.wpcf7-form-control.wpcf7-checkbox.block {
flex-direction: column;
align-items: flex-start;
}
.wpcf7-acceptance .wpcf7-list-item {
width: 100%;
margin-left: 0 !important;
}
.wpcf7-acceptance .wpcf7-list-item-label a {
font-weight: 700;
}
.wpcf7-form .wpcf7-not-valid-tip {
font-size: 0.9em;
font-style: oblique;
color: var(--wp--preset--color--red);
text-transform: initial;
margin-top: 0.3em;
font-weight: 700;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output, .wpcf7 form.sent .wpcf7-response-output {
border: none;
border-top: 1px solid var(--wp--preset--color--cool-grey-6) !important;
color: var(--wp--preset--color--red);
font-size: 0.9em;
font-weight: 700;
margin: 1em 0;
padding: 1em 0;
font-style: oblique;
text-align: center;
}


/* SEARCH */

.wp-block-search.wp-block-search__button-only.wp-block-search__searchfield-hidden .wp-block-search__input {
flex-basis: auto;
}
#site-header .wp-block-search .wp-block-search__button {
padding: calc(0.2em + 1px) calc(0.5em + 1px);
height: 40px;
margin-left: 0;
border-radius: 0;
background: transparent;
color: var(--wp--preset--color--blue);
}
#site-header .wp-block-search__button svg {
height: auto;
}
#site-header .wp-block-search__input {
height: 40px;
padding: 0.5em;
margin-top: 0;
}


/* BUTTONS */

.wp-block-buttons .wp-block-button__link.wp-element-button {
padding: calc(1em + 1px) calc(2.2em + 1px);
}
.wp-block-buttons .wp-block-button__link.wp-element-button:hover {
border-radius: 0 15px 0 15px;
}
.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link.wp-element-button {
border-width: 1px;
}
.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link.wp-element-button:hover {
color: var(--wp--preset--color--base);
background-color: var(--wp--preset--color--contrast);
border-color: var(--wp--preset--color--contrast);
}
.wp-block-buttons .wp-block-button.is-style-outline .has-base-color.wp-block-button__link.wp-element-button:hover {
color: var(--wp--preset--color--cool-grey-10) !important;
background-color: var(--wp--preset--color--base);
}


/* SLIDER */

.superblockslider__slide_inner {
padding: 0 var(--wp--preset--spacing--30);
}


/* CAROUSEL */

.cb-carousel-block.bottom-arrows {
padding-bottom: 3.5em;
}
.cb-carousel-block .cb-button-next, 
.cb-carousel-block .cb-button-prev {
border: 1px solid transparent;
background-color: var(--wp--preset--color--base);
border-radius: 50% !important;
width: 40px;
height: 40px;
box-shadow: 0 0 30px 0 rgba(0,0,0,.15);
transform: none;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.cb-carousel-block.bottom-arrows .cb-button-next, 
.cb-carousel-block.bottom-arrows .cb-button-prev {
border-color: var(--wp--preset--color--cool-grey-10);
background: transparent;
top: auto;
bottom: 0;
box-shadow: unset;
}
.dark-bg .cb-carousel-block.bottom-arrows .cb-button-next, 
.dark-bg .cb-carousel-block.bottom-arrows .cb-button-prev {
border-color: var(--wp--preset--color--base);
}
.cb-carousel-block.bottom-arrows .cb-button-prev {
left: 50%;
-webkit-transform: translateX(-120%);
transform: translateX(-120%);
}
.cb-carousel-block.bottom-arrows .cb-button-next {
right: 50%;
-webkit-transform: translateX(120%);
transform: translateX(120%);
}
.cb-carousel-block .cb-button-next:hover, .cb-carousel-block .cb-button-prev:hover, .dark-bg .cb-carousel-block.bottom-arrows .cb-button-next:hover, .dark-bg .cb-carousel-block.bottom-arrows .cb-button-prev:hover {
border-color: var(--wp--preset--color--red);
background-color: var(--wp--preset--color--red) !important;
box-shadow: unset;
}
.cb-carousel-block .cb-button-next::after, .cb-carousel-block .cb-button-prev::after {
content:"";
opacity: 1;
display: block;
width: 18px;
height: 18px;
margin: auto;
background-image: url('/wp-content/uploads/arrow-icon.svg');
background-size: contain;
background-repeat: no-repeat;
background-position: center;
filter: brightness(0) saturate(100%) invert(29%) sepia(4%) saturate(1311%) hue-rotate(180deg) brightness(98%) contrast(95%);
}
.dark-bg .cb-carousel-block.bottom-arrows .cb-button-next::after, 
.dark-bg .cb-carousel-block.bottom-arrows .cb-button-prev::after {
filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(1%) hue-rotate(357deg) brightness(111%) contrast(101%);
}
.cb-carousel-block .cb-button-next:hover::after, .cb-carousel-block .cb-button-prev:hover::after {
filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(1%) hue-rotate(357deg) brightness(111%) contrast(101%);
}
.cb-carousel-block .cb-button-prev::after {
-webkit-transform: scale(-1,-1);
transform: scale(-1,-1);
}


/* BANNER MASKS */

.top-mask, .bottom-mask, .top-bottom-mask {
position: relative;
}
.top-mask::before,
.bottom-mask::before {
content: "";
display: block;
left: 0;
position: absolute;
width: 100%;
height: 100%;
z-index: 1;
max-height: 200px;
mix-blend-mode: multiply;
}
.top-mask::before {
top: 0;
background: linear-gradient(180deg,rgba(71, 76, 85, 1) 0%, rgba(71, 76, 85, 0) 100%);
}
.bottom-mask::before {
bottom: 0;
background: linear-gradient(180deg,transparent,rgba(71,76,85,0) 0,rgba(71,76,75,.5) 70%,rgba(71,76,75));
}
.top-bottom-mask::after,
.top-bottom-mask::before {
content:'';
width: 100%;
height: 100%;
position: absolute;
left: 0;
mix-blend-mode: multiply;
}
.top-bottom-mask:before {
top: 0;
background:-o-radial-gradient(circle,transparent 60%,var(--wp--preset--color--cool-grey-10) 100%);
background:radial-gradient(circle,transparent 60%,var(--wp--preset--color--cool-grey-10) 100%);
}
.top-bottom-mask:after {
bottom: 0;
background:-webkit-gradient(linear,left bottom, left top,color-stop(0, var(--wp--preset--color--cool-grey-10)),color-stop(40%, transparent),to(var(--wp--preset--color--cool-grey-10)));
background:linear-gradient(0deg,var(--wp--preset--color--cool-grey-10) 0,transparent 40%,var(--wp--preset--color--cool-grey-10) 100%);
}
.bg-mask.corp-green::after {
background: linear-gradient(90deg,transparent,rgba(93,121,117,.2) 0,rgba(93,121,117,.5) 70%,rgb(93,121,117));
}


/* BLOCK UPDATES */

.wp-block-outermost-icon-block svg,
.wp-block-outermost-icon-block .icon-container,
.wp-block-social-links .wp-social-link, 
.wp-block-social-links .wp-social-link svg,
.wp-block-social-links .wp-social-link span {
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.wp-block-outermost-icon-block a:hover {
transform: scale(1.1) !important;
}
.wp-block-cover .wp-block-cover__inner-container {
z-index: 2;
}
.wp-block-cover.height100 .wp-block-cover__inner-container {
height: 100%;
}
.same-height.wp-block-columns > .wp-block-column {
align-self: stretch;
}
.wp-embed-aspect-2-3 video, .aspect-2-3.wp-block-video video {
aspect-ratio: 2/3 !important;
object-fit: cover;
}
.wp-block-media-text.is-image-fill-element > .wp-block-media-text__media {
min-height: 500px;
}
.wp-block-table thead {
border-bottom: 2px solid var(--wp--preset--color--red);
}
.polaroid {
background-color: var(--wp--preset--color--base);
padding: 7px 7px 35px 7px;
box-shadow: 0 5px 15px rgba(0,0,0,0.2);
-webkit-transform: rotate(-2deg);
transform: rotate(-2deg);
}


/* RED BG ARROW */

.icon-container.has-red-background-color:hover {
background-color: var(--wp--preset--color--contrast) !important;
}
.icon-container.has-red-background-color:hover path {
animation-name: headShake;
animation-duration: 1.7s;
animation-timing-function:ease-in-out;
animation-iteration-count:1
}


/* COVER HOVER */

.cover-hover .wp-block-cover span.wp-block-cover__background,
.cover-hover .wp-block-cover .wp-block-cover__inner-container,
.cover-hover .wp-block-cover img.wp-block-cover__image-background {
box-sizing: border-box;
-webkit-transition: all 0.8s;
transition: all 0.8s;
}
.cover-hover .wp-block-cover span.wp-block-cover__background {
height: 100%;
-webkit-transform-origin: 100% 100%;
transform-origin: 100% 100%;
-webkit-transform: scale(1,0);
transform: scale(1,0);
}
.cover-hover .wp-block-cover:hover span.wp-block-cover__background {
-webkit-transform: scale(1,1);
transform: scale(1,1);
}
.cover-hover .wp-block-cover .wp-block-cover__inner-container {
padding: 15px;
left: 50%;
bottom: 0;
position: absolute;
flex-direction: column;
justify-content: center;
display: flex;
-webkit-transform: translate(-50%,0%);
transform: translate(-50%,0%);
}
.cover-hover .wp-block-cover .wp-block-cover__inner-container h3, .cover-hover .wp-block-cover .wp-block-cover__inner-container p {
-webkit-transition: all 0.5s;
transition: all 0.5s;
}
.cover-hover .wp-block-cover .wp-block-cover__inner-container .wp-block-outermost-icon-block  {
order: 3;
}
.cover-hover .wp-block-cover:hover .wp-block-cover__inner-container {
bottom: 50%;
-webkit-transform: translate(-50%,50%);
transform: translate(-50%,50%);
}
.cover-hover .wp-block-cover:hover img.wp-block-cover__image-background {
transform: translateZ(0);
width: calc(100% + 60px);
}


/* PARTIAL HOVER */

.partial-hover .wp-block-cover {
-webkit-transition: all 0.8;
transition: all 0.8s;
}
.partial-hover .wp-block-cover span.wp-block-cover__background {
height: 80px;
bottom: 0;
top: unset;
-webkit-transform-origin: 100% 100%;
transform-origin: 100% 100%;
opacity: 1;
}
.partial-hover .wp-block-cover .wp-block-cover__background,
.partial-hover .wp-block-cover .wp-block-cover__image-background,
.partial-hover .wp-block-cover .wp-block-cover__inner-container {
-webkit-transition: all 0.8s;
transition: all 0.8s;
}
.partial-hover .wp-block-cover:hover span.wp-block-cover__background {
-webkit-transform: scale(1,1);
transform: scale(1,1);
height: 100%;
opacity: 0.8;
}
.partial-hover .wp-block-cover .wp-block-cover__inner-container {
padding: 15px 0;
bottom: 0;
left: 50%;
position: absolute;
-webkit-transform: translate(-50%,0%);
transform: translate(-50%,0%);
}
.partial-hover .wp-block-cover:hover .wp-block-cover__inner-container {
bottom: 50%;
-webkit-transform: translate(-50%,50%);
transform: translate(-50%,50%);
}
.partial-hover .wp-block-cover .wp-block-cover__inner-container .wp-block-outermost-icon-block {
height: 0;
opacity: 0;
}
.partial-hover .wp-block-cover:hover .wp-block-cover__inner-container .wp-block-outermost-icon-block {
height: 100%;
opacity: 1;
}
.partial-hover .wp-block-cover:hover .wp-block-cover__image-background {
transform: translateZ(0);
width: calc(100% + 60px);
}


/* ICON BG */

.icon-bg {
position: relative;
overflow-y: visible;
}
.small-icon-bg {
position: relative;
overflow: clip;
}
.icon-bg::after, 
.small-icon-bg::after {
content:"";
display: block;
width: 100%;
height: 100%;
top: 0;
left: -5%;
position: absolute;
background-image: url('/wp-content/uploads/WGS-emblem03.svg');
background-repeat: no-repeat;
background-size: contain;
background-position: right top;
}
.icon-bg::after {
max-width: clamp(500px, calc(31.25rem + ((1vw - 3.2px) * 15.625)), 750px);
max-height: 900px;
opacity: 0.1;
}
.icon-bg.dark-bg::after {
opacity: 0.05;
background-position: right center;
filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(199deg) brightness(104%) contrast(101%);
}
.small-icon-bg::after {
max-width: 300px;
background-size: cover;
top: 0;
left: -5%;
opacity: 0.2;
mix-blend-mode: multiply;
}
.page-banner.sixth-form .small-icon-bg::after {
opacity: 0.1;
filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(199deg) brightness(104%) contrast(101%);
mix-blend-mode: unset;
}
.icon-bg > *,
.small-icon-bg > *{
position: relative;
z-index: 1;
}


/* TABS */

.gutena-tabs-block, .gutena-tab-title, .gutena-tab-block {
background-color: transparent !important;
}
/*
.gutena-tabs-block > .gutena-tabs-tab > .gutena-tab-title {
letter-spacing: 0.1em;
}
*/
.gutena-tabs-block > .gutena-tabs-tab > .gutena-tab-title {
-webkit-transition: all 0.8s;
transition: all 0.8s;
}


/* ACCORDION */

.wp-block-accordion-item:hover .wp-block-accordion-heading,
.wp-block-accordion-item.is-open .wp-block-accordion-heading {
color: var(--wp--preset--color--contrast);
}
.wp-block-accordion-item .wp-block-accordion-heading__toggle {
border-bottom: 2px solid var(--wp--preset--color--light-grey);
border-radius: 0 !important;
}
.wp-block-accordion-item:hover .wp-block-accordion-heading__toggle,
.wp-block-accordion-item.is-open .wp-block-accordion-heading__toggle {
border-bottom: 2px solid var(--wp--preset--color--cool-grey-3);
}
.wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title {
text-decoration: none;
}
.wp-block-accordion-heading__toggle-icon {
color: var(--wp--preset--color--red);
height: 1.5em;
width: 1.5em;
}


/* LIGHTBOX */

#fancybox-wrap {
max-width: var(--wp--style--global--content-size);
max-width: 90%;
height: auto !important;
}
#fancybox-wrap #fancybox-outer {
-webkit-box-shadow: 0 0 10px rgba(0,0,0,0.1);
box-shadow: 0 0 10px rgba(0,0,0,0.1);
}
#fancybox-wrap #fancybox-content {
max-width: 100%;
height: auto !important;
}
#fancybox-wrap #fancybox-close {
top: 0;
right: 0;
}
#fancybox-wrap .fancy-ico span {
background: var(--wp--preset--color--red);
border: 2px solid white;
box-shadow: none;
}
#fancybox-wrap #fancybox-img {
object-fit: cover;
max-width: 100%;
}


/* TIMELINE */

.timeline p.has-background {
display: table;
margin-left: auto;
margin-right: auto;
border-radius: 30em;
}


/* POSTS */

.single-post .entry-content h2 {
font-size: var(--wp--preset--font-size--medium);
color: var(--wp--preset--color--corporate-green);
font-weight: bold;
}


/* COOKIES */

.cky-consent-container .cky-consent-bar {
border-radius: 0 20px 0 20px;
}
.cky-notice-des,
.cky-preference-content-wrapper,
.cky-accordion-header-des {
line-height: 1.3 !important;
}
.cky-notice-btn-wrapper .cky-btn,
.cky-prefrence-btn-wrapper .cky-btn {
font-weight: bold;
text-transform: uppercase;
font-size: 0.8em;
border-width: 1px;
}
button.cky-show-desc-btn:not(:hover):not(:active) {
font-size: 0.8em;
color: #000000 !important;
font-weight: bold;
text-transform: uppercase !important;
}
button.cky-show-desc-btn:hover {
font-weight: bold;
color: #DA291C !important;
text-transform: uppercase !important;
}
button.cky-show-desc-btn:not(:hover):not(:active) {
text-transform: uppercase !important;
}
.cky-accordion-header .cky-accordion-btn {
text-transform: uppercase !important;
}


/* FOOTER */

#site-footer .wp-block-separator {
opacity: 0.2;
}
#site-footer .wp-block-buttons .wp-block-button__link.wp-element-button {
padding: calc(0.6em + 1px) calc(2em + 1px);
}
.footer-text .ld::before {
content: "";
background-image: url("https://lawrencedavis.co.uk/wp-content/uploads/LD-icon.svg");
background-repeat: no-repeat;
background-size: contain;
display: inline-block;
width: 12px;
height: 9px;
margin: 0 7px 0 0;
vertical-align: baseline;
filter: brightness(0) saturate(100%) invert(100%) sepia(22%) saturate(2%) hue-rotate(317deg) brightness(111%) contrast(100%);
}


/* MEDIA */

@media screen and (min-width: 782px) {
.hidden-desktop {
display: none !important;
visibility: hidden;
}
div.form-row {
display: flex;
gap: 1rem;
}
div.form-row .input-group {
-ms-flex-preferred-size: 0;
flex-basis: 0;
-webkit-box-flex: 1;
-ms-flex-positive: 1;
flex-grow: 1;
}
.sticky-content {
position: -webkit-sticky;
position: sticky;
top: 80px;
height: 100%;
}
.cover-hover .wp-block-cover .wp-block-cover__inner-container h3 {
order: 2;
}
.cover-hover .wp-block-cover:hover .wp-block-cover__inner-container h3 {
order: -1;
}
.cover-hover .wp-block-cover .wp-block-cover__inner-container p {
opacity: 0;
-webkit-transform: scale(0.5) translateY(100%);
transform: scale(0.5) translateY(100%);
}
.cover-hover .wp-block-cover:hover .wp-block-cover__inner-container p {
opacity: 1;
-webkit-transform: translate3d(0,-10px,0) scale(1);
transform: translate3d(0,-10px,0) scale(1);
}
}

@media screen and (min-width: 901px) {
.gutena-tabs-block.vertical-tabs {
gap: 3em;
flex-direction: row;
}
.gutena-tabs-block.vertical-tabs .gutena-tabs-tab {
width: 20%;
flex-direction: column;
position: -webkit-sticky;
position: sticky;
top: 30px;
height: 100%;
}
.gutena-tabs-block.vertical-tabs > .gutena-tabs-tab > .gutena-tab-title {
text-align: left;
flex: 0 !important;
}
.gutena-tabs-block.vertical-tabs > .gutena-tabs-tab > .gutena-tab-title.active::after {
content: "\2794";
font-size: 13px;
line-height: 1.7;
display: inline-block;
width: 20px;
height: 20px;
text-align: center;
right: 0;
top: 50%;
transform: translateY(-50%);
position: absolute;
border-radius: 50%;
color: var(--wp--preset--color--base);
background: var(--wp--preset--color--dark-pink);
-webkit-transition: all 0.3s;
transition: all 0.3s;
}
.gutena-tabs-block.vertical-tabs .gutena-tabs-content {
width: 80%;
}
.gutena-tabs-block.vertical-tabs > .gutena-tabs-tab > .gutena-tab-title {
border-bottom: 2px solid transparent !important;
}
.gutena-tabs-block.vertical-tabs > .gutena-tabs-tab > .gutena-tab-title.active {
border-bottom-color: var(--wp--preset--color--light-grey) !important;
}
}

@media screen and (min-width: 1201px) {
body {
margin: 1.2rem;
position: relative;
}
header > .sticky-element-active + #site-header {
left: 0 !important;
right: 0 !important;
width: 100% !important;
padding: 15px calc(var(--wp--preset--spacing--30) + 1.2rem) !important;
}
.horizontal.wp-block-navigation li.current-menu-item a{
color: var(--wp--preset--color--cool-grey-6);
}
.main-banner .wp-block-cover {
min-height: 96.5dvh !important;
}
.page-banner {
border-radius: 0 20px 0 20px;
}
.page-banner .wp-block-cover {
-webkit-transform: translateX(-1.2rem);
transform: translateX(-1.2rem);
border-radius: 0 0 20px 0;
}
.page-banner .wp-block-cover__inner-container {
-webkit-transform: translateX(1.2rem);
transform: translateX(1.2rem);
}
.page-banner .wp-block-group.banner-text {
width: calc(100% + 1.2rem);
-webkit-transform: translateX(-1.2rem);
transform: translateX(-1.2rem);
}
}

@media screen and (max-width: 1200px) {
body {
overflow-x: clip;
}
.main-banner .wp-block-cover {
min-height: 100dvh !important;
max-height: 100dvh;
}
.page-banner {
padding: 0 !important;
}
.page-banner .wp-block-cover {
min-height: clamp(250px, calc(15.625rem + ((1vw - 3px) * 11.1111)), 350px) !important;
}
}

@media screen and (max-width: 900px) {
.gutena-tabs-block.vertical-tabs > .gutena-tabs-tab {
flex-wrap: nowrap;
white-space: nowrap;
-webkit-overflow-scrolling: touch;
padding: 0;
overflow-x: scroll;
padding-bottom: 10px;
gap: 1em;
}
.gutena-tabs-block.vertical-tabs > .gutena-tabs-tab > .gutena-tab-title {
display: inline-block;
width: auto;
min-width: auto;
position: relative;
}
.gutena-tabs-block.vertical-tabs > .gutena-tabs-content {
padding-top: 30px;
}
}

@media screen and (max-width:781px) {
.cb-carousel-block .cb-button-next {
right: -15px;
}
.cb-carousel-block .cb-button-prev {
left: -15px;
}
.hidden-mobile {
display: none !important;
visibility: hidden;
}
.invert {
order: -1;
}
.no-gap.wp-block-group {
margin-block-start: 0;
}
.no-gap.wp-block-group > * {
gap: 0;
}
.gallery .wp-block-cover {
aspect-ratio: 3/2 !important;
}
.wp-block-table table {
table-layout: auto;
max-width: var(--wp--style--global--content-size);
overflow-x: scroll;
flex-wrap: nowrap;
white-space: nowrap;
scroll-behavior: smooth;
scrollbar-width: none;
}
.media-text.wp-block-group > .wp-block-group {
margin-block-start: 0;
}
.wp-block-media-text.is-image-fill-element > .wp-block-media-text__media {
min-height: 250px;
}
.wp-block-media-text .wp-block-media-text__content {
padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--30);
}
.info-carousel .wp-block-columns .wp-block-column:nth-of-type(2) > .wp-block-group {
justify-content: flex-start;
}
.info-carousel .swiper-button-next, .info-carousel .swiper-button-prev {
top: 35%;
}
footer {
margin-block-start: 0;
margin-block-end: 0;
}
.footer-text.wp-block-group {
flex-wrap: wrap;
text-align: center;
}
}

@media screen and (max-width:480px) {
.team .wp-block-group.is-layout-grid {
grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
}

/* ANIMATION */

@-webkit-keyframes headShake {
0% {
-webkit-transform:translateX(0);
transform:translateX(0)
}
6.5% {
 -webkit-transform:translateX(-6px) rotateY(-9deg);
transform:translateX(-6px) rotateY(-9deg)
}
18.5% {
-webkit-transform:translateX(5px) rotateY(7deg);
transform:translateX(5px) rotateY(7deg)
}
31.5% {
-webkit-transform:translateX(-3px) rotateY(-5deg);
transform:translateX(-3px) rotateY(-5deg)
}
43.5% {
-webkit-transform:translateX(2px) rotateY(3deg);
transform:translateX(2px) rotateY(3deg)
}
50% {
-webkit-transform:translateX(0);
transform:translateX(0)
}
}
@keyframes headShake {
0% {
-webkit-transform:translateX(0);
transform:translateX(0)
}
6.5% {
-webkit-transform:translateX(-6px) rotateY(-9deg);
transform:translateX(-6px) rotateY(-9deg)
}
18.5% {
-webkit-transform:translateX(5px) rotateY(7deg);
transform:translateX(5px) rotateY(7deg)
}
31.5% {
-webkit-transform:translateX(-3px) rotateY(-5deg);
transform:translateX(-3px) rotateY(-5deg)
}
43.5% {
-webkit-transform:translateX(2px) rotateY(3deg);
transform:translateX(2px) rotateY(3deg)
}
50% {
-webkit-transform:translateX(0);
transform:translateX(0)
}
}
.animate__headShake {
-webkit-animation-name:headShake;
animation-name:headShake;
-webkit-animation-timing-function: ease-in-out;
animation-timing-function: ease-in-out
}

