/* Shared navigation and contact proportions, measured against the supplied reference. */
:root{--wilco-rule:#bfc1c3;--wilco-panel:#f7f7f5;--wilco-ink:#202020;--wilco-pixel-height:clamp(96px,16vh,160px)}
[data-bs-theme=dark]{--wilco-rule:#626262;--wilco-panel:#151515;--wilco-ink:#f4f4f2}
.at-main-menu nav>ul>li>a{font-size:18px!important;font-weight:400!important;line-height:1.35!important}
.at-header-right{gap:16px!important}.at-header-logo img{max-width:100%}
.wilco-menu-toggle{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:8px 0;background:none;border:0;color:inherit;font-size:18px;font-weight:400;line-height:1.35;text-transform:none}
.wilco-menu-toggle svg,.wilco-menu svg,.enquiry-send svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.4;flex-shrink:0}
.wilco-menu-toggle.hamburger-sticky-menu{padding:12px 20px;border-radius:0;font-size:18px;font-weight:400;background:var(--wilco-panel);color:var(--wilco-ink);border:1px solid var(--wilco-rule)}
.wilco-menu[hidden]{display:none!important}.wilco-menu{position:fixed;inset:0;z-index:2147482000;background:var(--wilco-panel);color:var(--wilco-ink);padding:clamp(20px,4vw,64px);overflow:auto;overscroll-behavior:contain}
.wilco-menu-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;font-size:18px;font-weight:400}
.wilco-menu-top button{display:flex;align-items:center;gap:12px;min-height:44px;color:inherit;font:inherit;background:none;border:0}
.wilco-menu nav{max-width:1100px;margin:auto}.wilco-menu nav ul{list-style:none;padding:0;margin:0}
.wilco-menu nav a{display:flex;align-items:baseline;gap:24px;padding:10px 0;color:inherit;font-family:var(--at-ff-heading);font-size:clamp(40px,5vw,72px);font-weight:400;line-height:1.08;letter-spacing:-.035em;text-decoration:none}
.wilco-menu .menu-index{font-size:14px;letter-spacing:0;font-family:var(--at-ff-body)}.wilco-menu nav svg{margin-left:auto;align-self:center;transition:transform .2s}.wilco-menu nav a:hover svg{transform:translate(3px,-3px)}
.wilco-menu-bottom{display:flex;justify-content:space-between;gap:24px;max-width:1100px;margin:40px auto 0;font-size:16px;font-weight:400}.wilco-menu-bottom a{color:inherit;display:inline-block;margin-right:24px;padding:8px 0}
html.wilco-menu-open,html.wilco-menu-open body{overflow:hidden!important}
:where(a,button,input,select,textarea):focus-visible{outline:2px solid currentColor;outline-offset:5px}
.wilco-contact-section{padding:120px 0 0}.wilco-contact-section .container{max-width:1200px}
.wilco-contact-mark{width:clamp(220px,27vw,340px);height:clamp(220px,27vw,340px);margin-bottom:24px}
.contact-introduction{max-width:850px;margin-bottom:clamp(40px,6vw,80px)}.contact-kicker{font-size:16px;text-transform:uppercase;margin:0 0 20px}
.contact-introduction h1{font-size:clamp(40px,5vw,68px);line-height:1.05;letter-spacing:-.045em;margin-bottom:24px}.contact-introduction>p:last-child{font-size:clamp(19px,2vw,24px);font-weight:400;line-height:1.5;max-width:50ch}
.enquiry-required{font-size:14px;font-weight:400;margin-bottom:24px}.enquiry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.enquiry-full{grid-column:1/-1}
.enquiry-field label{display:block;margin:0 0 12px;font-size:20px;font-weight:400;line-height:1.4}.enquiry-field label span{font-size:inherit}.enquiry-field label span:not([aria-hidden]){font-size:16px}
.enquiry-field input,.enquiry-field select,.enquiry-field textarea{display:block;width:100%;min-width:0;padding:22px 24px;border:1px solid var(--wilco-rule);border-radius:0;background:transparent;color:inherit;font-size:20px;font-weight:400;line-height:1.45;min-height:74px;box-sizing:border-box}
.enquiry-field input::placeholder{color:inherit;opacity:.55}.enquiry-field textarea{min-height:220px;resize:vertical}.enquiry-field select option{color:var(--wilco-ink);background:var(--wilco-panel)}
.enquiry-field input:focus,.enquiry-field select:focus,.enquiry-field textarea:focus{border-color:currentColor}
#enquiry-help{font-size:16px;font-weight:400;margin:0 0 14px}.enquiry-verification{margin-top:32px;min-height:78px}#captcha-status{font-size:14px}.captcha-retry{background:none;color:inherit;border:0;text-decoration:underline;min-height:44px}
.enquiry-submit{display:flex;align-items:center;gap:32px;margin-top:24px}.enquiry-send{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:62px;padding:18px 28px;background:var(--wilco-ink);color:var(--wilco-panel);border:1px solid var(--wilco-ink);font-size:20px;font-weight:400;transition:background .2s,color .2s}
.enquiry-send:hover{background:var(--wilco-panel);color:var(--wilco-ink)}.enquiry-send:disabled{opacity:.55;cursor:wait}.enquiry-submit p{font-size:16px;font-weight:400;max-width:30ch;margin:0}
.wilco-contact-details{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:64px 0 0;margin-top:40px;border-top:1px solid var(--wilco-rule)}.wilco-contact-details h2{font-size:20px;margin-bottom:12px}.wilco-contact-details p{font-size:24px;font-weight:400}.contact-socials{display:flex;gap:24px;flex-wrap:wrap}.contact-socials a{font-size:18px;font-weight:400;min-height:44px;color:inherit}
/* Reserve the transition below real content instead of painting over it. */
main[data-st-footer]{padding-bottom:var(--wilco-pixel-height)}
.wilco-contact-gallery{padding-top:80px}.wilco-contact-gallery .moving-gallery{overflow:hidden}.wilco-contact-gallery .moving-gallery li{width:clamp(220px,25vw,430px)!important;flex:none}.wilco-contact-gallery .moving-gallery li img{height:clamp(230px,30vw,440px);width:100%;object-fit:cover;border-radius:12px}
.wilco-contact-gallery .moving-gallery li:nth-child(even) img{height:clamp(190px,25vw,360px)}
@media(max-width:1199px){.wilco-menu-toggle{font-size:20px}.at-header-logo img{width:150px!important}.wilco-menu nav a{font-size:clamp(36px,8vw,56px);padding:12px 0}.at-header-right .dark-light-mode{display:none}.wilco-menu-bottom{flex-direction:column;gap:8px}}
@media(max-width:767px){.wilco-contact-section{padding-top:96px}.contact-introduction{margin-bottom:36px}.enquiry-grid{grid-template-columns:1fr;gap:26px}.enquiry-field label{font-size:19px}.enquiry-field input,.enquiry-field select,.enquiry-field textarea{font-size:18px;padding:18px;min-height:64px}.enquiry-submit{align-items:flex-start;flex-direction:column;gap:18px}.wilco-contact-details{grid-template-columns:1fr;gap:24px;padding-top:32px}.wilco-contact-gallery{padding-top:48px}.wilco-menu-top{margin-bottom:20px}.wilco-menu nav a{font-size:36px}.wilco-menu nav svg{width:20px}.wilco-menu-bottom{margin-top:24px}}
@media(prefers-reduced-motion:reduce){main[data-st-footer]{padding-bottom:40px}.wilco-menu nav svg{transition:none}}
@media(max-width:767px){.enquiry-field textarea{min-height:220px}}
.wilco-skip-link{position:fixed;top:8px;left:8px;z-index:2147483001;transform:translateY(-160%);padding:12px 20px;background:var(--wilco-panel);color:var(--wilco-ink)}.wilco-skip-link:focus{transform:none}
.wilco-theme-toggle{background:none;border:0;color:inherit;min-width:44px;min-height:44px;padding:8px;font-size:16px;font-weight:400}.wilco-menu-bottom>.wilco-theme-toggle{align-self:flex-start;text-decoration:underline}
@media(max-width:1199px){.at-header-right>.wilco-theme-toggle{display:none}}

/* The white foreground inverts the actual pixels below it, including text and video. */
.wilco-floating-header{position:fixed;inset:24px 0 auto;z-index:2147481000;display:flex;align-items:center;justify-content:space-between;padding:0 4.8vw;background:transparent!important;color:#fff!important;mix-blend-mode:difference;pointer-events:none}
.wilco-floating-header a,.wilco-floating-header button{pointer-events:auto;color:#fff!important;background:transparent!important;border:0;border-radius:0;box-shadow:none;font-family:var(--at-ff-body);font-size:clamp(18px,1.4vw,28px);font-weight:500!important;line-height:1.38;letter-spacing:-.025em;text-transform:none;text-decoration:none;opacity:1}
.wilco-floating-mark{display:flex;align-items:center;justify-content:flex-start;width:44px;min-height:44px}
.wilco-floating-mark img{display:block;width:auto!important;height:36px!important;max-width:none;filter:brightness(0) invert(1)!important}
.wilco-floating-actions{display:flex;align-items:center;gap:clamp(40px,4.3vw,82px)}
.wilco-floating-actions a,.wilco-floating-actions button{position:relative;display:inline-flex;align-items:center;min-height:44px;padding:0 0 5px;cursor:pointer}
.wilco-floating-actions a::after,.wilco-floating-actions button::after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:currentColor;transform-origin:right;transition:transform .25s ease}
.wilco-floating-actions a:hover::after,.wilco-floating-actions button:hover::after{transform:scaleX(.4)}
.wilco-floating-header :focus-visible{outline:2px solid #fff;outline-offset:6px}
@media(max-width:767px){.wilco-floating-header{top:24px;padding:0 7.18vw}.wilco-floating-contact{display:none!important}.wilco-floating-header button{font-size:20px}.wilco-floating-mark img{height:40px!important}.wilco-floating-actions button{padding:0}.wilco-floating-actions button::after{display:none}}
@media(prefers-reduced-motion:reduce){.wilco-floating-actions a::after,.wilco-floating-actions button::after{transition:none}}
@media(forced-colors:active){.wilco-floating-header{mix-blend-mode:normal;background:Canvas!important;color:CanvasText!important}.wilco-floating-header a,.wilco-floating-header button{color:CanvasText!important}.wilco-floating-mark img{filter:none!important}}
