:root{--ink:#1f2933;--navy:#0f2744;--cream:#f1e7d9;--paper:#fffdf8;--muted:#626d79;--line:#d8dce1;--white:#fff;--max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.65}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;height:auto}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linejoin:round;stroke-linecap:round;flex-shrink:0}.sprite{position:absolute;width:0;height:0;overflow:hidden}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.08;letter-spacing:-.045em}h2{font-size:clamp(36px,4.5vw,55px);font-weight:750}h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.05em}h3{font-size:24px;letter-spacing:-.025em}p{color:var(--muted)}.wrap{width:min(var(--max),calc(100% - 88px));margin:auto}.section{padding:108px 0}.eyebrow{font-size:11px;letter-spacing:.15em;font-weight:750;color:var(--navy);line-height:1.5;margin-bottom:22px}.eyebrow.light{color:var(--cream)}.eyebrow span{color:var(--muted);letter-spacing:.08em}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #b43a3a;outline-offset:5px}.skip{position:fixed;left:12px;top:-100px;background:white;padding:12px;z-index:1000}.skip:focus{top:12px}.review-strip{text-align:center;background:var(--navy);color:#f6f1e7;font-size:10px;font-weight:bold;letter-spacing:.16em;padding:7px}.review-strip span{padding:0 12px;color:#d1a3a0}.header{position:sticky;top:0;background:rgba(255,253,248,.97);z-index:50;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;gap:11px;align-items:center;font-size:15px;font-weight:800;letter-spacing:-.035em;line-height:1.2;white-space:nowrap}.brand b{font-weight:400;margin-left:3px}.brand small{display:block;font-size:8px;letter-spacing:.18em;margin-top:7px;font-weight:550}.brand-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--navy);border-radius:50%;color:var(--navy)}.brand-icon svg{width:25px;height:25px}.nav nav{display:flex;gap:26px;align-items:center;font-size:12px;font-weight:650}.nav nav>a:hover{color:#b43a3a}.nav-button{border:1px solid var(--navy);padding:10px 15px;border-radius:4px}.nav-button span{margin-left:15px}.menu-toggle{display:none}.hero{position:relative;min-height:690px;isolation:isolate;background:#101d2b;color:white;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:80% 58%;z-index:-3}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,26,48,.97),rgba(9,26,48,.76) 39%,rgba(9,26,48,.12) 77%),linear-gradient(0deg,rgba(9,26,48,.7),transparent 25%);z-index:-2}.hero-content{padding-top:82px;padding-bottom:105px}.hero h1{font-size:clamp(56px,6.2vw,88px);font-weight:780;line-height:1.01;letter-spacing:-.06em}.hero h1 em{font-style:normal;color:var(--cream)}.hero-copy{max-width:465px;color:#e0e5eb;font-size:16px;margin-top:28px;line-height:1.75}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--cream);margin:0 9px 1px 0}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;gap:22px;align-items:center;justify-content:center;min-height:50px;padding:13px 20px;border:1px solid transparent;border-radius:4px;font-size:12px;font-weight:700;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button svg{width:17px;height:17px}.primary{background:var(--cream);color:var(--navy)}.primary:hover{background:white}.ghost{border-color:#8290a0;background:transparent;color:white}.ghost:hover{background:#ffffff17}.hero-foot{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:23px 0;border-top:1px solid #ffffff30;font-size:10px;letter-spacing:.11em;color:#d4dbe5}.hero-foot a{font-size:11px;letter-spacing:0}.hero-foot a span{margin-left:18px}.principles{background:#f1ece4;border-bottom:1px solid var(--line)}.principles .wrap{display:flex;justify-content:space-between;gap:25px;padding:27px 0}.principles span{display:flex;gap:13px;align-items:center;font-size:12px;font-weight:600}.principles svg{color:#8f2e2e}.john-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center}.john-photo{position:relative;border-radius:5px;overflow:hidden;background:#ddd}.john-photo>img{width:100%;aspect-ratio:4/4.8;object-fit:cover;object-position:50% 38%}.john-photo:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(9,26,48,.92));pointer-events:none}.john-photo figcaption{position:absolute;bottom:25px;left:28px;right:28px;color:white;z-index:1}.john-photo figcaption span{display:block;font-size:9px;letter-spacing:.14em;color:var(--cream)}.john-photo figcaption strong{font-size:30px;letter-spacing:-.03em}.photo-index{position:absolute;top:18px;left:18px;font-size:9px;letter-spacing:.13em;background:#ffffffd9;padding:5px 9px;border-radius:2px}.john-copy>p:not(.eyebrow){margin-top:20px;font-size:14px}.john-copy>p.lead{color:var(--navy);font-size:19px;line-height:1.5;margin-top:25px}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:12px;font-weight:700;color:var(--navy);padding:5px 0;border:0;background:none;text-align:left}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.text-link svg{width:18px;height:18px}.john-copy>.text-link{margin-top:23px}.john-note{display:flex;gap:17px;margin-top:30px;padding-top:23px;border-top:1px solid var(--line)}.john-note p{font-size:12px}.john-note strong{color:var(--navy)}.john-note svg{margin-top:5px}.team-section{background:#f3f0ea;border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:45px}.section-heading>p{max-width:335px;font-size:14px;padding-bottom:4px}.section-heading .eyebrow{margin-bottom:16px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.person{overflow:hidden;border-radius:4px;background:var(--paper);border:1px solid #dddcd7}.person-image{position:relative;height:325px;overflow:hidden;background:#e0e3e7}.person-image img{height:100%;width:100%;object-fit:cover;object-position:center 23%;transition:transform .4s}.person:hover img{transform:scale(1.025)}.person-image>span:not(.monogram){position:absolute;bottom:15px;left:15px;background:#fffdf8ee;color:var(--navy);font-size:9px;font-weight:700;letter-spacing:.12em;padding:6px 10px;border-radius:2px;max-width:calc(100% - 30px)}.person-body{padding:22px 24px}.person-body h3{font-size:22px}.person-body p{font-size:12px;margin-top:9px}.person-body i{font-style:normal;padding:0 8px;color:#8693a1}.initials{display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 65% 25%,#e7eaf0,transparent 50%),#d5dce5}.initials:before,.initials:after{content:"";position:absolute;border:1px solid #45627e26;border-radius:50%;width:250px;height:250px;transform:translate(70px,-20px)}.initials:after{width:310px;height:310px}.initials .monogram{font-family:Georgia,serif;font-size:85px;color:#526985;line-height:1.2;position:relative;z-index:1}.initials p{font-size:10px;letter-spacing:.09em;position:relative;z-index:1;margin-top:10px}.initials.alternate{background:radial-gradient(circle at 15% 30%,#e8e6e1,transparent 50%),#dfded8}.caption{font-size:11px;margin-top:22px}.record-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.record-intro h2{font-size:47px}.record-intro>p:not(.eyebrow){font-size:14px;margin:25px 0 20px;max-width:380px}.record-stamp{display:flex;align-items:center;gap:14px;border-top:1px solid var(--line);margin-top:35px;padding-top:25px;font-size:9px;letter-spacing:.12em;color:var(--muted)}.record-stamp strong{font-size:14px;letter-spacing:0;color:var(--navy)}.record-stamp svg{width:32px;height:32px}.timeline{border-left:1px solid #c3ceda;padding-left:35px}.timeline article{position:relative;padding-bottom:40px}.timeline article:last-child{padding-bottom:0}.timeline-dot{position:absolute;top:4px;left:-41px;width:11px;height:11px;background:var(--navy);border:3px solid var(--paper);outline:1px solid var(--navy);border-radius:50%}.timeline .eyebrow{font-size:9px;letter-spacing:.1em;margin-bottom:13px}.timeline h3{font-size:26px;line-height:1.2}.timeline article>p:not(.eyebrow){font-size:13px;margin:17px 0 14px}.timeline details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:18px 0 15px}.timeline summary{padding:12px 0;font-size:11px;font-weight:700;cursor:pointer;display:flex;justify-content:space-between;list-style:none}.timeline summary::-webkit-details-marker{display:none}.timeline details[open] summary span{transform:rotate(45deg)}.timeline details p{font-size:12px;margin:0 0 15px}.record-links{display:flex;gap:25px;flex-wrap:wrap}.timeline .text-link{font-size:11px}.timeline .text-link span{font-size:10px;color:#586d85}.library-section{background:#0f2744;color:#fffdf8}.library-section .eyebrow{color:#f0c9c6}.library-section .section-heading>p{color:#c3ceda}.library-controls{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 0;border-top:1px solid #ffffff2b;border-bottom:1px solid #ffffff2b}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{display:flex;align-items:center;gap:9px;border:1px solid #ffffff30;background:transparent;color:#e2e7ef;border-radius:4px;padding:10px 14px;font-size:11px}.filters button.active{background:var(--cream);border-color:var(--cream);color:var(--navy)}.filters button span{font-size:9px;opacity:.7}.filters svg{width:14px;height:14px}.search{position:relative;display:block;width:280px}.search input{background:#ffffff08;border:1px solid #ffffff35;border-radius:4px;color:white;padding:12px 35px 12px 14px;font-size:11px;width:100%;min-width:0}.search input::placeholder{color:#c3ccda}.search>span:last-child{position:absolute;right:13px;top:3px;font-size:25px}.library-section .caption{color:#c4cedb;margin:16px 0}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.resource{border:1px solid #ffffff27;border-radius:5px;overflow:hidden;background:#173552}.resource[hidden]{display:none}.video-launch{position:relative;display:block;padding:0;border:0;width:100%;height:190px;overflow:hidden;background:#0b1b2e}.video-launch img{width:100%;height:100%;object-fit:cover;opacity:.7;transition:opacity .2s,transform .2s}.video-launch:hover img{opacity:1;transform:scale(1.025)}.play-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid #ffffff80;border-radius:50%;width:48px;height:48px;background:#0f2744de;display:grid;place-items:center;color:white}.play-icon svg{width:19px;height:19px;margin-right:3px}.duration{position:absolute;bottom:12px;right:12px;background:#0b1b2edd;color:white;font-size:10px;padding:3px 7px;border-radius:3px}.resource-body{padding:22px}.resource .eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:12px}.resource .eyebrow span{color:#bdcbdc;font-size:9px}.resource h3{font-size:21px;line-height:1.2;letter-spacing:-.025em}.resource-body>p:not(.eyebrow){font-size:11px;color:#c5cfdb;margin:10px 0 15px}.resource .text-link{font-size:11px;color:var(--cream);justify-content:space-between;width:100%}.document-art{height:190px;background:#e7d8c8;color:#0f2744;padding:20px 25px;position:relative}.document-art>svg{position:absolute;right:22px;top:20px;width:28px;height:28px}.document-art>span{display:block;font-size:10px;line-height:1.3;letter-spacing:.13em;margin-top:6px}.document-art strong{font-size:55px;letter-spacing:-.055em;line-height:1.1;display:inline-block;max-width:100%}.document-art small{position:absolute;bottom:19px;font-size:8px;letter-spacing:.12em}.document-art.pale{background:#e3e8ef;color:#334b66}.document-resource:last-child .document-art strong{font-size:37px;margin-top:9px}.library-note{font-size:11px;color:#c5cfdb;max-width:750px;margin-top:27px}.empty-state{padding:45px 0}.empty-state p{color:#c4cedb;margin:15px 0}.empty-state[hidden]{display:none}.priority-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:5px;overflow:hidden}.priority-grid article{position:relative;padding:36px;border-right:1px solid var(--line)}.priority-grid article:last-child{border:0}.priority-grid svg{width:32px;height:32px;color:var(--navy);margin-bottom:24px}.priority-number{position:absolute;right:30px;top:32px;font-size:11px;color:#7b8998}.priority-grid h3{font-size:23px;line-height:1.15}.priority-grid p{font-size:13px;margin-top:17px}.closing{position:relative;isolation:isolate;padding:80px 0;background:var(--navy);color:white;overflow:hidden}.closing:after{content:"";position:absolute;z-index:-1;right:-120px;top:-220px;width:750px;height:750px;border:1px solid #f1e7d925;border-radius:50%;box-shadow:0 0 0 90px #f1e7d908,0 0 0 180px #f1e7d905}.closing h2{font-size:56px}.closing h2 em{color:var(--cream)}.closing p:not(.eyebrow){color:#d3dce7;font-size:14px;margin-top:24px}.closing .eyebrow{margin-bottom:18px}footer{padding:38px 0 30px;background:#f6f1e7}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:28px;border-bottom:1px solid #dcd5cc}.footer-bottom{display:flex;justify-content:space-between;gap:70px;margin-top:25px}.footer-bottom p{font-size:10px;max-width:550px}.footer-bottom p:last-child{max-width:380px}dialog{max-width:960px;width:calc(100% - 32px);border:1px solid #70859e;border-radius:8px;padding:0;background:#0f2744;color:white;max-height:calc(100dvh - 32px);overflow:auto}dialog::backdrop{background:#071524eb;backdrop-filter:blur(6px)}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 25px}.dialog-header .eyebrow{color:var(--cream);margin-bottom:5px;font-size:9px}.dialog-header h2{font-size:23px}.dialog-header button{background:#ffffff12;border:1px solid #ffffff40;color:white;border-radius:50%;width:40px;height:40px;font-size:27px;line-height:1}.dialog-header button:hover{background:#ffffff30}dialog video{display:block;width:100%;max-height:65dvh;background:black}.dialog-footer{padding:15px 25px;display:flex;justify-content:space-between;gap:20px;font-size:11px}.dialog-footer p{color:#c5cfdb}.dialog-footer a{color:var(--cream);white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}
@media(min-width:1700px){.hero-image{object-position:center 60%}.hero{min-height:750px}.hero-content{padding-top:100px}}
@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.nav nav{gap:16px}.brand{font-size:13px}.brand-icon{width:34px;height:34px}.nav{gap:16px}.john-layout{gap:55px}.record-layout{gap:45px}.person-image{height:280px}.record-intro h2{font-size:40px}.search{width:230px}.filters button{padding:10px}.hero{min-height:660px}.section{padding:85px 0}.priority-grid article{padding:28px}.person-body{padding:22px 18px}}
@media(max-width:800px){html{scroll-padding-top:88px}.nav{min-height:73px}.menu-toggle{display:flex;align-items:center;gap:16px;border:1px solid var(--line);padding:8px 12px;background:transparent;border-radius:4px;font-size:12px;color:var(--navy)}.nav nav{display:none;position:absolute;top:73px;left:0;right:0;background:var(--paper);padding:20px 28px;border-bottom:1px solid var(--line);box-shadow:0 16px 18px #0b1b2e14;align-items:stretch;gap:4px}.nav nav.open{display:flex;flex-direction:column}.nav nav a{padding:13px 10px}.nav-button{margin-top:5px}.hero-content{padding-top:70px}.hero h1{font-size:72px}.hero:after{background:linear-gradient(90deg,#091a30ef,#091a30a3 60%,#091a3038),linear-gradient(0deg,#091a30b3,transparent 25%)}.principles .wrap{gap:20px}.principles span{font-size:11px;gap:9px}.principles svg{width:19px}.john-layout{gap:35px;grid-template-columns:.9fr 1.1fr}.john-copy h2{font-size:36px}.john-copy>p:not(.eyebrow){font-size:13px}.john-copy>p.lead{font-size:17px}.john-photo>img{aspect-ratio:4/6;object-position:50% 40%}.john-photo figcaption{left:20px}.john-photo figcaption strong{font-size:25px}.section-heading{gap:35px}.section-heading>p{max-width:240px;font-size:13px}.team-grid{gap:18px}.person-image{height:235px}.person-body h3{font-size:19px}.person-body p{font-size:11px}.person-image>span:not(.monogram){font-size:8px;letter-spacing:.03em;left:9px;padding:5px 7px}.record-layout{grid-template-columns:1fr;gap:45px}.record-intro>p:not(.eyebrow){max-width:600px}.record-stamp{display:none}.record-intro h2{font-size:44px}.resource-grid{grid-template-columns:repeat(2,1fr)}.library-controls{align-items:stretch;flex-direction:column}.search{width:100%}.priority-grid{grid-template-columns:1fr}.priority-grid article{border-right:0;border-bottom:1px solid var(--line);padding:27px 32px}.priority-grid svg{margin-bottom:12px}.priority-grid p{max-width:600px}.footer-bottom{gap:30px}.closing h2{font-size:47px}}
@media(max-width:560px){.wrap{width:calc(100% - 36px)}.review-strip{font-size:8px}.brand{font-size:12px}.brand small{font-size:7px}.brand-icon{width:33px;height:33px}.nav{gap:10px}.menu-toggle{font-size:11px;padding:7px 10px;gap:10px}.hero{min-height:650px}.hero-content{padding-top:56px;padding-bottom:140px}.hero-image{object-position:68% center}.hero:after{background:linear-gradient(90deg,#091a30e6,#091a30a6),linear-gradient(0deg,#091a30b3,transparent 40%)}.hero .eyebrow{font-size:8px;letter-spacing:.12em}.hero h1{font-size:clamp(47px,12vw,65px)}.hero-copy{font-size:14px;max-width:350px;margin-top:24px}.hero .actions{gap:10px}.button{gap:14px;padding:12px 15px;font-size:11px}.hero-foot{align-items:start;flex-direction:column;gap:12px;padding:18px 0;font-size:8px}.hero-foot a{font-size:10px}.principles .wrap{flex-direction:column;gap:15px;padding:22px 0}.principles span{font-size:12px;gap:15px}.principles svg{width:20px}.section{padding:64px 0}.eyebrow{font-size:9px;margin-bottom:17px}h2{font-size:36px}.john-layout{display:flex;flex-direction:column;gap:35px;align-items:stretch}.john-photo{max-width:400px;width:100%;margin:auto}.john-photo>img{aspect-ratio:4/4.5;object-position:center 28%}.john-copy h2{font-size:38px}.john-copy>p:not(.eyebrow){font-size:14px}.john-copy>p.lead{font-size:19px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px;max-width:360px;font-size:13px}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.person-image{height:205px}.person-body{padding:17px 12px}.person-body h3{font-size:18px;line-height:1.15;overflow-wrap:normal}.person-body p{font-size:10px;line-height:1.6}.person-body i{padding:0 3px}.person-image>span:not(.monogram){font-size:7px;left:7px;bottom:9px;max-width:calc(100% - 14px);padding:5px 6px;letter-spacing:0}.initials .monogram{font-size:58px}.initials p{font-size:8px;letter-spacing:0}.caption{font-size:10px}.record-intro h2{font-size:37px}.timeline{padding-left:25px;margin-left:4px}.timeline-dot{left:-31px}.timeline h3{font-size:25px}.timeline .eyebrow{font-size:8px;letter-spacing:.04em}.timeline .eyebrow span{letter-spacing:0}.record-links{gap:10px}.resource-grid{grid-template-columns:1fr;gap:20px}.video-launch{height:auto;aspect-ratio:16/9}.resource-body{padding:23px}.resource h3{font-size:23px}.document-art{height:180px}.filters{gap:6px}.filters button{font-size:10px;padding:9px;gap:6px}.filters button span{font-size:8px}.filters svg{width:12px}.document-art strong{font-size:53px}.closing{padding:65px 0}.closing h2{font-size:39px}.closing .actions{flex-direction:column;align-items:start}.closing .button{min-width:195px}.footer-top{gap:15px}.footer-top>.text-link{font-size:10px;white-space:nowrap}.footer-bottom{flex-direction:column;gap:16px}.dialog-header{padding:15px}.dialog-header h2{font-size:19px}.dialog-footer{padding:15px;flex-direction:column;gap:10px}.dialog-header button{flex-shrink:0}.priority-grid article{padding:27px}.john-note{margin-top:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media print{.header,.review-strip,.hero,.principles,.library-section,.closing,footer,dialog,.menu-toggle{display:none}.section{padding:25px 0}.wrap{width:100%}.person,.timeline article{break-inside:avoid}.john-layout{gap:30px}.john-photo{max-width:250px}.team-grid{grid-template-columns:repeat(3,1fr)}.person-image{height:200px}details{display:block}}
