:root{--navy:#1c527b;--teal:#20bec5;--ink:#172b4d;--muted:#66788a;--surface:#f3f7f9;--white:#fff;--line:#d9e4e9;--danger:#a32828;--shadow:0 16px 40px rgba(14,78,122,.1);--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:Inter,"Segoe UI",Arial,sans-serif;line-height:1.65}h1,h2,h3{font-family:Montserrat,"Avenir Next","Segoe UI",sans-serif;line-height:1.12;margin:0 0 .65em}h1{font-size:clamp(2.5rem,6vw,5rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,4vw,3.25rem);letter-spacing:-.035em}h3{font-size:1.25rem}a{color:inherit}button,input{font:inherit}.container{width:min(1180px,calc(100% - 2rem));margin-inline:auto}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:100;background:var(--white);padding:.7rem 1rem;border-radius:8px}.skip-link:focus{top:1rem}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav-wrap,.admin-bar{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{text-decoration:none;color:var(--navy);font:800 1.35rem Montserrat,"Segoe UI",sans-serif;letter-spacing:-.04em}.brand span{color:var(--teal)}.brand--image{display:inline-flex;align-items:center;flex:0 0 auto}.brand--image img{display:block;width:220px;height:auto}.brand--footer{background:#fff;border-radius:10px;padding:.5rem}.brand--footer img{width:250px}.brand--auth{display:flex;justify-content:center;margin-bottom:1.5rem}.brand--auth img{width:min(300px,100%)}.admin-bar .brand--image img{width:190px}.site-nav{display:flex;align-items:center;gap:1.15rem}.site-nav>a:not(.button){font-weight:650;text-decoration:none;font-size:.9rem}.nav-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:.5rem .8rem}.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:.72rem 1.15rem;border:2px solid var(--teal);border-radius:11px;background:var(--teal);color:#052f45;text-decoration:none;font-weight:800;cursor:pointer}.button:hover{filter:brightness(.95)}.button:focus-visible,a:focus-visible,input:focus-visible,.nav-toggle:focus-visible{outline:3px solid #ffca50;outline-offset:3px}.button--secondary{background:transparent;color:#fff}.button--small{min-height:40px;padding:.45rem .8rem}.button--block{width:100%}.button--ghost{background:transparent;border-color:var(--line);color:var(--ink);min-height:40px}.button-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.hero{overflow:hidden;background:linear-gradient(125deg,#083b60,#1c527b 65%,#0b6682);color:#fff;padding:clamp(4.5rem,10vw,8.5rem) 0}.hero__grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(2rem,7vw,7rem);align-items:center}.lead{font-size:clamp(1.05rem,2vw,1.3rem);color:#dcebf2;max-width:66ch}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;font-weight:850;color:var(--teal)}.hero__visual{min-height:400px;position:relative;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:radial-gradient(circle,rgba(32,190,197,.3),transparent 60%),linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:auto,32px 32px,32px 32px}.hero__visual span{position:absolute;padding:.5rem .8rem;border-radius:999px;background:#fff;color:var(--navy);font-size:.78rem;font-weight:800;box-shadow:var(--shadow)}.hero__visual span:nth-child(1){top:17%;left:42%}.hero__visual span:nth-child(2){top:43%;right:3%}.hero__visual span:nth-child(3){bottom:17%;left:35%}.hero__visual span:nth-child(4){top:48%;left:-4%}.section{padding:clamp(4rem,8vw,7rem) 0}.card-grid,.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2rem}.card,.stat-card,.auth-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:1.6rem;box-shadow:var(--shadow)}.site-footer{background:#092f4a;color:#c8dbe4;padding:4rem 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}.site-footer h2{font-size:1rem;color:#fff}.site-footer a:not(.brand){display:block;margin:.45rem 0;text-decoration:none}.empty-state{text-align:center;max-width:700px}.auth-page{min-height:100vh;display:grid;place-items:center;background:var(--surface)}.auth-shell{width:min(460px,calc(100% - 2rem))}.auth-card h1{font-size:2.3rem}.auth-card label{display:block;font-weight:750;margin:1rem 0 .35rem}.auth-card input{width:100%;min-height:48px;border:1px solid #aebfc8;border-radius:9px;padding:.7rem}.auth-card .button{margin-top:1.25rem}.alert{padding:.8rem 1rem;border-radius:9px}.alert--error{background:#fbe8e8;color:var(--danger);border:1px solid #e9bcbc}.admin-bar{padding:0 2rem;border-bottom:1px solid var(--line)}.admin-user{display:flex;align-items:center;gap:1rem}.admin-main{padding:2rem;width:min(1280px,100%);margin:auto}.page-heading h1{font-size:2.5rem}.stats-grid{grid-template-columns:repeat(4,1fr)}.stat-card span,.stat-card small{display:block;color:var(--muted)}.stat-card strong{display:block;font-size:2rem}
@media(max-width:1100px){.brand--image img{width:180px}.site-nav{gap:.75rem}.site-nav>a:not(.button){font-size:.82rem}}
@media(max-width:900px){.nav-toggle{display:block}.site-nav{display:none;position:absolute;left:0;right:0;top:82px;background:#fff;padding:1rem;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.site-nav.is-open{display:flex}.hero__grid{grid-template-columns:1fr}.hero__visual{min-height:300px}.card-grid,.stats-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.card-grid,.stats-grid,.footer-grid{grid-template-columns:1fr}.hero__visual{min-height:250px}.admin-user>span{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.page-hero{background:linear-gradient(125deg,#0b3e62,#1c527b 70%,#116f82);color:#fff;padding:clamp(5rem,9vw,8rem) 0;position:relative;overflow:hidden}.page-hero::after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-100px;bottom:-250px;background:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:28px 28px}.narrow{max-width:900px}.page-hero .lead{max-width:760px}.split{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,7vw,7rem);align-items:start}.section--tint{background:var(--surface)}.feature-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.feature-list>div{background:#fff;padding:1.5rem}.feature-list strong,.feature-list span{display:block}.feature-list span{color:var(--muted);margin-top:.45rem}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.service-card{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:2rem;background:#fff;box-shadow:var(--shadow)}.service-card h2{font-size:1.55rem;padding-right:3rem}.service-card__number{position:absolute;right:1.5rem;top:1.5rem;color:var(--teal);font-weight:850}.text-link{font-weight:800;color:var(--navy);text-decoration:none}.check-list{list-style:none;padding:0;margin:0 0 2rem}.check-list li{position:relative;padding:.7rem 0 .7rem 2rem;border-bottom:1px solid var(--line)}.check-list li::before{content:"✓";position:absolute;left:0;color:var(--teal);font-weight:900}.process-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.process-grid article{padding:2rem;border:1px solid var(--line);border-radius:var(--radius)}.process-grid article>span{color:var(--teal);font-weight:900;letter-spacing:.1em}.process-grid h2{font-size:1.5rem;margin-top:.7rem}.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(2rem,7vw,6rem);align-items:start}.contact-note{margin-top:2rem;padding:1.25rem;border-left:4px solid var(--teal);background:var(--surface)}.form-card{border:1px solid var(--line);border-radius:var(--radius);padding:clamp(1.25rem,4vw,2.25rem);box-shadow:var(--shadow)}.form-card label{display:block;font-weight:750;margin:1rem 0 .35rem}.form-card input:not([type=checkbox]),.form-card textarea{width:100%;border:1px solid #aebfc8;border-radius:9px;padding:.75rem;background:#fff}.form-card textarea{resize:vertical}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkbox{display:flex!important;align-items:flex-start;gap:.7rem}.checkbox input{margin-top:.4rem}.field-error{display:block;color:var(--danger);margin-top:.25rem}.alert--success{background:#e1f7f0;border:1px solid #9bd8c5;color:#155e4b}.form-card .button{margin-top:1rem}
@media(max-width:800px){.split,.contact-grid{grid-template-columns:1fr}.feature-list{grid-template-columns:1fr}.service-grid,.process-grid{grid-template-columns:1fr}}
@media(max-width:600px){.field-row{grid-template-columns:1fr}}
.page-hero--compact{padding:clamp(3.5rem,7vw,5.5rem) 0}.directory-grid{display:grid;grid-template-columns:280px 1fr;gap:2rem;align-items:start}.filter-panel{position:sticky;top:100px;border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;background:#fff}.filter-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.filter-heading h2{font-size:1.2rem;margin:0}.filter-heading a{font-size:.85rem;color:var(--navy)}.filter-panel label{display:block;font-size:.85rem;font-weight:800;margin:1rem 0 .3rem}.filter-panel input,.filter-panel select{width:100%;min-height:44px;border:1px solid #aebfc8;border-radius:8px;padding:.55rem;background:#fff}.filter-panel .button{margin-top:1.25rem}.results-toolbar{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem;color:var(--muted)}.opportunity-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.15rem}.opportunity-card{border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;background:#fff;box-shadow:var(--shadow)}.opportunity-card__top{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.opportunity-card h2{font-size:1.35rem;margin-top:1rem}.opportunity-card h2 a{text-decoration:none}.badge{display:inline-flex;padding:.28rem .55rem;border-radius:999px;background:#e1f6f8;color:#0b5963;font-size:.72rem;font-weight:850}.badge--demo{background:#fff0ca;color:#765000}.verified{margin-left:auto;font-size:.7rem;color:var(--muted)}.reference{font:750 .78rem ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted)}.opportunity-meta{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin:1.25rem 0}.opportunity-meta div{border-top:1px solid var(--line);padding-top:.6rem}.opportunity-meta dt,.detail-sidebar dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.opportunity-meta dd,.detail-sidebar dd{margin:0;font-weight:700}.pagination{display:flex;gap:.4rem;margin-top:2rem}.pagination a{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:8px;text-decoration:none}.pagination a[aria-current=page]{background:var(--navy);color:#fff}.is-loading{opacity:.55;pointer-events:none}.opportunity-hero{background:var(--surface);padding:2rem 0 4rem}.breadcrumbs{display:flex;gap:.5rem;font-size:.82rem;color:var(--muted);margin-bottom:3rem}.opportunity-hero__grid{display:grid;grid-template-columns:1fr 270px;gap:3rem;align-items:end}.opportunity-hero h1{font-size:clamp(2.4rem,5vw,4.5rem)}.verification-card{background:var(--navy);color:#fff;border-radius:var(--radius);padding:1.4rem}.verification-card span,.verification-card strong,.verification-card small{display:block}.verification-card span,.verification-card small{color:#bcd7e4}.verification-card strong{font-size:1.2rem;margin:.35rem 0}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(2rem,6vw,5rem);align-items:start}.prose{max-width:760px}.prose h2{font-size:1.55rem;margin-top:2.5rem}.source-card{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;padding:1rem;border:1px solid var(--line);border-radius:10px;margin:.75rem 0}.source-card a{color:var(--navy);font-weight:750}.source-card small{color:var(--muted)}.disclaimer{margin-top:2rem;padding:1.25rem;background:#fff8e5;border-left:4px solid #e7a72f}.detail-sidebar{position:sticky;top:100px;border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem}.detail-sidebar h2{font-size:1.25rem}.detail-sidebar dl div{padding:.7rem 0;border-bottom:1px solid var(--line)}.detail-sidebar dd{margin-top:.15rem}.sidebar-actions{display:grid;gap:.6rem;margin-top:1.25rem}
@media(max-width:900px){.directory-grid,.detail-grid,.opportunity-hero__grid{grid-template-columns:1fr}.filter-panel,.detail-sidebar{position:static}.opportunity-grid{grid-template-columns:1fr}.verification-card{max-width:320px}}
.utility-bar{background:#092f4a;color:#d9e9ef;font-size:.72rem;letter-spacing:.035em}.utility-bar__inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.utility-bar__inner>span{color:#6ee0e4;font-weight:800;text-transform:uppercase}.utility-bar__inner div{display:flex;gap:1.25rem}.utility-bar a{text-decoration:none}.site-header .nav-wrap{min-height:88px}.site-nav{gap:.3rem}.site-nav>a:not(.nav-cta),.nav-group>summary{padding:.65rem .68rem;border-radius:8px;font-weight:750;text-decoration:none;font-size:.84rem;cursor:pointer;list-style:none}.nav-group>summary::-webkit-details-marker{display:none}.nav-group>summary::after{content:"";display:inline-block;width:6px;height:6px;margin:0 0 3px 7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}.nav-group[open]>summary,.site-nav>a:not(.nav-cta):hover{background:var(--surface);color:var(--navy)}.nav-group{position:relative}.nav-dropdown{position:absolute;z-index:30;top:calc(100% + 17px);left:0;width:310px;padding:.8rem;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 24px 60px rgba(9,47,74,.18)}.nav-group--wide .nav-dropdown{left:50%;transform:translateX(-50%)}.nav-dropdown--wide{width:650px;display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.nav-dropdown__eyebrow{grid-column:1/-1;padding:.35rem .55rem;color:var(--teal);font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.nav-dropdown a{display:flex;flex-direction:column;padding:.7rem;border-radius:8px;text-decoration:none}.nav-dropdown a:hover{background:var(--surface)}.nav-dropdown strong{font-size:.86rem;color:var(--ink)}.nav-dropdown small{color:var(--muted);font-size:.72rem}.nav-dropdown .nav-dropdown__all{grid-column:1/-1;display:block;margin-top:.3rem;border-top:1px solid var(--line);border-radius:0;color:var(--navy);font-weight:850}.nav-cta{display:flex;flex-direction:column;justify-content:center;min-width:128px;min-height:54px;margin-left:.6rem;padding:.45rem 1rem;border-radius:10px;background:var(--teal);color:#07364e;text-decoration:none;line-height:1.05}.nav-cta span{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em}.nav-cta strong{font-size:.88rem}.nav-toggle i{position:relative;display:inline-block;width:18px;height:2px;margin-left:.5rem;background:var(--navy);vertical-align:middle}.nav-toggle i::before,.nav-toggle i::after{content:"";position:absolute;left:0;width:18px;height:2px;background:var(--navy)}.nav-toggle i::before{top:-6px}.nav-toggle i::after{top:6px}
@media(max-width:1100px){.utility-bar{display:none}.site-header .nav-wrap{min-height:80px}.site-nav{top:80px}.site-nav>a:not(.nav-cta),.nav-group>summary{font-size:.82rem}.nav-cta{min-width:110px}}
@media(max-width:900px){.site-nav{gap:.2rem}.nav-group,.nav-group--wide{width:100%}.nav-group>summary{padding:.8rem}.nav-dropdown,.nav-group--wide .nav-dropdown{position:static;width:100%;transform:none;border:0;border-left:2px solid var(--teal);border-radius:0;box-shadow:none;margin:.2rem 0 .6rem .6rem}.nav-dropdown--wide{display:block}.nav-dropdown__eyebrow{display:block}.nav-cta{margin:.5rem 0 0;min-height:50px}.site-nav>a:not(.nav-cta){padding:.8rem}}
.application-shell{max-width:980px}.application-progress{margin-bottom:2rem}.application-progress__bar{height:5px;background:var(--line);border-radius:10px;overflow:hidden}.application-progress__bar span{display:block;height:100%;background:var(--teal);transition:width .2s}.application-progress ol{display:grid;grid-template-columns:repeat(7,1fr);list-style:none;padding:0;margin:.8rem 0 0}.application-progress li{text-align:center;color:var(--muted);font-size:.68rem}.application-progress li span{display:grid;place-items:center;width:28px;height:28px;margin:0 auto .3rem;border:1px solid var(--line);border-radius:50%;background:#fff;font-weight:850}.application-progress li[aria-current=step]{color:var(--navy);font-weight:850}.application-progress li[aria-current=step] span{background:var(--navy);border-color:var(--navy);color:#fff}.application-progress li.is-complete span{background:var(--teal);border-color:var(--teal);color:#052f45}.multi-step-form{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);padding:clamp(1.25rem,4vw,2.5rem)}.multi-step-form>fieldset{border:0;padding:0;margin:0;min-width:0}.multi-step-form>fieldset>legend{width:100%;font:800 clamp(1.6rem,3vw,2.25rem) Montserrat,"Segoe UI",sans-serif;color:var(--ink);margin-bottom:1rem}.multi-step-form>fieldset>legend span{display:block;color:var(--teal);font:850 .7rem Inter,sans-serif;text-transform:uppercase;letter-spacing:.12em;margin-bottom:.35rem}.multi-step-form label{display:block;font-weight:750;margin:1rem 0 .35rem}.multi-step-form input:not([type=checkbox]),.multi-step-form select,.multi-step-form textarea{width:100%;border:1px solid #aebfc8;border-radius:9px;padding:.75rem;background:#fff}.nested-fieldset{border:0;padding:0;margin:1rem 0}.nested-fieldset legend{font-weight:800}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem}.choice{display:flex!important;align-items:center;gap:.55rem;margin:0!important;padding:.7rem;border:1px solid var(--line);border-radius:8px}.choice input{flex:0 0 auto}.form-navigation{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--line)}#step-status{color:var(--muted);font-size:.85rem}.project-entry{position:relative;border:1px solid var(--line);border-radius:10px;padding:1.25rem;margin:1rem 0;background:var(--surface)}.project-entry__header{display:flex;justify-content:space-between;align-items:center}.project-entry h2{font-size:1.1rem;margin:0}.remove-project{border:0;background:transparent;color:var(--danger);font-weight:800;cursor:pointer}.upload-notice,.review-notice{padding:1rem 1.2rem;background:var(--surface);border-left:4px solid var(--teal);margin:1rem 0}.upload-notice p,.review-notice p{margin:.3rem 0}.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.file-field{padding:1rem;border:1px dashed #9bb0ba;border-radius:10px;margin:0!important}.file-field span,.file-field small{display:block}.file-field input{margin:.55rem 0}.file-field small{color:var(--muted);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.declaration-list{display:grid;gap:.5rem}.declaration{padding:.9rem;border:1px solid var(--line);border-radius:9px;margin:0!important}.confirmation-section{min-height:75vh;display:grid;place-items:center;background:var(--surface);padding:5rem 0}.confirmation-card{max-width:720px;margin:auto;text-align:center;padding:clamp(1.5rem,5vw,4rem);border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.confirmation-card h1{font-size:clamp(2rem,4vw,3.5rem)}.confirmation-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 1.5rem;border-radius:50%;background:var(--teal);color:#06394d;font-size:2rem;font-weight:900}.reference-box{margin:2rem 0;padding:1.25rem;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.reference-box span,.reference-box strong,.reference-box small{display:block}.reference-box strong{font:850 1.5rem ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--navy);margin:.3rem 0}.next-steps{text-align:left}.next-steps h2{font-size:1.3rem}
@media(max-width:700px){.application-progress ol{grid-template-columns:repeat(7,1fr)}.application-progress li{font-size:0}.application-progress li span{font-size:.7rem}.choice-grid,.upload-grid{grid-template-columns:1fr}.form-navigation{flex-wrap:wrap}#step-status{order:-1;width:100%;text-align:center}}
.admin-bar{position:sticky;top:0;z-index:40;background:#fff}.admin-shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:calc(100vh - 82px);background:var(--surface)}.admin-sidebar{background:#0a3552;color:#d8e8ef;padding:1.25rem .8rem}.admin-sidebar nav{position:sticky;top:105px;display:grid;gap:.25rem}.admin-sidebar a{padding:.7rem .8rem;border-radius:8px;text-decoration:none;font-size:.88rem;font-weight:700}.admin-sidebar a:hover{background:rgba(255,255,255,.09);color:#fff}.admin-sidebar__label{margin:1.2rem .8rem .3rem;color:#5ed6dc;font-size:.66rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.admin-main{padding:clamp(1.25rem,3vw,2.5rem);width:100%;max-width:1500px}.stats-grid{grid-template-columns:repeat(3,1fr)}.admin-panel{margin-top:1.5rem;padding:1.4rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 8px 24px rgba(14,78,122,.06)}.admin-panel h2{font-size:1.25rem}.admin-panel__heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.admin-panel__heading h2{margin:0}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.86rem}.admin-table th{text-align:left;color:var(--muted);font-size:.7rem;letter-spacing:.07em;text-transform:uppercase}.admin-table th,.admin-table td{padding:.8rem;border-bottom:1px solid var(--line);vertical-align:top}.admin-table td>a{font-weight:850;color:var(--navy)}.admin-table td small{display:block;color:var(--muted);margin-top:.2rem;max-width:420px}.status{display:inline-flex;padding:.28rem .55rem;border-radius:999px;background:#e9f0f3;color:#3b5260;font-size:.68rem;font-weight:850;white-space:nowrap}.status--new{background:#dff6f8;color:#075a62}.status--under_review{background:#fff0ca;color:#765000}.status--qualified,.status--shortlisted,.status--matched{background:#dff5e7;color:#17623a}.status--unsuccessful,.status--archived{background:#f1e5e5;color:#773232}.admin-filters{display:flex;align-items:end;gap:.7rem;flex-wrap:wrap;margin-top:1.5rem}.admin-filters label{font-size:.78rem;font-weight:800}.admin-filters input,.admin-filters select,.inline-admin-form select,.review-form select,.review-form textarea{display:block;min-height:42px;border:1px solid #aebfc8;border-radius:8px;padding:.55rem;background:#fff}.admin-filters input{min-width:260px}.admin-detail-heading{display:flex;justify-content:space-between;gap:2rem;align-items:start}.admin-detail-heading h1{font-size:clamp(2rem,4vw,3.4rem)}.admin-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.5rem;align-items:start}.record-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.record-grid div{padding:.7rem 0;border-bottom:1px solid var(--line)}.record-grid__wide{grid-column:1/-1}.record-grid dt{color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.record-grid dd{margin:.2rem 0 0}.review-form{position:sticky;top:100px}.review-form label{display:block;font-weight:800;font-size:.8rem;margin:1rem 0 .3rem}.review-form select,.review-form textarea{width:100%}.timeline{border-left:2px solid var(--line);padding-left:1rem}.timeline article{position:relative;padding:0 0 1rem}.timeline article::before{content:"";position:absolute;width:9px;height:9px;left:-1.35rem;top:.35rem;border-radius:50%;background:var(--teal)}.timeline strong,.timeline small{display:block}.timeline small{color:var(--muted)}.experience-record{padding:1rem 0;border-top:1px solid var(--line)}.experience-record h3{margin:0}.document-list{display:grid;gap:.55rem}.document-list a{display:grid;grid-template-columns:1fr auto;gap:.2rem 1rem;padding:.8rem;border:1px solid var(--line);border-radius:8px;text-decoration:none}.document-list span{font-size:.78rem;color:var(--muted)}.document-list small{grid-column:2;grid-row:1/3}.inline-admin-form{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.inline-admin-form .checkbox{margin:0!important}.muted{color:var(--muted)}
@media(max-width:1000px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{padding:.5rem}.admin-sidebar nav{position:static;display:flex;overflow-x:auto}.admin-sidebar__label{display:none}.admin-sidebar a{white-space:nowrap}.admin-detail-grid{grid-template-columns:1fr}.review-form{position:static}}
@media(max-width:700px){.stats-grid,.record-grid{grid-template-columns:1fr}.record-grid__wide{grid-column:auto}.admin-bar{padding:0 1rem}.admin-bar .brand--image img{width:145px}.admin-main{padding:1rem}.admin-panel__heading,.admin-detail-heading{display:block}.admin-panel__heading .button{margin-top:1rem}}
.admin-heading-actions{display:flex;align-items:start;justify-content:space-between;gap:2rem}.admin-editor label{display:block;font-size:.8rem;font-weight:800;margin:1rem 0 .3rem}.admin-editor input:not([type=checkbox]),.admin-editor select,.admin-editor textarea{display:block;width:100%;border:1px solid #aebfc8;border-radius:8px;padding:.65rem;background:#fff}.text-button{border:0;background:transparent;color:var(--navy);padding:.35rem 0;text-decoration:underline;cursor:pointer;font-size:.75rem;font-weight:800}
@media(max-width:700px){.admin-heading-actions{display:block}.admin-heading-actions .button{margin-top:1rem}}
.pipeline-section{background:#fff;padding-block:clamp(3rem,6vw,5.5rem)}.pipeline-shell{padding:clamp(1.25rem,3vw,2.5rem);border:1px solid var(--teal);border-radius:16px;background:linear-gradient(145deg,#fff 0%,#f4fbfa 100%)}.pipeline-heading{text-align:center;max-width:820px;margin:0 auto 2rem}.pipeline-heading h2{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:.35rem}.pipeline-heading>p:last-child{max-width:720px;margin:.5rem auto 0;color:#40546b;font-size:1.05rem}.pipeline-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.pipeline-card{display:flex;min-height:190px;flex-direction:column;align-items:flex-start;padding:1.35rem;border:1px solid var(--teal);border-radius:12px;background:#fff;color:var(--ink);text-decoration:none;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.pipeline-card:hover{transform:translateY(-3px);box-shadow:0 15px 32px rgba(15,111,118,.12);border-color:#0c9aa2}.pipeline-card__icon{display:grid;place-items:center;min-width:46px;height:46px;padding:0 .55rem;border-radius:9px;background:#e8f8f6;color:#0799a1;font-size:1.25rem;font-weight:900}.pipeline-card__name{margin-top:.85rem;color:#071d35;font:800 1.04rem Montserrat,"Segoe UI",sans-serif;line-height:1.25}.pipeline-card strong{margin-top:.3rem;color:#0c9aa2;font-size:.9rem}.pipeline-card__summary{margin-top:.45rem;color:#51667c;font-size:.83rem;line-height:1.45}.pipeline-actions{display:flex;justify-content:center;margin-top:1.75rem}.content-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.content-card{display:flex;min-height:320px;flex-direction:column;padding:1.6rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.content-card__type{color:#0a8d94;font-size:.7rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.content-card h2{font-size:1.45rem;margin-top:.85rem}.content-card h2 a,.publication-card h2 a{text-decoration:none}.content-card p{color:var(--muted)}.content-card footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:auto;padding-top:1rem;border-top:1px solid var(--line);font-size:.8rem}.content-card time,.publication-card time{color:var(--muted)}.article-header{max-width:940px}.article-header .breadcrumbs{margin-bottom:2rem;color:#c6dce6}.article-byline{display:flex;gap:1.25rem;color:#c6dce6;font-size:.85rem}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 300px;gap:clamp(2rem,6vw,5rem);align-items:start}.article-body p:first-child{font-size:1.2rem;color:#314961}.article-body p{margin:0 0 1.5rem}.article-aside{position:sticky;top:110px;padding:1.4rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.article-aside h2{font-size:1.35rem}.article-aside .text-link{display:inline-block;margin-top:1rem}.publication-list{display:grid;gap:1rem}.publication-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;padding:1.6rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.publication-card h2{font-size:1.5rem;margin:.6rem 0}.publication-card>div:last-child{display:grid;justify-items:end;gap:1rem}.publication-detail>p:first-child{font-size:1.25rem}.publication-detail .button{margin-top:1.5rem}select:focus-visible,textarea:focus-visible,summary:focus-visible,.pipeline-card:focus-visible{outline:3px solid #ffca50;outline-offset:3px}
@media(max-width:1100px){.pipeline-grid{grid-template-columns:repeat(2,1fr)}.content-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.pipeline-grid,.content-card-grid,.article-layout{grid-template-columns:1fr}.pipeline-card{min-height:0}.article-aside{position:static}.publication-card{grid-template-columns:1fr}.publication-card>div:last-child{justify-items:start}.pipeline-actions .button{width:100%}}
.site-header{box-shadow:0 8px 30px rgba(9,47,74,.07)}.site-header .nav-wrap{position:relative}.site-nav{gap:.18rem}.site-nav>.site-nav__link,.nav-group>summary{position:relative;padding:.72rem .74rem;color:#263f53;font-weight:800}.site-nav>.site-nav__link::after,.nav-group>summary::before{content:"";position:absolute;left:.72rem;right:.72rem;bottom:.35rem;height:2px;border-radius:2px;background:var(--teal);transform:scaleX(0);transition:transform .16s ease}.site-nav>.site-nav__link:hover::after,.site-nav>.site-nav__link[aria-current=page]::after,.nav-group:hover>summary::before,.nav-group.is-current>summary::before{transform:scaleX(1)}.site-nav>.site-nav__link[aria-current=page],.nav-group.is-current>summary{color:var(--navy)}.nav-group>summary::after{border-width:0 1.5px 1.5px 0;transition:transform .16s ease}.nav-group[open]>summary::after{transform:rotate(225deg);margin-bottom:0}.nav-dropdown{top:calc(100% + 20px);width:390px;padding:1rem;border:1px solid #d3e2e7;border-top:3px solid var(--teal);border-radius:15px;box-shadow:0 28px 70px rgba(9,47,74,.2);animation:navReveal .14s ease-out}.nav-dropdown--right{left:auto;right:0}.nav-group--wide .nav-dropdown{width:720px;padding:1.1rem}.nav-dropdown--wide{gap:.5rem}.nav-dropdown__header{display:grid;grid-column:1/-1;padding:.45rem .6rem 1rem;margin-bottom:.25rem;border-bottom:1px solid var(--line)}.nav-dropdown__header>span{color:#0a8d94;font-size:.65rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.nav-dropdown__header>strong{margin-top:.2rem;color:#0b2f4a;font:800 1.05rem Montserrat,"Segoe UI",sans-serif}.nav-dropdown__header>small{margin-top:.2rem;color:var(--muted);font-size:.75rem}.nav-dropdown a.nav-menu-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:.7rem;align-items:center;padding:.75rem;border:1px solid transparent;border-radius:11px}.nav-dropdown a.nav-menu-card:hover{border-color:#d5e8e9;background:#f2faf9}.nav-menu-card__icon{display:grid;place-items:center;width:42px;height:42px;border-radius:9px;background:linear-gradient(145deg,#e4f8f6,#edf4f7);color:#087f87;font-size:.72rem;font-weight:900;letter-spacing:.04em}.nav-menu-card>span:last-child{display:flex;min-width:0;flex-direction:column}.nav-dropdown .nav-dropdown__all{margin-top:.35rem;padding:.8rem .65rem .25rem;border-top:1px solid var(--line);color:#0b6580}.nav-cta{display:grid;grid-template-columns:1fr 30px;align-items:center;gap:.55rem;min-width:180px;min-height:58px;margin-left:.5rem;padding:.55rem .65rem .55rem 1rem;border:1px solid rgba(6,75,89,.12);border-radius:13px;background:linear-gradient(135deg,#21c3c9,#5ad6cf);box-shadow:0 10px 24px rgba(32,190,197,.2);color:#062f45}.nav-cta>span{display:flex;flex-direction:column}.nav-cta small{font-size:.58rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.nav-cta strong{font-size:.82rem}.nav-cta b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;color:#0b6580}.nav-cta:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(32,190,197,.28)}@keyframes navReveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.role-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.role-card{padding:1rem;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.role-card>span{color:#0a8d94;font-size:.66rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.role-card h3{margin:.5rem 0 .35rem}.role-card p{min-height:3.2em;margin:0;color:var(--muted);font-size:.82rem}.role-card small{display:block;margin-top:.8rem;font-weight:800}.account-toggle,.role-choice{display:flex!important;gap:.75rem;align-items:flex-start;padding:1rem;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.account-toggle{margin-top:1.25rem!important}.account-toggle input,.role-choice input{margin-top:.35rem}.account-toggle span,.role-choice span{display:flex;flex-direction:column}.account-toggle small,.role-choice small{color:var(--muted);font-weight:500}.role-choice-list{display:grid;gap:.55rem;margin:1rem 0}.role-choice{margin:0!important;background:#fff}.role-choice:has(input:checked){border-color:var(--teal);background:#eefafa}.back-link{display:block;margin-top:1rem;text-align:center}
@media(max-width:1100px){.nav-cta{min-width:145px}.role-card-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.site-nav{max-height:calc(100vh - 80px);overflow-y:auto}.site-nav>.site-nav__link,.nav-group>summary{padding:.9rem}.site-nav>.site-nav__link::after,.nav-group>summary::before{left:.9rem;right:auto;width:38px;bottom:.55rem}.nav-dropdown,.nav-dropdown--right,.nav-group--wide .nav-dropdown{width:calc(100% - .7rem);margin-left:.7rem;padding:.6rem;background:#f8fbfc}.nav-dropdown__header{padding:.5rem .6rem .8rem}.nav-dropdown a.nav-menu-card{grid-template-columns:38px 1fr}.nav-menu-card__icon{width:38px;height:38px}.nav-cta{display:grid;margin:.75rem 0 0;min-width:0}.role-card-grid{grid-template-columns:1fr}}
.nav-group--wide .nav-dropdown{animation-name:navRevealWide}@keyframes navRevealWide{from{opacity:0}to{opacity:1}}

/* Homepage partners and pipeline call-to-action */
.pipeline-card__icon{position:relative;width:54px;height:54px;padding:12px;border:1px solid #caece9;background:linear-gradient(145deg,#e9f9f7,#f8fcfc);overflow:hidden}
.pipeline-card__icon img{width:30px;height:30px;object-fit:contain;filter:invert(38%) sepia(75%) saturate(945%) hue-rotate(137deg) brightness(87%) contrast(94%)}
.partner-section{border-top:1px solid var(--line);background:linear-gradient(180deg,#f8fbfc,#fff)}
.partner-heading{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:end;margin-bottom:2rem}
.partner-heading h2{margin-bottom:0}
.partner-heading>p{margin:0;color:var(--muted)}
.partner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.partner-card{display:flex;min-height:150px;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;padding:1.25rem;border:1px solid var(--line);border-radius:13px;background:#fff;text-align:center;text-decoration:none;box-shadow:0 10px 30px rgba(9,47,74,.05)}
.partner-card:hover{border-color:var(--teal);transform:translateY(-2px)}
.partner-card img{display:block;max-width:170px;max-height:62px;object-fit:contain}
.partner-card>span,.partner-empty>span{display:grid;place-items:center;width:58px;height:58px;border-radius:12px;background:#eaf8f7;color:#087f87;font-weight:900}
.partner-card strong{font-size:.83rem;color:#324b5e}
.partner-empty{display:flex;align-items:center;justify-content:center;gap:1rem;min-height:130px;padding:1.5rem;border:1px dashed #afcbd0;border-radius:13px;background:#fff;color:var(--muted)}
.partner-empty p{margin:0}
.pipeline-cta{position:relative;isolation:isolate;overflow:hidden;min-height:610px;display:grid;align-items:center;background:#071d2e url("/assets/images/infrastructure-advisory-cta.jpg") center/cover no-repeat;color:#fff;border-block:4px solid var(--teal)}
.pipeline-cta__overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(3,20,33,.94) 0%,rgba(3,20,33,.78) 47%,rgba(3,20,33,.65) 100%),linear-gradient(0deg,rgba(2,17,29,.65),transparent 55%)}
.pipeline-cta__content{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:clamp(2rem,7vw,7rem);align-items:center;padding-block:clamp(4rem,9vw,7rem)}
.pipeline-cta__copy{max-width:760px}
.cta-kicker{display:inline-flex;align-items:center;gap:.55rem;margin:0 0 1.25rem;padding:.42rem .75rem;border:1px solid rgba(32,190,197,.6);border-radius:999px;background:rgba(11,74,78,.46);color:#d7ffff;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.cta-kicker img{width:22px;height:22px;border-radius:5px;background:#fff}
.pipeline-cta h2{max-width:720px;font-size:clamp(2.2rem,4.4vw,4.3rem);letter-spacing:-.045em}
.pipeline-cta__copy>p:not(.cta-kicker){max-width:680px;color:#d9e9ef;font-size:1.08rem}
.pipeline-cta__stats{display:grid;grid-template-columns:repeat(4,1fr);margin:2.5rem 0 0}
.pipeline-cta__stats>div{padding:0 1.2rem;border-left:1px solid rgba(255,255,255,.2)}
.pipeline-cta__stats>div:first-child{padding-left:0;border-left:0}
.pipeline-cta__stats dt{color:#35d5cc;font:900 clamp(1.6rem,3vw,2.35rem) Montserrat,"Segoe UI",sans-serif;line-height:1}
.pipeline-cta__stats dd{margin:.55rem 0 0;color:#a9c0ca;font-size:.65rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase;line-height:1.35}
.pipeline-cta__actions{display:grid;gap:.85rem}
.pipeline-cta__actions .button{min-height:62px;justify-content:flex-start;gap:.8rem;padding:.75rem 1rem;color:#fff}
.pipeline-cta__actions .button span{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;background:rgba(255,255,255,.16);font-size:.65rem}
.pipeline-cta__actions .button span img{width:19px;height:19px;filter:brightness(0) invert(1)}
.pipeline-cta__primary{border-color:#17b86d;background:#17b86d}
.pipeline-cta__secondary{border-color:rgba(255,255,255,.72);background:rgba(4,23,37,.56);backdrop-filter:blur(8px)}

/* Contact location */
.location-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,5rem);align-items:stretch}
.location-details{padding:clamp(1rem,3vw,2.5rem) 0}
.location-details>p:not(.eyebrow){color:var(--muted);max-width:560px}
.location-details address{display:grid;gap:.7rem;margin-top:2rem;font-style:normal}
.location-details address>div{display:grid;grid-template-columns:42px 1fr;gap:.8rem;padding:1rem;border:1px solid var(--line);border-radius:11px;background:#fff}
.location-details address>div>span{display:grid;place-items:center;width:42px;height:42px;border-radius:9px;background:#eaf8f7;color:#087f87;font-size:.65rem;font-weight:900}
.location-details address>div>span img{width:21px;height:21px;filter:invert(38%) sepia(75%) saturate(945%) hue-rotate(137deg) brightness(87%) contrast(94%)}
.location-details address p,.location-details address strong,.location-details address a{display:block;margin:0}
.location-details address strong{color:var(--navy);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.location-details address a{text-decoration:none}
.map-frame{min-height:520px;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#dce9ed;box-shadow:var(--shadow)}
.map-frame iframe{display:block;width:100%;height:100%;min-height:520px;border:0}

/* Meaningful footer */
.site-footer{padding:0;background:linear-gradient(145deg,#061f31,#092f4a 62%,#0a4057);color:#bdd2dc}
.footer-grid{grid-template-columns:1.5fr .75fr 1.05fr .9fr;padding-block:4.5rem;gap:clamp(2rem,5vw,4rem)}
.brand--footer{padding:0;background:transparent;border-radius:0}
.brand--footer img{width:min(310px,100%)}
.footer-brand>p{max-width:430px;margin:1.3rem 0;color:#b9d0da}
.site-footer h2{margin:0 0 1rem;color:#fff;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}
.site-footer a:not(.brand){color:#d8e7ed}
.site-footer a:not(.brand):hover{color:#54d8d3}
.footer-contact{display:flex;flex-direction:column;align-items:flex-start}
.footer-contact>span{display:block;margin:.45rem 0;color:#94afbb;font-size:.84rem}
.footer-contact-link{display:inline-flex!important;align-items:center;gap:.6rem;margin-top:1.25rem!important;color:#52d4d0!important;font-weight:850}
.footer-social{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:1.5rem;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.footer-social h2{margin-bottom:.25rem}
.footer-social p{margin:0;color:#8faab6;font-size:.85rem}
.social-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.6rem}
.social-links a{display:flex!important;align-items:center;gap:.5rem;margin:0!important;padding:.45rem .8rem;border:1px solid rgba(255,255,255,.2);border-radius:999px;text-decoration:none;font-size:.78rem;font-weight:800}
.social-links a span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--teal);color:#063044;font-size:.58rem}
.social-links a span img{width:13px;height:13px;filter:brightness(0) saturate(100%) invert(16%) sepia(29%) saturate(1567%) hue-rotate(156deg) brightness(91%) contrast(98%)}
.social-placeholder{color:#829daa;font-size:.82rem}
.footer-bottom{display:flex;justify-content:space-between;gap:2rem;padding-block:1.4rem;color:#7895a3;font-size:.72rem}

/* Public legal pages */
.legal-layout{display:grid;grid-template-columns:minmax(0,760px) 280px;gap:clamp(2rem,7vw,6rem);align-items:start}
.legal-content{font-size:1.06rem}
.legal-content p{margin:0 0 1.5rem}
.legal-content p:first-child{font-size:1.2rem;color:#2c4960}
.legal-meta{position:sticky;top:110px;display:grid;gap:.6rem;padding:1.35rem;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.legal-meta span{color:var(--muted);font-size:.8rem}
.legal-meta a{color:var(--navy);font-weight:800}

/* Site-management screens */
.compact-admin-form{margin-top:1.25rem;padding:1.2rem;border:1px solid var(--line);border-radius:11px;background:var(--surface)}
.compact-admin-form .account-toggle{margin-top:1rem!important}
.managed-record{display:grid;grid-template-columns:90px minmax(0,1fr) auto auto;gap:1rem;align-items:end;margin-top:1rem;padding:1rem;border-top:1px solid var(--line)}
.managed-record--social{grid-template-columns:minmax(0,1fr) auto auto}
.managed-record__fields{display:grid;grid-template-columns:1fr 1.3fr 1fr 90px;gap:.7rem;align-items:end}
.managed-record--social .managed-record__fields{grid-template-columns:1fr 2fr 90px}
.managed-record label{margin:0}
.admin-logo-preview{display:block;max-width:90px;max-height:54px;object-fit:contain}
.legal-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.25rem}
.legal-admin-grid a{display:flex;min-height:170px;flex-direction:column;padding:1.2rem;border:1px solid var(--line);border-radius:11px;background:var(--surface);text-decoration:none}
.legal-admin-grid a:hover{border-color:var(--teal)}
.legal-admin-grid span{margin:.5rem 0;color:var(--muted);font-size:.8rem}
.legal-admin-grid small{margin-top:auto;color:#587080}
.admin-site-shortcut{display:flex;align-items:center;justify-content:space-between;gap:2rem}
.admin-site-shortcut h2{margin-bottom:.35rem}
.admin-site-shortcut p:last-child{margin-bottom:0;color:var(--muted)}

@media(max-width:1050px){
  .pipeline-cta__content{grid-template-columns:1fr}
  .pipeline-cta__actions{grid-template-columns:repeat(3,1fr)}
  .pipeline-cta__actions .button{align-items:flex-start;flex-direction:column}
  .footer-grid{grid-template-columns:1.5fr 1fr 1fr}
  .footer-grid>div:last-child{grid-column:2}
  .managed-record,.managed-record--social{grid-template-columns:1fr}
  .admin-logo-preview{margin-bottom:.4rem}
}
@media(max-width:800px){
  .partner-heading,.location-grid,.legal-layout{grid-template-columns:1fr}
  .partner-grid{grid-template-columns:repeat(2,1fr)}
  .pipeline-cta__actions{grid-template-columns:1fr}
  .pipeline-cta__actions .button{align-items:center;flex-direction:row}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-grid>div:last-child{grid-column:auto}
  .footer-brand{grid-column:1/-1}
  .footer-social,.footer-bottom{align-items:flex-start;flex-direction:column}
  .social-links{justify-content:flex-start}
  .legal-meta{position:static}
  .legal-admin-grid{grid-template-columns:1fr}
  .managed-record__fields,.managed-record--social .managed-record__fields{grid-template-columns:1fr 1fr}
  .admin-site-shortcut{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
  .partner-grid,.footer-grid{grid-template-columns:1fr}
  .footer-brand{grid-column:auto}
  .pipeline-cta__stats{grid-template-columns:1fr 1fr;gap:1.5rem 0}
  .pipeline-cta__stats>div:nth-child(3){padding-left:0;border-left:0}
  .managed-record__fields,.managed-record--social .managed-record__fields{grid-template-columns:1fr}
}

/* Opportunity directory: three-column tiles and filter drawer */
.directory{background:linear-gradient(180deg,#f6fafb 0%,#fff 35%)}
.directory-toolbar{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.5rem}
.directory-toolbar h2{margin:0;font-size:clamp(1.8rem,3vw,2.6rem)}
.filter-trigger{display:inline-flex;align-items:center;gap:.65rem;min-height:50px;padding:.65rem 1rem;border:1px solid #b9d7da;border-radius:11px;background:#fff;color:var(--navy);font-weight:850;cursor:pointer;box-shadow:0 8px 24px rgba(14,78,122,.08)}
.filter-trigger:hover{border-color:var(--teal);background:#f2fbfa}
.filter-trigger img{width:20px;height:20px;filter:invert(26%) sepia(20%) saturate(1844%) hue-rotate(160deg) brightness(91%) contrast(90%)}
.filter-trigger b{display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:var(--teal);color:#063044;font-size:.68rem}
.filter-drawer-backdrop{position:fixed;inset:0;z-index:70;border:0;background:rgba(3,20,33,.58);backdrop-filter:blur(3px);cursor:pointer}
.filter-drawer{position:fixed;z-index:71;top:0;right:0;width:min(430px,100%);height:100dvh;overflow-y:auto;padding:1.4rem;background:#fff;box-shadow:-24px 0 70px rgba(3,24,39,.22);transform:translateX(105%);visibility:hidden;transition:transform .24s ease,visibility .24s}
.filter-drawer.is-open{transform:translateX(0);visibility:visible}
.filter-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.filter-drawer__header h2{font-size:1.65rem;margin:0}
.filter-drawer__close{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--navy);font-size:1.65rem;line-height:1;cursor:pointer}
.filter-drawer__close:hover{border-color:var(--teal)}
.filter-drawer .filter-panel{position:static;padding:0;border:0;border-radius:0;box-shadow:none}
.filter-drawer .filter-heading{margin-top:1rem}
.filter-drawer .filter-heading>span{color:var(--muted);font-size:.8rem}
.filter-drawer-open{overflow:hidden}
.opportunity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.opportunity-card{display:flex;min-width:0;min-height:430px;flex-direction:column;padding:1.25rem;box-shadow:0 12px 32px rgba(14,78,122,.08);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.opportunity-card:hover{transform:translateY(-3px);border-color:#b4dfe0;box-shadow:0 18px 38px rgba(14,78,122,.13)}
.opportunity-card h2{font-size:1.15rem;line-height:1.25}
.opportunity-card .verified{width:100%;margin-left:0}
.opportunity-card .text-link{margin-top:auto}
.opportunity-meta{font-size:.83rem}

/* Brand-color treatment for the homepage project image */
.pipeline-cta{background-color:#0b526d;background-blend-mode:soft-light}
.pipeline-cta__overlay{background:linear-gradient(100deg,rgba(5,34,55,.97) 0%,rgba(8,59,82,.88) 46%,rgba(11,102,120,.72) 100%),linear-gradient(0deg,rgba(2,23,38,.78),rgba(32,190,197,.08) 62%,rgba(28,82,123,.18))}
.pipeline-cta::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 78% 30%,rgba(32,190,197,.24),transparent 34%);mix-blend-mode:screen}

@media(max-width:1100px){
  .opportunity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .directory-toolbar{align-items:stretch;flex-direction:column}
  .filter-trigger{justify-content:center;width:100%}
  .opportunity-grid{grid-template-columns:1fr}
  .opportunity-card{min-height:0}
}

/* Real menu icons and floating navigation */
.nav-menu-card__icon img{width:21px;height:21px;filter:invert(38%) sepia(75%) saturate(945%) hue-rotate(137deg) brightness(87%) contrast(94%)}
.site-header{position:relative;top:auto}
.site-header.is-floating{position:fixed;top:12px;left:50%;z-index:65;width:min(1180px,calc(100% - 2rem));border:1px solid rgba(168,202,209,.78);border-radius:16px;background:rgba(255,255,255,.97);box-shadow:0 20px 55px rgba(4,37,58,.2);transform:translateX(-50%);animation:floatingNavIn .2s ease-out}
.site-header.is-floating .utility-bar{display:none}
.site-header.is-floating .nav-wrap{width:100%;min-height:68px;padding:0 1rem}
.site-header.is-floating .brand--image img{width:170px}
.site-header.is-floating .nav-cta{min-height:50px}
.has-floating-nav{padding-top:var(--floating-header-space)}
@keyframes floatingNavIn{from{opacity:0;transform:translate(-50%,-14px)}to{opacity:1;transform:translate(-50%,0)}}

/* Administrator-controlled WhatsApp contact */
.whatsapp-admin-panel .admin-panel__heading p:last-child{margin:.3rem 0 0;color:var(--muted);font-size:.85rem}
.compact-admin-form label small{display:block;margin-top:.3rem;color:var(--muted);font-weight:500}
.whatsapp-widget{position:fixed;right:24px;bottom:24px;z-index:62}
.whatsapp-launcher{display:grid;place-items:center;width:62px;height:62px;margin-left:auto;border:3px solid #fff;border-radius:50%;background:linear-gradient(145deg,#25d366,#159447);box-shadow:0 14px 35px rgba(8,73,48,.3)}
.whatsapp-launcher:hover{transform:translateY(-2px)}
.whatsapp-launcher img{width:30px;height:30px;filter:brightness(0) invert(1)}
.whatsapp-invitation{position:absolute;right:0;bottom:76px;width:min(330px,calc(100vw - 2rem));padding:1.2rem 1.2rem 1rem;border:1px solid #c9e4df;border-radius:15px;background:#fff;color:var(--ink);box-shadow:0 22px 55px rgba(3,35,52,.22)}
.whatsapp-invitation::after{content:"";position:absolute;right:22px;bottom:-9px;width:16px;height:16px;border-right:1px solid #c9e4df;border-bottom:1px solid #c9e4df;background:#fff;transform:rotate(45deg)}
.whatsapp-invitation strong,.whatsapp-invitation span{display:block}
.whatsapp-invitation strong{padding-right:1.5rem;color:var(--navy);font:850 1.05rem Montserrat,"Segoe UI",sans-serif}
.whatsapp-invitation span{margin:.4rem 0 .8rem;color:var(--muted);font-size:.83rem}
.whatsapp-invitation a{color:#087e55;font-size:.82rem;font-weight:850}
.whatsapp-invitation__close{position:absolute;top:.55rem;right:.55rem;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:50%;background:var(--surface);color:var(--navy);font-size:1.2rem;cursor:pointer}

/* Back to top */
.back-to-top{position:fixed;right:30px;bottom:100px;z-index:61;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:var(--navy);box-shadow:0 12px 28px rgba(4,36,57,.22);opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .16s ease,transform .16s ease;cursor:pointer}
body:not(:has(.whatsapp-widget)) .back-to-top{bottom:28px}
.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}
.back-to-top img{width:20px;height:20px;filter:brightness(0) invert(1)}
.back-to-top:hover{background:#0b6d7e}

@media(max-width:1100px){
  .site-header.is-floating{top:8px;width:calc(100% - 1rem)}
  .site-header.is-floating .nav-wrap{min-height:64px}
  .site-header.is-floating .site-nav{top:64px;border-radius:13px}
}
@media(max-width:600px){
  .site-header.is-floating .brand--image img{width:145px}
  .whatsapp-widget{right:15px;bottom:15px}
  .back-to-top{right:21px;bottom:88px}
  body:not(:has(.whatsapp-widget)) .back-to-top{bottom:20px}
}

/* WordPress-inspired administration frame */
.admin-body{min-height:100vh;background:#f0f0f1;color:#1d2327}
.admin-body .admin-bar{position:sticky;top:0;z-index:80;display:flex;min-height:58px;padding:0 1rem;border:0;background:#1d2327;color:#f0f0f1;box-shadow:0 2px 8px rgba(0,0,0,.18)}
.admin-bar__left{display:flex;align-items:center;gap:1rem;min-width:0}
.admin-brand img,.admin-body .admin-bar .brand--image img{display:block;width:175px;max-height:42px;object-fit:contain}
.admin-bar__divider{width:1px;height:25px;background:rgba(255,255,255,.2)}
.admin-view-site{display:flex;align-items:center;gap:.45rem;color:#dcdcde;text-decoration:none;font-size:.78rem;font-weight:750}
.admin-view-site:hover{color:#72d8d4}
.admin-view-site img{width:16px;height:16px;filter:brightness(0) invert(1);opacity:.82}
.admin-body .admin-user{gap:.8rem}
.admin-user__name{color:#dcdcde;font-size:.8rem;font-weight:700}
.admin-body .admin-user form{margin:0}
.admin-signout{min-height:34px;padding:.35rem .7rem;border:1px solid #59626a;border-radius:4px;background:#2c3338;color:#f6f7f7;font-size:.75rem;font-weight:750;cursor:pointer}
.admin-signout:hover{border-color:#72d8d4;color:#72d8d4}
.admin-body .admin-shell{display:grid;grid-template-columns:245px minmax(0,1fr);min-height:calc(100vh - 58px);background:#f0f0f1}
.admin-body .admin-sidebar{padding:0;background:#1d2327;color:#c3c4c7}
.admin-sidebar__title{display:flex;min-height:84px;flex-direction:column;justify-content:center;padding:1rem 1.2rem;border-bottom:1px solid #3c434a}
.admin-sidebar__title span{color:#72d8d4;font-size:.61rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.admin-sidebar__title strong{margin-top:.2rem;color:#fff;font-size:.9rem}
.admin-body .admin-sidebar nav{position:sticky;top:74px;display:grid;gap:0;padding:.55rem 0}
.admin-body .admin-sidebar nav>a{position:relative;display:grid;grid-template-columns:25px minmax(0,1fr);gap:.65rem;align-items:center;padding:.68rem 1rem;border-left:4px solid transparent;border-radius:0;color:#c3c4c7;font-size:.8rem;font-weight:700}
.admin-body .admin-sidebar nav>a:hover{background:#2c3338;color:#72d8d4}
.admin-body .admin-sidebar nav>a[aria-current=page]{border-left-color:var(--teal);background:#2271b1;color:#fff}
.admin-body .admin-sidebar nav>a[aria-current=page]::after{content:"";position:absolute;right:-8px;border-block:8px solid transparent;border-right:8px solid #f0f0f1}
.admin-nav-icon{display:grid;place-items:center;width:24px;height:24px}
.admin-nav-icon img{width:17px;height:17px;filter:brightness(0) invert(1);opacity:.78}
.admin-body .admin-sidebar nav>a:hover .admin-nav-icon img,.admin-body .admin-sidebar nav>a[aria-current=page] .admin-nav-icon img{opacity:1}
.admin-body .admin-sidebar__label{margin:1.1rem 1rem .35rem;color:#8c8f94}
.admin-workspace{display:flex;min-width:0;min-height:calc(100vh - 58px);flex-direction:column}
.admin-body .admin-main{flex:1;width:100%;max-width:1500px;margin:0 auto;padding:clamp(1.25rem,3vw,2.5rem)}
.admin-body .page-heading>h1{font-size:clamp(2rem,3.5vw,3.1rem);font-weight:750}
.admin-body .admin-panel,.admin-body .stat-card{border-color:#c3c4c7;border-radius:4px;box-shadow:0 1px 1px rgba(0,0,0,.04)}
.admin-body .stat-card{border-left:4px solid var(--teal)}
.admin-body .button{border-radius:4px}
.admin-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;padding:1rem clamp(1.25rem,3vw,2.5rem);border-top:1px solid #c3c4c7;background:#fff;color:#646970;font-size:.73rem}
.admin-footer div,.admin-footer span{display:flex;gap:.45rem}
.admin-footer div{flex-direction:column}
.admin-footer p{margin:0}
.admin-footer strong{color:#2c3338}

@media(max-width:1000px){
  .admin-body .admin-shell{grid-template-columns:1fr}
  .admin-body .admin-sidebar{position:sticky;top:58px;z-index:70;padding:.35rem}
  .admin-sidebar__title{display:none}
  .admin-body .admin-sidebar nav{position:static;display:flex;overflow-x:auto;padding:0}
  .admin-body .admin-sidebar nav>a{display:flex;flex:0 0 auto;border-left:0;border-bottom:3px solid transparent;padding:.6rem .8rem}
  .admin-body .admin-sidebar nav>a[aria-current=page]{border-left:0;border-bottom-color:var(--teal)}
  .admin-body .admin-sidebar nav>a[aria-current=page]::after{display:none}
  .admin-body .admin-sidebar__label{display:none}
}
@media(max-width:600px){
  .admin-body .admin-bar{min-height:54px;padding:.4rem .7rem}
  .admin-brand img,.admin-body .admin-bar .brand--image img{width:130px}
  .admin-bar__divider,.admin-view-site,.admin-user__name{display:none}
  .admin-footer{align-items:flex-start;flex-direction:column;gap:.5rem}
}

/* Collapsible site-setting drawers and stable record forms */
.admin-settings-drawer{margin-top:1.25rem;border:1px solid #c3c4c7;border-radius:5px;background:#fff;box-shadow:0 1px 1px rgba(0,0,0,.04);overflow:hidden}
.admin-settings-drawer>summary{display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:92px;padding:1.1rem 1.3rem;list-style:none;cursor:pointer;user-select:none}
.admin-settings-drawer>summary::-webkit-details-marker{display:none}
.admin-settings-drawer>summary:hover{background:#f6f7f7}
.admin-settings-drawer[open]>summary{background:#f6fbfb}
.settings-drawer__heading{display:flex;min-width:0;flex-direction:column}
.settings-drawer__heading small{color:#0a8d94;font-size:.62rem;font-style:normal;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.settings-drawer__heading strong{margin-top:.15rem;color:#1d2327;font:800 1.08rem Montserrat,"Segoe UI",sans-serif}
.settings-drawer__heading em{margin-top:.2rem;color:#646970;font-size:.78rem;font-style:normal}
.settings-drawer__meta{display:flex;flex:0 0 auto;align-items:center;gap:1rem}
.settings-drawer__meta b{padding:.3rem .58rem;border-radius:999px;background:#e8ecef;color:#50575e;font-size:.65rem}
.settings-drawer__meta b.is-live{background:#dff5e7;color:#17623a}
.settings-drawer__meta i{display:block;width:10px;height:10px;border-right:2px solid #50575e;border-bottom:2px solid #50575e;transform:rotate(45deg);transition:transform .16s ease}
.admin-settings-drawer[open] .settings-drawer__meta i{transform:rotate(225deg)}
.settings-drawer__content{padding:1.3rem;border-top:1px solid #dcdcde}
.settings-drawer__content>.compact-admin-form{margin-top:0}
.settings-empty{margin:1rem 0 0;padding:1rem;border:1px dashed #c3c4c7;background:#f6f7f7;color:#646970;text-align:center}
.managed-record,.managed-record--social{display:grid;grid-template-columns:96px minmax(0,1fr);gap:1rem;align-items:start;margin-top:1rem;padding:1.1rem;border:1px solid #dcdcde;border-radius:5px;background:#fff}
.managed-record__identity{display:flex;min-height:76px;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;padding:.6rem;border-radius:5px;background:#f0f6f7;text-align:center}
.managed-record__identity>span{display:grid;place-items:center;width:46px;height:46px;border-radius:8px;background:#dff4f3;color:#087f87;font-size:.72rem;font-weight:900}
.managed-record__identity small{color:#646970;font-size:.6rem}
.managed-record__identity .admin-logo-preview{width:76px;max-width:100%;height:48px;max-height:48px;object-fit:contain}
.managed-record__body{min-width:0}
.managed-record__fields,.managed-record--social .managed-record__fields{display:grid;grid-template-columns:minmax(150px,1fr) minmax(220px,1.5fr) minmax(190px,1.1fr) minmax(85px,.45fr);gap:.8rem;align-items:end}
.managed-record--social .managed-record__fields{grid-template-columns:minmax(150px,1fr) minmax(260px,2fr) minmax(85px,.45fr)}
.managed-record__fields label{min-width:0;margin:0}
.managed-record__fields input{min-width:0}
.managed-record__actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding-top:.85rem;border-top:1px solid #dcdcde}
.managed-record__actions .checkbox{margin:0!important}
.managed-record__actions .button{flex:0 0 auto}

@media(max-width:1200px){
  .managed-record__fields,.managed-record--social .managed-record__fields{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .admin-settings-drawer>summary{align-items:flex-start;gap:1rem;padding:1rem}
  .settings-drawer__meta b{display:none}
  .settings-drawer__content{padding:1rem}
  .managed-record,.managed-record--social{grid-template-columns:1fr}
  .managed-record__identity{min-height:0;align-items:flex-start;flex-direction:row;justify-content:flex-start}
  .managed-record__fields,.managed-record--social .managed-record__fields{grid-template-columns:1fr}
  .managed-record__actions{align-items:stretch;flex-direction:column}
  .managed-record__actions .button{width:100%}
}

/* SEO dashboard drawer */
.seo-status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-bottom:1rem}
.seo-status-grid>div{padding:1rem;border:1px solid #dcdcde;border-left:4px solid var(--teal);border-radius:4px;background:#f6f7f7}
.seo-status-grid span,.seo-status-grid strong{display:block}
.seo-status-grid span{color:#646970;font-size:.67rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.seo-status-grid strong{margin-top:.25rem;color:#1d2327;font-size:.9rem}
.seo-admin-panel .compact-admin-form>label{display:block}
@media(max-width:700px){.seo-status-grid{grid-template-columns:1fr}}

/* Earlier compact public navigation for laptops and narrow browser windows */
@media(max-width:1180px){
  .utility-bar{display:none}
  .site-header .nav-wrap{position:relative;min-height:76px;gap:1rem}
  .site-header .brand--image img{width:175px}
  .site-header .nav-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.55rem .85rem;border-color:#b8dadd;background:#f4fbfb;color:var(--navy);font-weight:850;cursor:pointer}
  .site-header .nav-toggle:hover{border-color:var(--teal);background:#e8f8f7}
  .site-header .site-nav{position:absolute;z-index:50;top:calc(100% + 8px);right:0;left:auto;display:none;width:min(430px,calc(100vw - 2rem));max-height:calc(100vh - 100px);overflow-y:auto;align-items:stretch;flex-direction:column;gap:.2rem;padding:.85rem;border:1px solid #bfd7dc;border-radius:14px;background:rgba(255,255,255,.99);box-shadow:0 22px 55px rgba(4,37,58,.2)}
  .site-header .site-nav.is-open{display:flex}
  .site-header .site-nav>.site-nav__link{padding:.85rem}
  .site-header .nav-group,.site-header .nav-group--wide{width:100%}
  .site-header .nav-group>summary{padding:.85rem}
  .site-header .nav-dropdown,.site-header .nav-dropdown--right,.site-header .nav-group--wide .nav-dropdown{position:static;width:calc(100% - .7rem);margin:.2rem 0 .6rem .7rem;padding:.6rem;border:0;border-left:2px solid var(--teal);border-radius:0;background:#f6fafb;box-shadow:none;transform:none}
  .site-header .nav-dropdown--wide{display:block}
  .site-header .nav-dropdown__eyebrow{display:block}
  .site-header .nav-cta{display:grid;width:100%;min-width:0;min-height:52px;margin:.65rem 0 0}
  .site-header.is-floating .site-nav{top:calc(100% + 8px)}
}
@media(max-width:600px){
  .site-header .nav-wrap{min-height:68px}
  .site-header .brand--image img{width:145px}
  .site-header .site-nav{right:-.25rem;width:calc(100vw - 1rem);max-height:calc(100vh - 84px)}
}

/* Dashboard metric icons */
.dashboard-stat{position:relative;min-height:180px;overflow:hidden;padding:1.55rem 5rem 1.45rem 1.55rem;background:linear-gradient(145deg,#fff 58%,#f2fbfb)}
.dashboard-stat::after{content:"";position:absolute;right:-32px;bottom:-42px;width:120px;height:120px;border-radius:50%;background:rgba(32,190,197,.08);pointer-events:none}
.dashboard-stat .dashboard-stat__icon{position:absolute;top:1.25rem;right:1.25rem;z-index:1;display:grid;width:48px;height:48px;place-items:center;border:1px solid #c9e7e7;border-radius:12px;background:#e9f8f7;color:var(--teal)}
.dashboard-stat__icon img{width:23px;height:23px;filter:invert(40%) sepia(85%) saturate(741%) hue-rotate(137deg) brightness(92%) contrast(94%)}
.dashboard-stat .dashboard-stat__label{display:block;max-width:15ch;color:#5d7280;font-size:1rem;font-weight:750}
.dashboard-stat strong{margin-top:.55rem;color:var(--navy);font-size:2.25rem;line-height:1}
.dashboard-stat small{margin-top:.75rem;font-size:.78rem}
.dashboard-release{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;margin-top:1.15rem;padding:1rem 1.15rem;border:1px solid #b9dfe1;border-radius:8px;background:linear-gradient(135deg,#fff 45%,#eefafa);box-shadow:0 1px 2px rgba(9,47,74,.06)}
.dashboard-release__icon{display:grid;width:46px;height:46px;place-items:center;border-radius:10px;background:var(--navy)}
.dashboard-release__icon img{width:23px;height:23px;filter:brightness(0) invert(1)}
.dashboard-release__copy>span,.dashboard-release__copy>small{display:block;color:var(--muted)}
.dashboard-release__copy>span{font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.dashboard-release__copy>strong{display:block;margin:.08rem 0;color:var(--navy);font-size:1.05rem}
.dashboard-release__copy>small{font-size:.76rem}
.dashboard-release__status{padding:.38rem .65rem;border-radius:999px;background:#dff6f8;color:#075a62;font-size:.68rem;font-weight:850;white-space:nowrap}
@media(max-width:600px){
  .dashboard-stat{min-height:160px}
  .dashboard-release{grid-template-columns:auto minmax(0,1fr)}
  .dashboard-release__status{grid-column:2;justify-self:start}
}

/* Balanced typography for long opportunity titles */
.opportunity-hero h1{
  max-width:22ch;
  font-size:clamp(2rem,3.5vw,3.5rem);
  line-height:1.06;
  letter-spacing:-.035em;
  overflow-wrap:anywhere;
}
@media(max-width:600px){
  .opportunity-hero h1{font-size:clamp(1.75rem,8vw,2.35rem)}
}

/* Service showcase and service detail pages */
.what-we-do{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(135deg,rgba(255,255,255,.82) 0 16%,transparent 16% 30%,rgba(255,255,255,.56) 30% 44%,transparent 44%),
    linear-gradient(115deg,#eef5f8 0%,#e2eef3 55%,#d7edf1 100%);
}
.what-we-do::before,.what-we-do::after{content:"";position:absolute;pointer-events:none;transform:rotate(45deg);border:1px solid rgba(32,190,197,.12)}
.what-we-do::before{top:-13rem;right:11%;width:28rem;height:28rem}
.what-we-do::after{bottom:-15rem;left:-9rem;width:25rem;height:25rem}
.what-we-do__container{position:relative;z-index:1;width:min(1380px,calc(100% - 2rem));max-width:none}
.what-we-do__heading{display:grid;grid-template-columns:minmax(320px,1.25fr) minmax(280px,.9fr) auto;gap:clamp(1.5rem,4vw,4rem);align-items:center;margin-bottom:2rem}
.what-we-do__heading h2{max-width:16ch;margin:.35rem 0 0;font-size:clamp(2.25rem,4vw,4rem);line-height:1.02;letter-spacing:-.045em}
.what-we-do__heading>p{max-width:52ch;margin:0;color:#4e6677;font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.65}
.what-we-do__controls{display:flex;gap:.65rem}
.what-we-do__controls button{display:grid;width:58px;height:58px;place-items:center;border:1px solid #c8d7dd;border-radius:50%;background:#fff;color:var(--navy);font-size:1.45rem;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.what-we-do__controls button:hover:not(:disabled){border-color:var(--teal);background:var(--teal);color:#fff;transform:translateY(-2px)}
.what-we-do__controls button:disabled{opacity:.38;cursor:not-allowed}
.service-carousel{display:grid;grid-auto-columns:minmax(310px,calc((100% - 3rem)/4));grid-auto-flow:column;gap:1rem;overflow-x:auto;padding:.5rem .1rem 1rem;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:rgba(10,141,148,.45) transparent}
.service-carousel::-webkit-scrollbar{height:7px}
.service-carousel::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(10,141,148,.45)}
.solution-card{display:flex;min-height:510px;overflow:hidden;flex-direction:column;border:1px solid rgba(11,65,93,.12);border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(4,37,58,.08);scroll-snap-align:start;transition:transform .22s ease,box-shadow .22s ease}
.solution-card:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(4,37,58,.14)}
.solution-card__image{display:block;height:230px;overflow:hidden;background:#dce8ec}
.solution-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.solution-card:hover .solution-card__image img{transform:scale(1.035)}
.solution-card__body{position:relative;flex:1;padding:2.6rem 1.55rem 1.25rem}
.solution-card__icon{position:absolute;top:-34px;left:1.4rem;display:grid;width:68px;height:68px;place-items:center;border:7px solid #fff;border-radius:50%;background:#e7f8f7;box-shadow:0 7px 20px rgba(4,37,58,.12)}
.solution-card__icon img{width:28px;height:28px;filter:invert(42%) sepia(75%) saturate(901%) hue-rotate(137deg) brightness(87%) contrast(93%)}
.solution-card__kicker{margin:0 0 .4rem;color:var(--teal);font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.solution-card h3{margin:0;font-size:1.22rem;line-height:1.25}
.solution-card h3 a{color:var(--navy);text-decoration:none}
.solution-card__body>p:last-child{margin:.75rem 0 0;color:#627586;font-size:.9rem;line-height:1.65}
.solution-card__link{display:flex;align-items:center;justify-content:space-between;padding:1.2rem 1.55rem;border-top:1px solid #e6edef;color:var(--navy);font-weight:850;text-decoration:none}
.solution-card__link:hover{color:var(--teal)}
.solution-card__link span{font-size:1.2rem;transition:transform .18s ease}
.solution-card__link:hover span{transform:translateX(4px)}
.what-we-do__all{display:flex;justify-content:center;margin-top:1.5rem}
.page-hero--services{background:linear-gradient(125deg,#082f4e,#1c527b 62%,#0c7a86);color:#fff}
.page-hero--services .lead{color:#dcebf2}
.page-hero--services .eyebrow{color:#65dadd}
.page-hero--services h1{max-width:16ch}
.advisory-catalogue .section-heading{max-width:800px}

.service-detail-hero{position:relative;overflow:hidden;padding:clamp(1.25rem,3vw,2.25rem) 0 clamp(3.5rem,7vw,6.5rem);background:linear-gradient(135deg,#eef6f8 0%,#fff 56%,#dceef1 100%)}
.service-detail-hero::after{content:"";position:absolute;right:-9rem;bottom:-17rem;width:36rem;height:36rem;border:1px solid rgba(32,190,197,.15);transform:rotate(35deg);pointer-events:none}
.breadcrumbs{position:relative;z-index:1;display:flex;overflow:hidden;align-items:center;gap:.55rem;margin-bottom:2rem;color:#637b8a;font-size:.75rem;white-space:nowrap}
.breadcrumbs a{color:#376276;text-decoration:none}
.breadcrumbs a:hover{color:var(--teal)}
.service-detail-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);gap:clamp(2rem,5vw,5.5rem);align-items:center}
.service-detail-hero__copy h1{max-width:15ch;margin:.45rem 0 1rem;font-size:clamp(2.45rem,5vw,5rem);line-height:1;letter-spacing:-.05em;overflow-wrap:anywhere}
.service-detail-hero__copy .lead{max-width:55ch;color:#4d687a;font-size:clamp(1rem,1.45vw,1.25rem);line-height:1.7}
.service-detail-hero__media{position:relative;min-height:480px;margin:0;overflow:hidden;border-radius:24px 4px 24px 4px;box-shadow:0 28px 65px rgba(4,37,58,.22)}
.service-detail-hero__media::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.35);border-radius:inherit;pointer-events:none}
.service-detail-hero__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.service-overview .split{align-items:start;gap:clamp(2rem,7vw,7rem)}
.service-overview h2{max-width:16ch;margin-top:.45rem;font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.08}
.service-overview__copy{max-width:65ch;color:#506a7a;font-size:1.02rem;line-height:1.8}
.service-overview__copy p:first-child{margin-top:0}
.service-capabilities .section-heading{max-width:760px}
.service-capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}
.service-capability-grid article{padding:clamp(1.4rem,2.4vw,2.25rem);border:1px solid #d5e4e7;border-radius:16px;background:#fff;box-shadow:0 12px 30px rgba(4,37,58,.06)}
.service-capability-grid article>span{display:grid;width:54px;height:54px;place-items:center;margin-bottom:1.25rem;border-radius:13px;background:#e4f7f6}
.service-capability-grid article>span img{width:26px;height:26px;filter:invert(41%) sepia(71%) saturate(951%) hue-rotate(138deg) brightness(90%) contrast(92%)}
.service-capability-grid h3{margin:0;color:var(--navy);font-size:1.14rem}
.service-capability-grid p{margin:.7rem 0 0;color:#637786;line-height:1.65}
.service-deliverables__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,7rem);align-items:start}
.service-deliverables h2{max-width:15ch;margin:.4rem 0 1.5rem;font-size:clamp(2rem,3.2vw,3.25rem);line-height:1.08}
.service-deliverables .check-list{display:grid;gap:.8rem;margin:0;padding:0;list-style:none}
.service-deliverables .check-list li{position:relative;padding:.8rem 1rem .8rem 2.8rem;border:1px solid #dce8ea;border-radius:10px;background:#f9fbfb;color:#355569}
.service-deliverables .check-list li::before{content:"\2713";position:absolute;top:.68rem;left:.8rem;display:grid;width:1.45rem;height:1.45rem;place-items:center;border-radius:50%;background:var(--teal);color:#fff;font-size:.75rem;font-weight:900}
.service-process{display:grid;gap:.8rem;margin:1rem 0 0;padding:0;list-style:none}
.service-process li{display:grid;grid-template-columns:50px 1fr;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid #dce5e7}
.service-process li span{display:grid;width:48px;height:48px;place-items:center;border:1px solid #b9dddd;border-radius:50%;color:var(--teal);font-size:.72rem;font-weight:900}
.service-process li strong{color:var(--navy);font-size:1rem;line-height:1.45}
.service-cta{padding:clamp(3rem,6vw,5.5rem) 0;background:var(--navy);color:#fff}
.service-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:3rem}
.service-cta .eyebrow{color:#66d8d9}
.service-cta h2{max-width:20ch;margin:.4rem 0 .7rem;color:#fff;font-size:clamp(2rem,3.4vw,3.3rem);line-height:1.08}
.service-cta p{max-width:65ch;color:#c5d6df;line-height:1.65}
.service-cta .button{flex:0 0 auto;background:var(--teal);color:#062b3e}

@media(max-width:1100px){
  .what-we-do__heading{grid-template-columns:1fr 1fr}.what-we-do__controls{grid-column:2;justify-self:end}
  .service-carousel{grid-auto-columns:minmax(300px,calc((100% - 2rem)/3))}
  .service-detail-hero__grid{grid-template-columns:1fr 1fr;gap:2rem}
  .service-detail-hero__media{min-height:410px}
}
@media(max-width:820px){
  .what-we-do__heading{grid-template-columns:1fr}.what-we-do__heading>p{max-width:60ch}.what-we-do__controls{grid-column:auto;justify-self:start}
  .service-carousel{grid-auto-columns:minmax(285px,76vw)}
  .service-detail-hero__grid,.service-overview .split,.service-deliverables__grid{grid-template-columns:1fr}
  .service-detail-hero__media{min-height:380px;order:-1}
  .service-capability-grid{grid-template-columns:1fr}
  .service-cta__inner{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
  .what-we-do__container{width:min(100% - 1.25rem,1380px)}
  .what-we-do__heading h2{font-size:2.2rem}
  .what-we-do__controls button{width:50px;height:50px}
  .service-carousel{grid-auto-columns:88vw}
  .solution-card{min-height:490px}.solution-card__image{height:215px}
  .service-detail-hero__media{min-height:300px;border-radius:16px 3px 16px 3px}
  .service-detail-hero__copy h1{font-size:clamp(2.2rem,12vw,3.2rem)}
}

/* Public admin shortcut and opportunity PDF/image media */
.utility-admin-login{padding:.2rem .62rem;border:1px solid rgba(110,224,228,.5);border-radius:999px;color:#fff;font-weight:800}
.utility-admin-login:hover{border-color:#6ee0e4;background:rgba(110,224,228,.12)}
.opportunity-media-admin label small{display:block;margin-top:.35rem;color:var(--muted);font-weight:500}
.opportunity-media-admin__list{display:grid;gap:.65rem;margin-top:1.25rem}
.opportunity-media-admin__list article{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:1rem;align-items:center;padding:.7rem;border:1px solid #dcdcde;border-radius:5px;background:#f6f7f7}
.opportunity-media-admin__list img{width:76px;height:58px;border-radius:4px;object-fit:cover}
.opportunity-media-admin__pdf{display:grid;width:58px;height:58px;place-items:center;border-radius:5px;background:#c93535;color:#fff;font-size:.72rem;font-weight:900}
.opportunity-media-admin__list strong,.opportunity-media-admin__list small{display:block;overflow-wrap:anywhere}
.opportunity-media-admin__list small{color:#646970;font-size:.7rem}
.opportunity-media-admin__actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap}
.opportunity-media-admin__actions>a{font-weight:800;font-size:.75rem}
.opportunity-media-admin__actions .checkbox{margin:0}
.opportunity-card__value{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:.85rem 0 0;padding:.7rem .8rem;border-radius:8px;background:#e8f8f7;color:var(--navy)}
.opportunity-card__value span{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.opportunity-card__value strong{font-size:.92rem;text-align:right}
.project-gallery{margin:2.5rem 0}
.project-gallery__heading h2{margin-top:.35rem}
.project-gallery__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}
.project-gallery figure{margin:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.project-gallery figure:first-child:nth-last-child(odd){grid-column:1/-1}
.project-gallery a{display:block;overflow:hidden}
.project-gallery img{display:block;width:100%;height:260px;object-fit:cover;transition:transform .25s ease}
.project-gallery a:hover img{transform:scale(1.025)}
.project-gallery figcaption{padding:.65rem .8rem;color:var(--muted);font-size:.78rem}
.key-project-opportunities{margin:2.5rem 0;padding:clamp(1.2rem,3vw,1.75rem);border-left:5px solid var(--teal);border-radius:0 14px 14px 0;background:linear-gradient(135deg,#e8f8f7,#f5fafb)}
.key-project-opportunities h2{margin:.3rem 0 .65rem}
.key-project-opportunities p:last-child{margin-bottom:0}
.project-documents{margin:2rem 0}
.project-document__heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1.25rem;margin-bottom:.8rem}
.project-document__heading h2{margin:.2rem 0 .3rem;font-size:clamp(1.35rem,2.4vw,1.8rem)}
.project-document__heading p:last-child{max-width:62ch;margin:0;color:var(--muted);font-size:.84rem;line-height:1.55}
.project-documents__list{display:grid;gap:.65rem}
.project-document{overflow:hidden;border:1px solid #cfe0e4;border-radius:12px;background:#f3f8f9;box-shadow:0 8px 24px rgba(9,47,74,.05)}
.project-document summary{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:.72rem .8rem;cursor:pointer;list-style:none;background:#fff;transition:background .18s ease}
.project-document summary::marker{content:""}
.project-document summary::-webkit-details-marker{display:none}
.project-document summary:hover{background:#f7fbfc}
.project-document summary:focus-visible{outline:3px solid rgba(32,190,197,.35);outline-offset:-3px}
.project-document__icon{display:grid;width:40px;height:40px;place-items:center;border:1px solid #bce2e3;border-radius:8px;background:#e8f8f7;color:var(--navy);font-size:.62rem;font-weight:900;letter-spacing:.04em}
.project-document__copy{min-width:0}
.project-document summary strong{display:block;color:var(--navy);font-size:.88rem;line-height:1.35;overflow-wrap:anywhere}
.project-document__meta{display:flex;min-width:0;align-items:center;gap:.38rem;margin-top:.16rem;color:var(--muted);font-size:.7rem;line-height:1.35}
.project-document__filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.project-document__toggle{display:inline-flex;align-items:center;gap:.48rem;justify-self:end;padding:.42rem .58rem;border:1px solid #cfe0e4;border-radius:999px;background:#f3f8f9;color:var(--navy);font-size:.72rem;font-weight:850;white-space:nowrap}
.project-document__toggle-open{display:none}
.project-document__chevron{width:.48rem;height:.48rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}
.project-document[open] .project-document__toggle-closed{display:none}
.project-document[open] .project-document__toggle-open{display:inline}
.project-document[open] .project-document__chevron{transform:rotate(225deg) translate(-1px,-1px)}
.project-document__preview{padding-top:.05rem;border-top:1px solid #dbe7ea;background:#f3f8f9}
.project-document__actions{display:flex;justify-content:flex-end;gap:.55rem;padding:.7rem .75rem 0}
.project-document__actions .button{min-height:38px;padding:.5rem .78rem;font-size:.73rem}
.project-document iframe{display:block;width:calc(100% - 1.5rem);height:min(68vh,680px);margin:.7rem .75rem .75rem;border:1px solid #becfd4;border-radius:8px;background:#fff}
@media(max-width:650px){
  .opportunity-media-admin__list article{grid-template-columns:60px 1fr}.opportunity-media-admin__actions{grid-column:1/-1;justify-content:flex-start}
  .project-gallery__grid{grid-template-columns:1fr}.project-gallery figure:first-child:nth-last-child(odd){grid-column:auto}.project-gallery img{height:230px}
  .project-document__heading{align-items:stretch;flex-direction:column}.project-document summary{grid-template-columns:40px minmax(0,1fr)}.project-document__toggle{grid-column:2;justify-self:start}.project-document__meta{flex-wrap:wrap}.project-document__filename{max-width:100%}.project-document__actions{justify-content:stretch;flex-direction:column}.project-document iframe{height:480px}
}
@media(max-width:420px){.project-documents{margin:1.65rem 0}.project-document summary{grid-template-columns:36px minmax(0,1fr);gap:.62rem;padding:.65rem}.project-document__icon{width:36px;height:36px}.project-document__actions{padding:.65rem .65rem 0}.project-document iframe{width:calc(100% - 1.3rem);height:420px;margin:.65rem}}

/* Administrator-managed client testimonials */
.managed-record--testimonial{grid-template-columns:96px minmax(0,1fr)}
.testimonial-record__fields{display:grid;grid-template-columns:1.2fr 1fr 1fr .65fr .5fr;gap:.75rem;align-items:end}
.managed-record--testimonial .managed-record__body>label{display:block;margin-top:.85rem}
.managed-record--testimonial textarea{width:100%;resize:vertical}
.testimonials-section{position:relative;overflow:hidden;background:linear-gradient(135deg,#092f4a 0%,#124e70 62%,#0b6d78 100%);color:#fff}
.testimonials-section::after{content:"";position:absolute;right:-12rem;bottom:-18rem;width:36rem;height:36rem;border:1px solid rgba(101,218,221,.2);border-radius:50%;pointer-events:none}
.testimonials-heading{position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:3rem;align-items:end;margin-bottom:2.2rem}
.testimonials-heading h2{max-width:18ch;margin:.4rem 0 0;color:#fff}
.testimonials-heading>p{max-width:48ch;margin:0;color:#c7dce5;font-size:1.05rem}
.testimonial-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.testimonial-card{display:flex;min-height:310px;flex-direction:column;padding:clamp(1.3rem,2.4vw,2rem);border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(255,255,255,.08);box-shadow:0 18px 40px rgba(3,25,40,.16);backdrop-filter:blur(8px)}
.testimonial-rating{display:flex;gap:.2rem;color:rgba(255,255,255,.25);font-size:1.05rem;letter-spacing:.05em}
.testimonial-rating .is-filled{color:#f6bf45}
.testimonial-card blockquote{flex:1;margin:1.25rem 0;padding:0;border:0}
.testimonial-card blockquote p{margin:0;color:#f4f9fb;font-size:1rem;line-height:1.75}
.testimonial-card footer{display:flex;align-items:center;gap:.85rem;padding-top:1.15rem;border-top:1px solid rgba(255,255,255,.14)}
.testimonial-avatar{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;border-radius:50%;background:var(--teal);color:#07364e;font-size:.72rem;font-weight:900}
.testimonial-card footer strong,.testimonial-card footer small{display:block}
.testimonial-card footer strong{color:#fff;font-size:.9rem}
.testimonial-card footer small{margin-top:.15rem;color:#bcd2dc;font-size:.75rem}
@media(max-width:1050px){.testimonial-record__fields{grid-template-columns:1fr 1fr}.testimonial-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.testimonials-heading{grid-template-columns:1fr;gap:1rem}.testimonial-grid,.testimonial-record__fields{grid-template-columns:1fr}.testimonial-card{min-height:0}}

/* Image-led landing hero inspired by TerraWatt's Africa-wide positioning */
.landing-hero{position:relative;isolation:isolate;overflow:visible;min-height:570px;padding:0;background:#051c2e url("/assets/images/landing-hero-africa.webp") center/cover no-repeat;color:#fff}
.landing-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(3,20,34,.98) 0%,rgba(5,30,48,.92) 31%,rgba(5,34,53,.48) 57%,rgba(3,25,40,.12) 100%),linear-gradient(0deg,rgba(3,23,37,.68),transparent 60%)}
.landing-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 78% 35%,rgba(32,190,197,.13),transparent 28%);pointer-events:none}
.landing-hero__content{display:flex;min-height:540px;align-items:center;padding-block:clamp(3.5rem,7vw,6rem)}
.landing-hero__copy{position:relative;z-index:1;width:min(650px,55%)}
.landing-hero__copy .eyebrow{margin:0 0 .75rem;color:#65dadd}
.landing-hero__copy h1{max-width:15ch;margin:0;color:#fff;font-size:clamp(2.4rem,4.45vw,4.65rem);line-height:.99;letter-spacing:-.048em;text-wrap:balance}
.landing-hero__copy .lead{max-width:57ch;margin:1.2rem 0 0;color:#d2e2e9;font-size:clamp(.98rem,1.35vw,1.15rem);line-height:1.65}
.landing-hero__copy .button-row{margin-top:1.55rem}
.landing-hero__primary{gap:.75rem;border-color:var(--teal);background:var(--teal);color:#052f45}
.landing-hero__primary span{font-size:1.1rem;transition:transform .18s ease}
.landing-hero__primary:hover span{transform:translateX(4px)}
.landing-hero__secondary{border-color:rgba(255,255,255,.55);background:rgba(3,25,40,.45);backdrop-filter:blur(7px)}
.landing-hero__stats{position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,1fr);min-height:118px;margin-top:-1px;overflow:hidden;border:1px solid #d9e4e9;border-radius:12px;background:#fff;box-shadow:0 20px 50px rgba(4,37,58,.18);transform:translateY(50%)}
.landing-hero__stats article{display:flex;align-items:center;gap:1rem;padding:1.2rem 1.35rem;border-left:1px solid #e2eaed}
.landing-hero__stats article:first-child{border-left:0}
.landing-hero__stat-icon{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;border-radius:10px;background:#e8f8f7}
.landing-hero__stat-icon img{width:23px;height:23px;filter:invert(38%) sepia(75%) saturate(945%) hue-rotate(137deg) brightness(87%) contrast(94%)}
.landing-hero__stats strong,.landing-hero__stats small{display:block}
.landing-hero__stats strong{color:var(--navy);font:900 clamp(1.3rem,2vw,1.8rem) Montserrat,"Segoe UI",sans-serif;line-height:1}
.landing-hero__stats small{margin-top:.35rem;color:#607687;font-size:.68rem;font-weight:850;letter-spacing:.055em;line-height:1.3;text-transform:uppercase}
.landing-hero__stats::after{content:"";position:absolute;top:0;bottom:0;left:-35%;width:22%;background:linear-gradient(90deg,transparent,rgba(32,190,197,.14),transparent);transform:skewX(-18deg);pointer-events:none}
.landing-hero__stats.is-motion-ready{opacity:0;transform:translateY(calc(50% + 24px))}
.landing-hero__stats.is-motion-ready article{opacity:0;transform:translateY(12px)}
.landing-hero__stats.is-animated{opacity:1;transform:translateY(50%);transition:opacity .5s ease,transform .62s cubic-bezier(.2,.75,.3,1)}
.landing-hero__stats.is-animated article{opacity:1;transform:none;transition:opacity .42s ease,transform .52s ease}
.landing-hero__stats.is-animated article:nth-child(2){transition-delay:.08s}.landing-hero__stats.is-animated article:nth-child(3){transition-delay:.16s}.landing-hero__stats.is-animated article:nth-child(4){transition-delay:.24s}
.landing-hero__stats.is-animated::after{animation:landingStatSheen 1.35s .28s ease-out 1 both}
.landing-hero__stats.is-animated .landing-hero__stat-icon{animation:landingStatPulse .58s ease-out both}
.landing-hero__stats.is-animated article:nth-child(2) .landing-hero__stat-icon{animation-delay:.08s}.landing-hero__stats.is-animated article:nth-child(3) .landing-hero__stat-icon{animation-delay:.16s}.landing-hero__stats.is-animated article:nth-child(4) .landing-hero__stat-icon{animation-delay:.24s}
@keyframes landingStatSheen{from{left:-35%}to{left:125%}}
@keyframes landingStatPulse{0%{transform:scale(.75)}65%{transform:scale(1.08)}100%{transform:scale(1)}}
.landing-hero+.pipeline-section{padding-top:clamp(7rem,10vw,9rem)}
@media(max-width:980px){
  .landing-hero{background-position:62% center}.landing-hero::before{background:linear-gradient(90deg,rgba(3,20,34,.98),rgba(5,30,48,.88) 45%,rgba(3,25,40,.3))}
  .landing-hero__copy{width:min(650px,68%)}
  .landing-hero__stats{grid-template-columns:1fr 1fr}.landing-hero__stats article:nth-child(3){border-left:0;border-top:1px solid #e2eaed}.landing-hero__stats article:nth-child(4){border-top:1px solid #e2eaed}
  .landing-hero+.pipeline-section{padding-top:clamp(9rem,16vw,12rem)}
}
@media(max-width:650px){
  .landing-hero{min-height:0;overflow:hidden;background-position:68% center}.landing-hero::before{background:linear-gradient(90deg,rgba(3,20,34,.98),rgba(5,30,48,.9) 68%,rgba(3,25,40,.56))}
  .landing-hero__content{min-height:590px;align-items:flex-end;padding:4rem 0 8rem}.landing-hero__copy{width:100%}
  .landing-hero__copy h1{font-size:clamp(2.35rem,11vw,3.35rem)}
  .landing-hero__copy .button-row{align-items:stretch;flex-direction:column}.landing-hero__copy .button{width:100%}
  .landing-hero__stats{grid-template-columns:1fr 1fr;width:calc(100% - 1.25rem);min-height:0;margin:-5.8rem auto 1rem;transform:none}
  .landing-hero__stats.is-motion-ready{transform:translateY(22px)}.landing-hero__stats.is-animated{transform:none}
  .landing-hero__stats article{gap:.65rem;padding:.9rem .75rem}.landing-hero__stat-icon{width:38px;height:38px;flex-basis:38px}.landing-hero__stat-icon img{width:19px;height:19px}
  .landing-hero__stats strong{font-size:1.18rem}.landing-hero__stats small{font-size:.57rem}
  .landing-hero+.pipeline-section{padding-top:3rem}
}

/* Privacy and cookie consent management */
.footer-cookie-button{display:block;margin:.45rem 0;padding:0;border:0;background:transparent;color:#d8e7ed;font:inherit;text-align:left;cursor:pointer}
.footer-cookie-button:hover{color:#54d8d3}
.consent-manager{position:relative;z-index:110}
.consent-banner{position:fixed;right:1rem;bottom:1rem;left:1rem;z-index:111;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;width:min(1180px,calc(100% - 2rem));margin:auto;padding:1.35rem 1.5rem;border:1px solid #bcd4da;border-top:4px solid var(--teal);border-radius:14px;background:#fff;box-shadow:0 24px 70px rgba(3,25,40,.3);color:var(--ink)}
.consent-banner__copy .eyebrow{margin:0 0 .2rem}.consent-banner__copy h2{margin:0;font-size:1.35rem}.consent-banner__copy>p:last-child{max-width:75ch;margin:.4rem 0 0;color:#566e7d;font-size:.85rem;line-height:1.55}.consent-banner__copy a{color:#0b6d7e;font-weight:800}
.consent-banner__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.consent-banner__actions .button{min-height:44px;padding:.55rem .8rem;font-size:.78rem}
.consent-backdrop{position:fixed;inset:0;z-index:112;background:rgba(2,18,30,.7);backdrop-filter:blur(4px)}
.consent-dialog{position:fixed;top:50%;left:50%;z-index:113;width:min(700px,calc(100% - 2rem));max-height:calc(100vh - 2rem);overflow-y:auto;padding:clamp(1.2rem,3vw,2rem);border:1px solid #bfd3d8;border-radius:16px;background:#fff;box-shadow:0 30px 90px rgba(1,16,27,.4);transform:translate(-50%,-50%);color:var(--ink)}
.consent-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.consent-dialog>header .eyebrow{margin:0}.consent-dialog>header h2{margin:.2rem 0 0;font-size:1.75rem}
.consent-dialog>header>button{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--navy);font-size:1.5rem;cursor:pointer}
.consent-dialog__intro{margin:1rem 0;color:#526b7b;font-size:.9rem}
.consent-category-list{display:grid;gap:.65rem}
.consent-category-list label{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1rem;border:1px solid var(--line);border-radius:11px;background:#f8fbfc;cursor:pointer}
.consent-category-list label:has(input:checked){border-color:#9edcda;background:#effafa}
.consent-category-list span,.consent-category-list strong,.consent-category-list small{display:block}.consent-category-list strong{color:var(--navy);font-size:.9rem}.consent-category-list small{margin-top:.2rem;color:#607687;font-size:.75rem;line-height:1.45}
.consent-category-list input{width:42px;height:22px;flex:0 0 auto;accent-color:var(--teal)}
.consent-category-list input:disabled{opacity:.65}
.consent-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--line)}
.consent-dialog>footer>a{color:#0b6d7e;font-size:.8rem;font-weight:800}.consent-dialog>footer>div{display:flex;gap:.55rem}.consent-dialog>footer .button{min-height:44px;font-size:.78rem}
.consent-dialog-open{overflow:hidden}
.consent-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.consent-admin-grid .account-toggle{margin-top:.6rem!important}.consent-admin-note{padding:.8rem 1rem;border-left:4px solid var(--teal);background:#f0f7f8;color:#596d79;font-size:.78rem}
.consent-gated-embed{position:relative}.consent-gated-embed iframe:not([src]){visibility:hidden}
.consent-embed-placeholder{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:2rem;background:linear-gradient(145deg,#e9f3f5,#f8fbfc);text-align:center}
.consent-embed-placeholder>span{display:grid;width:58px;height:58px;place-items:center;border-radius:15px;background:#dff4f3}.consent-embed-placeholder img{width:27px;height:27px;filter:invert(38%) sepia(75%) saturate(945%) hue-rotate(137deg) brightness(87%) contrast(94%)}
.consent-embed-placeholder h3{margin:1rem 0 .35rem;color:var(--navy)}.consent-embed-placeholder p{max-width:38ch;margin:0 0 1rem;color:#607687}.consent-gated-embed.has-consent .consent-embed-placeholder{display:none}
@media(max-width:850px){.consent-banner{grid-template-columns:1fr;gap:1rem}.consent-banner__actions{justify-content:flex-start}.consent-admin-grid{grid-template-columns:1fr}}
@media(max-width:560px){.consent-banner{right:.5rem;bottom:.5rem;left:.5rem;width:calc(100% - 1rem);padding:1rem}.consent-banner__actions{display:grid;grid-template-columns:1fr 1fr}.consent-banner__actions .button:last-child{grid-column:1/-1}.consent-dialog{width:calc(100% - 1rem);max-height:calc(100vh - 1rem);padding:1rem}.consent-dialog>footer{align-items:stretch;flex-direction:column}.consent-dialog>footer>div{display:grid;grid-template-columns:1fr 1fr}.consent-category-list label{gap:.75rem;padding:.8rem}}

/* Public site search */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.nav-search>summary{display:grid;place-items:center;width:42px;height:42px;padding:0!important;border:1px solid #bcdade;border-radius:11px;background:#f1faf9;color:#087f87}
.nav-search>summary::before,.nav-search>summary::after{display:none!important}
.nav-search>summary img{width:19px;height:19px}
.nav-search>summary span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.nav-search[open]>summary,.nav-search.is-current>summary,.nav-search>summary:hover{border-color:var(--teal);background:var(--teal);color:#052f45}
.nav-search__panel{position:absolute;z-index:35;top:calc(100% + 20px);right:0;width:min(430px,calc(100vw - 2rem));padding:1rem;border:1px solid #d3e2e7;border-top:3px solid var(--teal);border-radius:15px;background:#fff;box-shadow:0 28px 70px rgba(9,47,74,.2);animation:navReveal .14s ease-out}
.nav-search__panel label{display:block;margin-bottom:.55rem;color:var(--navy);font-size:.78rem;font-weight:850}
.nav-search__panel>div{display:grid;grid-template-columns:1fr 46px;gap:.5rem}
.nav-search__panel input{min-width:0;height:46px;padding:.7rem .85rem;border:1px solid #a9c2ca;border-radius:9px;color:var(--ink);background:#fff}
.nav-search__panel button{display:grid;place-items:center;border:0;border-radius:9px;background:var(--teal);cursor:pointer}
.nav-search__panel button img{width:20px;height:20px}
.search-hero{padding:clamp(3.5rem,7vw,6rem) 0}
.search-page-form{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:.65rem;margin-top:2rem;padding:.55rem .55rem .55rem 1rem;border:1px solid rgba(255,255,255,.35);border-radius:14px;background:#fff;box-shadow:0 18px 40px rgba(3,33,52,.22)}
.search-page-form>img{width:22px;height:22px;opacity:.7}
.search-page-form input{width:100%;min-width:0;height:46px;border:0;outline:0;color:var(--ink);background:transparent}
.search-page-form .button{min-height:46px}
.search-results-section{min-height:420px}
.search-results-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.5rem}
.search-results-heading h2{margin:0;font-size:clamp(1.6rem,3vw,2.35rem)}
.search-result-list{display:grid;gap:.85rem}
.search-result-card{display:grid;grid-template-columns:54px minmax(0,1fr);gap:1rem;padding:1.35rem;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 8px 26px rgba(9,47,74,.06);transition:border-color .16s ease,transform .16s ease}
.search-result-card:hover{border-color:#9bd9d9;transform:translateY(-2px)}
.search-result-card__icon{display:grid;place-items:center;width:50px;height:50px;border-radius:12px;background:#eaf8f7}
.search-result-card__icon img{width:23px;height:23px}
.search-result-card__meta{display:flex;align-items:center;gap:.7rem;margin-bottom:.35rem}
.search-result-card__meta span{padding:.18rem .55rem;border-radius:999px;background:#dff6f4;color:#08757d;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.search-result-card__meta small{color:var(--muted)}
.search-result-card h3{margin:.15rem 0 .35rem;font-size:1.18rem}
.search-result-card h3 a{text-decoration:none}
.search-result-card p{margin:.25rem 0 .55rem;color:var(--muted)}
.search-empty-state{display:grid;justify-items:center;padding:clamp(3rem,8vw,6rem) 1rem;text-align:center;border:1px dashed #b9d3da;border-radius:16px;background:var(--surface)}
.search-empty-state>img{width:44px;height:44px;margin-bottom:1rem;opacity:.65}
.search-empty-state h2{margin-bottom:.35rem;font-size:1.7rem}
.search-empty-state p{margin:0;color:var(--muted)}
@media(max-width:1180px){
  .site-header .nav-search{width:100%}
  .site-header .nav-search>summary{display:flex;justify-content:flex-start;gap:.75rem;width:100%;height:auto;padding:.85rem!important;border:0;background:transparent;color:#263f53}
  .site-header .nav-search>summary span{position:static;width:auto;height:auto;overflow:visible;clip:auto;font-size:.82rem;font-weight:800}
  .site-header .nav-search__panel{position:static;width:calc(100% - .7rem);margin:.2rem 0 .6rem .7rem;border:0;border-left:2px solid var(--teal);border-radius:0;background:#f6fafb;box-shadow:none;animation:none}
}
@media(max-width:650px){
  .search-page-form{grid-template-columns:24px minmax(0,1fr);padding:.65rem .8rem}
  .search-page-form .button{grid-column:1/-1;width:100%}
  .search-results-heading{display:block}
  .search-results-heading>.text-link{display:inline-block;margin-top:.7rem}
  .search-result-card{grid-template-columns:1fr}
  .search-result-card__icon{width:44px;height:44px}
}

/* Database-driven homepage hero */
.hero-slider{--hero-transition-duration:650ms;position:relative;min-height:clamp(600px,58vw,720px);overflow:hidden;background:#06233a;color:#fff;isolation:isolate}
.hero-slider:focus-visible{outline:4px solid var(--teal);outline-offset:-4px}
.hero-slider__viewport,.hero-slide,.hero-slide__media,.hero-slide__overlay{position:absolute;inset:0}
.hero-slide{z-index:0;display:flex;visibility:hidden;opacity:0;pointer-events:none;transition:opacity var(--hero-transition-duration) ease,visibility var(--hero-transition-duration) step-end}
.hero-slide.is-active{z-index:1;visibility:visible;opacity:1;pointer-events:auto;transition:opacity var(--hero-transition-duration) ease}
.hero-slider--slide .hero-slide{visibility:visible;opacity:1;transform:translateX(100%);transition:transform var(--hero-transition-duration) cubic-bezier(.22,.7,.25,1)}
.hero-slider--slide .hero-slide.is-active{transform:translateX(0)}
.hero-slide__media{z-index:-2;display:block;inset:-3%;transform:translate3d(var(--hero-parallax-x,0%),calc(var(--hero-parallax-pointer-y,0%) + var(--hero-parallax-scroll-y,0px)),0);transition:transform .22s ease-out}
.hero-slide__media img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1);will-change:transform}
.hero-slide.has-broken-image{background:radial-gradient(circle at 78% 18%,rgba(32,190,197,.32),transparent 32%),linear-gradient(125deg,#061f35,#124f68)}
.hero-slide.has-broken-image .hero-slide__media{display:none}
.hero-slide__overlay{z-index:-1;background:linear-gradient(90deg,rgba(var(--hero-overlay-rgb),var(--hero-overlay)) 0%,rgba(var(--hero-overlay-rgb),calc(var(--hero-overlay) * .86)) 48%,rgba(var(--hero-overlay-rgb),calc(var(--hero-overlay) * .38)) 100%)}
.hero-slide--overlay-solid .hero-slide__overlay{background:rgba(var(--hero-overlay-rgb),var(--hero-overlay))}
.hero-slide.is-active .hero-slide__media img{animation:heroImageReveal 1s ease-out forwards}
.hero-slider[data-autoplay=true] .hero-slide.is-active .hero-slide__media img{animation:heroImageZoom var(--hero-rotation-duration) linear forwards}
.hero-slider.is-paused .hero-slide.is-active .hero-slide__media img,.hero-slider.is-paused .hero-slider__progress span{animation-play-state:paused}
@keyframes heroImageReveal{
  from{opacity:.68;transform:scale(1)}
  to{opacity:1;transform:scale(1.045)}
}
@keyframes heroImageZoom{
  0%{opacity:.68;transform:scale(1)}
  14%{opacity:1}
  100%{opacity:1;transform:scale(1.075)}
}
.hero-slide__inner{display:flex;align-items:center;width:min(1180px,calc(100% - 2rem));margin-inline:auto;min-height:clamp(600px,58vw,720px);padding-top:clamp(4.5rem,8vw,7rem);padding-right:0;padding-bottom:clamp(5.5rem,8vw,7rem);padding-left:0}
.hero-slide--position-left .hero-slide__inner{justify-content:flex-start}
.hero-slide--position-center .hero-slide__inner{justify-content:center}
.hero-slide--position-right .hero-slide__inner{justify-content:flex-end}
.hero-slide__copy{width:min(720px,68%);color:var(--hero-text);text-align:left;text-shadow:0 2px 18px rgba(0,0,0,.22)}
.hero-slide--align-center .hero-slide__copy{text-align:center}
.hero-slide--align-right .hero-slide__copy{text-align:right}
.hero-slide--align-center .button-row{justify-content:center}
.hero-slide--align-right .button-row{justify-content:flex-end}
.hero-slide__copy .eyebrow{display:block;margin:0 0 .9rem;padding:0;border:0;border-radius:0;background:transparent;color:#83ebe7;letter-spacing:.12em}
.hero-slide__copy h1,.hero-slide__copy h2{max-width:19ch;margin:0;color:inherit;font-size:clamp(2.35rem,4.5vw,4.15rem);font-weight:800;letter-spacing:-.038em;line-height:1.03}
.hero-slide--align-center .hero-slide__copy h1,.hero-slide--align-center .hero-slide__copy h2{margin-inline:auto}
.hero-slide--align-right .hero-slide__copy h1,.hero-slide--align-right .hero-slide__copy h2{margin-left:auto}
.hero-slide__copy .lead{max-width:65ch;margin:1.35rem 0 0;color:inherit;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.65;opacity:.95}
.hero-slide--align-center .hero-slide__copy .lead{margin-inline:auto}
.hero-slide--align-right .hero-slide__copy .lead{margin-left:auto}
.hero-slide__copy .button-row{margin-top:1.65rem}
.hero-slide__secondary{border-color:rgba(255,255,255,.65);background:rgba(3,25,40,.45);color:#fff;backdrop-filter:blur(8px)}
.hero-slider__controls{position:absolute;z-index:4;bottom:2rem;left:50%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem;transform:translateX(-50%);pointer-events:none}
.hero-slider__controls>*{pointer-events:auto}
.hero-slider__counter{display:flex;align-items:center;justify-self:start;gap:.75rem;color:#fff;font:800 .85rem Montserrat,"Segoe UI",sans-serif;letter-spacing:.04em;text-shadow:0 2px 10px rgba(0,0,0,.3)}
.hero-slider__counter i{display:block;width:2px;height:25px;background:rgba(255,255,255,.55)}
.hero-slider__counter span{opacity:.58}
.hero-slider__navigation{display:flex;justify-self:end;gap:.4rem}
.hero-slider__navigation button{display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(255,255,255,.32);border-radius:9px;background:rgba(3,27,44,.42);color:#fff;font-size:1.25rem;cursor:pointer;backdrop-filter:blur(8px);transition:background .18s ease,transform .18s ease}
.hero-slider__navigation button:hover,.hero-slider__navigation button:focus-visible{background:var(--teal);color:#062a3d;transform:translateY(-2px)}
.hero-slider__pagination{display:flex;justify-self:center;gap:.45rem}
.hero-slider__pagination button{width:48px;height:4px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.34);cursor:pointer;transition:background .2s ease,transform .2s ease}
.hero-slider__pagination button[aria-selected=true]{background:#fff;transform:scaleY(1.35)}
.hero-slider__progress{position:absolute;z-index:5;right:0;bottom:0;left:0;height:4px;overflow:hidden;background:rgba(255,255,255,.22)}
.hero-slider__progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--teal),#7ce6df);transform:scaleX(0);transform-origin:left center}
.hero-slider__progress span.is-running{animation:heroSliderProgress linear forwards}
@keyframes heroSliderProgress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.managed-copy>p:first-child{margin-top:0}.managed-copy>p:last-child{margin-bottom:0}
.hero-slider+.landing-hero__stats{margin-top:-18px;transform:none}
.hero-slider+.landing-hero__stats.is-motion-ready{transform:translateY(18px)}
.hero-slider+.landing-hero__stats.is-animated{transform:none}
.landing-hero__stats+.pipeline-section{padding-top:clamp(3.5rem,5vw,5rem)}

/* Homepage management */
.admin-heading-actions,.admin-panel__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem}
.admin-heading-buttons,.hero-admin-card__actions,.homepage-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}
.alert--warning{margin-bottom:1.25rem;border-left:4px solid #d29a27;background:#fff8e8;color:#66480d}
.hero-admin-list{display:grid;gap:.85rem;margin-top:1rem}
.hero-admin-card{display:grid;grid-template-columns:34px 180px minmax(0,1fr);gap:1rem;align-items:stretch;padding:.75rem;border:1px solid #d3e1e6;border-radius:13px;background:#fff;box-shadow:0 6px 20px rgba(9,47,74,.05)}
.hero-admin-card.is-dragging{opacity:.45;border-color:var(--teal)}
.hero-admin-card__handle{align-self:center;width:34px;height:52px;border:0;border-radius:8px;background:#edf5f6;color:#517080;font-size:1.1rem;cursor:grab}
.hero-admin-card__thumb{min-height:112px;overflow:hidden;border-radius:9px;background:#e9f1f3}
.hero-admin-card__thumb img{width:100%;height:100%;object-fit:cover}
.hero-admin-card__thumb span{display:grid;height:100%;place-items:center;color:var(--muted);font-size:.75rem}
.hero-admin-card__main{min-width:0}
.hero-admin-card__title{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.hero-admin-card__title small{display:block;color:#16868e;font-weight:800;text-transform:uppercase}.hero-admin-card__title h3{margin:.2rem 0 .65rem;font-size:1.05rem}
.hero-admin-card__meta{display:flex;flex-wrap:wrap;gap:.55rem 1.25rem;margin:0 0 .75rem}.hero-admin-card__meta div{display:flex;gap:.35rem}.hero-admin-card__meta dt{color:var(--muted);font-size:.72rem}.hero-admin-card__meta dd{margin:0;color:#263f53;font-size:.72rem;font-weight:800}
.hero-admin-card__actions form{margin:0}.text-action{padding:.35rem;border:0;background:transparent;color:#087883;font:inherit;font-size:.75rem;font-weight:850;cursor:pointer}.text-action--danger{color:#a53939}
.status--published{background:#dff7eb!important;color:#126b43!important}.status--draft{background:#fff3cc!important;color:#7b5b00!important}.status--inactive{background:#edf0f2!important;color:#586570!important}
.homepage-content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}
.homepage-content-grid>a{display:flex;min-height:160px;flex-direction:column;align-items:flex-start;padding:1rem;border:1px solid #d3e1e6;border-radius:11px;background:#fff;text-decoration:none;transition:border-color .16s ease,transform .16s ease}
.homepage-content-grid>a:hover{border-color:var(--teal);transform:translateY(-2px)}.homepage-content-grid small{margin-top:.9rem;color:#16868e;font-weight:850;text-transform:uppercase}.homepage-content-grid strong{margin-top:.25rem;color:var(--navy)}.homepage-content-grid em{margin-top:auto;color:var(--muted);font-size:.7rem;font-style:normal}
.homepage-settings-grid,.homepage-content-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.homepage-setting-toggles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1.25rem 0}
.homepage-setting-toggle{display:grid!important;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:.85rem;margin:0!important;padding:1rem;border:1px solid #d2e0e4;border-radius:11px;background:#f8fbfc;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
.homepage-setting-toggle:has(input:checked){border-color:#8fd9d7;background:#effafa;box-shadow:0 7px 20px rgba(19,126,132,.08)}
.homepage-setting-toggle>input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}
.homepage-setting-toggle__switch{position:relative;display:block;width:46px;height:26px;border-radius:99px;background:#b6c5cb;transition:background .18s ease}
.homepage-setting-toggle__switch i{position:absolute;top:4px;left:4px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(9,47,74,.25);transition:transform .18s ease}
.homepage-setting-toggle input:checked+.homepage-setting-toggle__switch{background:var(--teal)}
.homepage-setting-toggle input:checked+.homepage-setting-toggle__switch i{transform:translateX(20px)}
.homepage-setting-toggle input:focus-visible+.homepage-setting-toggle__switch{outline:3px solid #ffca50;outline-offset:3px}
.homepage-setting-toggle>span:last-child{display:flex;min-width:0;flex-direction:column}.homepage-setting-toggle strong{color:var(--navy);font-size:.82rem}.homepage-setting-toggle small{margin-top:.15rem;color:var(--muted);font-size:.7rem;font-weight:500;line-height:1.45}
.homepage-editor-grid{grid-template-columns:minmax(0,1fr) minmax(280px,360px)}
.homepage-slide-form label,.homepage-settings-form label,.homepage-content-form label{display:grid;gap:.4rem;margin-bottom:.9rem;color:#263f53;font-size:.78rem;font-weight:800}
.homepage-slide-form input,.homepage-slide-form textarea,.homepage-slide-form select,.homepage-settings-form input,.homepage-settings-form select,.homepage-content-form input,.homepage-content-form textarea,.homepage-content-form select{width:100%;min-height:44px;padding:.65rem .75rem;border:1px solid #afc6ce;border-radius:8px;background:#fff;color:var(--ink);font:inherit;font-weight:500}
.homepage-slide-form textarea,.homepage-content-form textarea{resize:vertical}.homepage-slide-form label>span,.homepage-content-form label>span{justify-self:end;color:var(--muted);font-size:.68rem;font-weight:600}.homepage-slide-form label>span.is-near-limit{color:#a35f0c}
.homepage-slide-form fieldset{padding:1rem;border:1px solid #d6e3e7;border-radius:10px}.homepage-slide-form legend{padding:0 .4rem;color:var(--navy);font-weight:850}
.managed-rich-editor{display:block}.managed-rich-editor__toolbar{display:flex;flex-wrap:wrap;gap:.35rem;padding:.5rem;border:1px solid #afc6ce;border-bottom:0;border-radius:8px 8px 0 0;background:#edf5f6}.managed-rich-editor__toolbar button{min-height:34px;padding:.35rem .6rem;border:1px solid #bdcfd5;border-radius:6px;background:#fff;color:var(--navy);font:inherit;font-size:.72rem;cursor:pointer}.managed-rich-editor__toolbar button:hover,.managed-rich-editor__toolbar button:focus-visible{border-color:var(--teal);background:#e9f9f8}.managed-rich-editor__surface{display:block;min-height:230px;padding:.8rem;border:1px solid #afc6ce;border-radius:0 0 8px 8px;background:#fff;color:var(--ink);font-weight:500;line-height:1.65}.managed-rich-editor__surface:focus{border-color:var(--teal);outline:2px solid rgba(32,190,197,.18)}.managed-rich-editor__surface p:first-child{margin-top:0}.managed-rich-editor__surface p:last-child{margin-bottom:0}
.hero-upload-grid,.homepage-button-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.hero-upload-field{padding:1rem;border:1px dashed #9fc3ca;border-radius:10px;background:#f4f9fa}
.hero-image-previews{display:grid;grid-template-columns:2fr 1fr;gap:1rem}.hero-image-previews figure{margin:0}.hero-image-previews figcaption{margin-bottom:.4rem;color:var(--muted);font-size:.72rem}
.hero-image-preview{display:grid;min-height:170px;overflow:hidden;place-items:center;border-radius:9px;background:#e9f1f3;color:var(--muted)}.hero-image-preview--mobile{min-height:220px}.hero-image-preview img{width:100%;height:100%;object-fit:cover}
.field-error.has-error{padding:.55rem .7rem;border-radius:6px;background:#fff0f0;color:#a12e2e}
.homepage-publish-panel{position:sticky;top:100px}.homepage-form-actions{padding-top:1rem;border-top:1px solid var(--line)}
.hero-preview-toolbar{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1rem}.hero-preview-toolbar span{margin-right:.5rem;color:var(--muted);font-size:.75rem}.hero-preview-toolbar button{padding:.45rem .75rem;border:1px solid #b7cbd1;border-radius:7px;background:#fff;color:var(--navy);cursor:pointer}.hero-preview-toolbar button.is-active{border-color:var(--teal);background:var(--teal)}
.hero-preview-frame{width:100%;max-width:100%;margin:auto;overflow:hidden;border:8px solid #273f50;border-radius:14px;background:#273f50;transition:max-width .25s ease}.hero-preview-frame[data-preview-size=tablet]{max-width:820px}.hero-preview-frame[data-preview-size=mobile]{max-width:390px}.hero-preview-frame .hero-slider{min-height:560px}.hero-preview-frame .hero-slide__inner{min-height:560px}

@media(max-width:980px){
  .hero-slide__copy{width:min(680px,78%)}.hero-slide__copy h1,.hero-slide__copy h2{font-size:clamp(2.25rem,6vw,3.65rem)}
  .landing-hero__stats+.pipeline-section{padding-top:clamp(4rem,8vw,5.5rem)}
  .homepage-content-grid,.homepage-settings-grid,.homepage-content-fields{grid-template-columns:1fr 1fr}.homepage-setting-toggles{grid-template-columns:1fr 1fr}
  .homepage-editor-grid{grid-template-columns:1fr}.homepage-publish-panel{position:static}
}
@media(max-width:700px){
  .hero-slider,.hero-slide__inner{min-height:620px}.hero-slide__inner{align-items:flex-start;padding-top:1.25rem;padding-bottom:7rem}
  .hero-slide__overlay{background:linear-gradient(0deg,rgba(var(--hero-overlay-rgb),var(--hero-overlay)) 0%,rgba(var(--hero-overlay-rgb),calc(var(--hero-overlay) * .92)) 60%,rgba(var(--hero-overlay-rgb),calc(var(--hero-overlay) * .4)) 100%)}
  .hero-slide__copy{width:100%;text-align:left!important}.hero-slide__copy h1,.hero-slide__copy h2{margin-left:0!important;font-size:clamp(2.05rem,9vw,2.9rem)}.hero-slide__copy .lead{margin-left:0!important;font-size:.95rem}
  .hero-slide__copy .eyebrow{margin-bottom:.65rem}
  .hero-slide__copy .button-row{align-items:stretch;justify-content:flex-start!important;flex-direction:row}.hero-slide__copy .button{width:auto;flex:1 1 220px}
  .hero-slider__controls{bottom:1.25rem;grid-template-columns:auto 1fr auto;gap:.65rem}.hero-slider__counter{gap:.45rem;font-size:.72rem}.hero-slider__counter i{height:20px}.hero-slider__pagination{justify-self:center;gap:.25rem}.hero-slider__pagination button{width:22px}.hero-slider__navigation{gap:.25rem}.hero-slider__navigation button{width:38px;height:38px}
  .hero-slider+.landing-hero__stats{margin-top:0;transform:none}.hero-slider+.landing-hero__stats.is-motion-ready{transform:translateY(18px)}.hero-slider+.landing-hero__stats.is-animated{transform:none}.landing-hero__stats+.pipeline-section{padding-top:3.5rem}
  .admin-heading-actions,.admin-panel__heading{align-items:stretch;flex-direction:column}.admin-heading-buttons{width:100%}.admin-heading-buttons .button{flex:1}
  .hero-admin-card{grid-template-columns:28px 90px minmax(0,1fr)}.hero-admin-card__meta{display:grid;grid-template-columns:1fr 1fr}.hero-admin-card__actions{grid-column:1/-1}
  .homepage-content-grid,.homepage-settings-grid,.homepage-content-fields,.homepage-setting-toggles,.hero-upload-grid,.homepage-button-fields{grid-template-columns:1fr}
  .hero-image-previews{grid-template-columns:1fr}.hero-image-preview--mobile{min-height:260px}
}
@media(prefers-reduced-motion:reduce){
  .hero-slide,.hero-slider--slide .hero-slide,.hero-slider__pagination button,.hero-slider__navigation button{transition:none!important}
  .hero-slider__progress{display:none}
}

/* Illustrative How It Works journey */
.how-hero{padding-block:clamp(4.5rem,8vw,7rem)}
.how-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:clamp(3rem,8vw,7rem);align-items:center}
.how-hero__copy h1{max-width:14ch;font-size:clamp(2.8rem,5.3vw,5rem)}
.how-hero__visual{position:relative;min-height:480px}
.how-hero__visual::before,.how-hero__visual::after{content:"";position:absolute;top:50%;left:50%;border:1px solid rgba(108,224,228,.24);border-radius:50%;transform:translate(-50%,-50%)}
.how-hero__visual::before{width:390px;height:390px}.how-hero__visual::after{width:270px;height:270px}
.how-hero__orbit{position:absolute;top:50%;left:50%;width:330px;height:330px;border:1px dashed rgba(255,255,255,.26);border-radius:50%;transform:translate(-50%,-50%);animation:howOrbit 30s linear infinite}
.how-hero__orbit::before{content:"";position:absolute;top:22px;left:58px;width:10px;height:10px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 8px rgba(32,190,197,.12)}
@keyframes howOrbit{to{transform:translate(-50%,-50%) rotate(360deg)}}
.how-hero__core{position:absolute;top:50%;left:50%;z-index:2;display:flex;width:170px;height:170px;align-items:center;justify-content:center;flex-direction:column;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(5,43,66,.8);box-shadow:0 25px 70px rgba(1,20,34,.3);transform:translate(-50%,-50%);backdrop-filter:blur(10px)}
.how-hero__core img{width:54px;height:54px;margin-bottom:.55rem;border-radius:11px;background:#fff}.how-hero__core strong{font-family:Montserrat,"Segoe UI",sans-serif}.how-hero__core small{color:#8fe6e4;font-size:.64rem;text-transform:uppercase;letter-spacing:.07em}
.how-hero__node{position:absolute;z-index:3;display:flex;min-width:126px;align-items:center;gap:.55rem;padding:.7rem .85rem;border:1px solid rgba(255,255,255,.24);border-radius:11px;background:rgba(255,255,255,.95);box-shadow:0 16px 35px rgba(1,22,36,.2);color:var(--navy);font-size:.74rem;font-weight:850}
.how-hero__node img{width:24px;height:24px;filter:invert(35%) sepia(80%) saturate(826%) hue-rotate(137deg) brightness(91%) contrast(91%)}
.how-hero__node--one{top:6%;left:4%}.how-hero__node--two{top:13%;right:0}.how-hero__node--three{right:2%;bottom:12%}.how-hero__node--four{bottom:7%;left:2%}
.how-process{overflow:hidden;background:linear-gradient(180deg,#fff,#f3f8fa)}
.how-process__heading{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:end;margin-bottom:3rem}.how-process__heading h2{max-width:700px;margin-bottom:0}.how-process__heading>p{max-width:560px;margin:0;color:var(--muted);font-size:1.02rem}
.how-process__timeline{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:0;padding:0;list-style:none}
.how-process__timeline::before{content:"";position:absolute;z-index:0;top:59px;right:8%;left:8%;height:2px;background:linear-gradient(90deg,var(--teal),#8cdedc);opacity:.65}
.how-process__timeline li{position:relative;z-index:1;display:grid;grid-template-columns:auto 1fr;gap:.8rem;align-content:start;min-height:345px;padding:1rem 1rem 1.25rem;border:1px solid #d4e2e7;border-radius:15px;background:rgba(255,255,255,.96);box-shadow:0 16px 40px rgba(9,47,74,.07);transition:transform .18s ease,border-color .18s ease}
.how-process__timeline li:hover{border-color:#93d8d7;transform:translateY(-5px)}
.how-process__number{grid-column:1/-1;color:#76909e;font:800 .72rem Montserrat,"Segoe UI",sans-serif;letter-spacing:.12em}
.how-process__icon{display:grid;width:54px;height:54px;place-items:center;border:1px solid #bee7e4;border-radius:13px;background:linear-gradient(145deg,#dff7f5,#f5fbfb);box-shadow:0 0 0 7px #fff}
.how-process__icon img{width:27px;height:27px;filter:invert(35%) sepia(80%) saturate(826%) hue-rotate(137deg) brightness(91%) contrast(91%)}
.how-process__timeline li>div{grid-column:1/-1;padding-top:.75rem}.how-process__timeline small{color:#0b8c93;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.how-process__timeline h3{margin:.45rem 0 .55rem;color:var(--navy);font-size:1.25rem}.how-process__timeline p{margin:0;color:var(--muted);font-size:.87rem}.how-process__timeline a{display:inline-flex;gap:.4rem;margin-top:1.1rem;color:#0a7580;font-size:.78rem;font-weight:850;text-decoration:none}
.how-assurance{background:#092f4a;color:#fff}.how-assurance header{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.how-assurance h2{margin:0}.how-assurance__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.how-assurance__grid article{display:grid;grid-template-columns:50px 1fr;gap:1rem;padding:1.35rem;border:1px solid rgba(255,255,255,.15);border-radius:13px;background:rgba(255,255,255,.055)}
.how-assurance__grid article>img{width:46px;height:46px;padding:11px;border-radius:11px;background:#dff7f5}
.how-assurance__grid h3{margin:.1rem 0 .35rem;font-size:1rem}.how-assurance__grid p{margin:0;color:#bbd2dc;font-size:.82rem}
@media(max-width:1000px){
  .how-hero__grid{grid-template-columns:1fr}.how-hero__copy{max-width:760px}.how-hero__visual{width:min(560px,100%);margin:auto}
  .how-process__timeline{grid-template-columns:1fr 1fr}.how-process__timeline::before{display:none}.how-process__timeline li{min-height:300px}
  .how-assurance__grid{grid-template-columns:1fr}
}
@media(max-width:650px){
  .how-hero__copy h1{font-size:clamp(2.5rem,12vw,3.5rem)}.how-hero__visual{min-height:390px;transform:scale(.88)}
  .how-hero__visual::before{width:340px;height:340px}.how-hero__visual::after{width:240px;height:240px}.how-hero__orbit{width:295px;height:295px}
  .how-hero__node{min-width:112px;padding:.55rem .65rem}.how-hero__node--one{left:-4%}.how-hero__node--two{right:-5%}.how-hero__node--three{right:-5%}.how-hero__node--four{left:-4%}
  .how-process__heading{grid-template-columns:1fr;gap:1rem}.how-process__timeline{grid-template-columns:1fr}.how-process__timeline li{min-height:0}.how-assurance header{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){.how-hero__orbit{animation:none}}
