
:root{--navy:#142d4b;--navy2:#1b3c60;--ink:#25334a;--gold:#b59559;--gold-light:#d9bf83;--walnut:#654b39;--cream:#f5f1e7;--ivory:#fffdf8;--paper:#faf8f2;--muted:#626976;--rule:#d8d0c2;--max:1160px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.65 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:none}
a:focus-visible,button:focus-visible{outline:3px solid #d3a44f;outline-offset:4px}
img{max-width:100%;height:auto;display:block}
button{font:inherit;cursor:pointer}
::selection{background:#ddc58b;color:#152f4c}
.wrap{max-width:var(--max);width:calc(100% - 64px);margin:0 auto}
.skip{position:absolute;top:-100px;left:15px;z-index:100;background:var(--ivory);padding:10px}
.skip:focus{top:12px}
.site-header{position:relative;background:var(--navy);color:#f8f6f0;border-bottom:4px solid var(--gold)}
.header-top{height:8px;background:#0f253f}
.header-inner{min-height:103px;display:flex;align-items:center;gap:35px}
.brand{display:flex;align-items:center;gap:15px;min-width:315px}
.brand .roundel{display:flex;align-items:center;flex-direction:column;justify-content:center;width:65px;height:65px;border:1.5px solid var(--gold-light);border-radius:50%;flex:none;font:10px/1 Georgia,serif;color:#e7d2a2;letter-spacing:.05em}
.brand .roundel b{font:26px/1 Georgia,serif;color:#fff;letter-spacing:-.12em;margin:4px 4px 4px 0}
.brand .roundel small{font-size:6px;letter-spacing:.15em}
.brand-name{font:21px/1.08 Georgia,'Times New Roman',serif;letter-spacing:.03em;white-space:nowrap}
.brand-name small{display:block;font:9px/1.5 Arial,sans-serif;color:#d6c9ab;text-transform:uppercase;letter-spacing:.24em;margin-top:8px}
.nav{display:flex;align-items:center;gap:26px;margin-left:auto}
.nav a{font-size:11px;line-height:1.4;text-transform:uppercase;letter-spacing:.09em;color:#e7e5e1;white-space:nowrap;position:relative;font-weight:700}
.nav a:after{content:"";position:absolute;bottom:-11px;left:0;width:0;height:2px;background:var(--gold-light);transition:width .18s}
.nav a:hover:after,.nav a.current:after{width:100%}
.nav a.current{color:#f3dba7}
.nav-toggle{display:none;background:transparent;color:#fff;border:1px solid #ffffff66;border-radius:0;padding:9px 13px;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.section-kicker{display:flex;align-items:center;gap:12px;color:#8b6b36;text-transform:uppercase;font-size:11px;font-weight:bold;letter-spacing:.18em}
.section-kicker:before{content:"";height:1px;width:34px;background:var(--gold)}
h1,h2,h3,h4,.serif{font-family:Georgia,'Times New Roman',serif;font-weight:normal}
h1,h2,h3,p{overflow-wrap:break-word}
h1,h2,h3{letter-spacing:-.025em}
h1{font-size:clamp(52px,5.45vw,78px);line-height:1.07;margin:22px 0}
h2{font-size:clamp(34px,3.2vw,49px);line-height:1.15;margin:12px 0 20px}
h3{font-size:26px;line-height:1.22;margin:10px 0 13px}
p{margin:0 0 20px}
p:last-child{margin-bottom:0}
.lead{font:20px/1.65 Georgia,serif;color:#44566a;max-width:610px}
.text-link{display:inline-flex;align-items:center;gap:17px;color:#1d486a;font-size:11px;text-transform:uppercase;letter-spacing:.15em;font-weight:bold;border-bottom:1px solid var(--gold);padding-bottom:10px}
.text-link:hover{gap:24px}
.secondary-link{color:#28567f;font-weight:bold;font-size:13px}
.secondary-link:hover{text-decoration:underline}
.hero{display:grid;grid-template-columns:46% 54%;min-height:630px;background:var(--ivory);border-bottom:1px solid var(--rule)}
.hero-text{display:block;min-width:0;background:var(--ivory)}
.hero-copy{width:100%;max-width:none;min-width:0;padding:95px clamp(30px,3.5vw,70px) 80px max(36px,calc((100vw - var(--max))/2))}
.hero h1{color:var(--navy);max-width:550px}
.hero .lead{margin:0 0 35px;font-size:19px}
.hero-photo{position:relative;min-height:520px;overflow:hidden;background:linear-gradient(135deg,#1f3d59,#a98b59)}
.hero-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;min-height:100%}
.hero-photo:after{content:"";position:absolute;bottom:0;left:0;right:0;height:4px;background:var(--gold)}
.hero-photo figcaption{position:absolute;right:25px;bottom:18px;background:#132c4bd8;color:#f8f4ec;font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:6px 11px}
.declaration{background:var(--navy);border-bottom:3px solid var(--gold)}
.declaration .wrap{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-top:27px;padding-bottom:27px;color:#fff}
.declaration .eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.17em;color:#d5bd8a;white-space:nowrap}
.declaration .quote{font:21px/1.5 Georgia,serif;text-align:right}
.section{padding:94px 0}
.section.tight{padding:65px 0}
.section.paper{background:var(--ivory)}
.section.cream{background:var(--cream)}
.section.navy{background:var(--navy);color:white}
.section-rule{border-top:1px solid var(--rule)}
.section-intro{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:40px}
.section-intro h2{margin-bottom:0;max-width:680px;color:var(--navy)}
.section-intro .intro-aside{max-width:340px;font-size:14px;color:var(--muted);line-height:1.8}
.editorial-grid{display:grid;grid-template-columns:1.45fr .85fr;gap:80px}
.story-main .date,.story-list .date,.meta{color:#866c43;font-size:11px;line-height:1.4;letter-spacing:.13em;text-transform:uppercase;font-weight:bold}
.story-main h3{font-size:clamp(33px,3.5vw,49px);line-height:1.15;color:var(--navy);margin:15px 0 19px}
.story-main p{font:17px/1.75 Georgia,serif;color:#485566;max-width:660px}
.story-list{border-top:2px solid var(--gold)}
.story-list article{border-bottom:1px solid var(--rule);padding:20px 0}
.story-list article h3{font-size:21px;line-height:1.28;margin:8px 0 0;color:#1e3f60}
.story-list article a:hover{color:#866c43}
.priority-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--rule);border-left:1px solid var(--rule)}
.priority{padding:31px 35px 37px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.priority .num{color:#9a7940;font:26px Georgia,serif}
.priority h3{font-size:27px;color:var(--navy);margin-top:21px}
.priority p{color:#596473;font-size:14px;line-height:1.75}
.bleed-image{display:grid;grid-template-columns:55% 45%;background:var(--navy);color:var(--ivory);min-height:445px}
.bleed-image .photo{min-height:420px;position:relative;overflow:hidden}
.bleed-image .photo img{width:100%;height:100%;object-fit:cover}
.bleed-image .copy{display:flex;flex-direction:column;justify-content:center;padding:62px clamp(38px,6.5vw,100px)}
.bleed-image .section-kicker{color:#d2b47d}
.bleed-image h2{color:white;font-size:clamp(37px,4vw,56px)}
.bleed-image p{color:#d7e0ea;font-size:15px;line-height:1.75}
.bleed-image .text-link{color:#f1e4cb}
.bleed-image .text-link:hover{color:white}
.two-column{display:grid;grid-template-columns:1fr 1fr;gap:80px}
.note-block{padding:36px 0;border-top:3px solid var(--gold)}
.note-block h3{font-size:30px;color:var(--navy)}
.note-block p{color:#5a6570;font-size:15px;line-height:1.75}
.paper-strip{background:#e8dfcd;border-top:1px solid #d8ccb3;border-bottom:1px solid #d8ccb3;padding:32px 0}
.paper-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}
.paper-strip p{font:22px/1.45 Georgia,serif;color:var(--navy);margin:0}
.page-hero{background:var(--ivory);border-bottom:1px solid var(--rule);padding:78px 0 72px;position:relative}
.page-hero h1{max-width:930px;color:var(--navy);margin-bottom:20px}
.page-hero .lead{max-width:750px}
.page-hero.with-photo{padding:0;display:grid;grid-template-columns:49% 51%;min-height:455px}
.page-hero.with-photo .page-copy{padding:76px 50px 70px max(32px,calc((100vw - var(--max))/2))}
.page-hero.with-photo .page-image{position:relative;overflow:hidden;min-height:440px;background:linear-gradient(135deg,#1f3d59,#aa8b59)}
.page-hero.with-photo img{width:100%;height:100%;object-fit:cover}
.page-hero.with-photo .page-image:after{content:"";position:absolute;bottom:0;left:0;right:0;height:4px;background:var(--gold)}
.breadcrumb{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#856a45;margin-bottom:18px}
.breadcrumb a{color:#5a6270}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:76px}
.prose h2{font-size:36px;color:var(--navy);margin:0 0 22px}
.prose h3{font-size:27px;color:var(--navy);margin:33px 0 12px}
.prose p{font:17px/1.88 Georgia,serif;color:#3d4855;margin-bottom:23px}
.prose ul{font:16px/1.8 Georgia,serif;color:#3d4855;padding-left:23px}
.prose li{margin:8px 0}
.aside-nav{border-top:3px solid var(--gold);align-self:start;position:sticky;top:25px}
.aside-nav .aside-heading{padding:15px 0 13px;color:#836943;text-transform:uppercase;font-size:11px;letter-spacing:.14em;font-weight:bold}
.aside-nav a{display:block;padding:12px 0;color:#244c71;border-bottom:1px solid var(--rule);font-size:13px}
.aside-nav a:hover{text-decoration:underline}
.agenda-item{display:grid;grid-template-columns:95px 1fr;gap:30px;border-top:1px solid var(--rule);padding:38px 0;scroll-margin-top:25px}
.agenda-item:first-child{border-top:3px solid var(--gold)}
.agenda-number{font:43px/1 Georgia,serif;color:var(--gold)}
.agenda-item h2{font-size:35px;margin:0 0 12px;color:var(--navy)}
.agenda-item p{color:#55606d;line-height:1.85;font-size:15px;max-width:740px}
.agenda-actions{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#756c60;margin-top:16px;font-weight:bold}
.agenda-actions span{border-left:2px solid var(--gold);padding-left:11px}
.profile{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}
.profile-panel{background:var(--navy);color:var(--ivory);padding:65px 34px;text-align:center;align-self:start}
.profile-letters{display:grid;place-items:center;margin:0 auto 24px;width:170px;height:170px;border:1px solid #e0c38f;border-radius:50%;font:79px Georgia,serif;letter-spacing:-.14em;padding-right:15px;color:#e7d2a4}
.profile-panel h2{font:31px Georgia,serif;margin-bottom:8px;color:white}
.profile-panel p{font-size:12px;text-transform:uppercase;letter-spacing:.15em;color:#d6c292}
.profile-content h2{font-size:42px;color:var(--navy)}
.profile-content p{font:17px/1.8 Georgia,serif;color:#485360}
.office-list{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;border-top:3px solid var(--gold)}
.office-row{border-bottom:1px solid var(--rule);padding:22px 0}
.office-row h3{font-size:23px;color:var(--navy);margin:0 0 4px}
.office-row p{font-size:13px;color:var(--muted);margin:0}
.press-item{padding:33px 0;border-top:1px solid var(--rule)}
.press-item:first-child{border-top:3px solid var(--gold)}
.press-item h2{font-size:35px;max-width:850px;color:var(--navy);margin:10px 0 11px}
.press-item p{color:#596473;line-height:1.75;max-width:800px;margin-bottom:13px}
.memo{border:1px solid var(--rule);padding:45px 58px;background:var(--ivory);box-shadow:0 15px 35px #1b2f4412}
.memo .memo-top{text-align:center;color:#806740;font-size:11px;text-transform:uppercase;letter-spacing:.2em;border-bottom:1px solid var(--rule);padding-bottom:22px;margin-bottom:30px}
.memo h2{text-align:center;color:var(--navy);font:37px/1.22 Georgia,serif;margin:0 0 25px}
.memo p{font:17px/1.9 Georgia,serif;color:#3c4651}
.memo .signature{font:italic 30px Georgia,serif;margin-top:40px;color:#173a5a}
.memo .signature small{display:block;font:11px Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;margin-top:7px}
.site-footer{background:#132a44;color:#d9e1e8;border-top:5px solid var(--gold)}
.footer-top{padding:65px 0 40px}
.footer-brand{display:flex;align-items:center;gap:18px;border-bottom:1px solid #dce6ed27;padding-bottom:30px;margin-bottom:33px}
.footer-brand h2{color:white;font-size:27px;margin:0}
.footer-brand p{color:#bdc8d4;font-size:11px;text-transform:uppercase;letter-spacing:.17em}
.footer-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.footer-col h3{font:13px/1.4 Arial,sans-serif;font-weight:bold;color:#e7cb92;text-transform:uppercase;letter-spacing:.07em;margin:0 0 15px}
.footer-col a{display:block;color:#d8e0ea;font-size:12px;line-height:1.55;margin-bottom:9px}
.footer-col a:hover{text-decoration:underline}
.footer-disclaimer{border-top:1px solid #dce6ed27;padding:25px 0 16px;color:#bcc7d0;font-size:12px;line-height:1.85}
.footer-disclaimer strong{color:#fff}
.footer-disclaimer a{color:#e8d4ac;text-decoration:underline}
.copyright{border-top:1px solid #dce6ed1e;padding:17px 0 24px;color:#abb8c5;font-size:11px;display:flex;justify-content:space-between;gap:20px}
.copyright a{color:#d2c6af}
.photocredit{color:#717a83;font-size:10px;padding-top:17px;line-height:1.6}
.photocredit a{text-decoration:underline}
@media(max-width:1150px){.nav{gap:16px}.nav a{font-size:10px}.brand{min-width:275px}.brand-name{font-size:19px}.header-inner{gap:16px}}
@media(max-width:950px){.header-inner{min-height:87px;flex-wrap:wrap}.nav-toggle{display:block;margin-left:auto}.nav{display:none;width:100%;margin:0;padding:0 0 24px;flex-wrap:wrap;gap:0}.nav.open{display:flex}.nav a{width:50%;padding:16px 7px;border-bottom:1px solid #ffffff30;font-size:12px}.nav a:after{bottom:3px}.hero{grid-template-columns:1fr 1fr;min-height:515px}.hero-copy{padding:50px 30px;max-width:none;width:100%}.hero-photo{min-height:515px}.hero h1{font-size:57px}.editorial-grid{gap:40px}.bleed-image .copy{padding:40px}.footer-grid{grid-template-columns:repeat(3,1fr);row-gap:30px}.page-hero.with-photo .page-copy{padding:60px 30px}.page-hero.with-photo .page-image{min-height:350px}}
@media(max-width:720px){.wrap{width:calc(100% - 36px)}.brand{min-width:0}.brand-name{font-size:17px}.brand .roundel{width:52px;height:52px}.brand .roundel b{font-size:21px}.hero{display:flex;flex-direction:column-reverse}.hero-photo{min-height:300px;height:300px}.hero-copy{max-width:none;padding:55px 25px 63px}.hero h1{font-size:clamp(43px,9vw,66px)}.declaration .wrap{display:block;padding:22px 0}.declaration .quote{text-align:left;margin-top:6px;font-size:19px}.section{padding:65px 0}.section-intro{display:block}.section-intro .intro-aside{margin-top:18px}.editorial-grid,.two-column,.article-layout,.profile{grid-template-columns:1fr;gap:45px}.priority-list{grid-template-columns:1fr 1fr}.bleed-image{grid-template-columns:1fr}.bleed-image .photo{min-height:290px;height:290px}.bleed-image .copy{padding:45px 25px}.page-hero{padding:54px 0}.page-hero.with-photo{display:flex;flex-direction:column-reverse}.page-hero.with-photo .page-copy{padding:48px 25px}.page-hero.with-photo .page-image{min-height:300px;height:300px}.aside-nav{position:static}.office-list{grid-template-columns:1fr}.profile-panel{padding:40px}.footer-top{padding-top:45px}.footer-grid{grid-template-columns:repeat(2,1fr)}.memo{padding:32px 25px}.agenda-item{grid-template-columns:55px 1fr;gap:17px}.agenda-number{font-size:32px}.agenda-item h2{font-size:29px}.paper-strip .wrap{display:block}.paper-strip .text-link{margin-top:16px}}
@media(max-width:440px){.brand-name{font-size:15px}.brand-name small{font-size:7px}.brand{gap:9px}.nav a{width:100%}.hero-photo{min-height:230px;height:230px}.hero-copy{padding:42px 22px 50px}.priority-list{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:25px 10px}.footer-brand h2{font-size:22px}.copyright{display:block}.copyright span{display:block;margin:5px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.nav a:after,.text-link{transition:none}}

/* 2026-11-04 production hotfix: ensure hero copy cannot collapse into a one-letter column. */
.hero-text{min-width:0}
.hero-copy{min-width:0;width:100%;box-sizing:border-box}
.hero h1{overflow-wrap:normal;word-break:normal;hyphens:none}
.hero .lead{overflow-wrap:break-word}
@media(min-width:951px){.hero-copy{padding-left:max(36px,calc((100vw - 1160px)/2));padding-right:clamp(36px,3vw,65px)}}

/* Artwork fallback when historical photo CDN is unavailable. */
.hero-photo.image-failed,.page-image.image-failed,.bleed-image .photo.image-failed{
  background:radial-gradient(ellipse at 60% 23%,#3c5a75 0%,#1d3b5b 53%,#10283f 100%);
}
.hero-photo.image-failed:before,.page-image.image-failed:before,.bleed-image .photo.image-failed:before{
  content:"";position:absolute;inset:13% 12%;
  border-top:2px solid #ddbd80;border-bottom:6px double #ddbd80;
  opacity:.6;
  background:repeating-linear-gradient(90deg,transparent 0 13%,#cfb785 13% 14.5%,transparent 14.5% 28%);
  clip-path:polygon(0 28%,50% 0,100% 28%,100% 100%,0 100%);
}
.hero-photo.image-failed:after,.page-image.image-failed:after{
  content:"THE OVAL OFFICE";position:absolute;left:0;right:0;top:auto;bottom:18%;
  text-align:center;color:#f2e8d7;font:23px Georgia,serif;letter-spacing:.13em;
  background:none;height:auto;
}
.hero-photo.image-failed figcaption{z-index:2}
.image-failed img{display:none!important}
