/* Contemporary editorial direction, retaining the supplied navy palette. */
:root{--navy:#203447;--dark:#142838;--pale:#f0f3f4;--muted:#53636f}
.header{height:96px}.brand span{display:none}.header nav a{position:relative;padding:12px 0}.header nav a:after{content:'';position:absolute;bottom:4px;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}.header nav a:hover:after{transform:scaleX(1)}
.hero{grid-template-columns:1.05fr 1fr;min-height:790px;padding-top:12px}.hero-copy{padding-top:25px}.hero h1{font-size:clamp(58px,6.6vw,108px);line-height:1.08;letter-spacing:-.055em;margin-right:-140px}.hero h1 em{color:#b4c4d1}.hero-photo{height:680px;margin-left:0}.hero-photo img{will-change:transform}.hero-intro{margin-top:38px}.hero-bottom{bottom:30px}.hero-copy h1{animation:hero-enter 1.1s cubic-bezier(.2,.65,.25,1) both}.hero-intro,.hero-copy .link{animation:hero-enter 1s .18s cubic-bezier(.2,.65,.25,1) both}.hero-photo{animation:photo-enter 1.25s cubic-bezier(.2,.65,.25,1) both}
.section-label{display:flex;align-items:center;gap:18px;color:#657582}.section-label:before{content:'';width:28px;height:1px;background:currentColor}.travel .section-label,.contacts .section-label{color:#a7bac9}.section{padding-top:120px;padding-bottom:120px}.about h2{font-size:clamp(35px,3.6vw,56px)}.vision{padding-top:120px;padding-bottom:130px}.vision h2{font-size:clamp(45px,6.3vw,97px)}.projects .section-heading h2,.travel h2{font-size:clamp(40px,4.8vw,74px)}.photo-placeholder{background:#b62e39;overflow:hidden}.photo-placeholder:after{content:'';position:absolute;inset:0;border:1px solid #ffffff12;pointer-events:none;transition:background .5s}.photo-placeholder:hover:after{background:#ffffff06}.project-pair h3,.project-caption h3,.project-klen h3{font-family:Manrope,Arial,sans-serif;font-size:26px;font-weight:500;letter-spacing:-.04em}.project-pair article{border-bottom:1px solid var(--line);padding-bottom:30px}.project-title a{transition:transform .3s}.project-title a:hover{transform:translate(4px,-4px)}.life-grid h3{font-family:Manrope,Arial,sans-serif;font-size:27px;letter-spacing:-.045em;font-weight:500}.faith h2{font-size:clamp(36px,3.6vw,58px)}.faith-copy{padding-left:clamp(35px,5vw,80px);padding-right:clamp(30px,4vw,65px)}.link{transition:gap .3s,border-color .3s}.link:hover{gap:75px;border-color:white}.link span{transition:transform .3s}.link:hover span{transform:translate(3px,-3px)}summary{transition:padding .3s}summary:hover{padding-left:10px;padding-right:10px}.menu{top:96px;animation:menu-enter .3s ease}.menu a{transition:color .25s,transform .25s}.menu a:hover{color:#b7c9d7;transform:translateX(6px)}.reading-progress{position:fixed;left:0;top:0;height:3px;width:100%;background:#a1b9c9;transform-origin:left;z-index:100;pointer-events:none}.reveal{opacity:0;transform:translateY(36px);transition:opacity .85s cubic-bezier(.2,.65,.25,1),transform .85s cubic-bezier(.2,.65,.25,1)}.reveal.is-visible{opacity:1;transform:none}.life-grid article:nth-child(2){transition-delay:.1s}.life-grid article:nth-child(3){transition-delay:.2s}
@keyframes hero-enter{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes photo-enter{from{opacity:0;clip-path:inset(8% 0 0 0)}to{opacity:1;clip-path:inset(0)}}@keyframes menu-enter{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.hero{min-height:675px}.hero h1{font-size:clamp(48px,6.6vw,70px);margin-right:-50px}.hero-photo{height:570px}.section{padding-top:85px;padding-bottom:85px}.faith h2{font-size:35px}}
@media(max-width:720px){.header{height:85px}.menu{top:85px}.hero{min-height:0;padding-top:0}.hero h1{font-size:clamp(43px,11vw,73px);margin-right:0;line-height:1.13}.hero-copy{padding:38px 0 30px}.hero-photo{height:auto;aspect-ratio:4/4.3}.hero-intro{margin-top:25px}.section{padding-top:65px;padding-bottom:65px}.vision h2{font-size:clamp(36px,10vw,55px)}.projects .section-heading h2,.travel h2{font-size:clamp(36px,9vw,52px)}.faith-copy{padding:45px var(--gutter) 60px}.faith h2{font-size:clamp(30px,7.8vw,43px)}.reveal{transform:translateY(18px);transition-duration:.6s}.life-grid article:nth-child(n){transition-delay:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.hero-photo img{transform:none!important}}
