/* WordPress theme reference: map these tokens to theme.json. */
:root{--ink:#123e50;--muted:#50646b;--teal:#146b76;--seafoam:#d7e8df;--cream:#f7f5ee;--paper:#fffefa;--line:#cbd6cf;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.7}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;object-fit:cover}figure,p{margin:0}p+p{margin-top:18px}h1,h2,h3{margin:0;font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.055em;line-height:1.08}h1{font-size:clamp(49px,4.6vw,78px)}h2{font-size:clamp(38px,3.65vw,56px)}h3{font-size:23px;line-height:1.25;font-weight:600;letter-spacing:-.025em}em{font-weight:400;color:var(--teal)}.wrap{max-width:1280px;width:calc(100% - 112px);margin-inline:auto}.section{padding-block:106px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:11px;font-weight:700;margin-bottom:25px;line-height:1.5}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:52px;padding:13px 24px;background:var(--ink);color:white;border:1px solid var(--ink);font-size:13px;font-weight:600;border-radius:3px;line-height:1.5;transition:background .2s,transform .2s}.button:hover{background:var(--teal);transform:translateY(-2px)}.button span{font-size:20px;font-weight:400}.button-small{font-size:12px;min-height:45px;padding:9px 17px;gap:16px}.text-link{display:inline-flex;align-items:center;gap:22px;font-size:13px;font-weight:600;background:none;padding:8px 0;border:0;border-bottom:1px solid currentColor;border-radius:0;color:var(--ink);line-height:1.6}.text-link:hover{color:var(--teal)}.text-link span{font-size:20px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b86e1e;outline-offset:5px}.skip{position:fixed;top:-100px;left:15px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.topline{background:var(--ink);color:#e5ede7;text-align:center;font-size:10px;letter-spacing:.14em;padding:8px 15px}.site-header{background:var(--paper);border-bottom:1px solid #e3e5de}.header-inner{display:flex;gap:30px;align-items:center;justify-content:space-between;min-height:116px}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}.brand img{width:76px;height:76px;border-radius:50%;mix-blend-mode:multiply}.brand>span{font-family:var(--serif);font-size:23px;line-height:1.02;letter-spacing:-.04em}.brand small{display:block;font-family:var(--sans);font-size:8px;letter-spacing:.035em;line-height:1.5;margin-top:8px}.header-inner nav{display:flex;align-items:center;gap:25px;font-size:12px;font-weight:600}.header-inner nav a:hover,.nav-contact:hover{text-decoration:underline;text-underline-offset:6px}.nav-contact{padding:0;border:0;background:none;color:inherit;font-size:inherit;font-weight:inherit}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:668px;background:var(--cream)}.hero-copy{padding:68px 40px 40px max(56px,calc((100vw - 1280px)/2));align-self:center}.hero .eyebrow{font-size:10px;display:flex;align-items:center;gap:13px;margin-bottom:25px}.tiny-wave{font-family:var(--serif);font-size:30px;font-weight:400;line-height:1}.hero-intro{margin-top:28px!important;max-width:390px;font-size:18px;line-height:1.7}.hero-copy>p:not(.eyebrow):not(.hero-intro){color:var(--muted);font-size:14px;max-width:375px;margin-top:16px}.actions{display:flex;align-items:center;gap:26px;margin-top:30px;flex-wrap:wrap}.actions .text-link{font-size:12px}.hero-footnote{display:flex;gap:13px;align-items:center;font-size:10px;letter-spacing:.06em;margin-top:43px;color:var(--muted)}.line{height:1px;background:#7e9d96;width:35px}.hero-image{position:relative;overflow:hidden;min-height:668px}.hero-image>img{width:100%;height:100%;position:absolute;inset:0;object-position:49% center}.hero-image:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#123e5059)}.hero-image figcaption{position:absolute;bottom:40px;left:36px;right:36px;z-index:1;display:flex;gap:17px;align-items:center;color:white;font-size:21px;line-height:1.5;text-shadow:0 1px 8px #123e50}.hero-image figcaption strong{font-weight:400;font-family:var(--serif);font-size:29px}.caption-marker{display:grid;place-items:center;width:49px;height:49px;border:1px solid #ffffff9c;border-radius:50%;font-size:26px;flex-shrink:0}.image-label{position:absolute;top:27px;right:25px;background:var(--paper);padding:8px 13px;font-size:9px;letter-spacing:.07em}.mission-ribbon{background:var(--seafoam);display:flex;justify-content:center;gap:60px;align-items:center;min-height:90px;font-family:var(--serif);font-size:24px;letter-spacing:-.025em}.ribbon-wave{font-size:35px;color:var(--teal)}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about-copy{max-width:510px;padding-top:7px;font-size:14px;color:var(--muted)}.lead{font-size:21px;line-height:1.65;color:var(--ink)}.about-copy .text-link{margin-top:23px}.work-section{background:#edf1e9;padding:80px 0}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:82px;align-items:center}.work-image{position:relative;padding-bottom:25px}.work-image img{height:550px;width:100%;object-position:center;border-radius:180px 180px 3px 3px}.work-image figcaption{font-size:11px;margin-top:16px;letter-spacing:.03em;color:var(--muted)}.work-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);margin:25px 0 19px;max-width:440px}.focus-row{display:flex;gap:20px;padding:19px 0;border-bottom:1px solid var(--line)}.focus-number{font-size:11px;color:var(--teal);padding-top:3px}.focus-row h3{font-size:17px;margin-bottom:6px}.focus-row p{font-size:13px;color:var(--muted);max-width:370px}.work-copy>.text-link{margin-top:22px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:45px}.section-heading>p{max-width:310px;font-size:14px;color:var(--muted);padding-bottom:6px}.ways-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.way{padding:32px 32px 33px 0;display:flex;align-items:flex-start;flex-direction:column}.way+.way{border-left:1px solid var(--line);padding-left:32px}.way-top{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:28px}.way-icon{width:48px;height:48px;border-radius:50%;background:#eaf0e7;display:grid;place-items:center;font-size:32px;font-family:var(--serif);line-height:1}.way-index{font-size:10px;color:var(--muted)}.way p{font-size:14px;color:var(--muted);margin:16px 0 23px;max-width:300px}.way .text-link{margin-top:auto;font-size:12px}.newsletter{background:var(--ink);color:var(--paper);position:relative;overflow:hidden}.newsletter-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;position:relative;z-index:1;padding-block:75px}.newsletter .eyebrow{color:#c5dfd5;margin-bottom:20px}.newsletter h2 em{color:#b9dcd2}.newsletter-inner>div>p:last-child{font-size:14px;color:#d0deda;max-width:360px;margin-top:22px}.newsletter form label{display:block;font-size:12px;margin-bottom:12px}.email-row{display:flex;gap:10px}.email-row input{min-width:0;flex:1;border:1px solid #769394;background:#ffffff0a;color:white;border-radius:3px;padding:14px;font-size:14px;width:100%}.email-row input::placeholder{color:#c1cfce}.email-row .button{background:#d4e9dd;color:var(--ink);border-color:#d4e9dd}.email-row .button:hover{background:#f4f8ef}.form-note{font-size:10px;color:#c3d5d1;margin-top:13px}.form-status{font-size:13px;color:#e0f4d8;margin-top:15px}.newsletter-wave{position:absolute;right:-20px;bottom:-150px;font-family:var(--serif);font-size:450px;line-height:1;color:#ffffff04;pointer-events:none}footer{background:var(--cream)}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-block:55px}.footer-brand img{width:84px;height:84px}.footer-message{font-family:var(--serif);font-size:25px;line-height:1.35;letter-spacing:-.03em}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:10px 36px;font-size:12px}.footer-links button{padding:0;background:none;border:0;text-align:left;color:inherit;font-size:inherit}.footer-links a:hover,.footer-links button:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;padding-block:20px;color:var(--muted);font-size:9px}.footer-bottom p{margin:0}.footer-bottom a{white-space:nowrap}dialog{border:0;border-radius:8px;background:var(--cream);color:var(--ink);padding:45px;width:min(550px,calc(100% - 32px));max-height:90vh}dialog::backdrop{background:#092c3fc7;backdrop-filter:blur(4px)}dialog h2{font-size:45px}dialog>p:not(.eyebrow){font-size:14px;margin-top:24px}dialog .button{margin-top:26px}.dialog-close{position:absolute;right:17px;top:10px;border:0;background:none;font-size:30px;color:var(--ink);width:40px;height:40px}.dialog-note{font-size:11px!important;color:var(--muted)}
@media(min-width:1600px){.hero-copy{padding-right:65px}.hero{min-height:740px}.hero-image{min-height:740px}}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.header-inner{gap:18px}.header-inner nav{gap:17px}.header-action{display:none}.hero-copy{padding-left:32px;padding-right:30px}.hero .eyebrow{font-size:9px}.hero-image,.hero{min-height:630px}.actions{gap:17px}.about{gap:40px}.work-grid{gap:45px}.newsletter-inner{gap:45px}.mission-ribbon{gap:35px}.way{padding-right:22px}.way+.way{padding-left:22px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.section{padding-block:65px}.header-inner{min-height:96px;flex-wrap:wrap;padding-block:10px}.brand img{width:62px;height:62px}.brand>span{font-size:21px}.topline{font-size:9px}.menu-toggle{display:flex;align-items:center;gap:12px;background:none;border:1px solid var(--line);border-radius:3px;padding:8px 12px;color:var(--ink);font-size:12px}.header-inner nav{display:flex;flex-wrap:wrap;width:100%;justify-content:center;gap:12px 20px;padding:10px 0}.js-ready .header-inner nav{display:none}.js-ready .header-inner nav.is-open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:48px 24px 35px}.hero h1{font-size:clamp(48px,9.5vw,68px)}.hero-intro{max-width:430px}.hero-copy>p:not(.eyebrow):not(.hero-intro){max-width:420px}.hero-footnote{margin-top:28px}.hero-image{min-height:400px}.hero-image>img{object-position:center 56%}.hero-image figcaption{left:24px;bottom:23px}.hero-image figcaption strong{font-size:26px}.image-label{top:20px;right:20px}.mission-ribbon{min-height:78px;gap:13px;padding:18px 15px;font-size:clamp(13px,3.1vw,21px)}.ribbon-wave{font-size:25px}.about{grid-template-columns:1fr;gap:28px}.about-copy{max-width:none}.lead{font-size:20px}.work-section{padding-block:55px}.work-grid{grid-template-columns:1fr;gap:38px}.work-image{padding:0}.work-image img{height:420px;border-radius:150px 150px 3px 3px}.work-copy>p:not(.eyebrow){max-width:none}.focus-row p{max-width:none}.section-heading{display:block;margin-bottom:30px}.section-heading>p{max-width:420px;margin-top:22px}.ways-grid{grid-template-columns:1fr}.way,.way+.way{border-left:0;padding:25px 0;border-bottom:1px solid var(--line)}.way:last-child{border-bottom:0}.way-top{margin-bottom:20px}.way p{max-width:none}.newsletter-inner{grid-template-columns:1fr;gap:32px;padding-block:55px}.newsletter-inner>div>p:last-child{max-width:430px}.email-row{flex-direction:column}.email-row .button{align-self:flex-start;min-width:150px}.email-row input{min-height:52px}.footer-main{flex-wrap:wrap;padding-block:40px;gap:30px}.footer-message{font-size:23px}.footer-links{width:100%;grid-template-columns:1fr 1fr;gap:12px 30px}.footer-bottom{flex-wrap:wrap;gap:8px 20px;font-size:10px}.footer-bottom p:nth-child(2){order:3;width:100%}dialog{padding:36px 25px}dialog h2{font-size:39px}}
/* Keep navigation comfortably readable at desktop and mobile sizes. */
.header-inner nav{font-size:16px;gap:24px}
.header-inner nav a,.nav-contact{padding-block:9px}
.header-action{font-size:14px}
.menu-toggle{font-size:16px;min-height:44px}
@media(min-width:761px) and (max-width:1150px){.header-inner nav{gap:18px}}
@media(max-width:760px){.header-inner nav{font-size:16px;gap:6px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
