*{box-sizing:border-box}body{margin:0;background:#e9f7fc;color:#143d50;font:17px/1.7 Arial,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%}header{background:white;border-bottom:5px solid #ffcf32}.nav{max-width:1120px;padding:18px 28px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{width:240px;display:block}nav{display:flex;gap:28px;align-items:center;font-size:15px;font-weight:bold}.button{display:inline-block;background:#ffcf32;border:1px solid #e7b000;border-radius:7px;padding:14px 24px;font-weight:bold;box-shadow:0 4px 0 #c99a0b;color:#143d50;transition:transform .18s,background .18s}.button:hover{background:#ffdb59;transform:translateY(-2px)}a:focus-visible{outline:3px solid #0785a8;outline-offset:5px}.wrap{max-width:1120px;padding:0 28px;margin:auto}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center;padding-top:58px;padding-bottom:62px}.eyebrow{font-size:12px;font-weight:bold;letter-spacing:1.3px;color:#0785a8;text-transform:uppercase}.hero .eyebrow{display:inline-block;background:#fff0ae;border-radius:4px;padding:6px 12px}h1{font-size:clamp(38px,4.1vw,56px);letter-spacing:-1.8px;line-height:1.12;margin:22px 0}h1 em{font-style:normal;color:#0785a8;text-decoration:underline;text-decoration-color:#ffcf32;text-decoration-thickness:7px;text-underline-offset:7px}.hero p{font-size:18px;color:#456b7b;margin:26px 0}.hero small{display:block;font-size:13px;color:#527787;margin-top:17px}.herofigure{margin:0;background:white;border:2px solid #1694b1;border-radius:13px;overflow:hidden;box-shadow:5px 6px 0 #acdce766}.herofigure img{display:block;width:100%;height:360px;object-fit:cover}.herofigure figcaption{padding:17px 22px;font-size:16px;font-weight:bold}.herofigure span{color:#0785a8}.strip{background:white;border-top:1px solid #c6e0e8;border-bottom:1px solid #c6e0e8}.strip .wrap{display:flex;justify-content:space-between;gap:22px;padding-top:18px;padding-bottom:18px;font-size:14px;font-weight:bold;color:#32697e}.strip b{color:#0785a8;margin-right:7px}.section{padding-top:55px;padding-bottom:58px}.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:25px}h2{font-size:34px;line-height:1.2;letter-spacing:-1px;margin:9px 0 12px}.sectionhead p{margin:0;color:#456b7b;max-width:600px}.textlink{color:#087c9e;font-weight:bold;font-size:15px;white-space:nowrap}.articles{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.article{display:flex;flex-direction:column;background:white;border:1px solid #bfdce7;border-radius:11px;overflow:hidden;box-shadow:0 4px 14px #143d5005;transition:transform .18s,box-shadow .18s}.article:hover{transform:translateY(-4px);box-shadow:0 8px 22px #143d5010}.article img{width:100%;height:185px;object-fit:cover;display:block}.articlebody{padding:22px;display:flex;flex-direction:column;flex:1}.category{font-size:11px;font-weight:bold;letter-spacing:1px;text-transform:uppercase;color:#0785a8}.article h3{font-size:21px;line-height:1.3;letter-spacing:-.4px;margin:10px 0 12px}.article p{font-size:15px;color:#456b7b;margin:0 0 22px}.article .textlink{margin-top:auto}.aboutband{background:#fffef8;border-top:1px solid #e9dfb8;border-bottom:1px solid #e9dfb8}.aboutgrid{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:45px;padding-bottom:45px;align-items:center}.aboutgrid p{color:#456b7b}.steps{display:grid;gap:20px}.step{display:flex;gap:18px;align-items:start}.step b{border-radius:50%;background:#ffcf32;flex-shrink:0;width:34px;height:34px;display:grid;place-items:center}.step strong{font-size:18px}.step p{font-size:15px;margin:3px 0 0}.closing{text-align:center;padding:48px 24px;background:white;border:2px solid #1694b1;border-radius:12px;box-shadow:4px 5px 0 #acdce744}.closing p{color:#456b7b;margin:13px auto 24px;max-width:540px}.disclosure{font-size:12px;color:#567583;max-width:850px;margin:26px auto 0;text-align:center}footer{background:white;border-top:1px solid #c6e0e8}.foot{padding-top:28px;padding-bottom:28px;display:flex;justify-content:space-between;gap:25px;font-size:13px;color:#567583}.footlinks{display:flex;gap:22px}.articlepage{max-width:790px;margin:40px auto 60px;padding:0 25px}.articlepage h1{font-size:44px}.articlepage .cover{width:100%;height:330px;object-fit:cover;border-radius:12px;margin:20px 0}.articlepage .body{background:white;border:1px solid #bfdce7;border-radius:12px;padding:32px}.articlepage h2{font-size:25px;margin-top:32px}.articlepage p{color:#456b7b}.articlepage .closing{margin-top:30px}.byline{font-size:13px;color:#567583}@media(max-width:760px){.nav{padding:15px 20px}.logo{width:195px}nav{gap:16px}nav .button{display:none}.hero{grid-template-columns:1fr;padding-top:34px;gap:25px}.herofigure img{height:280px}.hero h1{font-size:42px}.wrap{padding-left:22px;padding-right:22px}.strip .wrap{flex-wrap:wrap;justify-content:center;font-size:12px}.articles{grid-template-columns:1fr}.article{display:grid;grid-template-columns:120px 1fr}.article img{height:100%;min-height:180px}.articlebody{padding:17px}.article h3{font-size:19px}.article p{font-size:14px}.aboutgrid{grid-template-columns:1fr;gap:25px}.sectionhead{display:block}.sectionhead>.textlink{display:inline-block;margin-top:14px}h2{font-size:29px}.foot{flex-direction:column}.articlepage h1{font-size:34px}.articlepage .body{padding:24px}.articlepage .cover{height:240px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* A more expressive, familiar editorial hero. */
.hero{gap:58px;padding-top:65px;padding-bottom:76px;grid-template-columns:1fr 1fr}.hero .eyebrow{background:none;padding:0;font-size:12px;letter-spacing:1.7px}.hero .eyebrow:before{content:'';display:inline-block;width:27px;height:3px;background:#ffcf32;margin-right:10px;vertical-align:middle}.hero h1{font-size:52px;line-height:1.14;letter-spacing:-2px;margin:22px 0 25px}.hero p{font-size:18px;line-height:1.8;margin-bottom:28px}.herofigure{position:relative;border:0;border-radius:18px 18px 5px 18px;overflow:visible;background:none;box-shadow:none;margin:0 0 23px}.herofigure:before{content:'';position:absolute;inset:18px -14px -17px 17px;border:2px solid #91cbd9;border-radius:18px;z-index:-1}.herofigure{isolation:isolate}.herofigure img{height:425px;object-position:center;border-radius:18px 18px 5px 18px}.herofigure figcaption{position:absolute;bottom:-31px;left:-25px;right:32px;background:#ffcf32;padding:20px 25px;border-radius:4px 4px 15px 4px;box-shadow:0 5px 0 #d8aa1a;color:#143d50}.herofigure .photokicker{display:block;font:700 11px/1.4 Arial;text-transform:uppercase;letter-spacing:1px;color:#46626b;margin-bottom:7px}.herofigure strong{display:block;font:700 24px/1.2 Arial,sans-serif;letter-spacing:-.5px}.herofigure .photoline{position:absolute;right:24px;bottom:20px;color:#143d50;font:40px Georgia,serif}.hero .button{padding:16px 28px}
@media(max-width:760px){.hero{grid-template-columns:1fr;gap:35px;padding-top:35px;padding-bottom:68px}.hero h1{font-size:41px;letter-spacing:-1.5px}.herofigure{margin-left:12px;margin-right:9px}.herofigure img{height:320px}.herofigure figcaption{left:-12px;right:20px;padding:17px 20px}.herofigure strong{font-size:22px}.herofigure .photokicker{font-size:10px}.herofigure:before{right:-9px}.hero p{font-size:17px}}

.articlepage .closing{padding:32px 28px 36px;margin-top:30px}.articlepage .closing h2{margin:0 0 14px;font-size:27px;line-height:1.25;text-wrap:balance}.articlepage .closing p{max-width:510px;margin:0 auto 24px;line-height:1.7;text-wrap:balance}.articlepage .closing .button{margin:0}.articlepage .disclosure{margin-top:22px}@media(max-width:760px){.articlepage .closing{padding:28px 22px 32px}.articlepage .closing h2{font-size:25px}}
/* Phone layouts: comfortable reading and predictable wrapping. */
@media(max-width:760px){
.nav{padding:14px 18px;gap:16px}.logo{width:180px}nav{gap:18px;font-size:14px}
.hero h1,.articlepage h1,.article h3,.closing h2{text-wrap:balance}
p{text-wrap:pretty}.hero{padding-bottom:64px}.herofigure figcaption{right:14px}.herofigure strong{padding-right:25px}.herofigure .photoline{right:15px;font-size:31px}
.section{padding-top:40px;padding-bottom:42px}.articles{gap:22px}.article{display:flex}.article img{height:190px;min-height:0}.articlebody{padding:22px}.article h3{font-size:22px;line-height:1.3;margin:10px 0 13px}.article p{font-size:16px;line-height:1.7;margin-bottom:20px}.article .textlink{font-size:15px;padding:3px 0}
.aboutgrid{padding-top:36px;padding-bottom:36px}.closing{padding:30px 22px}.closing .eyebrow{font-size:11px}.closing p{margin-bottom:23px}.footlinks{flex-wrap:wrap;gap:12px 20px}
.articlepage{margin-top:30px;padding:0 20px;margin-bottom:40px}.articlepage h1{font-size:33px;line-height:1.16;letter-spacing:-1px;margin:17px 0 22px}.articlepage .cover{height:230px;margin:20px 0 23px}.articlepage .body{padding:23px 21px}.articlepage .body>p:first-child{margin-top:0}.articlepage .body>p:last-child{margin-bottom:0}.articlepage h2{font-size:24px;line-height:1.3;letter-spacing:-.6px;margin:28px 0 12px}.articlepage p{font-size:16px;line-height:1.8}.articlepage .closing{padding:28px 21px 32px}.articlepage .closing h2{margin-top:0}.articlepage .disclosure{font-size:12px;line-height:1.7}.byline{line-height:1.6}
}
@media(max-width:360px){.logo{width:155px}.nav{gap:10px;padding:13px 15px}nav{gap:13px;font-size:13px}.hero h1{font-size:36px}.herofigure .photokicker{font-size:9px}.herofigure strong{font-size:21px}.herofigure .photoline{font-size:27px}.articlepage h1{font-size:30px}.wrap{padding-left:20px;padding-right:20px}}

[hidden]{display:none!important}.libraryintro{max-width:680px;margin-bottom:30px}.libraryintro h1,.aboutintro h1{font-size:48px}.libraryintro p,.aboutintro>p{font-size:19px;color:#456b7b;max-width:720px}.topicfilters{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}.topicfilters button{cursor:pointer;background:white;border:1px solid #b6d5df;border-radius:24px;padding:10px 18px;color:#245e74;font:700 14px Arial;min-height:44px}.topicfilters button.selected{background:#ffcf32;border-color:#e4b21a;color:#143d50}.topicfilters button:focus-visible{outline:3px solid #0785a8;outline-offset:3px}.articlecount{font-size:13px;color:#567583;margin-top:24px}.aboutintro{padding-bottom:30px}.aboutstory{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.aboutstory img{width:100%;height:330px;object-fit:cover;border-radius:12px}.aboutstory p,.aboutvalues p{color:#456b7b}.aboutvalues{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-bottom:0}.aboutvalues article{background:white;border:1px solid #bfdce7;border-radius:11px;padding:25px}.aboutvalues h2{font-size:25px;margin-top:14px}.aboutvalues p{font-size:16px}.aboutvalues .eyebrow{font-size:10px}@media(max-width:760px){.libraryintro h1,.aboutintro h1{font-size:37px;text-wrap:balance}.libraryintro p,.aboutintro>p{font-size:17px}.topicfilters{gap:9px}.topicfilters button{font-size:13px;padding:10px 14px}.aboutstory{grid-template-columns:1fr;gap:22px}.aboutstory img{height:250px}.aboutvalues{grid-template-columns:1fr}.aboutvalues article{padding:24px}}

.contactpage{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.contactintro h1{font-size:48px}.contactintro>p{color:#456b7b;max-width:470px}.contactemail{font-size:16px;margin-top:29px}.contactemail a{color:#0785a8;font-weight:bold;overflow-wrap:anywhere}.contacthelp{margin-top:35px;border-top:1px solid #bfdce7;padding-top:23px}.contacthelp strong{font-size:16px}.contacthelp p{font-size:15px;color:#456b7b}.contactcard{background:white;border:1px solid #a5cedc;border-radius:12px;padding:30px;box-shadow:4px 5px 0 #acdce744}.contactcard h2{font-size:28px;margin-top:0}.contactcard>p{color:#456b7b;font-size:16px}.contactcard label{display:block;font-size:15px;font-weight:bold;margin:19px 0 8px}.contactcard input,.contactcard textarea{width:100%;border:1px solid #b8d5e0;border-radius:7px;background:#f4fbfe;color:#143d50;font:16px/1.6 Arial;padding:12px 14px}.contactcard textarea{resize:vertical;min-height:150px}.contactcard input:focus,.contactcard textarea:focus{outline:3px solid #0785a825;border-color:#0785a8}.contacthint,.contactpreview{font-size:12px;color:#567583;line-height:1.7}.contactcard .button{cursor:pointer;font:700 16px Arial;margin-top:12px;min-height:50px}.contactpreview{margin-top:24px;border-top:1px solid #deebf0;padding-top:16px}#contactstatus{font-size:14px;background:#fff2b9;padding:16px;border-radius:7px;margin-top:20px}@media(max-width:760px){.contactpage{grid-template-columns:1fr;gap:26px}.contactintro h1{font-size:38px}.contactcard{padding:24px 21px}.contacthelp{margin-top:24px}.contactemail{margin-top:22px}.contactcard .button{width:100%;text-align:center}}

.aboutintro>p{max-width:950px}.aboutstory h2{text-wrap:balance}@media(max-width:760px){.aboutdesktopbreak{display:none}}

.aboutvalues h2{text-wrap:balance}

@media(max-width:480px){.nav{gap:12px;padding:15px 16px}.nav .logo{width:145px}.nav nav{gap:12px;font-size:13px}}

/* Compact mobile navigation; links remain available if JavaScript is unavailable. */
.menu-toggle{display:none}
@media(max-width:900px){
 header .nav{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0;padding:16px 20px}
 header .nav>a{flex:0 1 auto}
 header .nav .logo{width:190px;max-width:54vw}
 .menu-ready header .menu-toggle{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border:1px solid #bddbe6;border-radius:6px;background:#fff;color:#143d50;font:700 16px Arial;cursor:pointer}
 header .menu-toggle:focus-visible{outline:3px solid #0785a8;outline-offset:3px}
 header .nav nav{display:flex;flex-direction:column;align-items:stretch;flex-basis:100%;gap:0;padding:12px 0 4px;margin-top:14px;border-top:1px solid #dcebf0;font-size:16px}
 .menu-ready header .nav nav{display:none}
 .menu-ready header .nav nav.is-open{display:flex}
 header .nav nav>a:not(.smallcta){display:block;padding:12px 8px}
 header .nav nav>a.button{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:10px;padding:14px 18px;min-height:50px;white-space:nowrap;width:100%}
}

@media(max-width:760px){
 .strip{padding-block:28px}
 .strip .wrap{display:grid;grid-template-columns:1fr;align-content:center;gap:16px;padding-top:0;padding-bottom:0;font-size:18px;line-height:1.5;text-align:left}
 .strip .wrap>span{margin:0;padding:0;min-height:0}
 .strip .wrap>span{display:flex;align-items:baseline;gap:12px}
 .strip .wrap b{flex:0 0 22px;margin:0;font-size:22px;line-height:1}
}
