@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Plus+Jakarta+Sans:wght@300;400;500;600&display=swap');
:root{--ink:#1c2332;--gold:#e4a63d;--muted:#657080}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fafbfc;color:var(--ink);font:18px/1.65 'Plus Jakarta Sans',sans-serif}a{color:inherit}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;line-height:1.12}header{position:absolute;z-index:10;top:0;left:0;right:0;color:var(--ink)}.home header{color:#fff}nav{max-width:1110px;margin:auto;min-height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 20px}.brand{font:25px Georgia,serif;letter-spacing:.04em;text-decoration:none}.navlinks{display:flex;gap:34px}.navlinks a{text-decoration:none;font-size:15px;opacity:.76}.navlinks a:hover,.navlinks .active{opacity:1;border-bottom:1px solid var(--gold)}#menu{display:none;background:none;border:0;color:inherit;font-size:28px}.hero{height:min(940px,100vh);min-height:650px;background:linear-gradient(0deg,rgba(23,29,43,.9),rgba(23,29,43,.55)),url('/assets/hero.webp') center/cover;position:relative;color:#fff}.hero-copy{position:absolute;bottom:10%;left:max(calc((100vw - 1110px)/2),6%)}.hero h1{font-size:clamp(70px,9vw,125px);margin:0;line-height:1.04;letter-spacing:-.04em}.hero em{color:#ffae2f;font-weight:400}.down{position:absolute;bottom:25px;left:50%;color:#aab0b9}.intro{padding:150px 20px 160px;min-height:700px}.intro>div{max-width:480px;margin:auto}.intro h2{font-size:clamp(38px,4vw,52px);margin:0 0 30px}.intro p,.prose p{color:var(--muted);line-height:1.75}.program-grid{background:var(--ink);color:#fff;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:150px max(calc((100vw - 1110px)/2),6%) 170px}.program{text-decoration:none;border-right:1px solid #39404d;padding-right:40px;display:flex;flex-direction:column}.program:last-child{border:0}.program img{width:100%;height:190px;object-fit:contain;background:white}.program h3{font-size:30px;margin:32px 0 12px}.program p{color:#969ba5;margin:0 0 48px}.program span{color:var(--gold);margin-top:auto;font-size:15px}.page-hero{background:var(--ink);color:white;text-align:center;padding:165px 20px 95px}.page-hero h1{font-size:clamp(50px,7vw,90px);margin:0 0 20px}.page-hero p{color:#c6cad2;max-width:640px;margin:0 auto}.notice{color:var(--gold);font-size:15px}.prose{max-width:790px;margin:0 auto;padding:90px 24px 150px}.prose h2{font-size:42px;margin:70px 0 22px}.prose h2:first-child{margin-top:0}.prose h3{font-size:28px}.prose li{margin:15px 0}.action{display:inline-block;border:1px solid var(--gold);padding:12px 17px;text-decoration:none;color:var(--ink);font-size:15px;margin:8px 10px 8px 0}.winner-grid{max-width:1120px;margin:0 auto;padding:90px 20px 150px;display:grid;grid-template-columns:repeat(3,1fr);gap:45px 28px}.winner{background:#fff;box-shadow:0 4px 25px #1c23320c}.winner img{width:100%;height:360px;object-fit:cover}.winner>div{padding:20px 24px 30px}.winner h3{font-size:28px;margin:10px 0}.winner p{color:var(--muted);font-size:15px;margin:0}.year,.overline{font-size:12px;letter-spacing:.22em;color:var(--gold)}.contact-grid{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:90px 20px 150px}.contact{padding:40px;background:white}.contact h2{font-size:42px}.contact>a{color:var(--muted)}.social{display:flex;flex-wrap:wrap;gap:16px}.social a{font-size:14px}.apply{max-width:760px;margin:90px auto 150px;padding:0 20px}.steps{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #ddd;padding-bottom:30px;color:var(--muted);font-size:14px}.apply p{margin-top:50px;color:var(--muted)}footer{background:var(--ink);color:#9298a4;padding:120px max(calc((100vw - 1110px)/2),6%) 35px}.footer-inner{display:flex;gap:140px;position:relative;min-height:230px}.footer-inner>div:not(.footer-word){display:flex;flex-direction:column;gap:12px;z-index:1}.footer-inner a{text-decoration:none}.footer-inner a:hover{color:#fff}.footer-word{font:italic clamp(70px,12vw,170px) Georgia,serif;color:#ffffff09;position:absolute;bottom:-85px;white-space:nowrap}.bottom{border-top:1px solid #39404d;padding-top:40px;font-size:14px;position:relative}
@media(max-width:750px){body{font-size:16px}nav{min-height:68px}.navlinks{display:none;position:absolute;top:68px;left:0;right:0;background:var(--ink);padding:24px;flex-direction:column;gap:18px;color:#fff}.navlinks.open{display:flex}#menu{display:block}.hero{min-height:650px;height:82vh;background-position:60% center}.hero-copy{left:6%;bottom:13%}.hero h1{font-size:clamp(54px,12vw,85px)}.intro{padding:90px 25px;min-height:0}.program-grid{grid-template-columns:1fr;padding:75px 25px;gap:50px}.program{border-right:0;border-bottom:1px solid #39404d;padding:0 0 45px}.program img{height:180px}.program p{margin-bottom:20px}.winner-grid{grid-template-columns:repeat(2,1fr);gap:18px}.winner img{height:250px}.contact-grid{grid-template-columns:1fr}.footer-inner{gap:60px}.footer-word{display:none}}@media(max-width:480px){.winner-grid{grid-template-columns:1fr}.winner img{height:380px}.steps{display:block}.steps span{display:block;padding:8px 0}.footer-inner{gap:45px}.page-hero{padding-top:125px}}
/* Match the original inner-page navigation and winner cards. */
.program{position:relative;isolation:isolate}
.program::before{content:"";position:absolute;inset:-40px 0 -40px -40px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.035);opacity:0;z-index:-1;pointer-events:none;transition:opacity .22s ease}
.program:hover::before,.program:focus-visible::before{opacity:1}
.program h3{transition:color .22s ease}
.program:hover h3,.program:focus-visible h3{color:#ffae2f}
@media (prefers-reduced-motion:reduce){.program::before,.program h3{transition:none}}
body:not(.home) header{position:relative;background:#f8fbfd;color:var(--ink)}
body:not(.home) .page-hero{padding:105px 20px 100px}
body:not(.home) .page-hero h1{font-size:clamp(55px,6vw,75px)}
.winner-grid{gap:24px;padding:95px 20px 140px}
.winner{display:block;width:100%;border:1px solid #e1e5eb;padding:0;background:#fff;text-align:left;cursor:pointer;box-shadow:none;color:var(--ink);font:inherit;transition:transform .2s,box-shadow .2s}
.winner:hover,.winner:focus-visible{transform:translateY(-3px);box-shadow:0 12px 32px #1c23321a;outline:none}
.winner img{height:430px;object-fit:cover}
.winner{transition:border-color .25s ease}
.winner:hover,.winner:focus-visible{transform:none;box-shadow:none;border-color:#f4a500;outline:none}
.winner-info strong{transition:color .25s ease}
.winner:hover .winner-info strong,.winner:focus-visible .winner-info strong{color:#ed8f00}
@media (prefers-reduced-motion:reduce){.winner,.winner-info strong{transition:none}}
.winner-info{display:flex;flex-direction:column;padding:27px 24px 26px;min-height:215px;font-size:14px;line-height:1.5;color:var(--muted)}
.winner-info strong{font:400 25px/1.2 'Cormorant Garamond',Georgia,serif;color:var(--ink);margin:8px 0}
.winner-info .year{color:var(--gold)}
.winner-info .excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin-top:14px;white-space:normal}
#winner-dialog{border:0;padding:0;width:min(950px,calc(100vw - 32px));max-height:calc(100vh - 40px);color:var(--ink);box-shadow:0 20px 70px #0005}
#winner-dialog::backdrop{background:#111927bb}
.dialog-layout{display:grid;grid-template-columns:38% 1fr;gap:35px;padding:45px}
.dialog-layout>img{width:100%;height:440px;object-fit:cover}
.dialog-layout h2{font-size:42px;margin:8px 0}
.dialog-layout p{color:var(--muted);line-height:1.65}
.dialog-layout #winner-bio{max-height:55vh;overflow:auto;padding-right:12px}
.dialog-close{position:sticky;top:12px;float:right;z-index:2;margin:12px 12px -52px 0;border:0;background:var(--ink);color:white;width:38px;height:38px;font-size:28px;cursor:pointer}
@media(max-width:750px){.winner img{height:280px}.winner-info{padding:18px;min-height:230px}.dialog-layout{grid-template-columns:1fr;padding:25px;gap:18px}.dialog-layout>img{height:260px}.dialog-layout h2{font-size:32px}.dialog-layout #winner-bio{max-height:none}}
#language-toggle{position:fixed;right:18px;bottom:18px;z-index:20;border:1px solid var(--gold);border-radius:50%;width:52px;height:52px;background:var(--ink);color:white;cursor:pointer;font:16px Georgia,serif}
.footer-social{display:flex;gap:14px}.footer-social a{display:grid;place-items:center;width:40px;height:40px;border:1px solid #59606b;border-radius:50%;text-decoration:none;color:white;font-size:17px}.bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}
.bottom{justify-content:flex-end}
.apply-hero{text-align:left!important}.apply-hero>*{max-width:1110px;margin-left:auto!important;margin-right:auto!important}.apply-hero h1{margin-top:20px!important}.apply{max-width:670px}.steps{display:flex;align-items:flex-start;margin-bottom:50px}.steps span{display:flex;align-items:center;flex-direction:column;gap:10px;color:#969ba5}.steps span.current{color:var(--ink)}.steps small{font-size:12px;text-transform:uppercase;letter-spacing:.12em;text-align:center}.apply label{display:block;margin:0 0 28px;color:var(--gold);font-size:12px;text-transform:uppercase;letter-spacing:.16em}.apply input,.apply select,.apply textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #aab1b9;padding:12px 0;color:var(--ink);font:18px 'Plus Jakarta Sans',sans-serif;outline:none;letter-spacing:normal;text-transform:none}.apply input:focus,.apply select:focus,.apply textarea:focus{border-color:var(--gold)}.form-actions{display:flex;justify-content:space-between;margin-top:38px}.form-actions button{border:0;background:var(--ink);color:white;padding:15px 27px;cursor:pointer;font:15px 'Plus Jakarta Sans',sans-serif}.form-actions button:first-child:not([hidden]){background:transparent;color:var(--muted);padding-left:0}.form-actions button:last-child{margin-left:auto}.form-note{font-size:14px;color:var(--muted)}[hidden]{display:none!important}
@media(max-width:480px){.bottom{align-items:flex-start;flex-direction:column}.footer-social{margin-top:20px}}
.notice-band{background:#f6a30a;text-align:center;color:var(--ink);font:30px 'Cormorant Garamond',serif;padding:17px 20px}
.prose{padding:105px 24px 115px;max-width:755px}
.prose h2{font-size:48px;margin:0 0 35px}.prose p{margin:24px 0;color:#4f5867}
.apply-section{text-align:center;padding:100px 0 120px}.apply-section .prose{padding:0 24px}.apply-section h2{max-width:460px;margin:0 auto 45px}.apply-section .action:first-child,.donate-section .action{background:#f6a30a;border-color:#f6a30a}.apply-section .action{min-width:260px;text-align:center;padding:18px}
.donate-section{background:var(--ink);color:white;text-align:center;padding:90px 0 105px}.donate-section .prose{padding:0 24px}.donate-section .prose p{color:#9ca4b2}.donate-section .prose p:last-child{font-size:15px;font-style:italic}.donate-section .action{color:var(--ink)}
.benefits-section{background:var(--ink);color:white;padding:100px 20px 115px}.wide{max-width:1090px;margin:auto}.benefits-section h2{font-size:50px;margin:0 0 50px}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.benefit{border:1px solid #39404d;padding:45px 32px}.benefit:before{content:'✧';color:var(--gold);font-size:30px}.benefit h3{font-size:27px;margin:25px 0 15px}.benefit p{color:#9ca4b2;margin:0}.requirements li{list-style:none;position:relative;padding-left:38px}.requirements li:before{content:'✓';position:absolute;left:0;top:1px;color:var(--gold);background:#fbf0db;border-radius:50%;width:23px;height:23px;text-align:center;font-size:15px}
.benefits-section{background:#171e2d;padding:62px 20px 115px}.benefits-section .wide{max-width:1296px}.benefits-section h2{font-size:clamp(38px,4vw,58px);margin:0 0 62px}.benefit-grid{gap:38px}.benefit{min-height:340px;padding:40px 38px;border-color:#353d4d;transition:border-color .22s ease,background-color .22s ease}.benefit:before{content:none}.benefit-icon{width:34px;height:34px;color:#f4a500;display:block}.benefit h3{font-size:27px;line-height:1.3;margin:35px 0 20px}.benefit p{font-size:20px;line-height:1.7;color:#8290a6}.benefit:hover{border-color:#f4a500;background-color:rgba(255,255,255,.018)}
@media (prefers-reduced-motion:reduce){.benefit{transition:none}}
@media(max-width:750px){.benefit-grid{grid-template-columns:1fr}.benefit{padding:25px}.apply-section .action{min-width:0;width:100%}.prose,.apply-section{padding-top:70px;padding-bottom:75px}}
@media(max-width:750px){.benefits-section{padding:70px 20px}.benefits-section h2{margin-bottom:35px}.benefit-grid{gap:18px}.benefit{min-height:0;padding:28px}.benefit p{font-size:17px}}
.contact-grid{max-width:1336px;gap:38px;padding:115px 20px}.contact{min-height:276px;padding:38px;border:1px solid #d8dde5;background:transparent;transition:border-color .22s ease}.contact:hover{border-color:#f4a500}.contact-kind{display:flex;align-items:center;gap:14px;color:#ed9100;font-size:13px;letter-spacing:.2em;text-transform:uppercase}.contact-kind svg{width:24px;height:24px;flex:none}.contact-email{display:flex;align-items:center;gap:16px;margin:22px 0 28px;color:var(--ink)!important;text-decoration:none;font:27px/1.3 'Cormorant Garamond',Georgia,serif;overflow-wrap:anywhere}.contact-email span{color:#73849c;font:24px/1 sans-serif}.contact p{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#71829a;margin:0 0 15px}.social{gap:18px}.social a{display:grid;place-items:center;width:52px;height:52px;border:1px solid #d8dde5;border-radius:50%;color:#172034;text-decoration:none;font-size:21px;font-weight:600;transition:border-color .2s ease,color .2s ease}.social a:hover,.social a:focus-visible{border-color:#f4a500;color:#ed9100}
@media(max-width:750px){.contact-grid{padding:75px 20px;gap:22px}.contact{min-height:0;padding:28px}.contact-email{font-size:clamp(20px,5vw,27px)}}
@media(prefers-reduced-motion:reduce){.contact,.social a{transition:none}}
.social a svg{width:22px;height:22px;display:block}
.footer-social a svg{width:19px;height:19px;display:block}

.contact-email{width:fit-content;max-width:100%;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:5px;transition:color .2s ease,text-decoration-color .2s ease}
.contact-email span{transition:color .2s ease}
.contact-email:hover,.contact-email:focus-visible,.contact-email:active{color:#ed9100!important;text-decoration-color:currentColor}
.contact-email:hover span,.contact-email:focus-visible span,.contact-email:active span{color:#ed9100}
.contact-email:focus-visible{outline:2px solid #ed9100;outline-offset:5px}
.social a:active,.footer-social a:active{border-color:#f4a500;color:#ed9100;background:#f4a50018}
@media(prefers-reduced-motion:reduce){.contact-email,.contact-email span{transition:none}}

/* Phone and small-tablet layout. Keep these after the desktop rules so they win. */
@media (max-width: 750px){
  body{font-size:16px}
  nav{min-height:66px;padding:0 20px}
  #menu{display:block;min-width:44px;min-height:44px;padding:0;font-size:28px;line-height:1;cursor:pointer}
  .navlinks{top:66px;z-index:30;width:100%;padding:18px 24px 24px;box-shadow:0 14px 24px #10162433}
  .navlinks a{display:block;padding:7px 0;font-size:16px}
  .hero{height:82svh;min-height:520px;max-height:780px;background-position:62% center}
  .hero-copy{left:20px;right:20px;bottom:12%}
  .hero h1{font-size:clamp(46px,11vw,80px);overflow-wrap:anywhere}
  .intro{padding:78px 24px;min-height:0}
  .program-grid{grid-template-columns:1fr;gap:0;padding:56px 24px 68px}
  .program{padding:28px 0 34px;border-right:0;border-bottom:1px solid #39404d}
  .program:last-child{border-bottom:0}
  .program::before{inset:0 -12px}
  .program img{height:180px}
  .program h3{margin-top:22px}
  .program p{margin-bottom:20px}
  body:not(.home) .page-hero{padding:70px 22px 65px}
  body:not(.home) .page-hero h1{font-size:clamp(43px,9vw,64px)}
  .page-hero p{font-size:16px}
  .prose{padding:70px 22px 80px}
  .prose h2{font-size:clamp(36px,8vw,44px);margin-bottom:22px}
  .prose h3{font-size:26px}
  .notice-band{font-size:24px}
  .benefits-section{padding:65px 22px 75px}
  .benefits-section h2{font-size:clamp(36px,8vw,46px)}
  .benefit-grid{grid-template-columns:1fr;gap:16px}
  .benefit{min-height:0;padding:28px}
  .benefit h3{margin:22px 0 12px}
  .benefit p{font-size:17px}
  .apply-section,.donate-section{padding:72px 0 82px}
  .apply-section .action{width:100%;min-width:0}
  .winner-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:58px 20px 85px}
  .winner img{height:290px}
  .winner-info{min-height:0;padding:18px}
  .contact-grid{grid-template-columns:1fr;gap:20px;padding:68px 20px 85px}
  .contact{min-height:0;padding:28px}
  .contact-email{font-size:clamp(21px,4vw,27px)}
  .apply{margin:70px auto 90px;padding:0 22px}
  .steps{display:flex;gap:8px;padding-bottom:20px;margin-bottom:35px}
  .steps span{display:flex;flex:1;min-width:0;text-align:center}
  .steps small{font-size:12px;line-height:1.35;letter-spacing:.04em}
  .apply input,.apply select,.apply textarea{font-size:16px}
  footer{padding:75px 24px 26px}
  .footer-inner{gap:24px;min-height:0;margin-bottom:55px}
  .footer-inner>div{min-width:0;flex:1}
  .footer-inner a{overflow-wrap:anywhere}
  .bottom{padding-top:25px}
  #language-toggle{width:46px;height:46px;right:12px;bottom:12px}
}
@media (max-width: 600px){
  .winner-grid{grid-template-columns:1fr;max-width:460px}
  .winner img{height:clamp(280px,90vw,390px)}
  #winner-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);margin:auto}
  .dialog-layout{grid-template-columns:1fr;gap:16px;padding:18px}
  .dialog-layout>img{height:min(70vw,300px)}
  .dialog-layout h2{font-size:34px}
  .dialog-layout #winner-bio{max-height:none;overflow:visible;padding-right:0}
  .dialog-close{top:8px;margin:8px 8px -46px 0}
}
@media (max-width: 380px){
  .hero h1{font-size:clamp(40px,10vw,52px)}
  .footer-inner{gap:18px}
  .contact{padding:22px}
  .contact-email{gap:10px;font-size:20px}
  .social{gap:10px}
  .social a{width:46px;height:46px}
}
