:root{color-scheme:light;--paper:#f5f7f3;--ink:#122b32;--secondary:#51686d;--line:#cedbd6;--soft:#e7efea;--navy:#092832;--lime:#d5f57e;--white:#fff;font-family:'Space Grotesk',Arial,Helvetica,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:2rem}
body{margin:0;background:var(--paper);color:var(--ink);font-size:1rem;line-height:1.75}
button,input,select,textarea{font:inherit}
a{color:inherit;text-underline-offset:.3em;text-decoration-thickness:1px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #568103;outline-offset:5px}
.masthead a:focus-visible,.dark-section a:focus-visible,.footer a:focus-visible{outline-color:var(--lime)}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:500;line-height:1.12}
h1{font-size:clamp(3.25rem,7.2vw,7.25rem);letter-spacing:-.055em}
h2{font-size:clamp(2rem,3.4vw,3.5rem);letter-spacing:-.045em;max-width:25ch}
h3{font-size:clamp(1.2rem,1.9vw,1.55rem);letter-spacing:-.025em}
p{max-width:67ch}
img{display:block;max-width:100%;height:auto}
.wrap{width:100%;max-width:1380px;margin-inline:auto;padding-inline:clamp(1.25rem,5.5vw,5rem)}
.eyebrow{font-size:.8125rem;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;font-weight:600;margin-bottom:1.25rem}
.masthead{position:relative;isolation:isolate;background:var(--navy);color:var(--white);min-height:770px;display:flex;flex-direction:column}
.masthead-image{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%}
.masthead:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(100deg,#06232df0 0%,#06232dd5 32%,#06232d8c 58%,#06232d26 100%)}
.header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:1.75rem;border-bottom:1px solid #ffffff38}
.brand{display:flex;flex-direction:column;gap:.55rem;width:max-content;text-decoration:none;font-weight:700;font-size:1.875rem;line-height:1;letter-spacing:-.06em;flex-shrink:0}
.brand small{font-size:.75rem;font-weight:500;letter-spacing:.37em;line-height:1}
.nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:1rem 2rem;font-size:.875rem;font-weight:500}
.nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.nav a:hover{text-decoration:underline}
.nav .nav-cta{border:1px solid #ffffff80;padding:.65rem 1.125rem;background:#ffffff09}
.hero-copy{padding-block:4.5rem 3.25rem}
.hero-copy .eyebrow{color:#e1ece3}
.hero-copy h1{max-width:12ch}
.hero-copy h1 em{font-style:normal;color:var(--lime)}
.lead{font-size:1.125rem;line-height:1.75;margin-top:1.65rem;max-width:32rem;color:#f5f8ef}
.actions{display:flex;flex-wrap:wrap;gap:1rem 1.75rem;align-items:center;margin-top:1.75rem}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.85rem 1.35rem;background:var(--lime);color:var(--ink);border:1px solid var(--lime);border-radius:0;font-size:.875rem;font-weight:600;line-height:1.5;text-align:center;text-decoration:none}
.button:hover{background:#e1ffa2;border-color:#e1ffa2}
.textlink{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;font-weight:500;text-decoration:none;border-bottom:1px solid currentColor;padding-block:.55rem}
.textlink:hover{text-decoration:underline}
.hero-caption{margin-top:auto;display:flex;justify-content:space-between;gap:1rem;padding-block:1.25rem;color:#f2f6ed;font-size:.75rem;line-height:1.6}
.feature-band{background:var(--soft)}
.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;padding-block:2.25rem}
.feature-grid h2{font-size:1.7rem;font-weight:500;letter-spacing:-.035em;margin-bottom:.7rem;max-width:none}
.feature-grid h2 span{font-size:.75rem;letter-spacing:0;color:var(--secondary);vertical-align:middle;margin-right:.4rem}
.feature-grid p{font-size:.9375rem;line-height:1.75;color:var(--secondary)}
.project-summary{padding-top:2.5rem}
.project-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;margin:0;padding:0 0 1.75rem;border-bottom:1px solid var(--line)}
.project-facts dt{font-weight:600;font-size:.875rem;margin-bottom:.5rem}
.project-facts dd{margin:0;font-size:.875rem;line-height:1.75;color:var(--secondary)}
.section{padding-block:5rem;border-bottom:1px solid var(--line)}
.section h2+p,.section h2+div>p:first-child{margin-top:1.6rem}
.section>p:not(.eyebrow),.section .wrap>p:not(.eyebrow){margin-top:1.25rem}
.need-intro{max-width:57rem;margin-bottom:2rem}
.pillars,.gates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;margin-top:2.25rem}
.pillar{border-top:1px solid var(--line);padding-top:1.5rem}
.pillar p,.gates p{margin-top:.95rem;color:var(--secondary)}
.source-note{font-size:.8125rem;line-height:1.75}
.source-note a{font-weight:600}
.statusbox{border-left:3px solid #66852f;padding:1.2rem 1.5rem;background:var(--soft);margin-top:2rem;font-size:.9375rem;line-height:1.85;max-width:none}
.statusbox strong{font-weight:600}
.compact-section{padding-top:4rem}
.proposal-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:start;margin-top:2.3rem}
.proposal-layout p+p{margin-top:1.25rem}
.housing{margin:0}
.housing img{width:100%;max-height:510px;object-fit:cover;object-position:top}
.housing figcaption{font-size:.75rem;line-height:1.65;margin-top:.85rem;color:var(--secondary)}
.dark-section{background:var(--navy);color:var(--white);border-bottom:0}
.dark-section .eyebrow{color:var(--lime)}
.dark-section>div>p:not(.eyebrow){color:#dce8e0;max-width:65rem}
.dark-section .gates{gap:2.5rem}
.dark-section .gates article{border-top:1px solid #ffffff4a;padding-top:1.5rem}
.dark-section .gates h3{color:var(--white)}
.dark-section .gates p,.dark-section .note{color:#dce8e0}
.note{font-size:.8125rem;line-height:1.8;color:var(--secondary);margin-top:1.25rem}
.dark-section .note{border-top:1px solid #ffffff35;padding-top:1.25rem;margin-top:2rem}
.table-wrap{width:100%;margin-top:2.5rem}
.responsibilities{table-layout:fixed;width:100%;border-collapse:collapse;text-align:left;font-size:.9375rem}
.responsibilities th,.responsibilities td{vertical-align:top;padding:1.25rem 1.25rem 1.25rem 0;border-bottom:1px solid var(--line);line-height:1.8;overflow-wrap:anywhere}
.responsibilities th{font-size:.8125rem;font-weight:600;color:var(--secondary);border-bottom:2px solid var(--ink)}
.responsibilities th:first-child{width:20%}
.responsibilities td:first-child{font-weight:600}
.responsibilities th:last-child,.responsibilities td:last-child{padding-right:0}
.required-inputs{margin-block:2rem;padding:2rem;background:var(--soft)}
.required-inputs ul{padding-left:1.3rem;margin-block:1.25rem}
.required-inputs li{margin-block:.8rem}
.required-inputs strong{font-weight:600}
#discussion>.button{margin-top:.75rem}
#overview{padding-block:3.5rem 0}
.overview{padding:3rem;background:var(--navy);color:var(--white)}
.overview .eyebrow{color:var(--lime)}
.overview h2{font-size:clamp(2rem,3.5vw,3.35rem)}
.overview p{margin-top:1.5rem;color:#dce8e0;max-width:53rem}
.overview .actions>a[download]{min-height:44px;display:inline-flex;align-items:center;font-size:.875rem}
.enquiry{position:relative;display:grid;grid-template-columns:1.2fr 1fr;gap:3.5rem;align-items:start}
.enquiry>span{position:absolute;top:0;left:0;display:block;width:1px;height:1px}
.enquiry h2{font-size:clamp(2rem,3.5vw,3.2rem)}
.enquiry p{margin-top:1.25rem}
.contact-panel{padding:2rem;border-top:2px solid var(--ink);background:var(--soft)}
.contact-panel p{overflow-wrap:anywhere}
.contact-panel .contact-help{font-size:.8125rem;color:var(--secondary);margin-top:.8rem}
.sources{padding-block:3rem 4rem}
.sources h2{font-size:1.3rem;letter-spacing:-.025em}
.sources p{font-size:.8125rem;margin-top:.8rem;color:var(--secondary)}
.sources ol{padding-left:1.3rem;margin:1.2rem 0}
.sources li{font-size:.8125rem;margin-bottom:.75rem;overflow-wrap:anywhere;color:var(--secondary)}
.sources a{color:var(--ink)}
.footer{background:#061e26;color:#eaf2e8;padding-block:2.5rem}
.footer-top{display:flex;justify-content:space-between;align-items:center;gap:1.5rem}
.footer .brand{font-size:1.4rem;font-weight:500;letter-spacing:-.035em}
.footer-top>a:last-child{font-size:.875rem;min-height:44px;display:inline-flex;align-items:center}
.footer p{font-size:.8125rem;color:#b9ccc5;margin-top:1rem}
.skip{position:absolute;left:1rem;top:-10rem;z-index:10;background:var(--lime);color:var(--ink);padding:.75rem 1rem;text-decoration:none}
.skip:focus{top:1rem}
@media(min-width:1600px){.masthead{min-height:860px}.masthead-image{object-position:center 58%}}
@media(max-width:1000px){.nav{gap:.6rem 1.3rem}.hero-copy{padding-block:3.5rem 3rem}.masthead{min-height:710px}.feature-grid{gap:1.5rem}.feature-grid h2{font-size:1.4rem}.project-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.pillars,.gates{gap:1.6rem}.proposal-layout{gap:2rem}.enquiry{gap:2rem}}
@media(max-width:760px){
  .header{align-items:flex-start;gap:1.5rem;flex-direction:column;padding-block:1.5rem}
  .brand{font-size:1.65rem}
  .nav{width:100%;justify-content:flex-start;gap:.3rem 1.4rem}
  .nav .nav-cta{padding:.45rem .8rem}
  .masthead{min-height:0}
  .masthead-image{object-position:64% center}
  .masthead:after{background:linear-gradient(100deg,#06232df0,#06232dd4 50%,#06232d85)}
  .hero-copy{padding-block:2.75rem 3rem}
  h1{font-size:clamp(3.25rem,9.5vw,5.25rem);letter-spacing:-.05em}
  .lead{font-size:1.0625rem;max-width:30rem}
  .hero-caption{flex-direction:column;gap:.4rem;padding-bottom:1.5rem}
  .feature-grid{grid-template-columns:1fr;gap:0;padding-block:.5rem}
  .feature-grid article{padding-block:1.5rem;border-bottom:1px solid var(--line)}
  .feature-grid article:last-child{border:0}
  .feature-grid h2{font-size:1.6rem}
  .feature-grid p{font-size:1rem}
  .section{padding-block:3.5rem}
  h2{font-size:clamp(2rem,5.5vw,2.65rem);letter-spacing:-.035em}
  .pillars,.gates{grid-template-columns:1fr;gap:2rem;margin-top:2rem}
  .gates article{border-top:1px solid var(--line);padding-top:1.25rem}
  .proposal-layout{grid-template-columns:1fr;gap:2rem}
  .housing img{max-height:430px}
  .responsibilities thead{display:none}
  .responsibilities tr{display:block;padding-block:1rem;border-bottom:1px solid var(--line)}
  .responsibilities td{display:block;border:0;width:100%;padding:.5rem 0;font-size:1rem}
  .responsibilities td:first-child{font-size:1.2rem}
  .responsibilities td:nth-child(2):before{content:'Payment and ownership: ';font-weight:600}
  .responsibilities td:nth-child(3):before{content:'Operation and next decisions: ';font-weight:600}
  .required-inputs{padding:1.5rem}
  #overview{padding-block:3rem 0}
  .overview{padding:2rem 1.5rem}
  .enquiry{grid-template-columns:1fr;gap:2rem}
  .contact-panel{padding:1.5rem}
  .footer-top{align-items:flex-start;flex-direction:column;gap:1rem}
}
@media(max-width:430px){
  .nav{font-size:.8125rem;gap:.35rem 1rem}
  .nav .nav-cta{border:0;padding-inline:0;text-decoration:underline}
  h1{font-size:clamp(2.9rem,12vw,3.75rem)}
  .hero-copy .eyebrow{font-size:.75rem;letter-spacing:.09em}
  .hero-copy{padding-top:2.4rem}
  .actions{gap:.7rem 1.3rem}
  .button{font-size:.875rem;padding:.85rem 1.1rem}
  .project-facts{grid-template-columns:1fr;gap:1.5rem}
  .project-facts dd{font-size:1rem}
  .statusbox{padding:1rem 1.2rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
