/* Corporate structure: shared Archivo / Public Sans identity. */
.corp-section{padding:96px max(24px,calc((100vw - 1280px)/2));color:#152126;background:#f0f3f2}
.corp-section h1,.corp-section h2,.corp-section h3,.corp-hero h1{font-family:Archivo,Arial,sans-serif;letter-spacing:-.045em;font-weight:500;line-height:1.08;overflow-wrap:break-word}
.corp-section h1{font-size:clamp(2.5rem,5.4vw,5rem);max-width:1040px;margin:22px 0 30px}.corp-section h2{font-size:clamp(2rem,3.8vw,3.5rem);margin:0 0 24px}.corp-section h3{font-size:clamp(1.4rem,2vw,2rem);margin:0 0 20px}
.corp-section p{line-height:1.7;max-width:72ch;color:#3f5058}.corp-section .eyebrow{font-size:.75rem;letter-spacing:.12em;color:#334951;text-transform:uppercase;font-weight:600;margin:0 0 24px}.corp-lead{font-size:clamp(1.1rem,1.6vw,1.35rem)}
.corp-heading{display:grid;grid-template-columns:1fr 2fr;gap:56px;margin-bottom:48px}.corp-heading>div{max-width:850px}
.corp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin:40px 0}.corp-grid article{border-top:1px solid #9daeb1;padding-top:28px;min-width:0}.corp-grid p{font-size:1rem}
.corp-services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.corp-services article{border-top:1px solid #9daeb1;padding-top:30px;display:flex;flex-direction:column;min-width:0}.corp-services h3{min-height:3.3em}.corp-services .corp-link{margin-top:auto}
.corp-link{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:48px;padding:12px 0;color:inherit;font-size:1rem;line-height:1.4;border-bottom:1px solid currentColor;text-decoration:none;max-width:100%;font-weight:500}.corp-link:hover{text-decoration:underline;text-underline-offset:5px}
.corp-dark,.corp-dark .corp-section{background:#131d21;color:#f3f5f4}.corp-dark .corp-section p{color:#c8d2d3}.corp-dark .corp-section .eyebrow{color:#c8d2d3}.corp-dark .corp-grid article{border-color:#57686e}
.corp-note{padding:28px;border-left:2px solid #4b6371;background:#e5ebea}.corp-photo{margin:0;background:#131d21;width:100%}.corp-photo img{display:block;width:100%;height:auto;object-fit:contain}.corp-photo picture{display:block}
.corp-hero{position:relative;isolation:isolate;background:#131d21;min-height:740px;color:#f7f8f7;display:flex;align-items:center;padding:96px max(24px,calc((100vw - 1280px)/2))}.corp-hero>picture{position:absolute;inset:0;z-index:-3}.corp-hero>picture img{width:100%;height:100%;object-fit:cover}.corp-hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(9,17,20,.92) 0%,rgba(9,17,20,.82) 38%,rgba(9,17,20,.18) 75%)}.corp-hero-copy{max-width:760px}.corp-hero h1{font-size:clamp(2.7rem,4.3vw,4.3rem);margin:24px 0 28px}.corp-hero p{font-size:1.1rem;max-width:54ch;line-height:1.65;color:#f3f5f4}.corp-hero .eyebrow{font-size:.75rem;letter-spacing:.12em}.corp-actions{display:flex;flex-wrap:wrap;gap:36px;margin-top:32px}.corp-hero .corp-link{color:#fff}
.corp-cta{background:#dde5e4}.corp-cta h2{max-width:900px}.corp-intro{padding-top:76px;padding-bottom:72px}.corp-logo-wall{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:30px;background:#131d21;padding:36px;margin:36px 0}.corp-logo-wall img{display:block;max-width:100%;width:auto;height:auto;max-height:48px;object-fit:contain;margin:auto}
header{position:relative;z-index:30}header nav{gap:24px}header nav a{min-height:44px;display:inline-flex;align-items:center}footer a{min-height:36px;display:inline-flex;align-items:center}main{min-width:0}body{overflow-wrap:break-word}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #2381c4;outline-offset:5px} .corp-dark a:focus-visible,.corp-hero a:focus-visible,header a:focus-visible,header button:focus-visible{outline-color:#a9ddff}
@media(max-width:1000px){header nav{gap:14px;font-size:.85rem}.corp-heading{gap:30px}.corp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.corp-hero-copy{max-width:660px}.corp-services{gap:22px}}
@media(max-width:800px){header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#131d21;padding:20px 24px;flex-direction:column;align-items:stretch;gap:4px}header nav.open{display:flex}header .menu{display:block}header nav a{padding:10px 0}.corp-section{padding:64px 24px}.corp-heading{display:block;margin-bottom:32px}.corp-grid,.corp-services{grid-template-columns:1fr;gap:28px}.corp-services h3{min-height:0}.corp-hero{min-height:720px;padding:64px 24px;align-items:flex-end}.corp-hero h1{font-size:clamp(2.35rem,7.6vw,4rem)}.corp-hero-shade{background:linear-gradient(0deg,rgba(9,17,20,.97),rgba(9,17,20,.83) 55%,rgba(9,17,20,.18))}.corp-hero-copy{max-width:620px}.corp-logo-wall{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:24px}.corp-intro{padding-top:56px}}
@media(max-width:380px){.corp-section{padding:48px 20px}.corp-hero{padding:40px 20px;min-height:760px}.corp-hero h1{font-size:2.35rem}.corp-actions{gap:16px;flex-direction:column;align-items:flex-start}.corp-logo-wall{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.corp-brand-panel{background:#131d21;color:#e2e4e5;padding:32px;margin-top:36px}.corp-brand-panel .eyebrow{color:#c8d2d3}.corp-brand-panel .corp-logo-wall{grid-template-columns:repeat(4,minmax(0,1fr));padding:24px 0;margin-bottom:0}@media(max-width:700px){.corp-brand-panel{padding:24px}.corp-brand-panel .corp-logo-wall{grid-template-columns:repeat(2,minmax(0,1fr))}}

.icon-arrow{display:block;flex:none;width:22px;height:22px;color:inherit;transition:transform .2s ease}.corp-link:hover .icon-arrow{transform:translate(2px,-2px)}
@media(prefers-reduced-motion:reduce){.icon-arrow{transition:none}.corp-link:hover .icon-arrow{transform:none}}

.corp-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:800px){.corp-grid-four{grid-template-columns:1fr}}
#form-status:not(:empty){padding:20px;border-left:3px solid #4b6371;background:#e5ebea;color:#152126;margin-bottom:24px;line-height:1.6}#contact-form :disabled{cursor:not-allowed;opacity:.6}#contact-form button:disabled{opacity:1;background:#d4dcdd;color:#46585e}

/* Design review: calm subheads, consistent internal-link icons, balanced process image. */
.corp-section h3{letter-spacing:-.018em}.icon-arrow{width:20px;height:20px}.corp-link:hover .icon-arrow{transform:translateX(3px)}header nav a[aria-current="page"],header nav a[aria-current="location"]{text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:2px;font-weight:600}.corp-photo-process{padding:0 max(24px,calc((100vw - 1120px)/2));background:#131d21}.corp-photo-process img{max-height:630px;object-fit:contain}@media(max-width:800px){.corp-photo-process{padding:0}.corp-photo-process img{max-height:none;height:auto}}@media(prefers-reduced-motion:reduce){.corp-link:hover .icon-arrow{transform:none}}

body:has(.corp-intro) .corp-section{padding-top:64px;padding-bottom:64px}body:has(.corp-intro) .corp-intro{padding-top:52px;padding-bottom:48px}body:has(.corp-intro) .corp-photo:not(.corp-photo-process){max-height:620px;overflow:hidden}body:has(.corp-intro) .corp-photo:not(.corp-photo-process) img{max-height:620px;object-fit:contain}.corp-cycle{list-style:none;counter-reset:cycle;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:0;margin:36px 0}.corp-cycle li{counter-increment:cycle;border-top:1px solid #80969b;padding-top:24px}.corp-cycle li::before{content:"0" counter(cycle);display:block;font-size:.8rem;margin-bottom:18px;color:#4b6371}.corp-cycle h3{margin-bottom:12px}.corp-cycle p{margin:0}@media(max-width:800px){body:has(.corp-intro) .corp-section{padding-top:44px;padding-bottom:44px}.corp-cycle{grid-template-columns:1fr;gap:24px}body:has(.corp-intro) .corp-photo:not(.corp-photo-process){max-height:none}body:has(.corp-intro) .corp-photo:not(.corp-photo-process) img{max-height:none}}
