:root{--navy:#203263;--ink:#202d44;--blue:#315cb4;--pale:#f2f5f9;--line:#d9e0e9;--muted:#5c6879;--header:96px;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 25px)}body{margin:0;background:#fff;color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.9;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #167bac;outline-offset:5px}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.5;letter-spacing:.035em}h2{font-size:clamp(1.65rem,2.5vw,2.4rem);font-weight:700}h3{font-size:1.15rem}p{margin-bottom:1.35em}figure{margin:0}ul{padding-left:1.3em}.wrap{width:min(var(--max),calc(100% - 96px));margin-inline:auto}.section{padding-block:104px}.section.compact{padding-top:36px}.split-section{display:grid;grid-template-columns:240px 1fr;gap:65px}.eyebrow{font-family:Arial,sans-serif;font-size:.78rem;letter-spacing:.16em;font-weight:700;color:var(--blue);margin-bottom:16px}.section-heading h2{white-space:pre-line}.section-heading{flex-shrink:0}.section-bar{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:42px}.section-bar h2{margin-bottom:0}.lead{font-size:clamp(1.1rem,1.5vw,1.35rem);line-height:2}.text-link{display:inline-flex;gap:50px;font-size:.9rem;align-items:center;border-bottom:1px solid currentColor;padding-block:12px;white-space:nowrap}.text-link:hover{color:var(--blue)}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:42px;padding:17px 28px;min-height:56px;background:var(--navy);border:1px solid var(--navy);color:white;font-size:.93rem;transition:background .2s,transform .2s;margin-block:8px}.button:hover{background:#315cb4;transform:translateY(-2px)}.button.outline{color:var(--navy);background:white}.button.light{background:white;color:var(--navy);border-color:white}.skip-link{position:fixed;left:20px;top:-100px;background:white;z-index:1000;padding:14px}.skip-link:focus{top:10px}main{padding-top:var(--header)}main:focus{outline:0}.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;height:var(--header);background:rgba(255,255,255,.98);border-bottom:1px solid #e8edf3}.header-inner{height:100%;max-width:1600px;margin:auto;padding-inline:40px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand a{display:flex;align-items:center;gap:12px}.brand strong{display:block;font-size:1.28rem;letter-spacing:.045em;color:#17253c;white-space:nowrap}.brand small{display:block;font:10px Arial,sans-serif;letter-spacing:.18em;color:#42556e}.brand-mark{font:bold italic 43px Arial;color:var(--blue);border-left:7px solid var(--blue);line-height:1;padding-left:3px}.custom-logo{max-width:270px;max-height:70px;object-fit:contain}.primary-nav{display:flex;align-items:center;gap:32px;height:100%}.nav-list{display:flex;gap:28px;list-style:none;margin:0;padding:0}.nav-list a{display:block;font-size:.85rem;font-weight:700;padding-block:20px;white-space:nowrap}.nav-list a:hover,.nav-list a[aria-current]{color:var(--blue)}.nav-contact{background:var(--navy);color:white;display:flex;align-items:center;gap:30px;padding:20px 25px;font-size:.85rem}.menu-toggle{display:none}.hero{height:min(720px,calc(100svh - var(--header)));min-height:530px;position:relative;isolation:isolate;background:#d4e5ef;overflow:hidden}.slides,.slide,.hero-shade{position:absolute;inset:0}.slide{opacity:0;visibility:hidden;transition:opacity 1.2s ease,visibility 1.2s;display:block}.slide.is-active{opacity:1;visibility:visible}.slide-main{width:100%;height:100%;object-fit:cover;object-position:center 55%}.slide-side{position:absolute;right:0;top:0;width:30%;height:100%;clip-path:polygon(65% 0,100% 0,100% 100%,0 100%);background:white}.slide-side img{width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(246,252,255,.90) 0%,rgba(239,248,253,.7) 38%,transparent 72%);z-index:1;pointer-events:none}.hero-copy{position:relative;z-index:2;padding-top:95px}.hero-copy h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:600;font-size:clamp(2rem,3.3vw,3.35rem);line-height:1.8;letter-spacing:.09em;margin-bottom:20px;color:#182940}.hero-copy>p:not(.eyebrow){font-size:1rem;line-height:2.1}.hero-copy .eyebrow{font-size:.7rem}.hero-copy .text-link{gap:68px}.mobile-break{display:none}.hero-bottom{position:absolute;bottom:30px;left:0;right:0;z-index:3;display:flex;justify-content:space-between;align-items:center}.hero-location{font:11px Arial;letter-spacing:.2em;background:#fffE;padding:8px 12px}.slider-controls{display:flex;align-items:center;gap:4px;background:white;padding:4px 8px;color:var(--navy)}.slider-controls button{background:none;border:0;min-width:44px;min-height:44px;font-size:1.25rem}.slide-count{padding-inline:8px;font:16px Arial;white-space:nowrap}.slide-count span{color:#64748b;margin-left:10px}.trust-strip{border-bottom:1px solid var(--line);background:#fff}.trust-strip>.wrap{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:20px;font-size:.83rem}.trust-strip p{margin:0;font-size:.75rem}.trust-strip strong{margin-left:16px;color:var(--navy);letter-spacing:.04em}.section-intro{font-size:1.8rem;line-height:1.7;margin-bottom:35px}.strength-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.strength{border-top:2px solid var(--navy);padding-top:20px}.strength>span{font:16px Arial;color:var(--blue)}.strength h3{margin-top:18px;font-size:1rem}.strength p{font-size:.875rem;color:var(--muted);line-height:1.9;margin:0}.business-section{background:var(--pale)}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.service-card{aspect-ratio:1/1.1;position:relative;overflow:hidden;background:var(--navy);color:white}.service-card>img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 15%,rgba(9,22,45,.85))}.service-card:hover>img{transform:scale(1.06)}.service-card>span{position:absolute;bottom:22px;left:18px;right:18px;z-index:1}.service-card small{display:block;font:9px Arial;letter-spacing:.07em;margin-bottom:9px;opacity:.9}.service-card strong{font-size:.95rem;line-height:1.6;display:block}.service-card i{position:absolute;right:0;top:-20px;font-style:normal}.works-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.work-card{border-bottom:1px solid var(--line)}.work-image{aspect-ratio:1.5;overflow:hidden;background:var(--pale)}.work-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.work-card:hover img{transform:scale(1.04)}.work-no-photo{height:100%;display:grid;place-content:center;color:#687b99;font:14px Arial;letter-spacing:.12em}.work-card-body{padding:23px 0}.work-card-body .eyebrow{font-size:.75rem;margin-bottom:10px}.work-card h3{font-size:1.1rem}.work-meta{font-size:.85rem;color:var(--muted);display:flex;justify-content:space-between;margin:0}.work-categories{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:38px}.work-categories a{padding:16px 10px;background:var(--pale);font-size:.8rem;text-align:center;color:var(--navy)}.work-categories a:hover{background:#e0e8f3}.company-teaser{display:grid;grid-template-columns:1.1fr 1fr;background:var(--navy);color:white}.company-photo img{width:100%;height:100%;min-height:520px;object-fit:cover}.company-copy{padding:75px clamp(35px,6vw,100px)}.company-copy .eyebrow{color:#b7d6ff}.company-copy .button{background:white;color:var(--navy)}.company-copy p{font-size:.95rem}.company-copy .lead{font-size:1.4rem}.recruit-teaser{display:grid;grid-template-columns:1fr 1.4fr;gap:90px;align-items:center}.recruit-photo{position:relative}.recruit-photo img{width:100%;aspect-ratio:1.4;object-fit:cover}.recruit-photo span{position:absolute;bottom:-25px;left:-25px;background:white;color:var(--navy);padding:18px 32px;font:18px Arial;letter-spacing:.2em}.news-section{border-top:1px solid var(--line)}.news-row{display:grid;grid-template-columns:105px 1fr 20px;gap:25px;border-bottom:1px solid var(--line);padding:23px 0;font-size:.93rem}.news-row time{font:14px Arial;color:var(--muted);padding-top:8px}.contact-cta{background:var(--navy);color:white;padding-block:75px}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.contact-cta .eyebrow{color:#b7d6ff}.contact-cta h2{font-size:2.3rem}.contact-cta p:not(.eyebrow){font-size:.875rem;margin-bottom:0}.phone{display:block;font:clamp(1.6rem,3vw,2.5rem) Arial,sans-serif;letter-spacing:.06em;white-space:nowrap}.cta-inner .button{width:100%;margin-top:24px}.site-footer{padding-top:65px}.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px;padding-bottom:55px}.footer-brand{font-size:1.3rem;font-weight:bold}.footer-top p{font-size:.83rem;margin-top:20px;color:var(--muted)}.footer-top .nav-list{display:block}.footer-top nav a{padding:6px 0;font-size:.85rem;display:block}.footer-nav{list-style:none;padding:0}.footer-message{font-family:serif;font-size:1.4rem}.footer-message p{font:12px Arial;letter-spacing:.15em}.footer-bottom{border-top:1px solid var(--line);padding-block:25px;display:flex;justify-content:space-between;gap:24px;font-size:.75rem}.page-head{padding-block:32px 58px}.breadcrumbs{display:flex;gap:16px;font-size:.78rem;color:var(--muted);margin-bottom:65px}.page-head h1{font-size:clamp(2rem,4vw,3.5rem);color:var(--navy);margin-bottom:22px}.page-head .lead{max-width:800px;margin:0}.page-head .eyebrow{margin-bottom:15px}.service-layout{display:grid;grid-template-columns:240px 1fr;gap:70px}.service-nav{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.service-nav a{display:flex;justify-content:space-between;gap:10px;padding-block:17px;border-bottom:1px solid var(--line);font-size:.9rem}.service-nav a[aria-current]{color:var(--blue);font-weight:bold}.service-visual{background:var(--pale)}.service-visual img{width:100%;max-height:470px;object-fit:cover}.service-tagline{margin-top:42px;font-size:1.8rem}.entry-content{line-height:2}.entry-content h2,.entry-content h3{margin-top:2em}.entry-content a{text-decoration:underline;text-underline-offset:4px;color:var(--blue)}.entry-content p{margin-bottom:1.4em}.entry-content img{height:auto;max-width:100%;margin-block:25px}.entry-content table{border-collapse:collapse;width:100%;font-size:.95rem}.entry-content td,.entry-content th{text-align:left;padding:22px;border-bottom:1px solid var(--line);vertical-align:top}.entry-content th{background:var(--pale);width:25%;font-weight:500}.wp-block-table{overflow-x:auto;margin-block:30px}.works-filter{background:var(--pale);padding:28px;display:flex;align-items:end;gap:20px}.works-filter>div{flex:1}.works-filter label{display:block;font-size:.85rem;margin-bottom:8px}.works-filter select{width:100%;min-height:54px;background:white;border:1px solid #8d9aad;padding:10px 32px 10px 14px;border-radius:0}.works-filter .button{margin:0}.works-filter>a{font-size:.85rem;padding-bottom:15px}.results-count{font-size:.85rem;margin-top:25px}.empty-state{background:var(--pale);padding:45px;text-align:center}.empty-state h2,.empty-state h3{font-size:1.25rem}.empty-state p{font-size:.93rem;margin:0;color:var(--muted)}.pagination{text-align:center;margin-top:50px}.page-numbers{display:inline-flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;padding:6px 14px}.page-numbers.current{background:var(--navy);color:white}.work-main-image img{width:100%;max-height:700px;object-fit:contain;background:var(--pale)}.work-detail-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:65px;margin-block:50px}.info-list{font-size:.95rem}.info-list>div{display:grid;grid-template-columns:100px 1fr;border-bottom:1px solid var(--line);padding-block:17px;gap:20px}.info-list dd{margin:0}.info-list dt{font-weight:bold}.photo-gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-block:25px 45px}.photo-gallery img{width:100%;height:300px;object-fit:cover}.photo-gallery figcaption{padding-top:12px;font-size:.9rem;color:var(--muted)}.company-intro{display:grid;grid-template-columns:1fr 280px;gap:100px;margin-bottom:80px}.company-intro img{width:100%;margin-top:35px}.signature{text-align:right}.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;max-width:900px;margin:40px auto}.cert-grid img{height:350px;width:100%;object-fit:contain}.cert-grid figcaption{font-size:.9rem;text-align:center;margin-top:20px}.recruit-banner{position:relative}.recruit-banner img{width:100%;height:450px;object-fit:cover}.recruit-banner>span{position:absolute;left:40px;bottom:40px;color:white;font-size:2rem;background:var(--navy);padding:18px 24px}.contact-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:90px}.contact-aside h2,#contact-form h2{font-size:1.35rem}.contact-aside .phone{color:var(--navy);font-size:2rem;margin:25px 0}.contact-aside p{font-size:.9rem}.form-field{margin-block:23px}.form-field label{display:block;font-weight:600;font-size:.95rem;margin-bottom:9px}.form-field label>span{font-size:.7rem;color:var(--blue);background:#edf3ff;padding:3px 7px;margin-left:12px}.form-field input,.form-field select,.form-field textarea{border:1px solid #8d9aad;background:#fff;border-radius:0;width:100%;padding:13px 15px;min-height:52px;color:var(--ink)}.form-field textarea{resize:vertical}.form-field small{font-size:.8rem;color:var(--muted)}.consent{display:flex;gap:12px;align-items:start;margin-block:25px;font-size:.9rem}.consent input{width:20px;height:20px;flex-shrink:0;margin-top:5px}.consent a{text-decoration:underline}.contact-form>.button{width:100%;justify-content:center}.form-note{font-size:.8rem;color:var(--muted);margin-top:15px}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.form-errors{border:2px solid #a32121;background:#fff5f5;padding:22px;margin-block:20px}.form-errors h3{font-size:1rem}.field-error{color:#a32121;font-size:.85rem;margin:6px 0}.form-field [aria-invalid]{border-color:#a32121}.form-success{background:var(--pale);border-left:4px solid var(--blue);padding:30px}.reading-width{max-width:800px}.news-item{border-bottom:1px solid var(--line);padding-block:24px}.news-item time{font-size:.8rem}.admin-bar .site-header{top:32px}.alignwide{max-width:100%}.alignfull{max-width:100%}
@media(min-width:1600px){.hero-copy{padding-top:120px}}@media(max-width:1200px){.header-inner{padding-inline:25px}.primary-nav{gap:20px}.nav-list{gap:20px}.nav-contact{padding-inline:20px}.split-section{gap:40px;grid-template-columns:210px 1fr}.strength-grid{grid-template-columns:repeat(2,1fr);gap:30px}.service-grid{grid-template-columns:repeat(3,1fr)}.service-card{aspect-ratio:1.4}.contact-layout{gap:50px}}
@media(max-width:1059px){:root{--header:80px}.primary-nav{display:none;position:absolute;top:var(--header);left:0;right:0;height:auto;max-height:calc(100svh - var(--header) - 32px);overflow:auto;padding:24px;background:white;box-shadow:0 12px 20px #10244315}.primary-nav.is-open{display:block}.primary-nav .nav-list{display:block}.primary-nav .nav-list a{padding:17px;border-bottom:1px solid var(--line)}.nav-contact{margin-top:20px;justify-content:space-between}.menu-toggle{display:flex;align-items:center;gap:12px;background:white;color:var(--navy);border:0;min-height:48px;padding:8px;font-size:.8rem}.menu-lines{width:22px;height:12px;border-block:2px solid var(--navy)}.menu-toggle[aria-expanded=true] .menu-lines{transform:rotate(-45deg);height:0;border-bottom:0}.hero{height:640px;min-height:0}.hero-copy{padding-top:105px}.hero-copy h1{font-size:2.6rem}.hero-shade{background:linear-gradient(90deg,#f5fbffed,#f5fbff66 70%,transparent)}.service-layout{grid-template-columns:190px 1fr;gap:35px}.works-filter{flex-wrap:wrap}.works-filter>div{min-width:200px}.company-intro{gap:50px}.contact-layout{grid-template-columns:1fr}.contact-aside{padding-bottom:30px;border-bottom:1px solid var(--line)}.footer-top{gap:30px}.work-categories{grid-template-columns:repeat(3,1fr)}}
@media(max-width:780px){.wrap{width:calc(100% - 40px)}.section{padding-block:65px}.section.compact{padding-top:20px}.split-section{grid-template-columns:1fr;gap:20px}.section-heading h2{white-space:normal}.hero{height:650px}.hero-copy{padding-top:82px}.hero-copy h1{font-size:2.1rem;letter-spacing:.04em}.hero-copy .eyebrow{font-size:.6rem}.hero-copy p{font-size:.95rem}.hero-shade{background:linear-gradient(90deg,#f3faffed,#f3faffa0 70%,#f3faff30)}.slide-side{width:36%}.trust-strip>.wrap{display:block}.trust-strip p{margin-top:6px}.trust-strip strong{margin:0;display:block}.section-intro{font-size:1.5rem}.section-bar{align-items:start;flex-direction:column;margin-bottom:28px;gap:15px}.service-grid{grid-template-columns:repeat(2,1fr);gap:12px}.service-card{aspect-ratio:1}.service-card strong{font-size:.9rem}.service-card>span{left:14px;right:14px;bottom:17px}.works-grid{grid-template-columns:repeat(2,1fr);gap:20px}.company-teaser{grid-template-columns:1fr}.company-photo img{min-height:0;max-height:400px}.company-copy{padding:40px 25px}.recruit-teaser{grid-template-columns:1fr;gap:35px}.recruit-photo span{left:0;bottom:-18px;font-size:14px}.cta-inner{display:block}.cta-inner>div+div{margin-top:30px;max-width:350px}.contact-cta{padding-block:50px}.contact-cta h2{font-size:2rem}.footer-top{grid-template-columns:1fr 1fr;gap:25px}.footer-message{display:none}.footer-bottom{flex-wrap:wrap;font-size:.7rem}.page-head{padding-block:22px 35px}.breadcrumbs{margin-bottom:38px}.service-layout{display:flex;flex-direction:column-reverse;gap:50px}.service-tagline{font-size:1.5rem;margin-top:30px}.service-nav{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.service-nav a{height:100%;font-size:.8rem}.work-detail-grid{grid-template-columns:1fr;gap:25px}.photo-gallery img{height:210px}.company-intro{grid-template-columns:1fr;gap:15px;margin-bottom:45px}.company-intro img{width:200px;justify-self:center;margin:0}.cert-grid{gap:15px}.cert-grid img{height:240px}.cert-grid figcaption{font-size:.75rem}.recruit-banner img{height:300px}.recruit-banner>span{font-size:1.2rem;bottom:20px;left:20px;padding:12px}.entry-content td,.entry-content th{padding:15px;font-size:.85rem}.entry-content th{width:30%}.contact-layout{gap:30px}.news-row{grid-template-columns:1fr 20px;gap:8px}.news-row time{grid-column:1/-1}.admin-bar .site-header{top:46px}}
@media(max-width:480px){:root{--header:72px}.header-inner{padding-inline:15px;gap:8px}.brand strong{font-size:1.02rem}.brand small{font-size:8px}.brand-mark{font-size:32px;border-left-width:5px}.brand a{gap:8px}.menu-toggle{padding:6px;gap:6px}.menu-label{font-size:.68rem}.menu-lines{width:18px}.hero{height:625px}.hero-copy{padding-top:67px}.hero-copy h1{font-size:1.8rem;line-height:1.8;margin-bottom:20px}.hero-copy .eyebrow{max-width:240px;line-height:1.7}.mobile-break{display:block}.hero-location{font-size:9px}.hero-bottom{bottom:20px;gap:10px}.slider-controls{gap:0;padding:2px}.slider-controls button{min-width:37px}.slide-count{font-size:13px;padding-inline:3px}.slide-count span{margin-left:3px}.strength-grid{gap:25px 18px}.strength h3{font-size:.95rem}.strength p{font-size:.85rem}.service-card small{font-size:8px}.service-card strong{font-size:.85rem}.works-grid{grid-template-columns:1fr}.work-categories{grid-template-columns:repeat(2,1fr)}.work-categories a{font-size:.78rem}.works-filter{padding:20px;gap:15px}.works-filter>div{min-width:100%}.works-filter .button{width:100%;justify-content:center}.works-filter>a{padding:0}.empty-state{padding:30px 20px}.photo-gallery{grid-template-columns:1fr}.photo-gallery img{height:auto;max-height:360px}.cert-grid{grid-template-columns:1fr}.cert-grid img{height:320px}.footer-top{grid-template-columns:1fr}.footer-top nav .nav-list{display:grid;grid-template-columns:1fr 1fr}.footer-top p{margin-top:15px}.footer-bottom{gap:15px}.footer-bottom small{order:3;width:100%}.entry-content table,.entry-content tbody,.entry-content tr,.entry-content th,.entry-content td{display:block;width:100%}.entry-content th{padding-bottom:10px}.entry-content td{padding-top:10px}.contact-aside .phone{font-size:1.7rem}.custom-logo{max-width:210px;max-height:58px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover{transform:none}.service-card:hover img,.work-card:hover img{transform:none}}@media print{.site-header,.site-footer,.slider-controls,.contact-cta,.menu-toggle{display:none}main{padding:0}.wrap{width:100%}.section{padding-block:25px}.hero{height:500px}.slide:not(.is-active){display:none}a{text-decoration:underline}}

.brand-logo{width:260px;height:auto}.service-visual img{object-fit:contain;max-height:none}.service-card small{font-size:10px;line-height:1.5}.hero-copy .eyebrow{font-size:12px}.brand a{line-height:1}.hero-location{font-size:12px}@media(max-width:480px){.brand-logo{width:225px;max-width:59vw}.hero-copy .eyebrow{font-size:10px}.hero-location{font-size:9px}}
/* September 2026 supplied design revision */
.screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.revision-hero{height:auto;aspect-ratio:2.48;min-height:420px;max-height:720px;background:#daeaf4}.revision-hero .slide-main{width:85%;object-position:center}.slide-montage{position:absolute;inset:0 0 0 auto;width:37%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:52% 48%;gap:7px;background:white;clip-path:polygon(57% 0,100% 0,100% 100%,0 100%);padding-left:8px}.slide-montage>div:first-child{grid-column:1/-1}.slide-montage img{width:100%;height:100%;object-fit:cover}.slide-montage>div:first-child img{object-position:70% center}.hero-message{position:absolute;top:12%;left:6%;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:600;font-size:clamp(24px,3vw,48px);line-height:1.8;letter-spacing:.04em;color:#142c49;text-shadow:0 1px 8px #ffffffc9}.revision-hero .hero-bottom{bottom:20px}.strength{border:1px solid var(--navy);padding:24px 18px}.strength-grid{gap:16px}.strength h3{font-size:1rem}.work-categories{grid-template-columns:repeat(3,1fr);margin-top:0}.work-categories a{background:var(--navy);color:white;padding:23px 12px}.work-categories a:hover{background:var(--blue)}.work-years{display:flex;gap:16px;margin-top:28px}.work-years a{border:1px solid var(--navy);border-radius:32px;padding:8px 34px}.coming-soon{text-align:center;padding-block:45px 120px}.coming-soon h2{font-family:Arial,sans-serif;font-size:clamp(42px,8vw,100px);font-weight:500;letter-spacing:.06em}.coming-soon p{color:var(--muted)}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-bottom:50px;align-items:start}.service-detail h2{font-size:1.6rem;margin-top:0}.service-pictures{display:grid;gap:10px}.service-pictures img{width:100%;height:auto;aspect-ratio:1.85;object-fit:cover}.service-detail .entry-content{line-height:1.9}.split-section .company-intro{grid-template-columns:1fr 220px;gap:35px}.split-section .company-intro .lead{display:none}.split-section .company-intro .section-heading h2{font-size:1.5rem}.split-section .cert-grid{gap:18px}.split-section .cert-grid img{height:260px}.split-section .photo-gallery img{height:auto;aspect-ratio:1.5;object-fit:cover}.trip{margin:25px 0 45px}.trip h3{font-size:1.1rem}.trip-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.trip-grid img{width:100%;height:100%;aspect-ratio:1.45;object-fit:cover}.trip-grid img:first-child{grid-column:span 2;grid-row:span 2}.trip-grid img:nth-child(6){grid-column:span 2;max-height:220px}.company-facts .entry-content{font-size:.9rem}.section .section{padding-block:40px}.service-grid{gap:10px}.service-card{aspect-ratio:1.25}.service-card>span{bottom:12px;left:12px;right:12px}.service-card small{font-size:8px}
@media(max-width:1059px){.revision-hero{min-height:390px}.service-detail{gap:25px}.split-section .company-intro{grid-template-columns:1fr 180px;gap:25px}.hero-message{font-size:30px}}
@media(max-width:780px){.revision-hero{aspect-ratio:auto;height:520px;min-height:0}.revision-hero .slide-main{width:100%;height:68%;object-position:center}.slide-montage{top:auto;bottom:0;left:0;width:100%;height:32%;clip-path:none;padding:5px 0 0;grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr;gap:5px}.slide-montage>div:first-child{grid-column:auto}.revision-hero .hero-bottom{bottom:calc(32% + 12px)}.hero-message{top:7%;left:5%;font-size:clamp(20px,4.3vw,30px);line-height:1.7}.hero-location{display:none}.revision-hero .hero-bottom{justify-content:flex-end}.service-detail{grid-template-columns:1fr}.service-pictures{grid-template-columns:1fr 1fr}.service-pictures img{aspect-ratio:1.4}.split-section .company-intro{grid-template-columns:1fr}.split-section .company-intro>img{max-width:280px;margin:0 auto}.work-categories{grid-template-columns:repeat(2,1fr)}.work-categories a{font-size:.8rem}.trip-grid{grid-template-columns:1fr 1fr}.trip-grid img:first-child{grid-row:auto}.trip h3{font-size:1rem}.split-section .cert-grid img{height:180px}.strength-grid{gap:12px}.strength{padding:18px 14px}.strength h3{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){.slide{transition:none}}
@media(min-width:1060px){:root{--header:150px}.header-inner{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:78px 72px;gap:0 30px}.header-certifications{justify-self:end}.header-certifications img{width:420px;height:64px;object-fit:contain}.primary-nav{grid-column:1/-1;justify-content:flex-end;gap:26px}.primary-nav .nav-list{gap:26px}.nav-contact{height:100%;align-items:center}.brand-logo{max-width:300px}.header-phone{font:bold 23px Arial;white-space:nowrap}}
@media(max-width:1059px){.header-certifications{display:none}.header-phone{display:block;padding:20px;font-size:1.25rem}}
.community-brand{display:flex;align-items:center;gap:18px;font-weight:bold}.community-brand img{width:72px;height:55px;object-fit:contain}.declaration{max-width:370px;margin:35px auto 60px}.initiatives{grid-template-columns:1fr 1fr}.policy{font-size:.9rem}.split-section .service-card{aspect-ratio:1.12}.split-section .service-card small,.split-section .service-card i{display:none}.split-section .service-card strong{font-size:.82rem}.split-section .service-card>span{left:7px;right:7px}.split-section .service-grid{grid-template-columns:repeat(5,1fr)}
@media(max-width:1200px){.split-section .service-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.split-section .service-grid{grid-template-columns:repeat(2,1fr)}.trust-strip>.wrap{padding-block:12px}.trust-strip p{display:none}.community-brand img{height:40px}}
.contact-review{width:min(680px,calc(100% - 32px));max-height:85svh;padding:32px;border:1px solid var(--line);color:var(--ink)}.contact-review::backdrop{background:#13203dcc}.contact-review dl{margin-bottom:25px}.contact-review dt{font-weight:bold;margin-top:18px;font-size:.9rem}.contact-review dd{margin:5px 0;border-bottom:1px solid var(--line);padding-bottom:14px;white-space:pre-wrap;overflow-wrap:anywhere}.contact-review .button{margin-right:12px}.contact-review h2{font-size:1.5rem}
.strength-icon{height:60px;width:82px;object-fit:contain;margin:0 auto 22px}.strength{text-align:center}.strength p{text-align:left}.slide-montage>div{overflow:hidden}
.revision-hero{width:100%}.revision-hero .slide::after{content:"";position:absolute;inset:0;pointer-events:none;background:white;clip-path:polygon(83.7% 0,84.3% 0,63.6% 100%,63% 100%)}
@media(max-width:780px){.revision-hero .slide::after{display:none}}

.access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.access-grid figure{margin:0}.access-grid img{width:100%;height:auto;object-fit:contain}.access-grid figcaption{font-size:.85rem;line-height:1.9;margin-top:12px}.access-grid a{color:var(--blue);text-decoration:underline}@media(max-width:780px){.access-grid{grid-template-columns:1fr}}

.yard-photo{margin:0 0 32px}.yard-photo img{width:100%;height:auto;max-height:480px;object-fit:cover;object-position:center 75%}.yard-photo figcaption{margin-top:10px;font-size:.9rem}
/* Match the supplied TOP PDF; narrow screens retain a readable stacked layout. */
:root{--navy:#0e2b66;--blue:#0861b4;--ink:#231f20;--max:1200px}
.home .section{padding-block:48px}.home .split-section{grid-template-columns:210px minmax(0,1fr);gap:30px}.home .section-heading h2{font-size:27px;margin-bottom:14px;line-height:1.6}.home .eyebrow{font-size:12px;letter-spacing:.02em;font-weight:400;margin-bottom:10px}.heading-description{font-size:14px;line-height:1.8}.home .strength-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.home .strength{padding:22px 12px}.home .strength h3{font-size:16px;color:var(--navy);line-height:1.65}.home .strength p{text-align:center;font-size:13px;color:var(--ink)}.home .strength-icon{height:55px;margin-bottom:14px}
.revision-hero{min-height:0;max-height:none;aspect-ratio:2.48}.hero-message{font-size:clamp(22px,2.65vw,46px);left:8%;top:12%;letter-spacing:.12em}.pdf-slider{position:absolute;inset:0;background:none;padding:0;display:block;pointer-events:none}.pdf-slider button{pointer-events:auto}.pdf-slider [data-slide-prev],.pdf-slider [data-slide-next]{position:absolute;top:45%;background:#151515aa;color:white;min-width:40px;min-height:58px;font-size:24px}.pdf-slider [data-slide-prev]{left:0}.pdf-slider [data-slide-next]{right:0}.slide-dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:3px}.pdf-slider .slide-dots button{min-width:36px;min-height:36px;padding:0;position:relative}.slide-dots button:after{content:'';display:block;width:12px;height:12px;border-radius:50%;background:white;margin:auto}.slide-dots button[aria-pressed=true]:after{background:#0e2b66;border:2px solid white}.pdf-slider [data-slide-pause]{position:absolute;right:12px;bottom:12px;color:white;background:#15151588;min-width:36px;min-height:36px;font-size:16px}
.trust-strip{position:relative;border-bottom:0;background:#f7f8fb}.trust-strip:after{content:'';position:absolute;right:0;top:0;bottom:0;width:24%;background:var(--navy);clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)}.trust-strip>.wrap{padding:0;justify-content:flex-start;gap:35px;height:64px}.instagram-brand{height:100%;background:var(--navy);color:white;display:flex;align-items:center;gap:20px;padding:0 32px;font-size:20px;font-family:Georgia,serif;font-style:italic}.instagram-brand>span{font:35px Arial}.community-brand img:first-child{width:145px;height:45px}.community-brand img:last-child{width:62px;height:50px}
.home .service-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.home .service-card{aspect-ratio:1.35}.home .service-card strong{font-size:13px;text-align:center}.home .service-card>span{left:3px;right:3px;bottom:8px}.home .work-categories{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.home .work-category{display:block;padding:15px 8px;font-size:14px}.home .work-years{margin:10px 0 0;gap:10px}.home .work-years a{background:white;color:var(--blue);border:1px solid #555;border-radius:22px;padding:1px 6px;flex:1;font-size:13px}
.home .company-intro{grid-template-columns:minmax(0,1fr) 180px;gap:28px;font-size:14px;line-height:1.75;margin-bottom:36px}.home .company-intro p{margin-bottom:0}.home .company-intro>img{margin-top:45px}.small-label,.home .company-facts>h2,.home #requirements>h2{display:table;background:var(--navy);color:white;border-radius:4px;padding:4px 15px;font-size:13px;margin:0 0 20px;letter-spacing:0}.home .company-facts .entry-content table{font-size:14px}.home .company-facts .wp-block-table{margin:0}.home .company-facts th,.home .company-facts td{border:1px solid #00a5e8;padding:10px 16px;font-size:14px;line-height:1.7}.home .company-facts th{width:27%;font-weight:600;background:#f6f7f7}.company-map img{width:100%;margin:8px 0;max-height:none}.home .company-facts .entry-content p{margin:0}.home .company-facts .entry-content h3{display:none}.home .section .section{padding-block:28px}.home .iso-label,.home .company-facts~section>h2{border:1px solid var(--blue);border-radius:10px;color:var(--blue);font-size:20px;text-align:center;max-width:70%;margin:20px auto}.home .policy-title{font-size:18px;text-align:center;color:var(--blue);margin-bottom:10px}.home .cert-grid{margin:0;gap:15px;max-width:none}.home .cert-grid img{height:auto;width:100%}.home .cert-grid:not(.initiatives) figcaption{display:none}.home .policy{padding-top:0!important;font-size:14px;line-height:1.7}.home .policy p{margin-bottom:0}.home .policy ol{padding-left:1.3em;margin:0}.home .policy ul{columns:2;margin-top:0}.home .declaration{max-width:340px;margin:25px auto 50px}.home .initiatives{max-width:670px;margin:auto;gap:50px}.home .initiatives img{height:430px;object-fit:contain}.home .initiatives figcaption{color:var(--blue);font-weight:bold;margin-top:10px}.home .community-gallery{max-width:670px;margin:auto}.community-gallery figure{margin-bottom:38px}.community-gallery figure>div{display:flex}.community-gallery img{width:100%;min-width:0;flex:1;object-fit:cover;aspect-ratio:2.5}.community-gallery figure>div:has(img:nth-child(2)) img{width:50%;aspect-ratio:1.25}.community-gallery figcaption{text-align:center;color:var(--blue);font-weight:bold;font-size:16px;margin-top:10px}
.home .trip{margin:30px 0 45px}.home .trip h3{color:var(--blue);font-size:22px}.home .trip-grid{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:220px 180px;gap:6px}.home .trip-grid img{aspect-ratio:auto}.home .trip-grid img:first-child{grid-column:span 4;grid-row:auto}.home .trip-grid img:nth-child(n+4){grid-column:span 2;max-height:none}.home .trip:nth-of-type(2) .trip-grid{grid-template-rows:200px 200px}.home .trip:nth-of-type(2) .trip-grid img:first-child{grid-row:span 2}.home .trip:nth-of-type(2) .trip-grid img:nth-child(n+2){grid-column:span 1}.home #requirements .wp-block-table{margin:0}.home #requirements tbody{display:grid;grid-template-columns:1fr 1fr;gap:8px 30px}.home #requirements tr{display:flex;align-items:start}.home #requirements th,.home #requirements td{border:0;background:none;font-size:14px;padding:3px;line-height:1.8}.home #requirements th{flex:0 0 100px;font-weight:bold}.home #requirements td{flex:1}.home #requirements>p,.home #requirements>.button{font-size:13px}
.home .contact-layout{width:100%;display:block;padding:0;max-width:880px;margin:auto}.home .contact-aside,.home #contact-form{border:5px solid #e0f4fe;padding:38px 10%;margin-bottom:40px;text-align:center}.home .contact-aside .eyebrow,.home #contact-form>.eyebrow{display:none}.home .contact-aside h2,.home #contact-form>h2{color:#00a5e8;font-size:26px}.home .contact-aside h2:before{content:'☎';display:block;font-size:44px}.home #contact-form>h2:before{content:'✉';display:block;font-size:44px}.home .contact-aside .phone{font-size:clamp(26px,3.8vw,62px);color:var(--ink);font-weight:bold;margin:12px 0}.home .contact-aside>p{display:none}.home .contact-form{text-align:left}.home .form-field input,.home .form-field textarea{border:1px solid #777;border-radius:9px}.home .form-field label>span{background:#dd001b;color:white;border-radius:12px;padding:1px 5px}.home .contact-form>.button{background:#00a5e8;border:0;border-radius:16px;width:auto;display:flex;margin:25px auto}
.pdf-footer{padding-top:65px}.pdf-footer-nav{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #333;padding-bottom:20px;gap:20px}.pdf-footer-nav .nav-list{gap:25px;flex-wrap:wrap}.pdf-footer-nav .nav-list li:first-child{display:none}.pdf-footer-nav a{font-size:14px}.pdf-footer-main{display:flex;justify-content:space-between;gap:40px;padding:25px 0}.pdf-footer-main .brand-logo{width:400px;margin-bottom:25px}.pdf-footer-main p{font-size:13px;line-height:1.8}.pdf-footer-marks{width:420px;align-self:end}.pdf-footer-marks .community-brand{justify-content:flex-end;margin-bottom:30px}.pdf-footer-marks>img{width:100%}.pdf-copyright{text-align:center;font-size:12px;letter-spacing:.06em;padding:0 0 25px}
@media(min-width:1060px){.header-inner{max-width:none;padding:0 24px}.brand-logo{width:260px}.primary-nav{gap:25px}.primary-nav .nav-list{gap:25px}.nav-list a{font-size:12px}.header-phone{font-size:20px}.nav-contact{padding:15px 30px;font-size:12px}.header-certifications img{width:440px}}
@media(max-width:1059px){.home .split-section{grid-template-columns:170px minmax(0,1fr);gap:20px}.home .strength-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home .company-intro{grid-template-columns:1fr 130px;gap:15px}.home .trip-grid{grid-template-rows:150px 130px}.pdf-footer-nav{display:block}.pdf-footer-main{gap:20px}.pdf-footer-marks{width:35%}}
@media(max-width:780px){.home .split-section{grid-template-columns:1fr;gap:20px}.home .section{padding-block:32px}.home .section-heading h2{font-size:25px}.heading-description br{display:none}.revision-hero{height:460px;aspect-ratio:auto}.slide-dots{bottom:calc(32% + 5px)}.pdf-slider [data-slide-prev],.pdf-slider [data-slide-next]{top:30%}.trust-strip>.wrap{width:100%;gap:15px;height:55px}.trust-strip:after{display:none}.instagram-brand{font-size:17px;padding:0 18px;gap:10px}.community-brand{gap:8px}.community-brand img:first-child{width:110px}.community-brand img:last-child{width:45px}.home .strength-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home .company-intro{grid-template-columns:1fr}.home .company-intro>img{max-width:180px;margin:auto}.home .company-facts th,.home .company-facts td{font-size:13px}.home .company-facts th{width:100%}.home .cert-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.home .initiatives{grid-template-columns:1fr 1fr;gap:20px}.home .initiatives img{height:240px}.home .iso-label,.home .company-facts~section>h2{max-width:100%;font-size:17px}.home .work-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.home .trip-grid{grid-template-rows:120px 110px}.home .trip:nth-of-type(2) .trip-grid{grid-template-rows:115px 115px}.home .trip h3{font-size:18px}.home #requirements tbody{grid-template-columns:1fr}.home #requirements th{width:auto}.home .contact-aside,.home #contact-form{padding:25px 18px}.home .contact-aside h2,.home #contact-form>h2{font-size:19px}.pdf-footer-nav .nav-list{gap:10px 25px}.pdf-footer-main{display:block}.pdf-footer-marks{width:100%;max-width:370px;margin:25px auto}.pdf-footer-main .brand-logo{max-width:320px}.pdf-footer-nav>span{font-size:13px}.home .policy ul{columns:1}}

.pdf-footer-main .brand-logo{max-width:100%}.community-gallery figure:first-child img{object-position:center 80%}.home .trip h3 small{display:block;font-size:16px;margin-bottom:4px}.home .form-field:has(#field-postcode) input{max-width:240px}.home .company-facts~section>h2:not(.iso-label){max-width:340px;padding:4px 10px}.home #requirements tbody{grid-auto-flow:column;grid-template-rows:repeat(5,auto)}.home #requirements tr:nth-child(1){grid-column:1;grid-row:1}.home #requirements tr:nth-child(2){grid-column:1;grid-row:2}.home #requirements tr:nth-child(3){grid-column:1;grid-row:3}.home #requirements tr:nth-child(4){grid-column:1;grid-row:4}.home #requirements tr:nth-child(7){grid-column:1;grid-row:5}.home #requirements tr:nth-child(5){grid-column:2;grid-row:1}.home #requirements tr:nth-child(6){grid-column:2;grid-row:2 / span 2}.home #requirements tr:nth-child(8){grid-column:2;grid-row:4 / span 2}
@media(max-width:780px){.home #requirements tbody{display:block}.home .company-facts th:empty{display:none}.pdf-footer-main .brand-logo{width:min(320px,100%)}.home .policy{font-size:13px}}
.trust-strip>.wrap{display:flex}.instagram-brand>span{font-size:0;width:26px;height:26px;border:2px solid white;border-radius:7px;position:relative}.instagram-brand>span:before{content:'';position:absolute;width:10px;height:10px;border:2px solid white;border-radius:50%;left:5px;top:5px}.instagram-brand>span:after{content:'';position:absolute;width:3px;height:3px;background:white;border-radius:50%;right:3px;top:3px}
@media(max-width:480px){.trust-strip>.wrap{gap:10px}.instagram-brand{padding:0 12px;font-size:16px}.community-brand img:first-child{width:100px}.community-brand img:last-child{width:40px}}

.company-map iframe{display:block;width:100%;height:320px;border:0;margin:10px 0}.company-map>a{font-size:13px;color:var(--blue);text-decoration:underline}@media(max-width:480px){.company-map iframe{height:260px}}

/* Footer address columns align across all three locations. */
.footer-addresses{font-size:13px;font-weight:600;line-height:1.9;margin:24px 0}.footer-address-row{display:grid;grid-template-columns:7em 7.5em minmax(0,1fr);column-gap:10px;align-items:baseline}.footer-location,.footer-postcode,.footer-tel,.footer-fax{white-space:nowrap}.footer-tel{grid-column:3}.footer-fax{grid-column:3}.pdf-footer-main>div:first-child{min-width:0;flex:1}.pdf-footer-marks{flex-shrink:0}
@media(min-width:1200px){.pdf-footer-main{position:relative;display:block;min-height:285px;padding-bottom:80px}.pdf-footer-main>div:first-child{width:100%}.footer-address-row{grid-template-columns:7em 7.5em max-content max-content max-content;column-gap:14px}.footer-tel,.footer-fax{grid-column:auto}.pdf-footer-marks{position:absolute;right:0;bottom:0;width:360px;pointer-events:none}.pdf-footer-marks .community-brand{margin-bottom:15px}.pdf-footer-main>div:first-child>p:last-child{padding-right:380px}.footer-addresses{position:relative;z-index:1}}
@media(max-width:780px){.footer-address-row{grid-template-columns:6.5em minmax(0,1fr);column-gap:8px;margin-bottom:12px}.footer-postcode{grid-column:2}.footer-street,.footer-tel,.footer-fax{grid-column:2}.pdf-footer-marks{flex-shrink:1}.footer-addresses{font-size:12px}}
.hf_link{
	display: inline-flex;
    pointer-events: auto;
}