:root{
  --navy:#0b2f4a; --navy-2:#123f60; --teal:#08746d; --teal-2:#0fb29f; --lime:#9ad15f; --gold:#f2c94c;
  --ink:#102033; --body:#3c4b5d; --muted:#6a7a8c; --line:#dbe7e6; --paper:#f7fbf8; --soft:#eef8f3; --white:#fff;
  --shadow:0 20px 55px rgba(11,47,74,.14); --shadow-soft:0 10px 28px rgba(11,47,74,.09);
  --radius:22px; --radius-lg:34px; --max:1180px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth;-webkit-text-size-adjust:100%} body{margin:0;font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6;font-size:16px} img{max-width:100%;display:block} a{color:inherit} button,input,select,textarea{font:inherit}.skip-link{position:absolute;left:-999px;z-index:99999}.skip-link:focus{left:1rem;top:1rem;background:#fff;color:#000;border:3px solid #000;padding:.7rem 1rem}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}:focus-visible{outline:4px solid #ffbf47;outline-offset:4px}.i{width:22px;height:22px;flex:0 0 auto}.a11y-large{font-size:19px}.a11y-contrast{filter:contrast(1.18)}.a11y-links a{text-decoration:underline!important}.a11y-readable{font-family:Arial,sans-serif!important}
.accessibility-toggle{position:fixed;right:18px;bottom:18px;z-index:10000;background:#fff;color:var(--navy);border:2px solid var(--navy);border-radius:999px;padding:.68rem 1rem;font-weight:900;box-shadow:var(--shadow-soft)}.accessibility-panel{position:fixed;right:18px;bottom:76px;width:min(320px,calc(100vw - 36px));z-index:10000;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:1rem}.accessibility-panel[hidden]{display:none}.accessibility-title{font-weight:900;margin:.1rem 0 .8rem}.accessibility-actions{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.accessibility-actions button{border:1px solid var(--line);border-radius:12px;background:var(--paper);padding:.55rem;font-weight:800;color:var(--navy)}
.site-header{position:sticky;top:0;z-index:9000;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.topline{display:flex;justify-content:space-between;gap:1rem;background:#f1faef;color:#113047;border-bottom:1px solid #d9ecd6;padding:.46rem clamp(1rem,4vw,4rem);font-size:.87rem;font-weight:750}.topline a{color:#072b45;text-decoration:none;font-weight:900}.topline a:hover{text-decoration:underline}.nav-wrap{position:relative;max-width:1360px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:.78rem clamp(1rem,4vw,4rem)}.brand{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}.brand-logo{width:235px;height:auto}.menu-toggle{display:none;border:1px solid var(--line);touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#fff;border-radius:14px;padding:.7rem .9rem;font-weight:900;color:var(--navy)}.mainnav{display:flex;align-items:center;gap:.18rem}.mainnav>a,.nav-group>button{min-height:44px;display:flex;align-items:center;border:0;background:transparent;color:var(--navy);text-decoration:none;font-weight:850;padding:.68rem .72rem;border-radius:14px;cursor:pointer;white-space:nowrap}.mainnav>a:hover,.nav-group:hover>button,.nav-group>button[aria-expanded=true]{background:var(--soft)}.nav-cta{background:linear-gradient(135deg,var(--teal),var(--navy))!important;color:#fff!important;padding:.72rem 1rem!important;box-shadow:0 10px 22px rgba(8,116,109,.18)}.nav-cta:hover{filter:saturate(1.08)}.nav-group{position:relative;padding-bottom:10px;margin-bottom:-10px}.dropdown{position:absolute;left:0;top:100%;min-width:310px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:.65rem;display:none;z-index:9999}.nav-group:hover .dropdown,.nav-group:focus-within .dropdown{display:grid}.dropdown a{display:block;text-decoration:none;padding:.78rem .85rem;border-radius:14px;color:var(--ink);font-weight:760}.dropdown a:hover{background:var(--soft);color:var(--navy)}
.section{max-width:var(--max);margin:auto;padding:clamp(3.2rem,6vw,5.8rem) clamp(1rem,4vw,2rem)}.alt{background:var(--paper);max-width:none}.alt>*{max-width:var(--max);margin-left:auto;margin-right:auto}.section-head{max-width:850px;margin:0 0 2rem}.section-head.center{text-align:center;margin-inline:auto}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--teal);font-weight:950;font-size:.78rem}.section-head h2,.content h2{font-size:clamp(1.95rem,3.6vw,3.75rem);line-height:1.03;letter-spacing:-.04em;margin:.35rem 0 .8rem;color:var(--navy)}.section-head p,.content p,.wide-copy p{color:var(--body);font-size:1.07rem}.page-hero{max-width:none!important;margin:0!important;padding:0!important;min-height:clamp(460px,57vh,640px);display:flex;align-items:stretch;background-color:var(--navy);background-image:linear-gradient(90deg,rgba(8,38,58,.93) 0%,rgba(8,38,58,.78) 48%,rgba(8,116,109,.34) 74%,rgba(8,38,58,.16) 100%),var(--hero-img);background-size:cover;background-position:center;position:relative;overflow:hidden}.page-hero::after{content:"";position:absolute;inset:auto 0 0 0;height:8px;background:linear-gradient(90deg,var(--lime),var(--gold),var(--teal-2))}.page-hero .content{position:relative;z-index:2;max-width:1220px;margin:auto;width:100%;padding:clamp(4.8rem,8vw,7rem) clamp(1.1rem,4vw,2rem);color:#fff}.page-hero h1{max-width:900px;font-size:clamp(2.35rem,5vw,4.85rem);line-height:.98;letter-spacing:-.052em;margin:.35rem 0 1rem;color:#fff;text-shadow:0 2px 22px rgba(0,0,0,.26)}.page-hero p{max-width:760px;color:#f2faf6;font-size:clamp(1.06rem,1.45vw,1.24rem);line-height:1.56;margin:0 0 1.2rem}.page-hero .eyebrow{color:#def36a}.page-kicker{display:flex;gap:.5rem;flex-wrap:wrap;margin:1rem 0 0}.pill{display:inline-flex;border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:.36rem .72rem;font-weight:900;color:#fff;background:rgba(255,255,255,.12);font-size:.86rem;backdrop-filter:blur(6px)}.section .pill{background:#fff;color:var(--navy);border-color:var(--line)}
.actions{display:flex;gap:.8rem;flex-wrap:wrap;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:48px;padding:.86rem 1.18rem;border-radius:16px;background:linear-gradient(135deg,var(--teal),var(--navy));color:#fff;text-decoration:none;border:0;font-weight:950;box-shadow:0 14px 30px rgba(8,116,109,.22);cursor:pointer;white-space:nowrap;line-height:1}.btn:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(11,47,74,.24)}.btn.secondary{background:#fff;color:var(--navy);border:1px solid rgba(11,47,74,.13);box-shadow:0 10px 22px rgba(11,47,74,.08)}.page-hero .btn.secondary{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.42);backdrop-filter:blur(8px)}.btn.light{background:#fff!important;color:var(--navy)!important;border:0!important;box-shadow:0 12px 28px rgba(0,0,0,.14)}.btn.ghost-light{background:transparent!important;border:1px solid rgba(255,255,255,.42)!important;color:#fff!important;box-shadow:none!important;text-decoration:none!important}
.grid{display:grid;gap:1.1rem}.cols-2{grid-template-columns:repeat(2,1fr)}.cols-3{grid-template-columns:repeat(3,1fr)}.cols-4{grid-template-columns:repeat(4,1fr)}.card{background:#fff;border:1px solid rgba(11,47,74,.1);border-radius:var(--radius);padding:1.35rem;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.card h3{font-size:1.24rem;line-height:1.16;margin:.15rem 0 .6rem;color:var(--navy)}.card p{color:var(--body);margin:.35rem 0}.card-link,.solution-link{display:inline-flex;margin-top:.85rem;font-weight:950;color:var(--teal);text-decoration:none}.card-link::after,.solution-link::after{content:" →"}.card-link:hover,.solution-link:hover{color:var(--navy);text-decoration:none}.tidy-card,.product-tile{min-height:188px}.product-tile span{display:inline-flex;margin-bottom:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-size:.74rem;font-weight:950}.image-card{padding:0;min-height:365px;display:flex;flex-direction:column}.image-card figure{margin:0;position:relative;height:190px;background:linear-gradient(135deg,var(--soft),#fff7dc);overflow:hidden}.image-card img{width:100%;height:100%;object-fit:cover}.image-card figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,47,74,0),rgba(11,47,74,.14))}.image-card .card-body{padding:1.25rem;display:flex;flex-direction:column;flex:1}.image-card .card-link{margin-top:auto;align-self:flex-start}.market-card{padding:0!important;min-height:390px;display:flex;flex-direction:column}.market-card figure{height:210px}.market-card h3{font-size:1.36rem}.market-card.unsure{background:linear-gradient(135deg,#fff7d6,#e7f9ee);color:var(--ink);padding:1.35rem!important;justify-content:center;min-height:310px}.market-card.unsure h3,.market-card.unsure p{color:var(--ink)}.market-card.unsure .card-link{background:#fff;border-radius:999px;padding:.55rem .8rem;box-shadow:var(--shadow-soft)}
.router-panel{background:linear-gradient(135deg,#0b2f4a 0%,#08746d 62%,#9ad15f 140%);color:#fff;border-radius:var(--radius-lg);padding:clamp(1.5rem,4vw,3rem);display:grid;grid-template-columns:.95fr 1.35fr;gap:2rem;align-items:center;box-shadow:var(--shadow)}.router-panel h2{font-size:clamp(1.85rem,3.2vw,3.35rem);line-height:1;margin:.3rem 0 1rem;color:#fff;letter-spacing:-.04em}.router-panel p{color:#eefbf5}.router-panel .eyebrow{color:#def36a}.router-form{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);border-radius:26px;padding:1.05rem;display:grid;grid-template-columns:auto minmax(420px,1fr);gap:1rem;align-items:center}.router-select-only{max-width:760px;margin-left:auto}.router-form label{font-weight:950;white-space:nowrap;font-size:1.02rem}.router-form select{width:100%;border:2px solid rgba(255,255,255,.72);background:#fff;color:var(--ink);border-radius:18px;padding:1rem 1.15rem;min-height:60px;font-size:1.04rem;font-weight:800;box-shadow:0 14px 30px rgba(0,0,0,.16);cursor:pointer}.router-form select:focus{outline:3px solid rgba(222,243,106,.62);outline-offset:3px}.router-form .btn{min-width:150px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,4rem);align-items:center}.media-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);overflow:hidden}.media-card img{width:100%;height:360px;object-fit:cover;background:var(--soft)}.media-card div{padding:1rem 1.15rem;color:var(--body)}.media-card strong{color:var(--navy)}.ticks{list-style:none;padding:0;margin:1.2rem 0}.ticks li{position:relative;padding-left:2rem;margin:.62rem 0;color:var(--body)}.ticks li::before{content:"";position:absolute;left:0;top:.28rem;width:1.05rem;height:1.05rem;border-radius:50%;background:var(--lime);box-shadow:inset 0 0 0 4px #fff;border:2px solid var(--lime)}.band,.clean-band{background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff;border-radius:var(--radius-lg);padding:clamp(1.7rem,4vw,3rem);box-shadow:var(--shadow)}.band h2,.clean-band h2{color:#fff;margin:.2rem 0 .8rem}.band p,.clean-band p{color:#eafbf6}.platform-summary{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:clamp(1.5rem,4vw,3rem)}.mini-grid,.platform-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem}.mini-grid div,.platform-grid div,.diagram-step{border:1px solid var(--line);background:var(--paper);border-radius:18px;padding:1rem}.mini-grid strong,.platform-grid strong,.diagram-step strong{display:block;color:var(--navy);font-weight:950}.mini-grid span,.platform-grid span,.diagram-step span{color:var(--body)}.feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem}.metric-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem}.metric{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1rem}.metric strong{display:block;font-size:1.6rem;color:var(--navy)}.diagram-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1rem;box-shadow:var(--shadow-soft)}.diagram-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}.wide-copy{max-width:880px;margin:auto}.legal-copy h2{color:var(--navy);font-size:1.55rem}.notice{background:#fff7ed;border:1px solid #fed7aa;border-radius:18px;padding:1rem;color:#7c2d12}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field label{display:block;font-weight:900;margin:.5rem 0 .25rem;color:var(--navy)}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:14px;padding:.85rem;background:#fff}.field textarea{min-height:140px}.cta-band{max-width:var(--max);margin:2rem auto 0;padding:clamp(1.5rem,4vw,2.45rem);background:linear-gradient(135deg,#0b2f4a 0%,#08746d 62%,#9ad15f 130%);color:#fff;border-radius:var(--radius-lg);display:flex;justify-content:space-between;gap:2rem;align-items:center}.cta-band h2{margin:0;font-size:clamp(1.55rem,3vw,2.8rem);line-height:1}.cta-band p{color:#e8f4f0;margin:.65rem 0 0}.site-footer{margin-top:3rem;background:var(--navy);color:#fff}.footer-grid{max-width:1360px;margin:auto;display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:2rem;padding:3rem clamp(1rem,4vw,4rem)}.site-footer a{display:block;color:#e8f4f0;text-decoration:none;margin:.45rem 0}.site-footer a:hover{text-decoration:underline}.site-footer p{color:#e8f4f0}.site-footer h3{margin-top:0;color:#fff}.subfooter{border-top:1px solid rgba(255,255,255,.16);max-width:1360px;margin:auto;padding:1rem clamp(1rem,4vw,4rem);display:flex;justify-content:space-between;gap:1rem;color:#e8f4f0;font-size:.92rem}.footer-legal{display:flex;gap:1rem;flex-wrap:wrap}.footer-brand .brand-logo{filter:brightness(0) invert(1);max-width:220px}
@media(max-width:1120px){.mainnav>a,.nav-group>button{padding:.62rem .55rem}.brand-logo{width:205px}.router-panel,.split,.platform-summary{grid-template-columns:1fr}.router-form{grid-template-columns:1fr;max-width:none}.router-form label{padding:0}.cols-4{grid-template-columns:repeat(2,1fr)}.cols-3{grid-template-columns:repeat(2,1fr)}.diagram-flow{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.topline{display:none}.mainnav{display:none;position:absolute;left:1rem;right:1rem;top:calc(100% + .55rem);background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:.8rem;align-items:stretch;flex-direction:column}.mainnav.is-open{display:flex;z-index:10050}.menu-toggle{display:block}.nav-group{width:100%;padding-bottom:0;margin-bottom:0}.nav-group>button,.mainnav>a{width:100%;justify-content:flex-start}.dropdown{position:static;box-shadow:none;border:0;background:var(--paper);margin:.3rem 0 .6rem;display:none}.nav-group.is-open .dropdown{display:grid}}
@media(max-width:680px){.section{padding-left:1rem;padding-right:1rem}.page-hero{min-height:410px;background-image:linear-gradient(90deg,rgba(8,38,58,.92),rgba(8,38,58,.68)),var(--hero-img)}.page-hero h1{font-size:2.25rem}.cols-2,.cols-3,.cols-4,.feature-list,.metric-row,.mini-grid,.platform-grid,.diagram-flow{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.subfooter,.cta-band{display:block}.actions{align-items:stretch}.actions .btn,.btn{width:100%;white-space:normal}.image-card figure{height:170px}.market-card{min-height:330px}.media-card img{height:240px}}


/* v12: photo-led heroes restored, floating accessibility widget removed */
.accessibility-widget,.accessibility-toggle,.accessibility-panel{display:none!important}
.page-hero{background-image:linear-gradient(90deg,rgba(8,38,58,.94) 0%,rgba(8,38,58,.78) 46%,rgba(8,116,109,.34) 72%,rgba(8,38,58,.16) 100%),var(--hero-img)!important;background-size:cover!important;background-position:center!important;min-height:clamp(460px,57vh,640px)!important}
.page-hero .content{max-width:1220px}
.home-hero{min-height:clamp(520px,62vh,700px)!important}
.router-form{grid-template-columns:1fr!important;max-width:840px}
.router-form label{font-size:1.08rem;margin-bottom:.2rem}
.router-form select{font-size:1.12rem;min-height:68px;border-radius:20px;padding:1.15rem 1.25rem}
.card.image-card figure{background:linear-gradient(135deg,#eef8f3,#fff7dc)}
.btn{min-width:max-content}
@media(max-width:680px){.page-hero,.home-hero{min-height:420px!important;background-image:linear-gradient(90deg,rgba(8,38,58,.92),rgba(8,38,58,.68)),var(--hero-img)!important}.router-form select{font-size:1rem;min-height:62px}.btn{min-width:0}}

.page-hero{--hero-img:url('../images/hero-home-main.jpg')}
.home-hero{--hero-img:url('../images/hero-home-main.jpg')}

/* v13: photo hero visibility and strict local photo use */
.page-hero{
  background-image:linear-gradient(90deg,rgba(6,31,49,.92) 0%,rgba(6,31,49,.82) 38%,rgba(6,31,49,.42) 61%,rgba(6,31,49,.12) 100%),var(--hero-img)!important;
  background-size:cover!important;
  background-position:center!important;
  min-height:clamp(500px,62vh,690px)!important;
}
.page-hero .content{max-width:1180px!important;}
.page-hero h1,.page-hero p{max-width:760px!important;}
.home-hero{min-height:clamp(560px,68vh,760px)!important;}
.card.image-card figure{background:#eaf4ef!important;}
.image-card img,.media-card img{background:#eaf4ef!important;}
.router-form{grid-template-columns:1fr!important;}
.router-form select{width:100%;}
@media(max-width:680px){
  .page-hero,.home-hero{min-height:440px!important;background-image:linear-gradient(90deg,rgba(6,31,49,.92),rgba(6,31,49,.70)),var(--hero-img)!important;}
}
