:root{
  --navy:#002f5c;--navy-deep:#001f3d;--blue:#089bd5;--blue-dark:#067dad;
  --ink:#172433;--muted:#607080;--light:#f3f6f8;--light-blue:#eaf6fb;
  --line:#d7e0e7;--white:#fff;--max:1240px;--radius:8px;
  --shadow:0 18px 50px rgba(0,47,92,.10)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Manrope,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue-dark)}
.entry-content{overflow:hidden}
.entry-content>*{margin-block-start:0;margin-block-end:0}
.wp-site-blocks{padding:0}
.site-shell{width:min(calc(100% - 40px),var(--max));margin:auto}

/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid rgba(0,47,92,.10);backdrop-filter:blur(16px);box-shadow:0 4px 18px rgba(0,47,92,.04)}
.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;gap:34px}
.site-brand{display:flex;align-items:center;flex:0 0 auto}
.site-brand img{width:230px;height:auto}
.primary-nav ul{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0}
.primary-nav a{position:relative;color:var(--navy);text-decoration:none;font-size:14px;font-weight:750;padding:34px 0 32px;white-space:nowrap}
.primary-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:24px;height:3px;background:var(--blue);transition:right .25s ease}
.primary-nav a:hover:after,.primary-nav .current-menu-item>a:after{right:0}
.primary-nav li:last-child a{padding:12px 18px;background:var(--navy);color:#fff;border-radius:4px}
.primary-nav li:last-child a:after{display:none}
.primary-nav li:last-child a:hover{background:var(--blue)}
.menu-toggle{display:none;border:0;background:var(--navy);border-radius:4px;padding:9px 10px;cursor:pointer}
.menu-toggle span:not(.screen-reader-text){display:block;width:25px;height:2px;background:#fff;margin:5px}

/* Global Gutenberg layout */
.st-section{padding:112px max(20px,calc((100vw - var(--max))/2))!important}
.st-section>.wp-block-group__inner-container,.st-section>.wp-block-columns,.st-section>p,.st-section>h2,.st-section>h3{max-width:var(--max);margin-left:auto!important;margin-right:auto!important}
.st-section-light{background:var(--light)}
.st-section-navy{background:var(--navy-deep);color:#fff}
.st-section-blue{background:linear-gradient(120deg,var(--blue),#21b5ea);color:#fff}
.st-section-navy h2,.st-section-navy h3,.st-section-blue h2,.st-section-blue h3{color:#fff}
.st-container{max-width:var(--max)!important;margin-inline:auto!important;width:100%}
.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px!important;line-height:1.2!important;font-weight:800;color:var(--blue);margin:0 0 18px!important}
.st-heading{font-size:clamp(36px,4vw,58px)!important;line-height:1.08!important;letter-spacing:-.045em!important;margin:0!important;color:var(--navy)}

/* Hero */
.st-hero{min-height:770px;position:relative;display:flex;align-items:center;padding:115px max(20px,calc((100vw - var(--max))/2)) 95px!important;background-position:center!important;background-size:cover!important}
.st-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:linear-gradient(90deg,var(--blue) 0 34%,rgba(8,155,213,.35) 34% 100%);z-index:2}
.st-hero .wp-block-cover__background{background:linear-gradient(90deg,rgba(0,31,61,.96) 0%,rgba(0,47,92,.83) 48%,rgba(0,47,92,.25) 100%)!important;opacity:1!important}
.st-hero .wp-block-cover__inner-container{width:100%!important;max-width:var(--max)!important;margin:auto!important;position:relative;z-index:3}
.st-hero h1{font-size:clamp(50px,7vw,94px)!important;line-height:.98!important;letter-spacing:-.055em!important;max-width:900px;margin:0!important;color:#fff!important}
.st-hero h1 mark{color:#52c7f2!important;background:transparent!important}
.st-hero .hero-copy{font-size:19px!important;line-height:1.65;max-width:680px;color:#e2edf4!important;margin:32px 0!important}
.st-hero .wp-block-buttons{gap:14px}
.wp-block-button__link{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 25px!important;border-radius:4px!important;font-size:14px!important;font-weight:800!important;text-decoration:none;transition:.25s ease}
.wp-block-button:not(.is-style-outline) .wp-block-button__link{background:var(--blue)!important;color:#fff!important;box-shadow:0 10px 26px rgba(8,155,213,.25)}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover{background:var(--navy)!important;transform:translateY(-2px)}
.st-hero .is-style-outline .wp-block-button__link,.st-section-blue .is-style-outline .wp-block-button__link{background:rgba(0,47,92,.18)!important;color:#fff!important;border:1px solid rgba(255,255,255,.75)!important}
.st-hero .is-style-outline .wp-block-button__link:hover,.st-section-blue .is-style-outline .wp-block-button__link:hover{background:#fff!important;color:var(--navy)!important}

/* Intro */
.st-intro{display:grid!important;grid-template-columns:1.2fr .8fr;gap:100px!important;align-items:end!important}
.st-intro>.wp-block-column{min-width:0}
.st-intro p:not(.eyebrow){font-size:18px;color:var(--muted)}
.st-intro a{font-weight:800;text-decoration:none;color:var(--navy)}

/* Cards */
.st-cards{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px!important;align-items:stretch!important;margin-top:50px!important}
.st-cards>.wp-block-column{margin:0!important;min-width:0}
.st-card{height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(0,47,92,.07);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 28px rgba(0,47,92,.06);transition:transform .3s ease,box-shadow .3s ease}
.st-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.st-card>.wp-block-group__inner-container{height:100%;display:flex;flex-direction:column}
.st-card .wp-block-image{margin:0!important;overflow:hidden}
.st-card img{width:100%;height:260px;object-fit:cover;transition:transform .5s ease}
.st-card:hover img{transform:scale(1.035)}
.st-card-body{padding:32px!important;display:flex;flex-direction:column;flex:1}
.st-card-body>.wp-block-group__inner-container{display:flex;flex-direction:column;flex:1}
.st-card h3{font-size:25px!important;line-height:1.18!important;margin:0 0 13px!important;color:var(--navy)}
.st-card p{color:var(--muted);margin:0 0 14px!important}
.st-card p:last-child{margin-top:auto!important;margin-bottom:0!important}
.st-card a{font-weight:800;text-decoration:none;color:var(--blue-dark)}

/* Image/text sections and facts */
.st-image-rounded img{border-radius:var(--radius);box-shadow:var(--shadow);min-height:520px;object-fit:cover}
.st-facts{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px!important;margin-top:45px!important}
.st-facts>.wp-block-column{margin:0!important}
.st-fact{padding:30px!important;background:#fff;border-top:4px solid var(--blue);box-shadow:0 8px 28px rgba(0,47,92,.08);height:100%}
.st-fact h3{font-size:40px!important;line-height:1!important;margin:0 0 12px!important;color:var(--navy)}
.st-fact p{margin:0!important;color:var(--muted)}
.st-process{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px!important}
.st-process>.wp-block-column{margin:0!important;background:#fff;padding:32px;border-top:4px solid var(--blue);border-radius:0 0 var(--radius) var(--radius);box-shadow:0 8px 28px rgba(0,47,92,.06);min-height:250px}
.st-process h3{font-size:24px!important;margin:35px 0 10px!important;color:var(--navy)}
.st-process p{color:var(--muted);font-size:14px}

/* References */
.st-section-navy .st-cards{grid-template-columns:1.5fr 1fr 1fr}
.st-ref{position:relative;overflow:hidden;border-radius:var(--radius);min-height:500px;background:var(--navy)}
.st-ref .wp-block-image{height:100%;margin:0!important}
.st-ref img{width:100%;height:500px;object-fit:cover;transition:transform .5s ease}
.st-ref:hover img{transform:scale(1.035)}
.st-ref:after{content:"";position:absolute;inset:28% 0 0;background:linear-gradient(transparent,rgba(0,31,61,.96));pointer-events:none}
.st-ref h3{position:absolute;left:0;right:0;bottom:0;z-index:2;color:#fff!important;font-size:24px!important;line-height:1.2!important;margin:0!important;padding:30px!important;text-shadow:none!important}

/* Interior pages */
.page-hero{min-height:430px;padding:100px max(20px,calc((100vw - var(--max))/2)) 70px!important;display:flex;align-items:flex-end;background-position:center!important;background-size:cover!important}
.page-hero .wp-block-cover__background{background:linear-gradient(90deg,rgba(0,31,61,.96),rgba(0,47,92,.52))!important;opacity:1!important}
.page-hero .wp-block-cover__inner-container{width:100%!important;max-width:var(--max)!important;margin:auto!important}
.page-hero h1{font-size:clamp(44px,6vw,76px)!important;line-height:1!important;letter-spacing:-.05em!important;color:#fff!important;margin:0 0 15px!important}
.page-hero p{color:#e2edf3!important;font-size:19px!important;margin:0!important}
.st-prose{max-width:900px!important;margin-inline:auto!important}
.st-prose p,.st-prose li{font-size:18px;color:#566879}
.st-prose h2{font-size:clamp(32px,4vw,48px)!important;line-height:1.1!important;margin:50px 0 18px!important;color:var(--navy)}
.st-prose h3{font-size:25px!important;margin:35px 0 12px!important;color:var(--navy)}
.st-link-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px!important}
.st-link-grid>.wp-block-column{margin:0!important}
.st-link-card{padding:30px!important;background:var(--light);border-left:4px solid var(--blue);height:100%;box-shadow:0 8px 24px rgba(0,47,92,.04)}
.st-link-card h3{font-size:22px!important;margin:0 0 12px!important}
.st-link-card a{text-decoration:none;font-weight:800}
.cta-band{padding:75px max(20px,calc((100vw - var(--max))/2))!important}
.cta-band>.wp-block-columns{max-width:var(--max);margin:auto!important;align-items:center!important}
.cta-band h2{font-size:clamp(32px,4vw,50px)!important;margin:0!important;color:#fff!important}
.cta-band .wp-block-buttons{justify-content:flex-end}
.contact-box{padding:36px!important;background:var(--light);border-top:5px solid var(--blue);box-shadow:0 12px 35px rgba(0,47,92,.08)}

/* Footer */
.site-footer{background:var(--navy-deep);color:#fff;border-top:7px solid var(--blue);padding:70px 0 25px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:45px}
.footer-grid>div{display:flex;flex-direction:column;gap:9px}
.footer-grid strong{margin-bottom:10px}
.footer-grid a,.footer-grid span,.footer-grid p{color:#bad0dd;font-size:13px;text-decoration:none}
.footer-logo{background:#fff;padding:12px 15px;width:max-content;border-radius:4px}
.footer-logo img{width:210px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:48px;padding-top:22px;display:flex;justify-content:space-between;color:#93afbd;font-size:12px}
.footer-bottom a{color:#bad0dd;text-decoration:none}
.simple-title{padding:70px 0 20px}.not-found{padding:120px 0}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Gutenberg editor: keep blocks visually close to frontend */
.editor-styles-wrapper{font-family:Manrope,"Segoe UI",Arial,sans-serif!important;color:var(--ink);padding:0!important}
.editor-styles-wrapper .st-section{padding-top:80px!important;padding-bottom:80px!important}
.editor-styles-wrapper .st-hero{min-height:620px!important}
.editor-styles-wrapper .st-card{min-height:100%}

@media(max-width:1020px){
 .primary-nav ul{gap:18px}.primary-nav a{font-size:13px}.site-brand img{width:200px}
 .st-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .st-section-navy .st-cards{grid-template-columns:1fr 1fr!important}.st-section-navy .st-cards>.wp-block-column:first-child{grid-column:1/-1}
 .st-facts,.st-process{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
 .header-inner{height:80px}.site-brand img{width:190px}.menu-toggle{display:block}
 .primary-nav{display:none;position:absolute;top:80px;left:0;right:0;background:#fff;padding:14px 22px 24px;box-shadow:0 18px 35px rgba(0,47,92,.14)}
 .primary-nav.open{display:block}.primary-nav ul{display:block}.primary-nav a{display:block;padding:14px 4px;border-bottom:1px solid var(--line)}.primary-nav a:after{display:none}.primary-nav li:last-child a{margin-top:14px;text-align:center}
 .st-intro{grid-template-columns:1fr!important;gap:48px!important}.st-image-rounded img{min-height:420px}
 .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
 .site-shell{width:min(calc(100% - 28px),var(--max))}.header-inner{height:72px}.site-brand img{width:165px}.primary-nav{top:72px}
 .st-section{padding:76px 14px!important}.st-hero{min-height:700px;padding:90px 14px 70px!important}.st-hero h1{font-size:48px!important}.st-hero .hero-copy{font-size:16px!important}
 .st-cards,.st-section-navy .st-cards,.st-facts,.st-process,.st-link-grid{grid-template-columns:1fr!important}.st-section-navy .st-cards>.wp-block-column:first-child{grid-column:auto}
 .st-card img{height:240px}.st-card-body{padding:27px!important}.st-ref,.st-ref img{min-height:430px;height:430px}
 .page-hero{min-height:390px;padding:85px 14px 55px!important}.page-hero h1{font-size:45px!important}.page-hero p{font-size:17px!important}
 .cta-band>.wp-block-columns{display:block}.cta-band .wp-block-buttons{justify-content:flex-start;margin-top:25px}
 .footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:10px}
}
