:root{--jna-navy:#002855;--jna-gold:#ff8a00;--jna-light:#ffffff;--jna-ink:#000000;--jna-purple:#002855;--jna-purple-hover:#001c3d;--jna-cyan:#ff8a00;--jna-cyan-hover:#ffaa33}
main.jna-page{margin:0!important;padding:0!important;max-width:none!important}
.jna-page,.jna-header,.jna-footer{font-family:var(--wp--custom--font--family--primary,'Gill Sans',Arial,sans-serif);color:var(--jna-ink)}
.jna-wrap{max-width:1420px;width:100%;margin:0 auto;padding-inline:40px;box-sizing:border-box}
.jna-section{padding-block:80px;background:#fff}
.jna-section--light{background:var(--jna-light)}
.jna-section--navy{background:var(--jna-navy);color:#fff}
.jna-page h1,.jna-page h2,.jna-page h3,.jna-footer h2,.jna-footer h3{font-weight:400;line-height:1.12;margin:0 0 24px}
.jna-page h1{font-size:clamp(42px,5.7vw,80px);color:var(--jna-navy)}
.jna-page h2,.jna-footer h2{font-size:clamp(30px,3.1vw,44px)}
.jna-page h3,.jna-footer h3{font-size:28px;line-height:1.2}
.jna-page p,.jna-footer p{font-size:18px;line-height:1.5;margin:0 0 24px}
.jna-page .jna-eyebrow,.jna-header .jna-eyebrow,.jna-footer .jna-eyebrow{font-size:14px;line-height:1.3;text-transform:uppercase;letter-spacing:.11em;margin:0 0 16px}
.jna-page .jna-lead{font-size:24px;line-height:1.4;max-width:870px}
.jna-page-hero{padding:80px 0;background:var(--jna-light)}
.jna-home-hero{padding:88px 24px 80px;min-height:480px;box-sizing:border-box}
.jna-home-hero .wp-block-mitie-layout-hero-fabric__content{max-width:1060px;margin:auto;text-align:center;position:relative;z-index:1;gap:0}
.jna-home-hero .jna-lead{margin:24px auto 32px;max-width:850px}
.jna-home-hero .jna-actions{justify-content:center}
.jna-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
body .elementor .jna-button{display:inline-flex;align-items:center;justify-content:center;gap:18px;font:inherit;font-size:18px;line-height:1.2;min-height:48px;padding:12px 26px;border:1px solid transparent;border-radius:999px;text-decoration:none;cursor:pointer;box-sizing:border-box;transition:background-color .2s,color .2s}
body .elementor .jna-button--gold{background:var(--jna-gold);color:var(--jna-navy)}
body .elementor .jna-button--navy{background:var(--jna-navy);color:#fff}
body .elementor .jna-button--text{color:var(--jna-navy);background:transparent;padding:0;justify-content:flex-start;min-height:32px;font-size:17px;border-radius:0}
body .elementor .jna-button:hover{background:#e57500;color:var(--jna-navy)}
body .elementor .jna-button--text:hover{background:transparent;text-decoration:underline}
.jna-button:focus-visible,.jna-header a:focus-visible,.jna-header button:focus-visible,.jna-footer a:focus-visible{outline:3px solid var(--jna-gold);outline-offset:4px}
.jna-grid{display:grid;gap:32px;margin-top:40px}
.jna-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.jna-grid--two{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
.jna-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}
.jna-card{padding:32px;background:#fff;display:flex;flex-direction:column;align-items:flex-start}
.jna-card p{flex:1}
.jna-card--light{background:var(--jna-light)}
.jna-service-card{background:var(--jna-navy);color:#fff;overflow:hidden;display:flex;flex-direction:column}
.jna-service-card>img{display:block;width:100%;height:260px;object-fit:cover}
.jna-service-card>div{padding:32px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.jna-service-card p:not(.jna-eyebrow){flex:1}
.jna-split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.jna-photo img{display:block;width:100%;height:100%;max-height:640px;min-height:380px;object-fit:cover}
.jna-cta{display:flex;gap:40px;justify-content:space-between;align-items:center}
.jna-cta h2{color:#fff}
.jna-cta p:last-child{margin-bottom:0}
.jna-contact-card{background:var(--jna-light);padding:40px;overflow-wrap:anywhere}
.jna-contact-card .jna-email{display:inline-block;font-size:25px;color:var(--jna-navy);margin-bottom:24px}
.jna-contact-card p:last-child{margin-bottom:0}
.jna-enquiry-form{margin-top:40px}
.jna-enquiry-form select{font:inherit;background:#fff;color:var(--jna-ink);width:100%;min-height:48px;padding:10px 14px;border:1px solid #abb1b6;border-radius:0;box-sizing:border-box}
.jna-enquiry-form input:focus,.jna-enquiry-form select:focus,.jna-enquiry-form textarea:focus{outline:2px solid var(--jna-navy);outline-offset:2px}
.jna-header{background:#fff;position:sticky;top:0;z-index:1000;border-bottom:1px solid #e3e5e7}
.admin-bar .jna-header{top:var(--wp-admin--admin-bar--height,32px)}
.jna-header-inner{max-width:1500px;margin:auto;padding:12px 40px;display:flex;align-items:center;justify-content:space-between;gap:40px;min-height:96px;box-sizing:border-box}
.jna-brand{display:block;width:190px;flex-shrink:0;line-height:0}
.jna-brand img{display:block;width:100%;height:auto;max-height:80px;object-fit:contain}
#jna-navigation{display:flex;align-items:center;gap:32px}
body .elementor .jna-header nav>a:not(.jna-button),body .elementor .jna-services-toggle,body .elementor .jna-service-menu a{color:var(--jna-navy);text-decoration:none;font:inherit;font-size:20px;background:none;border:none;padding:12px 0;cursor:pointer;white-space:nowrap}
.jna-services-toggle span{margin-left:8px}
.jna-nav-group{position:relative}
.jna-service-menu{display:none;position:absolute;top:100%;left:-24px;min-width:245px;padding:16px 24px;background:white;box-shadow:0 12px 30px #0d203b20;border-top:3px solid var(--jna-gold)}
.jna-nav-group.is-open .jna-service-menu{display:grid;gap:4px}
body .elementor .jna-service-menu a{font-size:18px}
body .elementor .jna-header nav a:hover{text-decoration:underline;text-underline-offset:6px}
.jna-menu-toggle{display:none;background:none;border:0;padding:12px;cursor:pointer}
.jna-menu-toggle span{display:block;background:var(--jna-navy);width:26px;height:2px;margin:6px 0}
.jna-footer{padding:48px 0 32px;background:var(--jna-navy);color:#fff}
.jna-footer-top{display:flex;align-items:center;gap:32px}
.jna-footer-top h2{margin:0}
body .elementor .jna-footer hr{margin:40px 0;border:0;border-top:1px solid #ffffff60}
.jna-footer-grid{display:grid;grid-template-columns:1.1fr 1.1fr .85fr 1.2fr;gap:40px}
.jna-footer h3{font-size:24px;margin-bottom:24px}
.jna-footer ul{list-style:none;margin:0;padding:0}
.jna-footer li{margin:0 0 16px;padding:0}
body .elementor .jna-footer a:not(.jna-button){color:#fff;text-decoration:none;font-size:17px;line-height:1.5}
body .elementor .jna-footer a:not(.jna-button):hover{text-decoration:underline}
.jna-footer-grid>div:last-child>a{display:block;overflow-wrap:anywhere;margin-bottom:16px}
.jna-footer-grid p{font-size:17px}
.jna-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:32px}
.jna-footer-bottom p{font-size:15px;margin:0}
.jna-footer-brand{display:block;padding:12px 16px;background:#fff;border-radius:8px;width:180px;box-sizing:border-box;line-height:0}
.jna-footer-brand img{display:block;width:100%;height:auto}
@media(max-width:1100px){#jna-navigation{gap:22px}.jna-header-inner{padding-inline:24px;gap:24px}.jna-brand{width:165px}.jna-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}.jna-split{gap:40px}.jna-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.jna-menu-toggle{display:block}#jna-navigation{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:24px;box-shadow:0 15px 20px #0001;align-items:stretch;gap:4px;max-height:calc(100dvh - 140px);overflow:auto}#jna-navigation.is-open{display:flex;flex-direction:column}.jna-service-menu{position:static;box-shadow:none;border-top:0;border-left:2px solid var(--jna-gold);margin:0 0 12px 8px;padding:0 0 0 20px}.jna-service-menu a{white-space:normal}.jna-header-inner{min-height:84px}.jna-brand{width:150px}.jna-grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}.jna-grid--three>.jna-service-card:last-child{grid-column:1/-1}.jna-service-card>img{height:300px}.jna-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:767px){.jna-wrap{padding-inline:24px}.jna-section{padding-block:48px}.jna-page-hero{padding:48px 0}.jna-home-hero{padding:56px 24px;min-height:0}.jna-page h1{font-size:44px}.jna-page h2,.jna-footer h2{font-size:32px}.jna-page h3{font-size:26px}.jna-page .jna-lead{font-size:21px}.jna-home-hero .jna-actions{align-items:stretch;flex-direction:column}.jna-grid--three,.jna-grid--two,.jna-grid--four,.jna-split{grid-template-columns:1fr}.jna-grid{gap:24px;margin-top:32px}.jna-grid--two{margin-top:0}.jna-split{gap:32px}.jna-card,.jna-service-card>div{padding:24px}.jna-photo img{min-height:280px;max-height:440px}.jna-contact-card{padding:24px}.jna-contact-card .jna-email{font-size:23px}.jna-footer-grid{grid-template-columns:1fr;gap:28px}.jna-footer-top,.jna-footer-bottom{align-items:flex-start;flex-direction:column}.jna-footer-top{gap:24px}.jna-footer hr{margin-block:32px}.jna-footer{padding-top:40px}.jna-actions .jna-button{max-width:100%}}
@media(prefers-reduced-motion:reduce){.jna-button{transition:none}}

/* The JNA header is separate, so the fabric content needs no overlay-header offset. */
.jna-home-hero .wp-block-mitie-layout-hero-fabric__content{padding:0;width:100%;box-sizing:border-box}

.jna-home-hero h1{text-wrap:balance}

/* Navigation polish: align the disclosure with the text and anchor its panel to the header. */
#jna-navigation{align-self:stretch}
.jna-nav-group{display:flex;align-items:center;align-self:stretch}
body .elementor .jna-services-toggle{display:inline-flex;align-items:center;gap:12px;line-height:1.2}
.jna-services-toggle span{display:block;width:7px;height:7px;margin:0 2px 4px 0;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);font-size:0;line-height:0;transition:transform .18s}
.jna-services-toggle[aria-expanded=true] span{transform:translateY(3px) rotate(225deg)}
.jna-service-menu{top:calc(100% + 12px);left:-16px;min-width:252px;padding:8px 0;border:1px solid #e3e5e7;border-top:3px solid var(--jna-gold);border-radius:0 0 8px 8px;box-sizing:border-box;box-shadow:0 14px 30px #0d203b18;z-index:10}
.jna-nav-group.is-open .jna-service-menu{gap:0}
body .elementor .jna-service-menu a{display:block;padding:13px 16px;line-height:1.35;white-space:nowrap}
body .elementor .jna-header .jna-service-menu a:hover,body .elementor .jna-header .jna-service-menu a:focus-visible{background:#f2f4f6;text-decoration:none}
body .elementor .jna-header a[aria-current=page]:not(.jna-button){text-decoration:underline;text-decoration-color:var(--jna-gold);text-underline-offset:7px}
.jna-page [id]{scroll-margin-top:112px}
@media(max-width:900px){
 #jna-navigation{align-self:auto}
 .jna-nav-group{display:block;align-self:stretch}
 body .elementor .jna-services-toggle{width:100%;justify-content:space-between;text-align:left}
 .jna-service-menu{position:static;min-width:0;width:auto;margin:4px 0 12px 0;padding:4px 0;border:0;border-left:2px solid var(--jna-gold);border-radius:0;box-shadow:none}
 body .elementor .jna-service-menu a{white-space:normal;padding:12px 16px}
 .jna-page [id]{scroll-margin-top:96px}
}
@media(prefers-reduced-motion:reduce){.jna-services-toggle span{transition:none}}

/* Keep the entire Elementor header template sticky, rather than its short inner section. */
.wp-site-blocks>.elementor:has(.jna-header){position:sticky;top:0;z-index:1000}
.wp-site-blocks>.elementor .jna-header{position:relative;top:auto}
.admin-bar .wp-site-blocks>.elementor:has(.jna-header){top:var(--wp-admin--admin-bar--height,32px)}


/* Mitie reference palette; JNA wording and editable content are retained. */
.jna-page h1{color:#000000}
.jna-header,body .elementor .jna-header nav>a:not(.jna-button),body .elementor .jna-services-toggle,body .elementor .jna-service-menu a{color:#000}
.jna-menu-toggle span{background:#000}
.jna-footer{background:#002855;color:#fff}
body .elementor .jna-button--gold{background:#ff8a00;color:#000}
body .elementor .jna-button--gold:hover{background:#ffaa33;color:#000}
body .elementor .jna-button--navy{background:var(--jna-purple);color:#fff}
body .elementor .jna-button--navy:hover{background:var(--jna-purple-hover);color:#fff}
body .elementor .jna-header .jna-button,body .elementor .jna-footer-top .jna-button,body .elementor .jna-cta .jna-button,body .elementor .jna-home-hero .jna-button--gold{background:var(--jna-cyan);color:#000}
body .elementor .jna-header .jna-button:hover,body .elementor .jna-footer-top .jna-button:hover,body .elementor .jna-cta .jna-button:hover,body .elementor .jna-home-hero .jna-button--gold:hover{background:var(--jna-cyan-hover);color:#000}
body .elementor .jna-button--text,.jna-contact-card .jna-email{color:#002855}
body .elementor .jna-button--text:hover,.jna-contact-card .jna-email:hover{color:#001c3d;background:transparent}
.jna-service-menu{border-top-color:var(--jna-purple)}
body .elementor .jna-header a[aria-current=page]:not(.jna-button){text-decoration-color:var(--jna-purple)}
.jna-button:focus-visible,.jna-header a:focus-visible,.jna-header button:focus-visible,.jna-enquiry-form input:focus,.jna-enquiry-form select:focus,.jna-enquiry-form textarea:focus{outline-color:var(--jna-purple)}
.jna-footer a:focus-visible{outline-color:#fff}
@media(max-width:900px){.jna-service-menu{border-left-color:var(--jna-purple)}}
