/* Aqua Funding: shared institutional design, October 2026. */
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/source-sans-3-400.ttf') format('truetype')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/source-sans-3-600.ttf') format('truetype')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/source-sans-3-700.ttf') format('truetype')}
:root{--navy:#163A5F;--navy2:#163A5F;--blue:#245A81;--cyan:#245A81;--cyan2:#EEF4F8;--ink:#252D33;--muted:#46545E;--line:#BDC9D2;--bg:#F7F8F6;--white:#FFF;--shadow:none;--af-yellow:#F6C643;font-family:'Source Sans 3',Arial,sans-serif;color:var(--ink);background:var(--bg)}
*{box-sizing:border-box}body{margin:0;font-family:'Source Sans 3',Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:18px;line-height:1.6}button,input,select,textarea{font:inherit}img{max-width:100%}a{color:var(--blue);text-underline-offset:4px}p,li{overflow-wrap:break-word}button,a,input,select,textarea,summary{touch-action:manipulation}button,input,select{min-height:44px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}header a:focus-visible,header button:focus-visible{outline-color:var(--af-yellow)}
h1,h2,h3,h4{color:var(--navy);text-wrap:balance;overflow-wrap:break-word;letter-spacing:-.015em}h1{font-size:clamp(32px,4vw,44px);line-height:1.15}h2{font-size:32px;line-height:1.25}h3{font-size:24px;line-height:1.3}h4{font-size:20px;line-height:1.4}p{line-height:1.6}.lead{font-size:20px;line-height:1.5;color:var(--muted)}small,.meta,.crumb{font-size:14px;line-height:1.5;color:var(--muted)}.eyebrow{font-size:14px;line-height:1.5;letter-spacing:.08em;color:var(--blue);font-weight:600}
.site-header,.topbar.site-header{background:var(--navy);min-height:96px;padding:20px max(24px,calc((100vw - 1200px)/2));gap:24px;font-family:inherit;grid-template-columns:270px minmax(0,1fr) 100px}.site-header nav a{font-size:18px;font-weight:600}.site-header .language-toggle{border-radius:2px;min-height:44px;font:600 16px 'Source Sans 3',Arial,sans-serif;padding:8px 14px;border-color:#B9CBDC}.site-header .brand img{width:270px;height:62px;object-fit:contain}.site-footer{background:var(--navy);padding:32px max(24px,calc((100vw - 1200px)/2));font:16px/1.6 'Source Sans 3',Arial,sans-serif;gap:16px 32px}.site-footer a,.site-footer small,.site-footer .meta{color:#fff}
main#app{background:transparent;border:0;border-radius:0;box-shadow:none;max-width:1200px;padding:0 48px;margin:56px auto;min-height:60vh}#app>h1{max-width:800px;margin:16px 0 24px}#app>h1:after{content:'';display:block;width:48px;height:4px;background:var(--af-yellow);margin-top:24px}#app>p{max-width:740px}#app .grid{gap:24px;max-width:1000px;margin:40px 0}#app .choice{background:#fff;border:1px solid var(--line);border-radius:2px;padding:28px;min-height:132px;box-shadow:none;font-size:18px;color:var(--ink)}#app .choice b{font-size:24px;line-height:1.3;color:var(--navy)}#app .choice span{color:var(--muted);font-size:18px}#app .choice:hover,#app .choice[aria-pressed=true]{background:#EEF4F8;border-color:var(--blue);box-shadow:inset 4px 0 var(--blue)}#app .stack{gap:16px;max-width:740px;margin:32px 0}#app .stack .choice{min-height:64px;padding:20px 24px}#app .primary,#app .secondary{border-radius:2px;padding:14px 24px;line-height:1.4}#app .primary{background:var(--blue);border-color:var(--blue);color:white}#app .secondary{background:white;border-color:var(--blue);color:var(--blue)}#app .actions{gap:16px;margin-top:32px}#app .progress{max-width:740px;gap:8px}#app .progress .done{background:var(--blue)}#app .note{background:#E8ECEF;border-left:3px solid var(--blue);padding:24px;max-width:900px;font-size:18px;line-height:1.6}#app .warning{background:#FFF8E3;border-color:#866100;color:#493800}#app .result-top{background:white;border:1px solid var(--line);border-top:4px solid var(--blue);padding:32px;max-width:900px}#app article{border-radius:2px;background:#fff;padding:32px;margin:24px 0;max-width:900px;box-shadow:none}#app article h3{font-size:24px;line-height:1.3}#app .badge{display:inline-block;background:#E8ECEF;color:var(--navy);padding:4px 8px;font-size:16px;border-radius:2px}#app details{max-width:900px}#app summary{font-size:18px;padding:16px 0;min-height:44px}#app input,#app select{border-radius:2px;border-color:var(--line);padding:14px;max-width:100%;width:auto}#app label{font-size:18px}#app .row{gap:24px;align-items:baseline}#app .row b{overflow-wrap:anywhere}
/* Editorial and privacy pages use the same reading column and surfaces. */
body:has(main:not(#app)):not(:has(.admin-surface)) main{max-width:900px;padding:48px 24px 64px;margin:0 auto;border:0;box-shadow:none;border-radius:0;background:transparent}main:not(#app) article{border-radius:2px;border-color:var(--line);padding:32px;background:#fff;box-shadow:none}main:not(#app) .cta{background:var(--blue);border-radius:2px;padding:14px 24px;min-height:44px}main:not(#app) .highlight{background:#E8ECEF;border-radius:2px;color:var(--navy);gap:24px}main:not(#app) .highlight div{border-radius:2px}body:has(.highlight)>header{background:var(--navy);align-items:center}body:has(.highlight)>header .brand{color:white}main:not(#app) p,main:not(#app) li{font-size:18px;line-height:1.6}main:not(#app) h1:after{content:'';display:block;width:48px;height:4px;background:var(--af-yellow);margin-top:24px}
/* Admin: local styling does not change access or server actions. */
.admin-surface{font-family:'Source Sans 3',Arial,sans-serif;font-size:18px;line-height:1.6;color:var(--ink);background:var(--bg)}.admin-surface header{background:var(--navy);color:white}.admin-surface header h1,.admin-surface header h2{color:white}.admin-surface header a{color:white;text-decoration:none}.admin-surface header a:hover{text-decoration:underline}.admin-surface main{min-width:0}.admin-surface section,.admin-surface article{border-radius:2px;box-shadow:none;border-color:var(--line)}.admin-surface button,.admin-surface input,.admin-surface select,.admin-surface textarea{border-radius:2px;min-height:44px}.admin-surface input,.admin-surface select,.admin-surface textarea{font-size:18px}.admin-surface table{font-size:16px;line-height:1.5}.admin-surface th{background:#E8ECEF;color:var(--navy);font-weight:600}.admin-surface td,.admin-surface th{padding:16px;vertical-align:top}.admin-surface [class*="rounded-"]{border-radius:2px}.admin-surface [class*="shadow-"]{box-shadow:none}.admin-surface .text-sm{font-size:16px}.admin-surface .text-xs{font-size:14px}.admin-surface h1{font-size:32px}.admin-surface h2{font-size:24px}.admin-surface p{max-width:760px}
@media(max-width:850px){.site-header,.topbar.site-header{grid-template-columns:minmax(0,1fr) 100px;gap:16px}.site-header nav{grid-column:1/-1;grid-row:2;justify-content:flex-start}.site-header .top-actions{grid-column:2;grid-row:1}}
@media(max-width:600px){h2{font-size:28px}main#app{padding:0 20px;margin:32px auto;min-height:55vh}#app .grid{grid-template-columns:1fr;gap:16px;margin:32px 0}#app .choice{min-height:110px;padding:24px}#app article,#app .result-top{padding:24px}#app .note{padding:20px}#app .row{display:block}#app .row b{display:block;text-align:left;margin-top:8px}.site-header,.topbar.site-header{padding:16px 20px}.site-header .brand img{width:220px;height:54px}.site-header nav{gap:12px 20px}.site-footer{justify-content:flex-start;text-align:left;padding:32px 20px}body:has(main:not(#app)):not(:has(.admin-surface)) main{padding:32px 20px 48px}main:not(#app) article{padding:24px}.admin-surface header nav{gap:12px 20px}.admin-surface td,.admin-surface th{padding:12px}.admin-surface h1{font-size:28px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Form fields keep labels and focus outlines in separate rows at every width. */
label:has(> input:not([type="checkbox"]):not([type="radio"])),
label:has(> select),
label:has(> textarea) {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  margin-block: 24px;
}
label > input:not([type="checkbox"]):not([type="radio"]),
label > select,
label > textarea {
  display: block;
  width: min(100%, 28rem);
  min-width: 0;
  max-width: 100%;
  margin: 0;
}
label:has(> input[type="checkbox"]),
label:has(> input[type="radio"]) {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  line-height: 1.6;
}
label > input[type="checkbox"],
label > input[type="radio"] {
  flex: 0 0 auto;
  margin: 5px 0 0;
}
input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid #245A81;
  outline-offset: 3px;
  border-radius: 2px;
}

/* Summary is information; funding cards remain white. */
#app .result-top { background: #E8ECEF; border: 0; border-left: 4px solid #245A81; padding: 24px 28px; margin-block: 24px 32px; }
#app .result-top h2 { font-size: 24px; margin: 0 0 12px; }
#app .result-top p { margin: 8px 0; }
@media (max-width: 600px) { #app .result-top { padding: 20px; } }

/* Approved documentary image placements and compact grant navigation. */
.home-photo-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,40%);gap:28px;align-items:center;margin-bottom:32px}.home-photo-intro h1{font-size:clamp(30px,3vw,40px);margin:16px 0}.home-photo-intro h1:after{content:'';display:block;width:48px;height:4px;background:#F6C643;margin-top:20px}.home-photo-intro img{width:100%;height:300px;object-fit:cover;object-position:55% 55%;border-radius:0}.waterfront-band{height:150px;overflow:hidden;background:#E8ECEF}.waterfront-band img{width:100%;height:100%;object-fit:cover;object-position:50% 54%}
#liveFundingSidebar{padding:16px}#liveFundingSidebar>details>summary{font-size:18px;line-height:1.35;text-wrap:wrap;margin:0;padding:8px 0;border:0}#liveFundingSidebar details{margin:0;padding:0;border:0}#liveFundingSidebar details>summary{font-size:16px;line-height:1.45;padding:6px 0;text-wrap:wrap;min-height:44px}#liveFundingSidebar li{padding:10px 0}#liveFundingSidebar p{font-size:15px;line-height:1.5;margin:8px 0}#liveFundingSidebar .funding-list-status{margin:2px 0;font-size:14px}#liveFundingSidebar .funding-list-help{margin:8px 0 12px}#liveFundingSidebar h3{font-size:17px}
@media(max-width:700px){.home-photo-intro{grid-template-columns:1fr;gap:20px}.home-photo-intro img{height:200px}.waterfront-band{height:100px}}
/* One persistent public navigation across directory, guides and privacy pages. */
.site-header,.topbar.site-header{position:sticky;top:0;z-index:100;height:auto}.site-header .top-actions select{width:100px;max-width:110px;background:var(--navy);color:white;border:1px solid #B9CBDC;border-radius:2px;padding:8px;font:600 16px 'Source Sans 3',Arial,sans-serif;min-height:44px}.site-header .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}html{scroll-padding-top:120px}#fundingList,#contractorList,#registration{scroll-margin-top:120px}@media(max-width:850px){html{scroll-padding-top:190px}#fundingList,#contractorList,#registration{scroll-margin-top:190px}}
.admin-directory-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start}.admin-directory-main{min-width:0;display:grid;gap:28px}.admin-country-summary{background:#fff;border:1px solid var(--line);padding:24px}.admin-country-summary h2{font-size:22px;margin:0 0 12px}.admin-country-summary p{font-size:14px;margin:0 0 18px}.admin-country-summary ul{list-style:none;padding:0;margin:0}.admin-country-summary li{display:flex;justify-content:space-between;gap:20px;padding:8px 0;border-bottom:1px solid var(--line);font-size:16px}.admin-country-summary li:last-child{border-bottom:0}@media(max-width:1000px){.admin-directory-grid{grid-template-columns:1fr}.admin-country-summary ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}}@media(max-width:500px){.admin-country-summary ul{grid-template-columns:1fr}}
/* Admin checkboxes align with their labels rather than inheriting text-field height. */
.admin-surface label:has(>input[type="checkbox"]),.admin-surface label:has(>input[type="radio"]){display:flex;align-items:center;gap:12px;min-height:44px;margin:0;line-height:1.4;padding:6px 0}.admin-surface label>input[type="checkbox"],.admin-surface label>input[type="radio"]{width:20px;height:20px;min-height:20px;max-height:20px;flex:0 0 20px;margin:0;padding:0;align-self:center;accent-color:var(--blue)}
.admin-country-summary li.admin-country-item{display:block}.admin-country-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:0;background:transparent;color:inherit;font:inherit;text-align:left;padding:6px 0;cursor:pointer}.admin-country-toggle:focus-visible{outline:2px solid #245A81;outline-offset:3px}.admin-country-toggle[aria-expanded=true]{font-weight:700}.admin-country-summary ul.admin-country-contractors{display:block;margin:8px 0 4px;padding-left:12px;border-left:2px solid #163A5F}.admin-country-summary .admin-country-contractors li{display:block;font-size:14px;padding:10px 0;overflow-wrap:anywhere}.admin-country-contractors a{color:#245A81;text-decoration:underline}.admin-country-contractors small{display:block;margin-top:3px;color:#46545E}
.site-footer{display:flex;align-items:flex-start;justify-content:space-between;gap:32px 64px;border-top:3px solid var(--af-yellow);color:#fff}.footer-company{flex:1 1 320px;min-width:0}.footer-company p{margin:0;color:#fff}.footer-owner-label{font-size:15px;line-height:1.5}.footer-company strong{display:block;margin:4px 0 8px;font-size:24px;font-weight:700;line-height:1.3}.footer-registration{font-size:14px}.footer-contact{display:inline-block;margin-top:12px;font-size:16px;overflow-wrap:anywhere}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:0}.footer-links a{font-size:16px;text-decoration:none}.footer-links a:hover{text-decoration:underline}.site-footer a:focus-visible{outline:2px solid #fff;outline-offset:4px}@media(max-width:600px){.site-footer{flex-direction:column;gap:24px}.footer-company{flex-basis:auto}}
/* Keep the operator details aligned as one block on every screen size. */
.site-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;text-align:left;align-items:start}.site-footer .footer-company{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;text-align:left;gap:0;width:100%;min-width:0}.site-footer .footer-company>p,.site-footer .footer-company>strong,.site-footer .footer-company>a{display:block;position:static;float:none;align-self:flex-start;text-align:left;width:auto;max-width:100%;padding:0}.site-footer .footer-company>.footer-owner-label{margin:0 0 6px;font-size:15px}.site-footer .footer-company>strong{margin:0 0 10px;font-size:24px}.site-footer .footer-company>.footer-registration{margin:0;font-size:14px;line-height:1.6}.site-footer .footer-company>.footer-contact{margin:12px 0 0;font-size:16px}.site-footer .footer-links{width:auto;justify-content:flex-start;align-items:flex-start;text-align:left}@media(max-width:600px){.site-footer{grid-template-columns:minmax(0,1fr);gap:24px}.site-footer .footer-company>strong{font-size:22px}}
.site-header nav a[href^="/register"]{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border:1px solid #fff;border-radius:2px;text-align:center;line-height:1.3}.site-header nav{align-items:center}.site-header nav a[href^="/register"]:hover{background:#fff;color:var(--navy)}.site-header nav a[href^="/register"]::after{display:none}
/* Contractor registration is a separate action, outside the browsing menu. */
.site-header,.topbar.site-header{grid-template-columns:220px minmax(0,1fr) auto 100px;gap:20px}.site-header .brand img{width:220px}.site-header .contractor-register-cta{display:inline-flex;align-items:center;justify-content:center;max-width:230px;min-height:44px;padding:10px 16px;border:1px solid #fff;border-radius:2px;color:#fff;font:600 16px/1.35 'Source Sans 3',Arial,sans-serif;text-align:center;text-decoration:none}.site-header .contractor-register-cta:hover{color:var(--navy);background:#fff}@media(max-width:1100px){.site-header,.topbar.site-header{grid-template-columns:minmax(0,1fr) auto 100px}.site-header nav{grid-row:2;grid-column:1/-1;justify-content:flex-start}.site-header .contractor-register-cta{grid-row:1;grid-column:2}.site-header .top-actions{grid-row:1;grid-column:3}}@media(max-width:600px){.site-header,.topbar.site-header{grid-template-columns:minmax(0,1fr) 100px;gap:16px}.site-header .brand{grid-row:1;grid-column:1}.site-header .top-actions{grid-row:1;grid-column:2}.site-header nav{grid-row:2;grid-column:1/-1}.site-header .contractor-register-cta{grid-row:3;grid-column:1/-1;justify-self:start;max-width:100%;margin-top:4px}}
/* The operator is a discreet legal footnote, not a second brand heading. */
.site-footer{padding-top:24px;padding-bottom:24px;gap:24px 48px}.site-footer .footer-company{display:block}.site-footer .footer-company>.footer-owner-label{display:inline;margin:0;font-size:13px;line-height:1.6;font-weight:400;color:#d5dfe8}.site-footer .footer-company>strong{display:inline;margin:0 0 0 4px;font-size:13px;line-height:1.6;font-weight:400;color:#d5dfe8}.site-footer .footer-company>.footer-registration{margin:4px 0 0;font-size:12px;line-height:1.6;color:#d5dfe8}.site-footer .footer-company>.footer-contact{margin:8px 0 0;font-size:13px;line-height:1.6;color:#fff}.site-footer .footer-links{gap:8px}.site-footer .footer-links a{font-size:14px;font-weight:400}
