/* Shared corporate navigation, project portfolio and contact surfaces. */
:root{--corp-text:#edf2fc;--corp-muted:#a9b8cf;--corp-surface:#111d32;--corp-border:#ffffff20;--corp-page:#0b1426;--corp-accent:#64dbe9;--corp-shadow:0 18px 50px #00000020}
html[data-site-theme="blue"]{--corp-text:#14345e;--corp-muted:#5a718e;--corp-surface:#ffffffee;--corp-border:#b9d3e8;--corp-page:#f2f8fc;--corp-accent:#096fc3;--corp-shadow:0 16px 45px #174e7810,0 3px 10px #174e7808}
html[data-site-theme="black"]{--corp-text:#edf2f8;--corp-muted:#a8b3c4;--corp-surface:#141a24;--corp-border:#ffffff20;--corp-page:#0c1018;--corp-accent:#c9b7ff}
.corporate-header.site-header{position:fixed;inset:0 0 auto;z-index:60;background:transparent;border-bottom:1px solid transparent;transition:background .25s,box-shadow .25s,border-color .25s}
.corporate-header .header-inner{height:76px;min-height:76px;display:flex;align-items:center;gap:22px}
.corporate-header .brand{width:178px;min-width:178px;flex:0 0 178px;margin-right:auto}
.corporate-header .brand-logo-frame{width:100%}.corporate-header .brand img{width:100%;height:auto;max-height:57px;object-fit:contain}
.corporate-header .desktop-nav{display:flex;align-items:center;gap:22px;margin:0}.corporate-header .nav-link{font-size:12px;font-weight:700;white-space:nowrap;padding:10px 0;position:relative}
.corporate-header .nav-link::after{content:"";position:absolute;bottom:3px;left:0;right:0;height:2px;border-radius:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}.corporate-header .nav-link:hover::after,.corporate-header .nav-link.is-current::after{transform:scaleX(1)}
.corporate-header .header-cta{padding:10px 16px;min-height:40px;font-size:12px;gap:20px;border-radius:13px;white-space:nowrap}.corporate-header .theme-picker-label{display:none}.corporate-header .theme-choice{font-size:9px;padding:0 6px}.corporate-header .theme-picker{margin:0}.corporate-header .menu-toggle{display:none}
html[data-site-theme="blue"] .corporate-header:is(.scrolled,.subpage-header,.menu-is-open){background:#f8fcfff0;color:#153b68;border-bottom:1px solid #b8d4e88c;box-shadow:0 8px 30px #1949730c;backdrop-filter:blur(22px)}
html[data-site-theme="blue"] .corporate-header:is(.scrolled,.subpage-header,.menu-is-open) .nav-link{color:#153b68}
html[data-site-theme="blue"] .corporate-header:is(.scrolled,.subpage-header,.menu-is-open) .menu-toggle span{background:#153b68}
html[data-site-theme="blue"] .corporate-header .header-cta{background:#ffffffb8;color:#125b9f;border:1px solid #91b9d3;box-shadow:0 5px 15px #1b5a8310}
html:not([data-site-theme="blue"]) .corporate-header:is(.scrolled,.subpage-header,.menu-is-open){background:#0d172bed;backdrop-filter:blur(22px);border-bottom:1px solid #ffffff1d;color:#f0f5fc;box-shadow:0 8px 30px #0002}
html:not([data-site-theme="blue"]) .corporate-header:is(.scrolled,.subpage-header,.menu-is-open) .nav-link{color:#f0f5fc}
html[data-site-theme="blue"] .hero{background:#f1f9ff url('/images/hero-blue-calm-watermark.png') center/cover no-repeat}
html[data-site-theme="blue"] body{background:#f2f8fc url('/images/site-flow-tile.png') 0 0/640px 640px repeat}
html[data-site-theme="blue"] :is(.section:not(.contact),.field-section,.field-needs,.solutions-story,.people-story,.vira-story,.explore-section,.engineering-section,.editorial-page,.downloads-page,.detail-content,.contact-directory,.product-section,.signature-section,.contact-stage,.contact-hub,.detail-page .detail-hero){background-color:transparent;background-image:linear-gradient(#f3f9fcc7,#f3f9fcc7),url('/images/site-flow-tile.png');background-size:auto,640px 640px;background-repeat:repeat;background-position:0 0}
html[data-site-theme="blue"] :is(.solutions-showcase,.solution-feature-art,.vira-story-visual){background:#eaf5fc url('/images/site-flow-tile.png') 0 0/640px 640px repeat}
html[data-site-theme="blue"] :is(.service-card,.field-card,.engineering-card,.explore-card,.insight-card,.resource-card,.team-card,.hub-channel,.hub-workspace,.hub-person,.detail-prose){border:1px solid #bdd4e7;border-radius:24px;box-shadow:var(--corp-shadow);background:#ffffffec}
.detail-content-supplement .detail-prose{padding:clamp(24px,4vw,44px)}
.corporate-header .theme-picker{width:48px;height:28px;padding:3px;border-radius:999px;display:flex;align-items:center;justify-content:flex-start}
.corporate-header .theme-toggle{width:100%;height:100%;padding:0;border:0;border-radius:999px;background:transparent;display:flex;align-items:center;justify-content:flex-start;cursor:pointer}
.corporate-header .theme-toggle-knob{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#075a9e;box-shadow:0 1px 4px #10203922;transition:transform .22s ease,background .22s ease,color .22s ease}
.corporate-header .theme-icon{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.corporate-header .theme-moon{display:none}
.corporate-header .theme-toggle:focus-visible{outline:2px solid var(--corp-accent);outline-offset:3px}
html[data-site-theme="black"] .corporate-header .theme-picker{justify-content:flex-end}
html[data-site-theme="black"] .corporate-header .theme-toggle-knob{background:#343a45;color:#f3d887}
html[data-site-theme="black"] .corporate-header .theme-sun{display:none}
html[data-site-theme="black"] .corporate-header .theme-moon{display:block}
@font-face{font-family:Sora;src:url('/fonts/sora-latin-ext.woff2') format('woff2');font-style:normal;font-weight:600 800;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF}
@font-face{font-family:Sora;src:url('/fonts/sora-latin.woff2') format('woff2');font-style:normal;font-weight:600 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Poppins;src:url('/fonts/poppins-800-latin-ext.woff2') format('woff2');font-style:normal;font-weight:800;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF}
@font-face{font-family:Poppins;src:url('/fonts/poppins-800-latin.woff2') format('woff2');font-style:normal;font-weight:800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
html[data-site-theme] .hero h1,html[data-site-theme] .hero h2{font-family:Poppins,Manrope,"Segoe UI",sans-serif;font-weight:800;letter-spacing:-.05em;line-height:1.08;text-shadow:none}
html[data-site-theme] .hero .gradient-text{background:none;background-image:none;background-clip:border-box;-webkit-background-clip:border-box;-webkit-text-fill-color:currentColor;color:inherit;text-shadow:none;filter:none;-webkit-text-stroke:0}
.photo-section{padding:clamp(80px,10vw,140px) 0;background:var(--corp-page);color:var(--corp-text);scroll-margin-top:90px}
html[data-site-theme="blue"] .photo-section{background-color:transparent;background-image:linear-gradient(#f3f9fcc7,#f3f9fcc7),url('/images/site-flow-tile.png');background-size:auto,640px 640px;background-repeat:repeat}
.photo-section-heading{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:42px}
.photo-section-heading>div>span{font-size:10px;letter-spacing:.17em;font-weight:800;color:var(--corp-accent)}
.photo-section-heading h2{margin:18px 0 0;font-size:clamp(42px,6vw,72px);line-height:1.05;letter-spacing:-.055em}
.photo-section-heading h2 em{color:var(--corp-accent);font-style:normal}
.photo-section-heading>p{max-width:390px;color:var(--corp-muted);font-size:15px;line-height:1.8}
.photo-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.photo-gallery-card{display:flex;flex-direction:column;overflow:hidden;min-width:0;border:1px solid var(--corp-border);border-radius:20px;background:var(--corp-surface);color:var(--corp-text);text-decoration:none;box-shadow:var(--corp-shadow);transition:transform .2s,border-color .2s,box-shadow .2s}
.photo-gallery-card:hover{transform:translateY(-4px);border-color:var(--corp-accent);box-shadow:0 20px 46px #0002}
.photo-gallery-card>img,.photo-gallery-card>a>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--corp-page);transition:transform .35s}
.photo-gallery-card:hover>img,.photo-gallery-card:hover>a>img{transform:scale(1.025)}
.photo-gallery-card>a{display:block;overflow:hidden}
.photo-gallery-caption{display:grid;gap:6px;padding:17px 18px}
.photo-gallery-caption strong{font-size:14px;line-height:1.4}
.photo-gallery-caption small{font-size:12px;line-height:1.55;color:var(--corp-muted)}
.photo-gallery-empty{display:flex;align-items:center;gap:20px;padding:30px}
.photo-gallery-empty>span{display:grid;place-items:center;width:52px;height:52px;flex:none;border:1px solid var(--corp-border);border-radius:16px;color:var(--corp-accent);font-size:22px}
.photo-gallery-empty strong{font-size:16px}
.photo-gallery-empty p{margin:6px 0 0;color:var(--corp-muted);font-size:13px}
.gallery-page{min-height:60vh;padding-bottom:80px;background:var(--corp-page);color:var(--corp-text)}
html[data-site-theme="blue"] .gallery-page{background:transparent}
.gallery-page-content{padding-bottom:30px}
.photo-gallery-grid-page{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.photo-gallery-grid-page .photo-gallery-card{margin:0;scroll-margin-top:100px}
.photo-gallery-grid-page .photo-gallery-card img{aspect-ratio:4/3;object-fit:contain}
.gallery-admin-preview{display:flex;align-items:center;gap:16px;margin-top:18px;color:var(--admin-muted,#6d7890);font-size:12px}
.gallery-admin-preview img{width:180px;height:125px;object-fit:cover;border:1px solid #dce8f1;border-radius:14px}
@media(max-width:1100px){.photo-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-gallery-grid-page{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.photo-section-heading{display:block}.photo-section-heading>p{margin-top:18px}.photo-gallery-grid,.photo-gallery-grid-page{grid-template-columns:1fr 1fr;gap:12px}.photo-gallery-card{border-radius:15px}.photo-gallery-caption{padding:13px}.photo-gallery-caption strong{font-size:12px}.photo-gallery-caption small{font-size:10px}.gallery-admin-preview{align-items:flex-start;flex-direction:column}}
@media(max-width:420px){.photo-gallery-grid,.photo-gallery-grid-page{grid-template-columns:1fr}}
html[data-site-theme="blue"] .service-card.featured{background:linear-gradient(135deg,#f5fcff,#e2f1ff);border-color:#8fbfe3}
html[data-site-theme="blue"] :is(.service-card,.field-card,.explore-card,.team-card):hover{border-color:#82b7dd;box-shadow:0 22px 50px #135b9620}
.slider-arrows button{border-radius:14px!important;background:#ffffff16;backdrop-filter:blur(12px)}
.surface-card{background:var(--corp-surface);color:var(--corp-text);border:1px solid var(--corp-border);border-radius:26px;box-shadow:var(--corp-shadow);overflow:hidden}
.surface-card a:focus-visible{outline-offset:-5px}.project-kicker{display:block;font-size:10px;letter-spacing:1.5px;font-weight:800;color:var(--corp-accent);margin-bottom:17px}
.projects-overview{color:var(--corp-text);background:var(--corp-page)}.projects-overview .section-heading h2{color:var(--corp-text)}.projects-overview .section-heading .muted-heading{color:var(--corp-muted)}.projects-overview .section-heading>p{color:var(--corp-muted)}
.project-overview-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:26px}.project-overview-side{display:grid;gap:26px}.project-cover{display:block;position:relative;background:#082947;overflow:hidden}.project-cover img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;transition:transform .6s}.project-cover:hover img{transform:scale(1.025)}
.project-status{display:inline-flex;align-items:center;gap:9px;position:absolute;top:18px;left:18px;padding:8px 13px;border:1px solid #ffffff50;background:#e9fff5f2;color:#175e50;border-radius:999px;font-size:11px;font-weight:800;backdrop-filter:blur(10px)}.project-status i{width:6px;height:6px;border-radius:50%;background:#159d79;box-shadow:0 0 0 4px #159d7912}.project-status.in-flow{position:static;margin-bottom:28px}
.project-card-copy{padding:30px}.project-card-copy h3{font-size:29px;line-height:1.3;letter-spacing:-1px;margin:0 0 17px;color:var(--corp-text)}.project-card-copy p{font-size:14px;line-height:1.85;color:var(--corp-muted);margin:0 0 22px}.project-tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.project-tags span{border:1px solid var(--corp-border);border-radius:8px;padding:5px 10px;font-size:10px;color:var(--corp-muted)}.project-link{display:inline-flex;gap:28px;align-items:center;font-size:13px;font-weight:800;color:var(--corp-accent);padding:6px 0}.project-link:hover{text-decoration:underline;text-underline-offset:5px}
.project-category{padding:30px;position:relative;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s,border-color .2s}.project-category:hover{transform:translateY(-3px);border-color:var(--corp-accent)}.project-category-number{position:absolute;top:21px;right:25px;font-size:30px;font-weight:700;opacity:.12}.project-category h3{font-size:28px;line-height:1.25;letter-spacing:-.8px;margin:0 0 15px}.project-category p{font-size:13px;color:var(--corp-muted);margin:0 0 20px}.project-category .project-link{margin-top:auto}
.portfolio-page{background:var(--corp-page);color:var(--corp-text);padding-bottom:50px}html[data-site-theme="blue"] .portfolio-page{background:transparent}.portfolio-intro{padding-top:130px;padding-bottom:55px}.portfolio-intro .detail-breadcrumb{margin-bottom:42px;color:var(--corp-muted)}.portfolio-intro h1{font-size:clamp(38px,4.6vw,67px);line-height:1.13;letter-spacing:-2.5px;font-weight:700;margin:0 0 28px;max-width:1050px}.portfolio-intro h1 em{font-style:normal;color:var(--corp-accent)}.portfolio-intro>p{font-size:17px;line-height:1.8;max-width:720px;color:var(--corp-muted)}
.project-section-nav{display:flex;gap:12px;margin-top:35px;flex-wrap:wrap}.project-section-nav a{display:flex;align-items:center;gap:30px;border:1px solid var(--corp-border);border-radius:13px;padding:14px 20px;background:var(--corp-surface);font-size:13px;font-weight:700}.project-section-nav a:hover{border-color:var(--corp-accent)}.project-section-nav span{color:var(--corp-accent);font-size:11px}
.portfolio-group{padding-top:48px;padding-bottom:48px;scroll-margin-top:95px}.portfolio-section-heading{margin-bottom:30px}.portfolio-section-heading h2,.vira-story-grid h2,.project-invitation h2{font-size:clamp(27px,3vw,42px);line-height:1.25;letter-spacing:-1.2px;margin:0 0 18px}.portfolio-section-heading p{color:var(--corp-muted);max-width:730px;margin:0}.project-feature-wide{display:grid;grid-template-columns:1.1fr 1fr;align-items:stretch}.project-feature-wide .project-cover img{height:100%;object-fit:contain}.project-feature-wide .project-card-copy{padding:40px}.project-feature-wide h3{font-size:34px}.project-feature-wide .button{margin-top:6px}
.project-empty{padding:44px;display:flex;align-items:flex-start;gap:30px}.project-empty-symbol{display:grid;place-items:center;width:62px;height:62px;border:1px solid var(--corp-border);border-radius:18px;flex-shrink:0;font-size:28px;color:var(--corp-accent)}.project-empty h3{font-size:25px;margin:0 0 12px}.project-empty p{color:var(--corp-muted);max-width:740px;font-size:15px}.vira-cover{margin:0}.vira-cover img{width:100%;height:auto}.vira-story-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:70px}.vira-story-grid p{margin:0 0 20px;color:var(--corp-muted);font-size:16px}.project-disclosure{font-size:12px!important;border-left:2px solid var(--corp-accent);padding:4px 0 4px 18px}.vira-module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.vira-module{padding:28px}.vira-module>span{color:var(--corp-accent);font-size:12px;font-weight:800;display:block;margin-bottom:28px}.vira-module h3{font-size:19px;line-height:1.4;margin:0 0 12px}.vira-module p{color:var(--corp-muted);font-size:13px;line-height:1.8;margin:0}
.vira-gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px}.vira-gallery>a:first-child{grid-column:1/-1}.vira-gallery img{width:100%;height:auto}.vira-gallery span{display:block;padding:19px 24px;font-size:14px;font-weight:700}.project-invitation{text-align:center;padding:55px 25px}.project-invitation p{color:var(--corp-muted);margin-bottom:25px}
.contact-message-panel{display:grid;grid-template-columns:.65fr 1.35fr;margin:35px 0 30px;scroll-margin-top:110px}.contact-form-intro{padding:45px 35px;background:linear-gradient(150deg,#096cc711,#00b1c310);border-right:1px solid var(--corp-border)}.contact-form-intro h2{font-size:42px;line-height:1.15;letter-spacing:-1.5px;margin:0 0 25px}.contact-form-intro>p{font-size:14px;line-height:1.8;color:var(--corp-muted)}.contact-form-assurance{display:flex;gap:15px;align-items:center;margin:45px 0}.contact-form-assurance>span{font-size:25px;color:var(--corp-accent)}.contact-form-assurance p{font-size:12px;color:var(--corp-muted)}
[data-message-form]{padding:40px;min-width:0}[data-message-form] label{display:block;font-size:12px;font-weight:700;color:var(--corp-text);margin-bottom:18px}[data-message-form] label>span{color:var(--corp-muted)}.message-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}[data-message-form] :is(input:not([type=checkbox]),select,textarea){display:block;width:100%;border:1px solid var(--corp-border);border-radius:11px;background:var(--corp-page);color:var(--corp-text);padding:13px 14px;margin-top:8px;font:inherit;font-size:13px;box-shadow:inset 0 1px 3px #00000003;outline-offset:2px}[data-message-form] :is(input,select,textarea):focus{outline:2px solid var(--corp-accent);border-color:transparent}[data-message-form] textarea{resize:vertical;min-height:130px}[data-message-form] ::placeholder{color:var(--corp-muted);opacity:.8}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}[data-message-form] .message-consent{display:flex;gap:11px;align-items:flex-start;font-weight:400;line-height:1.7;font-size:11px}.message-consent input{margin-top:4px;accent-color:var(--corp-accent)}.message-consent a{text-decoration:underline;text-underline-offset:3px}.message-form-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.message-form-bottom small{color:var(--corp-muted);font-size:10px}.message-feedback{font-size:13px;line-height:1.7;margin:18px 0 0;color:var(--corp-text);overflow-wrap:anywhere}.message-feedback.is-success{color:#208060}
.contact-location{display:grid;grid-template-columns:1fr 1.4fr;margin:30px 0 60px}.contact-location-copy{padding:38px}.contact-location h2{font-size:32px;line-height:1.25;letter-spacing:-1px;margin:0 0 20px}.contact-location p{font-size:14px;color:var(--corp-muted)}.contact-location small{display:block;font-size:11px;color:var(--corp-muted);margin-top:20px}.contact-location iframe{width:100%;height:100%;min-height:360px;border:0;background:#e2edf3}
html[data-site-theme="blue"] .contact-message-panel,html[data-site-theme="blue"] .contact-location{background:var(--corp-surface)}.contact-hub .contact-message-panel h2,.contact-hub .contact-location h2{color:var(--corp-text)}
@media(min-width:1101px){.corporate-header .mobile-nav{display:none!important}}
@media(max-width:1250px) and (min-width:1101px){.corporate-header .header-inner{gap:15px}.corporate-header .desktop-nav{gap:17px}.corporate-header .brand{width:156px;min-width:156px;flex-basis:156px}.corporate-header .header-cta{padding:9px 12px;gap:12px}}
@media(max-width:1100px){.corporate-header .desktop-nav,.corporate-header .header-inner>.theme-picker{display:none}.corporate-header .menu-toggle{display:flex;margin-left:0}.corporate-header .header-cta{margin-left:auto}.corporate-header .brand{margin-right:0}.corporate-header .mobile-nav{display:none;position:fixed;top:76px;left:0;right:0;max-height:calc(100dvh - 76px);overflow:auto;padding:20px max(28px,calc((100vw - 1280px)/2));background:var(--corp-page);border-bottom:1px solid var(--corp-border);box-shadow:0 22px 35px #0002;color:var(--corp-text)}.corporate-header.menu-is-open .mobile-nav{display:block}.corporate-header .mobile-nav>a{display:flex;justify-content:space-between;font-size:22px;padding:12px 0;border-bottom:1px solid var(--corp-border);color:var(--corp-text)}.corporate-header .mobile-nav>a span{font-size:11px;opacity:.5}.corporate-header .mobile-nav>p{font-size:11px;color:var(--corp-muted)}html[data-site-theme="blue"] .corporate-header .mobile-nav{background:#f6fbfff9}.corporate-header .mobile-nav .theme-picker{margin-top:22px}.project-overview-grid{grid-template-columns:1.1fr .9fr}.project-card-copy{padding:24px}.project-category{padding:25px}.contact-message-panel{grid-template-columns:.7fr 1.3fr}[data-message-form]{padding:28px}.contact-form-intro{padding:32px 25px}}
@media(max-width:800px){.corporate-header .header-inner{height:70px;min-height:70px;gap:12px}.corporate-header .brand{width:145px;min-width:145px;flex-basis:145px}.corporate-header .mobile-nav{top:70px;max-height:calc(100dvh - 70px)}.corporate-header .header-cta{font-size:11px;padding:8px 12px;min-height:36px}.corporate-header .header-cta span{display:none}.project-overview-grid,.project-feature-wide,.vira-story-grid,.contact-message-panel,.contact-location{grid-template-columns:1fr}.project-overview-side{grid-template-columns:1fr 1fr}.project-category h3{font-size:22px}.project-category-number{display:none}.portfolio-intro{padding-top:110px;padding-bottom:25px}.portfolio-intro h1{letter-spacing:-1.7px}.portfolio-intro>p{font-size:15px}.portfolio-group{padding-top:32px;padding-bottom:32px}.project-feature-wide .project-card-copy{padding:28px}.project-feature-wide .project-cover img{aspect-ratio:16/9}.vira-story-grid{gap:10px}.vira-module-grid{grid-template-columns:1fr 1fr}.contact-form-intro{border-right:0;border-bottom:1px solid var(--corp-border);padding:30px}.contact-form-intro h2{font-size:32px}.contact-form-intro h2 br{display:none}.contact-form-assurance{display:none}.contact-location iframe{height:320px;min-height:0}.contact-location-copy{padding:30px}.project-empty{padding:30px;gap:20px}.project-empty h3{font-size:22px}}
@media(max-width:520px){.project-overview-side,.vira-module-grid,.vira-gallery,.message-fields{grid-template-columns:1fr}.project-overview-grid,.project-overview-side{gap:18px}.project-category h3 br{display:none}.project-card-copy h3,.project-feature-wide h3{font-size:25px}.project-card-copy{padding:24px}.project-status{font-size:9px;top:12px;left:12px;padding:6px 10px}.project-section-nav{flex-direction:column}.project-section-nav a{justify-content:space-between;font-size:12px}.portfolio-intro h1{font-size:37px}.portfolio-intro .detail-breadcrumb{font-size:10px;margin-bottom:28px}.project-empty{display:block}.project-empty-symbol{margin-bottom:24px}.vira-gallery>a:first-child{grid-column:auto}.surface-card{border-radius:20px}.contact-message-panel{margin-top:24px}.contact-form-intro,[data-message-form],.contact-location-copy{padding:24px}.message-form-bottom{align-items:flex-start;flex-direction:column;gap:14px}.message-form-bottom .button{width:100%;justify-content:center}.contact-location iframe{height:280px}.corporate-header .brand{width:126px;min-width:126px;flex-basis:126px}.corporate-header .header-cta{font-size:10px}.corporate-header .header-inner{gap:8px}.corporate-header .menu-toggle{width:33px}.project-invitation{padding:36px 24px}}
@media(prefers-reduced-motion:reduce){.project-cover img,.project-category,.corporate-header{transition:none}.project-category:hover,.project-cover:hover img{transform:none}}
.location-tools{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:10px}
.corporate-header .mobile-nav .theme-picker{display:flex}
html[data-site-theme="blue"] .corporate-header .mobile-nav{background:#f6fbff}
html[data-site-theme="blue"] .corporate-header .mobile-nav .theme-choice{color:#214c77}
html[data-site-theme="blue"] .corporate-header .mobile-nav .theme-choice[aria-pressed=true]{background:white;color:#075a9e;border-color:#b9d3e8}
