@font-face{font-family:"Cormorant Garamond";src:url(fonts/CormorantGaramond-600.ttf);font-weight:600;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url(fonts/CormorantGaramond-Italic-500.ttf);font-style:italic;font-weight:500;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(fonts/EBGaramond-400.ttf);font-weight:400;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(fonts/EBGaramond-Italic-400.ttf);font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:"EB Garamond";src:url(fonts/EBGaramond-600.ttf);font-weight:600;font-display:swap}
:root{--navy:#1F2A44;--gold:#B8954A;--gold-text:#7A5F24;--parch:#F4EEE1;--ink:#2B2B2B}
*{box-sizing:border-box}
html{font-size:125%;scroll-behavior:smooth}
body{margin:0;background:var(--parch);color:var(--ink);font-family:"EB Garamond",Georgia,serif;line-height:1.6}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;color:var(--navy);line-height:1.15}
h2{font-size:2.2rem;text-align:center;margin:0 0 1.5rem}
h2::after{content:"";display:block;width:4rem;height:2px;background:var(--gold);margin:.6rem auto 0}
a{color:var(--navy)}
a:focus-visible,.btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem 1rem;z-index:9}
.nav{background:var(--navy);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:.8rem 1.5rem;gap:.5rem}
.wordmark{color:var(--parch);text-decoration:none;font-family:"Cormorant Garamond",serif;font-weight:600;letter-spacing:.15em;font-size:1.1rem}
.nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:1.2rem;margin:0;padding:0}
.nav a{color:var(--parch);text-decoration:none;font-size:1rem}.nav a:hover{color:var(--gold)}
section{padding:4rem 1.5rem;max-width:62rem;margin:0 auto}
.hero{max-width:none;background:var(--navy);color:var(--parch);text-align:center;padding:4rem 1.5rem 5rem}
.hero h1{color:var(--parch);font-size:clamp(3rem,9vw,5rem);margin:.5rem 0}
.torch{width:4rem;color:var(--gold)}
.subtitle{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:1.5rem;margin:0}
.byline{letter-spacing:.2em;text-transform:uppercase;font-size:.9rem;color:#E6D5A8}
.date{color:#E6D5A8}
.btn{display:inline-block;background:var(--gold);color:var(--navy);font-weight:600;text-decoration:none;padding:.8rem 1.6rem;border-radius:4px;font-size:1.1rem}
.btn:hover{background:#cfae66}
.promise{text-align:center;font-size:1.35rem;max-width:42rem}
.small{font-size:.9rem;color:#555}
.movements{list-style:none;padding:0;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}
.movements li{background:#fff;border-top:3px solid var(--gold);padding:1rem 1.2rem}
.movements span{display:block;color:var(--gold-text);font-family:"Cormorant Garamond",serif;font-size:1.3rem}
.movements strong{display:block;color:var(--navy);font-size:1.2rem}
.cards{display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));margin-top:1rem}
.cards article{border:1px solid var(--gold);padding:1.2rem;background:#FBF7EE}
.cards h3{margin:0 0 .4rem;font-size:1.6rem}
.excerpt blockquote{font-style:italic;font-size:1.4rem;border-left:3px solid var(--gold);margin:0 auto;max-width:40rem;padding-left:1.2rem}
.about{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:flex-start}
.about p{flex:1 1 20rem;margin:0}
.photo{width:10rem;height:12rem;background:#E8DFCB;border:1px solid var(--gold);display:flex;align-items:center;justify-content:center;color:#555}
.signup{text-align:center;background:#FBF7EE;border:1px solid var(--gold);border-radius:6px;margin:2rem auto}
.embed{width:100%;max-width:30rem;height:150px;border:0;display:none}
footer{background:var(--navy);color:var(--parch);text-align:center;padding:2rem 1.5rem}
footer .small{color:#D9CFB8}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
