﻿:root{--navy:#0d3555;--navy2:#07263e;--sun:#f2c515;--gold:#d89a18;--sky:#eff6fb;--ink:#102331;--muted:#667986;--line:#dce7ee;--white:#fff;--radius:6px;--shadow:0 24px 70px rgba(7,38,62,.12);--topbar-height:38px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:'Roboto',Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65}h1,h2,h3,h4,h5,h6,.btn,.nav-link{font-family:'Roboto',Arial,sans-serif}.topbar{background:#061e31;color:#cfdae2;font-size:.86rem;padding:.45rem 0;position:relative;z-index:1100}.topbar a{color:#fff;text-decoration:none}.topbar .fa{color:var(--sun);margin-right:.3rem}
.main-nav{position:absolute;top:var(--topbar-height);left:0;right:0;z-index:1090;background:transparent;transition:background .25s,box-shadow .25s,top .25s,backdrop-filter .25s}.main-nav.is-sticky{position:fixed;top:0;background:rgba(7,38,62,.97);backdrop-filter:blur(16px);box-shadow:0 10px 40px rgba(0,0,0,.14)}.main-nav .container{position:relative}.navbar-brand img{object-fit:contain;height:94px;width:auto;transition:height .25s ease}.main-nav.is-sticky .navbar-brand img{height:65px}.navbar .nav-link{color:rgba(255,255,255,.9)!important;font-weight:600;font-size:.94rem;padding:.72rem .72rem!important}.navbar .nav-link:hover,.navbar .show>.nav-link{color:var(--sun)!important}.btn{border-radius:var(--radius)}.btn-sun{background:var(--sun);color:#08243a;border:0;font-weight:800}.btn-sun:hover{background:#ffd928;color:#08243a;transform:translateY(-1px)}.btn-outline-sun{border:1px solid rgba(255,255,255,.55);color:#fff}.btn-outline-sun:hover{background:#fff;color:var(--navy)}
.dropdown-menu{border:0;border-radius:var(--radius);box-shadow:var(--shadow)}.has-mega{position:static}.mega-menu{left:0!important;right:0!important;width:100%;margin-top:0;padding:0;overflow:hidden;background:#fff}.mega-links{padding:2rem}.mega-title{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);font-size:.75rem;font-weight:800;margin-bottom:1rem}.mega-link{display:block;padding:.7rem .75rem;color:var(--ink);text-decoration:none;font-weight:600;border-radius:var(--radius);transition:.2s}.mega-link:hover{background:var(--sky);color:var(--navy)}.mega-cta{color:var(--navy);background:#f4f8fb}.mega-banner{height:100%;min-height:245px;display:flex;flex-direction:column;justify-content:end;padding:2rem;color:#fff;text-decoration:none;background-position:center;background-size:cover;position:relative}.mega-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,30,49,.92),rgba(4,30,49,.14))}.mega-banner span,.mega-banner strong{position:relative;z-index:1}.mega-banner span{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:var(--sun);font-weight:800}.mega-banner strong{font-size:1.35rem;line-height:1.25;max-width:360px;margin-top:.45rem}
.hero-slider{position:relative;background:var(--navy2)}.hero-slide{min-height:760px;display:flex;align-items:end;position:relative;background-image:linear-gradient(90deg,rgba(3,25,43,.94) 0%,rgba(4,34,58,.72) 46%,rgba(4,34,58,.18) 82%),var(--hero-bg);background-position:center;background-size:cover}.hero-slide .container{padding-top:10rem;padding-bottom:7rem;position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:var(--sun);font-size:.78rem}.hero-slide h1{font-size:clamp(3.1rem,7vw,6.7rem);line-height:.94;letter-spacing:-.055em;max-width:930px;color:#fff;font-weight:800;margin:.65rem 0 1.6rem}.hero-slide h1 span{color:var(--sun)}.hero-copy{max-width:650px;font-size:1.16rem;color:#d6e1e8}.hero-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:2rem}.hero-slider .carousel-indicators{justify-content:flex-start;max-width:1320px;margin-left:auto;margin-right:auto;padding:0 .75rem;bottom:2rem}.hero-slider .carousel-indicators [data-bs-target]{width:42px;height:3px;border:0;border-radius:var(--radius);background:#fff}.hero-slider .carousel-indicators .active{background:var(--sun)}
.metric-strip{position:relative;margin-top:-45px;z-index:5}.metric-card{background:#fff;border:1px solid rgba(13,53,85,.08);box-shadow:var(--shadow);border-radius:var(--radius);padding:1.65rem 1.8rem;height:100%}.metric-card strong{display:block;font-size:2rem;line-height:1;color:var(--navy);letter-spacing:-.04em}.metric-card span{font-size:.86rem;color:var(--muted)}.metric-card .card-icon{margin-bottom:1rem}
.section{padding:7rem 0}.section-soft{background:linear-gradient(180deg,#f7fbfd,#eef6fa)}.section-dark{background:var(--navy2);color:#fff}.section-title{font-size:clamp(2.3rem,4.3vw,4.2rem);line-height:1.02;letter-spacing:-.05em;font-weight:800}.section-lead{color:var(--muted);font-size:1.08rem;max-width:760px}.section-dark .section-lead{color:#bad0de}.service-card{position:relative;display:flex;flex-direction:column;height:100%;min-height:330px;border-radius:var(--radius);padding:2rem;border:1px solid var(--line);background:#fff;overflow:hidden;transition:.25s}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:transparent}.service-card-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.service-num{font-size:.78rem;font-weight:800;letter-spacing:.12em;color:var(--gold)}.card-icon{width:48px;height:48px;padding:10px;border-radius:var(--radius);background:#fff7d0;color:var(--navy);stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.service-card h3{font-size:1.35rem;margin:2.8rem 0 .8rem}.service-card p{color:var(--muted)}.link-arrow{font-weight:800;color:var(--navy);text-decoration:none;margin-top:auto}.link-arrow:after{content:" →"}
.project-card{height:100%;border-radius:var(--radius);overflow:hidden;background:#fff;border:1px solid var(--line);transition:.25s}.project-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.project-img{height:240px;width:100%;object-fit:cover}.project-body{padding:1.5rem}.project-power{color:var(--gold);font-size:.82rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.project-card h3{font-size:1.25rem;margin:.45rem 0 0}.project-card a{text-decoration:none;color:inherit}.pill{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:var(--radius);padding:.5rem .85rem;background:#fff;color:var(--ink);font-size:.88rem;text-decoration:none}.pill.active,.pill:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.cta-band{background:var(--sun);border-radius:var(--radius);padding:3.5rem;position:relative;overflow:hidden}.cta-band h2{font-size:clamp(2rem,4vw,4rem);line-height:1;letter-spacing:-.04em;color:var(--navy2)}.btn-navy{background:var(--navy2);color:#fff;font-weight:800}.btn-navy:hover{background:#001a2c;color:#fff}
.page-hero{color:#fff;padding:12rem 0 6rem;position:relative;overflow:hidden;background-image:linear-gradient(90deg,rgba(3,25,43,.92),rgba(4,34,58,.58)),url('/assets/img/projects/project-03.jpg');background-position:center;background-size:cover}.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(2,22,36,.18));pointer-events:none}.page-hero .container{position:relative;z-index:1}.page-hero h1{font-size:clamp(2.7rem,6vw,5.8rem);letter-spacing:-.055em;line-height:.95;font-weight:800}.page-hero p{color:#d7e5ed;max-width:720px;font-size:1.08rem}.content-prose{font-size:1.05rem}.content-prose h2,.content-prose h3{color:var(--navy);font-weight:800;letter-spacing:-.025em;margin-top:2rem}.content-prose ul{padding-left:1.2rem}.content-prose li{margin-bottom:.55rem}.visual-card{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.visual-card img{width:100%;display:block}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.stat-box{background:#f6fafc;border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem}.stat-box strong{display:block;font-size:1.6rem;color:var(--navy)}
.team-card{height:100%;padding:1.6rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.avatar{width:64px;height:64px;border-radius:var(--radius);display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),#1f618e);color:#fff;font-size:1.1rem;font-weight:800;margin-bottom:1rem}.team-card h3{font-size:1.07rem;margin:0}.team-card p{color:var(--muted);font-size:.9rem;margin:.3rem 0 0}.news-card{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);height:100%;background:#fff}.news-card img{width:100%;height:100%;object-fit:cover}.video-card{border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem;height:100%;background:#fff}.video-icon{width:58px;height:58px;border-radius:var(--radius);display:grid;place-items:center;background:var(--sun);color:var(--navy2);margin-bottom:1.2rem}.video-icon svg{width:28px;height:28px;fill:currentColor}
.form-shell{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow)}.form-control,.form-select{border-radius:var(--radius);padding:.85rem 1rem;border-color:#d5e1e8}.form-control:focus,.form-select:focus{border-color:#e0b10a;box-shadow:0 0 0 .25rem rgba(242,197,21,.15)}.hp{position:absolute!important;left:-9999px!important}.alert-sv{border:0;border-radius:var(--radius);background:#ecf8ef;color:#195a2a;padding:1rem}.contact-block .contact-line{display:flex;align-items:flex-start;gap:.8rem;margin:1rem 0;color:var(--ink);text-decoration:none}.contact-block .contact-line .fa{width:20px;color:var(--gold);font-size:1.05rem;margin-top:.3rem}
.site-footer{background:#061e31;color:#bcd0dc;padding:5rem 0 1.5rem}.site-footer .footer-logo{width:180px;height:auto;margin-bottom:1.2rem}.site-footer h3{font-size:.9rem;color:#fff;text-transform:uppercase;letter-spacing:.12em;margin-bottom:1.2rem}.site-footer a{display:block;color:#dbe7ed;text-decoration:none;margin:.45rem 0}.site-footer a:hover{color:var(--sun)}.site-footer .contact-line{display:flex;align-items:flex-start;gap:.7rem}.site-footer .contact-line .fa{width:18px;color:var(--sun);margin-top:.25rem}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:3rem;padding-top:1.4rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.88rem}.footer-bottom a{display:inline;margin:0}.footer-credit{margin-left:auto;color:#829dab}.footer-credit strong{color:#fff}.empty-state{border:1px dashed #b9cbd5;border-radius:var(--radius);padding:3rem;text-align:center;color:var(--muted)}.back-to-top{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:var(--radius);background:var(--sun);color:var(--navy2);box-shadow:0 12px 30px rgba(0,0,0,.18);z-index:1200;opacity:0;visibility:hidden;transform:translateY(10px);transition:.2s}.back-to-top.is-visible{opacity:1;visibility:visible;transform:none}.back-to-top:hover{background:#ffd928}

.hero-control{width:84px;opacity:1;z-index:8}.hero-control-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid rgba(255,255,255,.55);border-radius:6px;background:rgba(7,38,62,.32);color:#fff;font-size:1.15rem;backdrop-filter:blur(8px);transition:background .2s,border-color .2s,transform .2s}.hero-control:hover .hero-control-icon{background:var(--sun);border-color:var(--sun);color:var(--navy2);transform:scale(1.04)}.hero-control-prev{justify-content:flex-start;padding-left:20px}.hero-control-next{justify-content:flex-end;padding-right:20px}
.contact-line .fa,.topbar .fa,.site-footer .fa{font-family:FontAwesome!important;font-style:normal;font-weight:normal;display:inline-block}.contact-block .contact-icon{flex:0 0 34px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;margin-top:.05rem;border-radius:6px;background:rgba(216,154,24,.1);color:var(--gold);font-size:1rem}.contact-block .contact-icon .fa{color:inherit}.site-footer .contact-line .fa{flex:0 0 28px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:rgba(242,197,21,.1);color:var(--sun);margin-top:0}
@media(min-width:1200px){.has-mega:hover>.mega-menu{display:block}.has-mega:hover>.nav-link{color:var(--sun)!important}}
@media(max-width:1199.98px){.main-nav{background:rgba(7,38,62,.96)}.navbar-brand img,.main-nav.is-sticky .navbar-brand img{height:65px}.main-nav .navbar-collapse{padding:1rem 0 1.5rem;max-height:calc(100vh - 90px);overflow:auto}.navbar .nav-link{padding:.55rem 0!important}.mega-menu{position:static!important;transform:none!important;box-shadow:none;margin:.35rem 0 1rem;background:#f6fafc}.mega-links{padding:1rem}.hero-slide{min-height:680px}.hero-slide .container{padding-top:8rem}.section{padding:5rem 0}}
@media(max-width:767.98px){.hero-control{width:54px}.hero-control-icon{width:40px;height:40px;font-size:.9rem}.hero-control-prev{padding-left:8px}.hero-control-next{padding-right:8px}.hero-slide{min-height:640px;background-image:linear-gradient(rgba(3,25,43,.75),rgba(3,25,43,.94)),var(--hero-bg)}.hero-slide h1{font-size:3.2rem}.hero-slide .container{padding-bottom:5rem}.metric-strip{margin-top:-28px}.cta-band{padding:2.2rem}.project-img{height:210px}.section{padding:4rem 0}.page-hero{padding:9rem 0 4rem}.stat-grid{grid-template-columns:1fr}.footer-credit{margin-left:0}}

.lang-switch{font-weight:800;letter-spacing:.08em;border:1px solid rgba(255,255,255,.35);padding:.45rem .65rem!important;border-radius:6px}.main-nav.is-sticky .lang-switch{border-color:rgba(255,255,255,.25)}@media(max-width:1199.98px){.lang-switch{display:inline-flex!important;width:auto;margin:.35rem 0}}

/* v1.7 - Ken Burns hero: one slow grow/shrink cycle per slide */
.hero-slide{background-image:none!important;overflow:hidden;isolation:isolate}
.hero-slide::before{content:"";position:absolute;inset:-5%;z-index:0;background-image:var(--hero-bg);background-position:center;background-size:cover;background-repeat:no-repeat;transform:scale(1.025);transform-origin:center center;will-change:transform}
.hero-slide::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(3,25,43,.94) 0%,rgba(4,34,58,.72) 46%,rgba(4,34,58,.18) 82%);pointer-events:none}
.hero-slider .carousel-item:not(.active) .hero-slide::before{animation:none}
.hero-slider .carousel-item.active .hero-slide::before{animation:svKenBurnsBreath 15s ease-in-out both}
@keyframes svKenBurnsBreath{0%{transform:scale(1.025)}54%{transform:scale(1.105)}100%{transform:scale(1.035)}}

/* v1.6 - Corporate editorial layouts */
.editorial-page{overflow:hidden}
.editorial-rail{position:sticky;top:110px;display:grid;gap:1.25rem}
.editorial-year-card{position:relative;padding:2rem;background:var(--navy2);color:#fff;border-radius:var(--radius);overflow:hidden}
.editorial-year-card::after{content:"";position:absolute;width:150px;height:150px;right:-68px;top:-68px;border:28px solid rgba(242,197,21,.15);border-radius:50%}
.editorial-mini{display:block;font-size:.72rem;line-height:1.2;text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:var(--sun);margin-bottom:.7rem}
.editorial-year-card strong{display:block;font-size:clamp(4.4rem,8vw,7rem);line-height:.82;letter-spacing:-.08em;color:#fff;margin:.4rem 0 1.3rem}
.editorial-year-card p{margin:0;color:#c9d9e3;font-size:.95rem}
.editorial-photo{margin:0;overflow:hidden;border-radius:var(--radius);background:#eef4f7;box-shadow:var(--shadow)}
.editorial-photo img{width:100%;display:block;object-fit:cover}
.editorial-photo-tall img{height:430px}
.editorial-photo figcaption{padding:.8rem 1rem;background:#fff;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.editorial-photo figcaption span{color:var(--gold);margin:0 .35rem}
.editorial-deck{display:grid;grid-template-columns:74px minmax(0,1fr);gap:1.5rem;align-items:start;padding-bottom:2.2rem;margin-bottom:2rem;border-bottom:1px solid var(--line)}
.editorial-index{font-size:.8rem;font-weight:900;letter-spacing:.15em;color:var(--gold);padding-top:.5rem}
.editorial-deck p{font-size:clamp(1.45rem,2.4vw,2.35rem);line-height:1.25;letter-spacing:-.035em;font-weight:500;color:var(--navy);margin:0;max-width:850px}
.editorial-prose{counter-reset:editorialSection}
.editorial-prose>p{font-size:1.04rem;line-height:1.85;color:#465c6a;max-width:850px}
.editorial-prose>p:first-of-type{font-size:1.22rem;line-height:1.72;color:var(--ink)}
.editorial-prose>p:first-of-type::first-letter{float:left;font-size:4.6rem;line-height:.8;font-weight:900;color:var(--sun);padding:.18rem .55rem 0 0}
.editorial-prose>h2{counter-increment:editorialSection;display:grid;grid-template-columns:58px minmax(0,1fr);gap:1rem;align-items:center;font-size:clamp(1.7rem,3vw,2.8rem);line-height:1.08;margin:3.7rem 0 1rem!important;color:var(--navy)}
.editorial-prose>h2::before{content:"0" counter(editorialSection);display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius);background:var(--sun);color:var(--navy2);font-size:.75rem;letter-spacing:.06em;font-weight:900}
.editorial-band{background:#f3f7f9;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.7rem 0}
.editorial-band-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.editorial-band-grid>div{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border-right:1px solid var(--line)}
.editorial-band-grid>div:last-child{border-right:0}
.editorial-band-grid span{color:var(--gold);font-size:.72rem;font-weight:900;letter-spacing:.12em}
.editorial-band-grid strong{font-size:.94rem;color:var(--navy)}

.awareness-intro{padding-bottom:3rem}
.awareness-cover{min-height:570px;border-radius:var(--radius);background-position:center;background-size:cover;display:flex;align-items:end;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.awareness-cover::after{content:"";position:absolute;right:4.5%;top:8%;width:120px;height:120px;border:1px solid rgba(255,255,255,.28);border-radius:50%;box-shadow:0 0 0 24px rgba(255,255,255,.04),0 0 0 48px rgba(255,255,255,.025)}
.awareness-cover-copy{position:relative;z-index:2;max-width:840px;padding:clamp(2rem,5vw,5rem);color:#fff}
.awareness-cover blockquote{font-size:clamp(2.6rem,5.4vw,5.4rem);line-height:.94;letter-spacing:-.055em;font-weight:800;margin:0 0 1.5rem}
.awareness-cover p{max-width:620px;margin:0;color:#d5e3eb;font-size:1.08rem}
.editorial-prose-awareness>h2{grid-template-columns:64px minmax(0,1fr)}
.editorial-prose-awareness>p:first-of-type::first-letter{color:var(--gold)}
.awareness-notes{position:sticky;top:110px;display:grid;gap:1rem}
.awareness-note{padding:1.55rem;border:1px solid var(--line);border-radius:var(--radius);background:#f8fbfc}
.awareness-note span{display:block;color:var(--gold);font-size:.72rem;font-weight:900;letter-spacing:.15em;margin-bottom:1.7rem}
.awareness-note strong{display:block;color:var(--navy);font-size:1.25rem;margin-bottom:.45rem}
.awareness-note p{margin:0;color:var(--muted);font-size:.92rem}

/* v1.6 - Document and news lightbox */
.corporate-docs a,.news-media{position:relative;cursor:zoom-in}
.corporate-docs a::after,.news-media::after{content:"\f00e";font-family:FontAwesome;position:absolute;right:12px;bottom:12px;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);background:rgba(7,38,62,.86);color:#fff;opacity:0;transform:translateY(5px);transition:.2s;pointer-events:none}
.corporate-docs a:hover::after,.news-media:hover::after{opacity:1;transform:none}
.corporate-docs .visual-card img{transition:transform .35s ease}
.corporate-docs .visual-card:hover img{transform:scale(1.025)}
.news-media{display:block;overflow:hidden;background:#eaf1f5}
.news-media img{display:block;width:100%;height:260px!important;object-fit:cover;transition:transform .35s ease}
.news-media:hover img{transform:scale(1.025)}
.sv-lightbox{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(2,16,27,.94);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}
.sv-lightbox.is-open{opacity:1;visibility:visible}
.sv-lightbox-stage{position:relative;width:min(1180px,calc(100vw - 110px));height:min(88vh,900px);display:flex;flex-direction:column;align-items:center;justify-content:center}
.sv-lightbox-image{display:block;max-width:100%;max-height:calc(88vh - 72px);object-fit:contain;border-radius:var(--radius);box-shadow:0 30px 80px rgba(0,0,0,.42)}
.sv-lightbox-caption{color:#d6e2e9;font-size:.9rem;text-align:center;padding:.9rem 60px 0;min-height:42px}
.sv-lightbox-close,.sv-lightbox-prev,.sv-lightbox-next{position:absolute;border:1px solid rgba(255,255,255,.32);border-radius:var(--radius);background:rgba(7,38,62,.72);color:#fff;display:flex;align-items:center;justify-content:center;transition:.2s;z-index:2}
.sv-lightbox-close:hover,.sv-lightbox-prev:hover,.sv-lightbox-next:hover{background:var(--sun);border-color:var(--sun);color:var(--navy2)}
.sv-lightbox-close{right:0;top:0;width:44px;height:44px}
.sv-lightbox-prev,.sv-lightbox-next{top:50%;width:48px;height:58px;transform:translateY(-50%)}
.sv-lightbox-prev{left:-64px}.sv-lightbox-next{right:-64px}
.sv-lightbox[aria-busy="true"] .sv-lightbox-image{opacity:.35}
body.lightbox-open{overflow:hidden}

@media(max-width:991.98px){
  .editorial-rail,.awareness-notes{position:static}
  .editorial-photo-tall img{height:360px}
  .editorial-band-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .editorial-band-grid>div:nth-child(2){border-right:0}
  .editorial-band-grid>div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .awareness-cover{min-height:500px}
}
@media(max-width:767.98px){
  .hero-slide::after{background:linear-gradient(rgba(3,25,43,.75),rgba(3,25,43,.94))}
  .editorial-deck{grid-template-columns:1fr;gap:.5rem}
  .editorial-prose>h2,.editorial-prose-awareness>h2{grid-template-columns:48px minmax(0,1fr);gap:.8rem}
  .editorial-prose>h2::before{width:42px;height:42px}
  .editorial-prose>p:first-of-type::first-letter{font-size:3.7rem}
  .editorial-band-grid{grid-template-columns:1fr}
  .editorial-band-grid>div{border-right:0!important;border-bottom:1px solid var(--line)!important}
  .editorial-band-grid>div:last-child{border-bottom:0!important}
  .awareness-cover{min-height:520px}
  .awareness-cover::after{width:80px;height:80px;right:8%;top:7%}
  .news-media img{height:220px!important}
  .sv-lightbox{padding:12px}
  .sv-lightbox-stage{width:calc(100vw - 24px);height:92vh}
  .sv-lightbox-image{max-height:calc(92vh - 86px)}
  .sv-lightbox-prev,.sv-lightbox-next{top:auto;bottom:0;transform:none;width:44px;height:44px}
  .sv-lightbox-prev{left:0}.sv-lightbox-next{right:0}
  .sv-lightbox-close{right:0;top:0}
  .sv-lightbox-caption{padding-left:52px;padding-right:52px}
}
@media(prefers-reduced-motion:reduce){
  .hero-slider .carousel-item.active .hero-slide::before{animation:none!important;transform:scale(1.035)}
  .corporate-docs .visual-card img,.news-media img{transition:none}
}

.service-hero{position:relative;min-height:560px;display:flex;align-items:flex-end;background-size:cover;background-position:center;overflow:hidden}
.service-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,25,43,.92) 0%,rgba(3,25,43,.74) 48%,rgba(3,25,43,.34) 100%)}
.service-hero::after{content:"";position:absolute;right:-120px;bottom:-220px;width:520px;height:520px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 72px rgba(255,255,255,.025),0 0 0 144px rgba(255,255,255,.018)}
.service-hero-inner{position:relative;z-index:2;padding-top:180px;padding-bottom:76px;color:#fff}
.service-hero-kicker{display:inline-flex;align-items:center;gap:.65rem;margin-bottom:1rem;color:var(--sun);font-size:.76rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.service-hero-kicker::before{content:"";width:34px;height:2px;background:var(--sun)}
.service-hero h1{max-width:930px;margin:0;font-size:clamp(3rem,6vw,6rem);line-height:.96;letter-spacing:-.045em;font-weight:800}
.service-hero p{max-width:840px;margin:1.45rem 0 0;color:#e2ebf1;font-size:clamp(1.05rem,1.5vw,1.28rem);line-height:1.72}
.service-content-section{padding:clamp(4rem,7vw,7rem) 0;background:linear-gradient(180deg,#f5f8fa 0,#fff 32%)}
.service-content-shell{position:relative}
.service-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.service-card-grid .service-detail-card:last-child{grid-column:1/-1}
.service-detail-card,.service-maintenance-card,.service-story-card{position:relative;border:1px solid var(--line);border-radius:6px;background:#fff;overflow:hidden;box-shadow:0 16px 48px rgba(8,39,61,.07);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.service-detail-card:hover,.service-maintenance-card:hover,.service-story-card:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(8,39,61,.12);border-color:rgba(242,184,0,.55)}
.service-detail-card{padding:clamp(1.6rem,3vw,2.7rem)}
.service-detail-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--sun),#ffd96a)}
.service-detail-icon{width:56px;height:56px;display:flex;align-items:center;justify-content:center;margin-bottom:1.6rem;border-radius:6px;background:rgba(242,184,0,.13);color:var(--gold);font-size:1.35rem}
.service-detail-card h2{margin:0 0 1.2rem;font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.14;color:var(--navy)}
.service-detail-card ul{list-style:none;margin:0;padding:0;display:grid;gap:.82rem}
.service-detail-card li{position:relative;padding-left:1.6rem;color:#48606f;line-height:1.55}
.service-detail-card li::before{content:"";position:absolute;left:0;top:.56rem;width:7px;height:7px;border-radius:50%;background:var(--sun);box-shadow:0 0 0 4px rgba(242,184,0,.12)}
.service-story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.service-story-card{min-height:270px;padding:clamp(1.75rem,3vw,3rem);display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#fff,#f7fafb)}
.service-story-card-wide{grid-column:1/-1;min-height:330px;background:linear-gradient(125deg,var(--navy2),var(--navy));color:#fff}
.service-story-index{display:block;margin-bottom:2.5rem;font-size:.75rem;font-weight:900;letter-spacing:.16em;color:var(--gold)}
.service-story-card p{margin:0;font-size:1.08rem;line-height:1.82;color:#425967}
.service-story-card-wide p{max-width:1030px;color:#edf4f7;font-size:clamp(1.15rem,1.75vw,1.52rem);line-height:1.7}
.service-maintenance-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.service-maintenance-card{min-height:290px;padding:1.7rem;display:flex;flex-direction:column;justify-content:flex-start}
.service-maintenance-card .service-detail-icon{margin-bottom:auto}
.service-maintenance-card p{margin:2.2rem 0 0;color:var(--navy);font-size:1rem;font-weight:600;line-height:1.62}
.service-quote-strip{display:flex;justify-content:flex-end;padding-top:34px;margin-top:34px;border-top:1px solid var(--line)}
@media(max-width:1199.98px){.service-maintenance-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991.98px){.service-hero{min-height:500px}.service-hero-inner{padding-top:150px;padding-bottom:58px}.service-card-grid,.service-story-grid{grid-template-columns:1fr}.service-card-grid .service-detail-card:last-child,.service-story-card-wide{grid-column:auto}.service-maintenance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575.98px){.service-hero{min-height:470px}.service-hero-inner{padding-top:135px;padding-bottom:45px}.service-hero h1{font-size:2.8rem}.service-maintenance-grid{grid-template-columns:1fr}.service-maintenance-card{min-height:220px}.service-quote-strip{justify-content:stretch}.service-quote-strip .btn{width:100%}}
.projects-page-hero{background-image:linear-gradient(90deg,rgba(3,25,43,.94),rgba(4,34,58,.48)),url('/assets/img/projects/project-09.jpg')}.projects-page-hero .container{position:relative}.projects-hero-count{position:absolute;right:12px;bottom:0;display:flex;align-items:end;gap:.75rem;color:#fff}.projects-hero-count strong{font-size:clamp(3rem,6vw,6rem);line-height:.78;letter-spacing:-.07em;color:var(--sun)}.projects-hero-count span{max-width:120px;font-size:.8rem;line-height:1.2;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.projects-section{padding:5.5rem 0 7rem;background:linear-gradient(180deg,#f5f9fb 0,#fff 28%)}.project-type-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:1.25rem}.project-type-card{appearance:none;border:1px solid var(--line);border-radius:6px;background:#fff;padding:1.15rem;text-align:left;min-height:132px;display:flex;flex-direction:column;transition:.22s;color:var(--ink)}.project-type-card:hover,.project-type-card.active{border-color:var(--navy);background:var(--navy);color:#fff;transform:translateY(-3px);box-shadow:0 18px 45px rgba(7,38,62,.12)}.project-type-icon{width:38px;height:38px;border-radius:6px;display:flex;align-items:center;justify-content:center;margin-bottom:auto;background:#fff7d0;color:var(--navy);font-size:1rem}.project-type-card.active .project-type-icon,.project-type-card:hover .project-type-icon{background:var(--sun)}.project-type-card strong{display:block;margin-top:1.1rem;font-size:1rem}.project-type-card small{display:block;color:var(--muted);font-size:.73rem}.project-type-card.active small,.project-type-card:hover small{color:#c4d5df}.project-filter-panel{padding:1.4rem;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 18px 55px rgba(7,38,62,.07);margin-bottom:2rem}.project-filter-label{display:block;margin-bottom:.45rem;color:var(--navy);font-size:.73rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.project-search-wrap{position:relative}.project-search-wrap .fa{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--gold);z-index:2}.project-search-wrap .form-control{padding-left:2.65rem}.project-reset-btn{width:100%;min-height:51px;border:1px solid var(--line);background:#f7fafb;color:var(--navy);font-weight:700}.project-reset-btn:hover{background:var(--navy);border-color:var(--navy);color:#fff}.project-results-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;color:var(--muted);font-size:.9rem}.project-results-number{font-size:1.45rem;font-weight:900;color:var(--navy)}.project-active-filter{padding:.45rem .7rem;border-radius:6px;background:#eef5f8;color:var(--navy);font-weight:700}.project-card-modern{height:100%;border-radius:6px;overflow:hidden;background:var(--navy2);box-shadow:0 15px 45px rgba(7,38,62,.08);transition:transform .25s,box-shadow .25s}.project-card-modern:hover{transform:translateY(-6px);box-shadow:0 28px 70px rgba(7,38,62,.17)}.project-card-media{position:relative;display:block;height:410px;overflow:hidden;color:#fff;text-decoration:none}.project-card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.project-card-modern:hover img{transform:scale(1.045)}.project-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,29,48,.05) 20%,rgba(4,29,48,.88) 82%,rgba(4,29,48,.98) 100%)}.project-card-category,.project-status-badge{position:absolute;top:16px;border-radius:6px;padding:.45rem .65rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.project-card-category{left:16px;background:rgba(255,255,255,.92);color:var(--navy)}.project-status-badge{right:16px;background:var(--sun);color:var(--navy2)}.project-card-overlay{position:absolute;left:0;right:0;bottom:0;padding:1.5rem}.project-card-location{display:block;color:#d7e6ee;font-size:.8rem;margin-bottom:.45rem}.project-card-location .fa{color:var(--sun);margin-right:.25rem}.project-card-overlay h2{margin:0 0 1.1rem;color:#fff;font-size:1.45rem;line-height:1.12}.project-card-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.17)}.project-card-footer strong{color:var(--sun);font-size:1rem}.project-card-footer span{font-size:.8rem;font-weight:800;color:#fff}.project-card-footer .fa{margin-left:.25rem}.project-empty{padding:4rem 1.5rem;text-align:center;border:1px dashed #b8cad5;border-radius:6px;color:var(--muted)}.project-empty .fa{font-size:2rem;color:var(--gold);margin-bottom:1rem}.project-empty h3{color:var(--navy);font-size:1.2rem}.project-load-more{min-width:245px;padding:.9rem 1.3rem}.project-detail-hero{position:relative;min-height:650px;display:flex;align-items:end;background-image:var(--project-bg);background-size:cover;background-position:center;color:#fff;overflow:hidden}.project-detail-hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,25,43,.25),rgba(3,25,43,.92))}.project-detail-hero-inner{position:relative;z-index:1;padding-top:180px;padding-bottom:75px}.project-detail-breadcrumb{display:flex;align-items:center;gap:.6rem;margin-bottom:2rem;font-size:.8rem;color:#c6d7e1}.project-detail-breadcrumb a{color:#fff;text-decoration:none;font-weight:700}.project-detail-hero h1{margin:.55rem 0 1rem;font-size:clamp(3rem,6vw,6.2rem);line-height:.92;letter-spacing:-.055em;font-weight:800}.project-detail-location{margin:0;color:#d6e4ec}.project-detail-location .fa{color:var(--sun);margin-right:.35rem}.project-detail-power{display:inline-flex;flex-direction:column;align-items:flex-end;padding:1.2rem 1.35rem;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:rgba(7,38,62,.38);backdrop-filter:blur(10px)}.project-detail-power span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#c8d9e3}.project-detail-power strong{font-size:2rem;color:var(--sun)}.project-detail-section{padding:5rem 0 7rem;background:#fff}.project-detail-metrics{margin-top:-7rem;position:relative;z-index:3}.project-metric-card{height:100%;min-height:155px;padding:1.35rem;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 18px 55px rgba(7,38,62,.09)}.project-metric-card .fa{display:block;color:var(--gold);font-size:1.2rem;margin-bottom:1.2rem}.project-metric-card span{display:block;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.project-metric-card strong{display:block;margin-top:.35rem;color:var(--navy);font-size:1.15rem;line-height:1.2}.project-main-visual{position:relative;display:block;overflow:hidden;border-radius:6px;background:#eef4f7;cursor:zoom-in}.project-main-visual img{display:block;width:100%;min-height:440px;max-height:620px;object-fit:cover;transition:transform .45s}.project-main-visual:hover img{transform:scale(1.025)}.project-main-zoom{position:absolute;right:18px;bottom:18px;width:46px;height:46px;border-radius:6px;background:var(--sun);color:var(--navy);display:flex;align-items:center;justify-content:center}.project-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.project-gallery-item{display:block;border-radius:6px;overflow:hidden;height:130px}.project-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.project-gallery-item:hover img{transform:scale(1.04)}.project-detail-panel{position:sticky;top:100px;padding:2rem;border:1px solid var(--line);border-radius:6px;background:#f8fbfc}.project-detail-panel-head{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding-bottom:1.2rem;margin-bottom:.5rem;border-bottom:1px solid var(--line);color:var(--navy);font-weight:900}.project-detail-status{font-size:.72rem;color:#806400;background:#fff3ba;padding:.4rem .55rem;border-radius:6px}.project-detail-panel dl{margin:0}.project-detail-panel dl div{display:grid;grid-template-columns:120px 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.project-detail-panel dt{color:var(--muted);font-size:.78rem;font-weight:700}.project-detail-panel dd{margin:0;color:var(--navy);font-weight:800}.project-detail-copy{padding-top:1rem}.project-detail-copy p:last-child{margin-bottom:0}@media(max-width:1199.98px){.project-type-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.projects-hero-count{position:static;margin-top:2rem}.project-detail-panel{position:static}}@media(max-width:767.98px){.projects-section{padding:3.5rem 0 5rem}.project-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-type-card{min-height:120px}.project-results-head{align-items:flex-start;flex-direction:column}.project-card-media{height:355px}.project-detail-hero{min-height:560px}.project-detail-power{align-items:flex-start}.project-detail-metrics{margin-top:-3rem}.project-metric-card{min-height:135px}.project-main-visual img{min-height:300px}.project-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-detail-panel dl div{grid-template-columns:1fr;gap:.25rem}}@media(max-width:420px){.project-type-grid{grid-template-columns:1fr 1fr}.project-type-card{padding:.9rem}.project-card-media{height:330px}}
.references-carousel-section{padding:5.5rem 0;background:#fff;overflow:hidden}.references-carousel-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.2rem}.references-carousel-viewport{position:relative;overflow:hidden;padding:.5rem 0 1rem}.references-carousel-viewport:before,.references-carousel-viewport:after{content:"";position:absolute;z-index:3;top:0;bottom:0;width:min(11vw,160px);pointer-events:none}.references-carousel-viewport:before{left:0;background:linear-gradient(90deg,#fff 12%,rgba(255,255,255,0))}.references-carousel-viewport:after{right:0;background:linear-gradient(270deg,#fff 12%,rgba(255,255,255,0))}.references-carousel-track{--ref-gap:18px;--ref-half-gap:9px;display:flex;align-items:center;gap:var(--ref-gap);width:max-content;animation:referenceCarouselFlow 72s linear infinite;will-change:transform}.references-carousel-viewport:hover .references-carousel-track{animation-play-state:paused}.reference-logo-card{width:210px;height:118px;flex:0 0 210px;display:flex;align-items:center;justify-content:center;padding:18px 20px;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 12px 34px rgba(7,38,62,.045);transition:transform .25s,border-color .25s,box-shadow .25s}.reference-logo-card:hover{transform:translateY(-4px);border-color:#c8d7df;box-shadow:0 20px 45px rgba(7,38,62,.09)}.reference-logo-card img{display:block;width:100%;height:100%;object-fit:contain;filter:grayscale(1);opacity:.72;transition:filter .25s,opacity .25s,transform .25s}.reference-logo-card:hover img{filter:none;opacity:1;transform:scale(1.03)}@keyframes referenceCarouselFlow{from{transform:translateX(0)}to{transform:translateX(calc(-50% - var(--ref-half-gap)))}}@media(max-width:767.98px){.references-carousel-section{padding:4rem 0}.references-carousel-head{margin-bottom:1.6rem}.references-carousel-track{--ref-gap:12px;--ref-half-gap:6px;animation-duration:58s}.reference-logo-card{width:168px;height:96px;flex-basis:168px;padding:14px 16px}.references-carousel-viewport:before,.references-carousel-viewport:after{width:42px}}@media(prefers-reduced-motion:reduce){.references-carousel-track{animation:none;flex-wrap:wrap;width:auto;justify-content:center;padding:0 1rem}.references-carousel-viewport{overflow:visible}.references-carousel-viewport:before,.references-carousel-viewport:after{display:none}}
.service-card-tone-1{background:#fff9d7;border-color:#f7e9a3}.service-card-tone-2{background:#fff2a9;border-color:#f0dc78}.service-card-tone-3{background:#ffe979;border-color:#e9cf49}.service-card-tone-4{background:#ffdf43;border-color:#dfbd24}.service-card-tone-5{background:#f2c515;border-color:#d9aa08}.service-card-tone-1 p,.service-card-tone-2 p,.service-card-tone-3 p,.service-card-tone-4 p,.service-card-tone-5 p{color:#41515c}.service-card-tone-4 .card-icon,.service-card-tone-5 .card-icon{background:rgba(255,255,255,.72)}.service-card-tone-4 .service-num,.service-card-tone-5 .service-num{color:#7c5e00}.service-card-tone-5:hover{border-color:#c89d00}
.references-carousel-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}.references-carousel-btn{width:46px;height:46px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--navy);display:inline-flex;align-items:center;justify-content:center;transition:.2s}.references-carousel-btn:hover{background:var(--navy);border-color:var(--navy);color:#fff}.references-all-link{height:46px;display:inline-flex;align-items:center;gap:.55rem;padding:0 1.1rem}.references-carousel-viewport{scrollbar-width:none}.references-carousel-viewport::-webkit-scrollbar{display:none}.references-carousel-track{animation:none}.references-carousel-viewport:hover .references-carousel-track{animation-play-state:initial}.references-page-hero{background-image:linear-gradient(90deg,rgba(3,25,43,.94),rgba(4,34,58,.52)),url('/assets/img/projects/project-05.jpg')}.references-directory-section{padding:5.5rem 0 7rem;background:linear-gradient(180deg,#f5f9fb 0,#fff 35%)}.references-directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.reference-directory-card{margin:0;padding:1.35rem;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 16px 44px rgba(7,38,62,.055);transition:transform .22s,border-color .22s,box-shadow .22s}.reference-directory-card:hover{transform:translateY(-5px);border-color:#c5d6df;box-shadow:0 24px 54px rgba(7,38,62,.1)}.reference-directory-logo{height:125px;display:flex;align-items:center;justify-content:center;padding:1rem;background:#f8fbfc;border-radius:6px}.reference-directory-logo img{width:100%;height:100%;object-fit:contain;filter:grayscale(1);opacity:.78;transition:.25s}.reference-directory-card:hover img{filter:none;opacity:1;transform:scale(1.03)}.reference-directory-card h2{font-size:.95rem;color:var(--navy);text-align:center;margin:1rem 0 0;font-weight:800}
@media(max-width:991.98px){.references-carousel-head{align-items:flex-start;flex-direction:column}.references-carousel-actions{justify-content:flex-start}.references-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767.98px){.references-carousel-actions{width:100%}.references-all-link{margin-left:auto}.references-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reference-directory-card{padding:1rem}.reference-directory-logo{height:105px}}
@media(max-width:420px){.references-carousel-btn{width:42px;height:42px}.references-all-link{height:42px;padding:0 .85rem;font-size:.84rem}.references-directory-grid{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.references-carousel-track{display:flex!important;flex-wrap:nowrap!important;width:max-content!important;justify-content:flex-start!important;padding:0!important}.references-carousel-viewport{overflow-x:auto!important}.reference-logo-card[aria-hidden="true"]{display:none!important}}

.videos-page-hero{background-image:linear-gradient(90deg,rgba(3,25,43,.94),rgba(4,34,58,.52)),url('/assets/img/projects/project-08.jpg')}.videos-section{padding:5.5rem 0 7rem;background:linear-gradient(180deg,#f4f9fb 0,#fff 34%)}.video-card-modern{height:100%;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 16px 46px rgba(7,38,62,.07);transition:transform .25s,box-shadow .25s,border-color .25s}.video-card-modern:hover{transform:translateY(-6px);border-color:#c7d7df;box-shadow:0 28px 68px rgba(7,38,62,.15)}.video-card-media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#071f32;text-decoration:none}.video-card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .65s ease,filter .35s ease}.video-card-modern:hover .video-card-media img{transform:scale(1.045)}.video-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,25,43,.08),rgba(3,25,43,.48))}.video-play-button{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:74px;height:74px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--sun);color:var(--navy2);box-shadow:0 12px 35px rgba(0,0,0,.22);transition:transform .25s,background .25s}.video-play-button .fa{margin-left:4px;font-size:1.15rem}.video-card-modern:hover .video-play-button{transform:translate(-50%,-50%) scale(1.08);background:#fff}.video-card-media-empty{background:linear-gradient(135deg,var(--navy2),#0c456b)}.video-card-body{padding:1.45rem 1.5rem 1.6rem}.video-card-body h2{min-height:2.7em;margin:0 0 1.25rem;color:var(--navy);font-size:1.18rem;line-height:1.35;font-weight:800;letter-spacing:-.015em}.video-watch-link{display:inline-flex;align-items:center;gap:.55rem;color:var(--navy);font-size:.86rem;font-weight:900;text-decoration:none}.video-watch-link .fa{color:var(--gold);transition:transform .2s}.video-watch-link:hover .fa{transform:translateX(4px)}.sv-video-lightbox{position:fixed;inset:0;z-index:2100;display:none;align-items:center;justify-content:center;padding:28px;background:rgba(2,17,29,.94);backdrop-filter:blur(9px)}.sv-video-lightbox.is-open{display:flex}.sv-video-lightbox-stage{position:relative;width:min(1120px,92vw)}.sv-video-frame{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:6px;background:#000;box-shadow:0 32px 90px rgba(0,0,0,.4)}.sv-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.sv-video-title{margin:.9rem 80px 0;color:#fff;text-align:center;font-size:1rem;font-weight:700}.sv-video-close,.sv-video-prev,.sv-video-next{position:absolute;z-index:2;border:0;border-radius:6px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12);color:#fff;backdrop-filter:blur(10px);transition:.2s}.sv-video-close:hover,.sv-video-prev:hover,.sv-video-next:hover{background:var(--sun);color:var(--navy2)}.sv-video-close{right:0;top:-58px;width:46px;height:46px}.sv-video-prev,.sv-video-next{top:50%;width:52px;height:52px;transform:translateY(-50%)}.sv-video-prev{left:-70px}.sv-video-next{right:-70px}.sv-video-lightbox[data-single="true"] .sv-video-prev,.sv-video-lightbox[data-single="true"] .sv-video-next{display:none}@media(max-width:1199.98px){.sv-video-prev{left:10px}.sv-video-next{right:10px}.sv-video-prev,.sv-video-next{background:rgba(3,25,43,.72)}}@media(max-width:767.98px){.videos-section{padding:3.5rem 0 5rem}.video-card-body h2{min-height:0}.video-play-button{width:62px;height:62px}.sv-video-lightbox{padding:16px}.sv-video-lightbox-stage{width:100%}.sv-video-close{right:0;top:-52px;width:42px;height:42px}.sv-video-prev,.sv-video-next{width:44px;height:44px}.sv-video-title{margin:.8rem 48px 0;font-size:.88rem}}

/* v1.10.0 color system */
:root{--navy:#035b90;--navy2:#043052;--brand-blue:#035b90;--brand-accent:#0468a7;--brand-deep:rgb(4 48 82 / 97%);--brand-gradient:linear-gradient(90deg,rgb(4 48 82 / 97%) 0%,#0468a7 100%)}
.main-nav.is-sticky{background:var(--brand-gradient)}
.site-footer{background:var(--brand-gradient)}
.section-dark{background:var(--brand-gradient)}
.editorial-year-card{background:var(--brand-gradient)}
.project-card-modern{background:var(--brand-gradient)}
.video-card-media-empty{background:var(--brand-gradient)}
.btn-navy{background:var(--brand-accent)}
.pill.active,.pill:hover,.project-type-card:hover,.project-type-card.active,.project-reset-btn:hover,.references-carousel-btn:hover{background:var(--brand-accent);border-color:var(--brand-accent)}
.cta-band h2{color:var(--brand-blue)}
.content-prose h2,.content-prose h3,.stat-box strong,.metric-card strong,.service-card h3,.link-arrow,.project-filter-label,.project-results-number,.project-empty h3,.project-detail-panel-head,.project-detail-panel dd,.project-metric-card strong,.reference-directory-card h2,.video-card-body h2,.video-watch-link{color:var(--brand-blue)}
@media(max-width:1199.98px){.main-nav{background:var(--brand-gradient)}}

/* v1.10.1 */
.topbar{background:#0d3c62}
html,body{width:100%;max-width:100%;overflow-x:hidden}
body{position:relative}
main,.topbar,.main-nav,.site-footer{max-width:100%}
img,svg,video,iframe{max-width:100%}
.service-num{width:34px;height:34px;flex:0 0 34px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:rgba(255,255,255,.58);font-size:.82rem;letter-spacing:0;color:var(--brand-blue)}
.service-card-tone-4 .service-num,.service-card-tone-5 .service-num{color:var(--brand-blue);background:rgba(255,255,255,.7)}
.metric-card .feature-arrow{width:38px;height:38px;display:flex;align-items:center;justify-content:center;margin-bottom:.65rem;border-radius:6px;background:rgba(242,197,21,.14);color:var(--sun);font-size:1rem;letter-spacing:0}
.cta-band-phone{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);align-items:center;gap:2.5rem}
.cta-band-copy{min-width:0}.cta-eyebrow{color:#0d3c62}.cta-phone-wrap{min-width:0}
.sv-phone-signature{display:grid;grid-template-columns:68px minmax(0,1fr) 76px;align-items:center;gap:1rem;width:100%;padding:1rem 1.1rem;border:1px solid rgba(13,60,98,.18);border-radius:6px;background:rgba(255,255,255,.24);color:#0d3c62;text-decoration:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.38);transition:transform .2s ease,background .2s ease,border-color .2s ease}
.sv-phone-signature:hover{transform:translateY(-2px);background:rgba(255,255,255,.38);border-color:rgba(13,60,98,.28);color:#0d3c62}
.sv-phone-signature-icon{width:68px;height:68px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#0d3c62;color:var(--sun);font-size:1.55rem}
.sv-phone-signature-number{min-width:0;white-space:nowrap;font-size:clamp(2.15rem,3.5vw,3.85rem);font-weight:900;line-height:.92;letter-spacing:-.055em}
.sv-phone-signature-side{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding-left:1rem;border-left:2px solid rgba(13,60,98,.75);line-height:1}
.sv-phone-signature-side strong{font-size:1.3rem;font-weight:900;letter-spacing:-.04em}.sv-phone-signature-side small{margin-top:.35rem;font-size:.62rem;font-weight:900;letter-spacing:.12em}
@supports(overflow:clip){html,body{overflow-x:clip}}
@media(max-width:991.98px){.cta-band-phone{grid-template-columns:1fr}.cta-phone-wrap{max-width:620px}}
@media(max-width:767.98px){
  html,body{overflow-x:hidden}
  main,.section,.hero-slider,.page-hero,.service-hero,.references-carousel-section,.projects-section,.videos-section{max-width:100%;overflow-x:clip}
  .row>*{min-width:0}
  .cta-band-phone{gap:1.55rem}
  .sv-phone-signature{grid-template-columns:52px minmax(0,1fr) 58px;gap:.7rem;padding:.8rem}
  .sv-phone-signature-icon{width:52px;height:52px;font-size:1.15rem}
  .sv-phone-signature-number{font-size:clamp(1.72rem,8.5vw,2.55rem)}
  .sv-phone-signature-side{padding-left:.65rem}.sv-phone-signature-side strong{font-size:1rem}.sv-phone-signature-side small{font-size:.52rem}
}
@media(max-width:380px){.sv-phone-signature{grid-template-columns:44px minmax(0,1fr) 50px;gap:.5rem;padding:.65rem}.sv-phone-signature-icon{width:44px;height:44px}.sv-phone-signature-number{font-size:1.62rem}.sv-phone-signature-side{padding-left:.5rem}}
:root{--hero-overlay:linear-gradient(90deg,rgb(3 51 91 / 94%),rgba(4,34,58,.48))}
.hero-slide::after{background:var(--hero-overlay)}
.page-hero{background-image:var(--hero-overlay),url('/assets/img/projects/project-03.jpg')}
.projects-page-hero{background-image:var(--hero-overlay),url('/assets/img/projects/project-09.jpg')}
.references-page-hero{background-image:var(--hero-overlay),url('/assets/img/projects/project-05.jpg')}
.videos-page-hero{background-image:var(--hero-overlay),url('/assets/img/projects/project-08.jpg')}
.service-hero-overlay,.project-detail-hero-overlay{background:var(--hero-overlay)}
@media(max-width:1199.98px){
  .main-nav{background:transparent;backdrop-filter:none;box-shadow:none}
  .main-nav.is-sticky,.main-nav.menu-open{background:var(--brand-gradient);backdrop-filter:blur(16px);box-shadow:0 10px 40px rgba(0,0,0,.14)}
  .main-nav.menu-open .navbar-collapse{background:transparent}
  .topbar .container{justify-content:flex-end!important}
  .topbar-message{display:none}
  .topbar-contact{width:100%;justify-content:flex-end;white-space:nowrap}
}

@media(max-width:767.98px){
  .hero-slide::after{background:var(--hero-overlay)}
  .topbar .container{justify-content:flex-end!important}
  .topbar-message{display:none}
  .topbar-contact{width:100%;justify-content:flex-end;gap:.85rem!important;font-size:.72rem;white-space:nowrap}
  .topbar-contact a{display:inline-flex;align-items:center;min-width:0}
  .topbar-contact .fa{flex:0 0 auto}
}
@media(max-width:380px){.topbar-contact{font-size:.67rem;gap:.55rem!important}}

/* v1.10.3 - Header language / quote action sizing */
@media(min-width:1200px){
  .header-action-item{display:flex;align-items:center}
  .header-action-control{height:42px;min-height:42px;display:inline-flex!important;align-items:center;justify-content:center;line-height:1!important}
  .lang-switch{padding:0 .82rem!important;margin:0}
  .header-quote-btn{padding-top:0!important;padding-bottom:0!important}
}
@media(max-width:1199.98px){
  .header-action-item{width:100%;display:block}
  .lang-switch{width:max-content;min-width:116px;height:44px;min-height:44px;padding:0 1rem!important;margin:.45rem 0;display:inline-flex!important;align-items:center;justify-content:center;line-height:1!important;letter-spacing:.055em}
  .header-quote-btn{height:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;line-height:1}
}
@media(max-width:575.98px){
  .lang-switch{min-width:124px;padding:0 1.05rem!important}
}

/* v1.11.0 - complete media archive */
.news-archive-card{height:100%;border:1px solid var(--line);border-radius:6px;overflow:hidden;background:#fff;box-shadow:0 14px 40px rgba(4,48,82,.07);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.news-archive-card:hover{transform:translateY(-4px);box-shadow:0 22px 55px rgba(4,48,82,.13);border-color:rgba(4,104,167,.3)}
.news-archive-card .news-media{height:100%;min-height:260px;display:flex;align-items:center;justify-content:center;background:#fff}
.news-archive-card .news-media img{width:100%;height:auto!important;aspect-ratio:1/1;object-fit:contain;background:#fff;transition:transform .35s ease}
.news-archive-card .news-media:hover img{transform:scale(1.018)}
.video-card-media img{background:#043052}
@media(max-width:767.98px){.news-archive-card .news-media{min-height:0}.news-archive-card .news-media img{height:auto!important;aspect-ratio:1/1}}

.video-search-panel{display:grid;grid-template-columns:minmax(220px,1fr) minmax(360px,1.35fr) auto;align-items:end;gap:1.4rem;margin:0 0 2.2rem;padding:1.35rem 1.45rem;border:1px solid var(--line);border-radius:6px;background:#fff;box-shadow:0 16px 46px rgba(7,38,62,.06)}.video-search-eyebrow{display:block;margin-bottom:.3rem;color:var(--gold);font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.video-search-copy h2{margin:0;color:var(--brand-blue);font-size:1.25rem;font-weight:800}.video-search-control{position:relative;display:flex;align-items:center}.video-search-control>.fa{position:absolute;left:1rem;z-index:1;color:#7c94a5;font-size:.95rem;pointer-events:none}.video-search-control input{width:100%;height:52px;padding:0 3.15rem 0 2.8rem;border:1px solid #cbd9e1;border-radius:6px;background:#f8fbfc;color:#17384e;font:inherit;font-weight:600;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.video-search-control input:focus{border-color:#0468a7;background:#fff;box-shadow:0 0 0 3px rgba(4,104,167,.1)}.video-search-control input::-webkit-search-cancel-button{display:none}.video-search-clear{position:absolute;right:.45rem;width:38px;height:38px;border:0;border-radius:6px;background:transparent;color:#8094a2;opacity:0;pointer-events:none;transition:opacity .18s,background .18s,color .18s}.video-search-clear.is-visible{opacity:1;pointer-events:auto}.video-search-clear:hover{background:#eaf2f6;color:#035b90}.video-search-meta{display:flex;align-items:baseline;gap:.4rem;min-width:82px;padding-bottom:.65rem;color:#6c8291;white-space:nowrap}.video-search-meta strong{color:#035b90;font-size:1.35rem;line-height:1;font-weight:900}.video-search-empty{margin-top:2rem;padding:3.5rem 1.5rem;border:1px dashed #c7d7df;border-radius:6px;background:#fff;text-align:center}.video-search-empty[hidden]{display:none}.video-search-empty-icon{width:58px;height:58px;margin:0 auto 1rem;border-radius:6px;display:grid;place-items:center;background:#edf5f9;color:#0468a7;font-size:1.15rem}.video-search-empty h3{margin:0;color:#035b90;font-size:1.1rem;font-weight:800}@media(max-width:991.98px){.video-search-panel{grid-template-columns:1fr auto}.video-search-copy{grid-column:1/-1}.video-search-control{min-width:0}.video-search-meta{align-self:center;padding-bottom:0}}@media(max-width:575.98px){.video-search-panel{grid-template-columns:1fr;gap:.9rem;padding:1.1rem}.video-search-copy{grid-column:auto}.video-search-control input{height:50px}.video-search-meta{justify-content:flex-end;min-width:0}}

.hero-video-link{display:inline-flex;align-items:center;gap:.7rem;min-height:48px;color:#fff;font-weight:800;text-decoration:none;white-space:nowrap}.hero-video-link:hover{color:var(--sun)}.hero-video-play{width:42px;height:42px;border:1px solid rgba(255,255,255,.48);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.1);backdrop-filter:blur(6px);transition:background .2s,border-color .2s,transform .2s}.hero-video-play .fa{margin-left:2px;font-size:.8rem}.hero-video-link:hover .hero-video-play{background:var(--sun);border-color:var(--sun);color:#043052;transform:scale(1.06)}
.editorial-video-photo{position:relative}.editorial-video-trigger{position:absolute;left:20px;bottom:58px;z-index:2;display:inline-flex;align-items:center;gap:.75rem;padding:.65rem .9rem .65rem .65rem;border-radius:6px;background:rgba(3,51,91,.9);color:#fff;text-decoration:none;box-shadow:0 14px 34px rgba(0,0,0,.2);backdrop-filter:blur(8px);transition:transform .2s,background .2s}.editorial-video-trigger>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--sun);color:#043052}.editorial-video-trigger .fa{margin-left:2px;font-size:.78rem}.editorial-video-trigger strong{font-size:.82rem;letter-spacing:.02em}.editorial-video-trigger:hover{transform:translateY(-2px);background:#0468a7;color:#fff}
.sv-video-frame video{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000;object-fit:contain}.sv-local-video-lightbox .sv-video-lightbox-stage{width:min(1180px,92vw)}.sv-local-video-lightbox .sv-video-title{margin-left:0;margin-right:0}
@media(max-width:767.98px){.hero-video-link{width:100%;justify-content:flex-start;margin-top:.15rem}.editorial-video-trigger{left:14px;bottom:54px}.sv-local-video-lightbox .sv-video-lightbox-stage{width:100%}}

.topbar .container{min-height:24px}.topbar-contact{align-items:center}.topbar-contact a{display:inline-flex;align-items:center;gap:.28rem;color:#fff;white-space:nowrap}.topbar-contact .fa{margin-right:0}.topbar-actions{display:flex;align-items:center;gap:.38rem;margin-left:auto}.topbar-social,.topbar-search-toggle{width:29px;height:29px;flex:0 0 29px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:rgba(255,255,255,.05);color:#fff!important;text-decoration:none;transition:background .18s,border-color .18s,color .18s,transform .18s}.topbar-social .fa,.topbar-search-toggle .fa{margin:0;color:inherit}.topbar-social:hover,.topbar-search-toggle:hover,.topbar-search-toggle[aria-expanded="true"]{background:var(--sun);border-color:var(--sun);color:#0d3c62!important;transform:translateY(-1px)}.topbar-search-toggle{appearance:none;cursor:pointer}.main-nav.search-open{background:var(--brand-gradient);backdrop-filter:blur(16px);box-shadow:0 10px 40px rgba(0,0,0,.14)}
.site-search-panel{position:fixed;left:0;right:0;top:var(--site-search-top,132px);z-index:1088;visibility:hidden;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility .2s;background:#fff;border-top:1px solid rgba(4,104,167,.12);box-shadow:0 22px 55px rgba(3,36,60,.18)}.site-search-panel.is-open{visibility:visible;opacity:1;transform:none;pointer-events:auto}.site-search-shell{padding:1.3rem 0 1.45rem}.site-search-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.site-search-head>div{display:flex;align-items:baseline;gap:.7rem}.site-search-eyebrow{color:#d89a18;font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.site-search-head strong{color:#035b90;font-size:1.05rem}.site-search-close{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:6px;background:#eef5f8;color:#035b90}.site-search-close:hover{background:#0468a7;color:#fff}.site-search-field{position:relative;display:flex;align-items:center}.site-search-field>.fa{position:absolute;left:1rem;color:#7891a2;pointer-events:none}.site-search-field input{width:100%;height:56px;padding:0 3.2rem 0 2.8rem;border:1px solid #c7d7df;border-radius:6px;background:#f8fbfc;color:#17384e;font:inherit;font-size:1rem;font-weight:600;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.site-search-field input:focus{background:#fff;border-color:#0468a7;box-shadow:0 0 0 3px rgba(4,104,167,.1)}.site-search-field input::-webkit-search-cancel-button{display:none}.site-search-clear{position:absolute;right:.45rem;width:40px;height:40px;border:0;border-radius:6px;background:transparent;color:#7c919e;opacity:0;pointer-events:none;transition:opacity .18s,background .18s,color .18s}.site-search-clear.is-visible{opacity:1;pointer-events:auto}.site-search-clear:hover{background:#eaf2f6;color:#035b90}.site-search-status{min-height:24px;padding:.65rem .1rem .25rem;color:#738896;font-size:.78rem;font-weight:600}.site-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;max-height:min(430px,52vh);overflow:auto;padding:.1rem .15rem .15rem 0}.site-search-result{display:grid;grid-template-columns:42px minmax(0,1fr) 24px;align-items:center;gap:.8rem;min-height:76px;padding:.75rem .85rem;border:1px solid #e0e9ee;border-radius:6px;background:#fff;color:inherit;text-decoration:none;transition:border-color .18s,box-shadow .18s,transform .18s}.site-search-result:hover{border-color:rgba(4,104,167,.35);box-shadow:0 10px 28px rgba(4,48,82,.09);transform:translateY(-1px)}.site-search-result-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:6px;background:#edf5f9;color:#0468a7}.site-search-result-body{min-width:0}.site-search-result-type{display:block;margin-bottom:.08rem;color:#d89a18;font-size:.62rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.site-search-result-title{display:block;color:#035b90;font-size:.92rem;font-weight:800;line-height:1.2}.site-search-result-snippet{display:block;margin-top:.15rem;color:#718590;font-size:.72rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-search-result-arrow{color:#9aacb7;text-align:right}.site-search-result:hover .site-search-result-arrow{color:#0468a7}.site-search-empty{grid-column:1/-1;padding:2rem 1rem;text-align:center;border:1px dashed #c9d8df;border-radius:6px;color:#718590}.site-search-empty .fa{display:block;margin-bottom:.55rem;color:#0468a7;font-size:1.25rem}
@media(max-width:1199.98px){.topbar .container{justify-content:space-between!important}.topbar-contact{width:auto;justify-content:flex-start;gap:1rem!important}.topbar-actions{flex:0 0 auto}.main-nav.search-open{background:var(--brand-gradient)}.site-search-results{grid-template-columns:1fr}}
@media(max-width:767.98px){.topbar .container{justify-content:space-between!important;gap:.5rem!important}.topbar-contact{width:auto;justify-content:flex-start;gap:.65rem!important;font-size:.7rem}.topbar-actions{gap:.25rem}.topbar-social,.topbar-search-toggle{width:25px;height:25px;flex-basis:25px;font-size:.72rem}.site-search-shell{padding:1rem 0 1.15rem}.site-search-head{margin-bottom:.65rem}.site-search-head>div{display:block}.site-search-eyebrow{display:block;margin-bottom:.08rem}.site-search-field input{height:52px;font-size:.9rem}.site-search-results{max-height:48vh}.site-search-result{grid-template-columns:38px minmax(0,1fr) 18px;min-height:70px;padding:.65rem}.site-search-result-icon{width:38px;height:38px}.site-search-result-snippet{display:none}}
@media(max-width:420px){.topbar{padding:.35rem 0}.topbar .container{flex-wrap:wrap}.topbar-contact{font-size:.67rem;gap:.55rem!important}.topbar-actions{margin-left:auto}.topbar-social,.topbar-search-toggle{width:24px;height:24px;flex-basis:24px}.site-search-head strong{font-size:.95rem}}
@media(max-width:340px){.topbar-contact,.topbar-actions{width:100%}.topbar-actions{justify-content:flex-end}}

.catalog-section{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#f3f8fb 100%)}
.catalog-showcase{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(2.5rem,6vw,6rem);padding:clamp(2rem,4vw,4rem);border:1px solid rgba(3,91,144,.1);border-radius:6px;background:#fff;box-shadow:0 28px 80px rgba(4,48,82,.09)}
.catalog-visual{min-height:430px;display:flex;align-items:center;justify-content:center;position:relative}
.catalog-visual:before{content:"";position:absolute;width:78%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,202,5,.22) 0%,rgba(255,202,5,0) 70%);filter:blur(2px)}
.catalog-book{position:relative;width:min(300px,75vw);aspect-ratio:.72;transform:perspective(1200px) rotateY(-12deg) rotateX(2deg);filter:drop-shadow(24px 30px 28px rgba(4,48,82,.22))}
.catalog-book-cover{position:absolute;inset:0 0 0 16px;overflow:hidden;border-radius:6px;background:linear-gradient(145deg,#06375d 0%,#0468a7 62%,#0791cb 100%);color:#fff;padding:34px 30px;display:flex;flex-direction:column;justify-content:space-between}
.catalog-book-cover:after{content:"";position:absolute;right:-80px;bottom:-90px;width:260px;height:260px;border:38px solid rgba(255,202,5,.92);border-radius:50%}
.catalog-book-spine{position:absolute;left:0;top:7px;bottom:7px;width:20px;border-radius:6px 0 0 6px;background:linear-gradient(90deg,#021f36,#0b527f)}
.catalog-mark{font-weight:800;letter-spacing:.16em;font-size:1.05rem;position:relative;z-index:2}
.catalog-sun{width:90px;height:90px;border:13px solid #ffca05;border-radius:50%;position:relative;z-index:2;margin-left:auto;margin-right:10%}
.catalog-sun span{position:absolute;inset:17px;border-radius:50%;background:#ffca05}
.catalog-cover-copy{position:relative;z-index:2;max-width:220px}.catalog-cover-copy span{display:block;text-transform:uppercase;font-size:.72rem;letter-spacing:.16em;opacity:.72;margin-bottom:.6rem}.catalog-cover-copy strong{display:block;font-size:clamp(1.85rem,3.2vw,2.7rem);line-height:.98;white-space:pre-line;font-weight:700}
.catalog-copy .section-kicker{display:inline-block;color:#035b90;text-transform:uppercase;letter-spacing:.15em;font-size:.76rem;font-weight:700;margin-bottom:1rem}.catalog-copy h2{font-size:clamp(2rem,4vw,3.55rem);line-height:1.04;color:#035b90;font-weight:500;max-width:720px;margin-bottom:1.25rem}.catalog-copy p{font-size:1.05rem;line-height:1.8;color:#526675;max-width:690px}
.catalog-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.catalog-actions .btn{min-height:50px;display:inline-flex;align-items:center;gap:.65rem;padding-inline:1.35rem}.btn-outline-brand{border:1px solid rgba(4,104,167,.38);color:#035b90;background:#fff}.btn-outline-brand:hover{background:#0468a7;color:#fff;border-color:#0468a7}
.catalog-meta{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;margin-top:1.6rem;color:#637684;font-size:.86rem}.catalog-meta span{display:inline-flex;align-items:center;gap:.45rem}.catalog-meta i{color:#0468a7}
.catalog-viewer{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:18px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility .25s ease}.catalog-viewer.is-open{opacity:1;visibility:visible;pointer-events:auto}.catalog-viewer-backdrop{position:absolute;inset:0;background:rgba(2,20,34,.94);backdrop-filter:blur(10px)}
.catalog-viewer-shell{position:relative;width:min(1540px,100%);height:min(94vh,980px);display:flex;flex-direction:column;overflow:hidden;border-radius:6px;background:#102b3e;border:1px solid rgba(255,255,255,.12);box-shadow:0 35px 100px rgba(0,0,0,.55);transform:translateY(18px) scale(.985);transition:transform .28s ease}.catalog-viewer.is-open .catalog-viewer-shell{transform:none}
.catalog-viewer-toolbar{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:10px 12px 10px 20px;background:linear-gradient(90deg,rgb(4 48 82 / 97%),#0468a7);color:#fff}.catalog-viewer-title{display:flex;align-items:center;gap:.8rem;min-width:0}.catalog-viewer-title>i{font-size:1.45rem;color:#ffca05}.catalog-viewer-title div{display:flex;flex-direction:column;min-width:0}.catalog-viewer-title strong{font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catalog-viewer-title span{font-size:.7rem;opacity:.68;text-transform:uppercase;letter-spacing:.12em}
.catalog-viewer-actions{display:flex;align-items:center;gap:.35rem}.catalog-tool{height:42px;min-width:42px;padding:0 13px;border:1px solid rgba(255,255,255,.18);border-radius:6px;background:rgba(255,255,255,.08);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;text-decoration:none;font-size:.82rem;transition:.2s ease}.catalog-tool:hover{background:#ffca05;color:#073452;border-color:#ffca05}.catalog-close{font-size:1rem}
.catalog-viewer-stage{position:relative;flex:1;min-height:0;background:#263947;padding:12px}.catalog-pdf-frame{position:relative;z-index:2;width:100%;height:100%;border:0;border-radius:4px;background:#fff;opacity:0;transition:opacity .25s ease}.catalog-pdf-frame.is-loaded{opacity:1}.catalog-loading{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;color:#dce7ed}.catalog-loading i{font-size:2rem;color:#ffca05}.catalog-viewer.is-fullscreen{padding:0}.catalog-viewer.is-fullscreen .catalog-viewer-shell{width:100%;height:100vh;max-width:none;border-radius:0;border:0}
body.catalog-viewer-open{overflow:hidden}
@media(max-width:991.98px){.catalog-showcase{grid-template-columns:1fr;gap:1rem}.catalog-visual{min-height:360px}.catalog-copy{text-align:center}.catalog-copy p{margin-inline:auto}.catalog-actions,.catalog-meta{justify-content:center}}
@media(max-width:575.98px){.catalog-showcase{padding:1.25rem}.catalog-visual{min-height:300px}.catalog-book{width:210px}.catalog-book-cover{padding:24px 20px}.catalog-sun{width:64px;height:64px;border-width:10px}.catalog-cover-copy strong{font-size:1.7rem}.catalog-viewer{padding:0}.catalog-viewer-shell{width:100%;height:100dvh;border:0;border-radius:0}.catalog-viewer-toolbar{min-height:60px;padding:8px 8px 8px 14px}.catalog-viewer-title span,.catalog-tool span{display:none}.catalog-tool{padding:0;min-width:40px}.catalog-viewer-stage{padding:0}.catalog-pdf-frame{border-radius:0}.catalog-actions .btn{width:100%;justify-content:center}}


/* v1.11.5 - SQL driven inner-page hero images */
.page-hero,
.projects-page-hero,
.references-page-hero,
.videos-page-hero,
.catalog-page-hero{
  background-image:var(--hero-overlay),var(--page-hero-image,url('/assets/img/hero.jpg'))!important;
  background-position:var(--page-hero-position,center center);
  background-size:cover;
}
@media(max-width:767.98px){
  .page-hero,.projects-page-hero,.references-page-hero,.videos-page-hero,.catalog-page-hero{
    background-image:var(--hero-overlay),var(--page-hero-mobile-image,var(--page-hero-image,url('/assets/img/hero.jpg')))!important;
  }
}

.contact-map-wrap{width:100%;margin:0;padding:0;overflow:hidden;background:#eaf1f5;line-height:0}
.contact-map-wrap iframe{display:block;width:100%;height:clamp(420px,48vw,620px);border:0}
@media(max-width:575.98px){.contact-map-wrap iframe{height:390px}}
