:root{--navy:#12284A;--deep:#0E1F3D;--cream:#F5F0E6;--cream2:#EFE8D8;--cream3:#FBF8F1;--line:#D9D0BC;--rust:#B4532A;--peach:#E8A183;--mid:#2F4C75;--soft:#DCE4F0}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--navy);font-family:'EB Garamond',Georgia,serif;font-size:20px;line-height:1.6;overflow-x:hidden}
img{max-width:100%;height:auto}
a{color:inherit}
.sans{font-family:Inter,system-ui,sans-serif}
.eyebrow{font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--rust)}
.on-dark .eyebrow,.eyebrow.peach{color:var(--peach)}
h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;margin:0}
h2{font-size:clamp(36px,4vw,56px);line-height:1.05;margin-top:14px}
.wrap{max-width:1180px;margin:0 auto}
section{padding:96px 6vw}
.skip{position:absolute;left:-999px;top:0;background:var(--navy);color:var(--cream);padding:12px 18px;font-family:Inter,sans-serif;z-index:10}
.skip:focus{left:8px;top:8px}

/* header */
header.nav{display:flex;flex-wrap:wrap;gap:16px 36px;align-items:center;justify-content:space-between;padding:22px 6vw;border-bottom:1px solid var(--line)}
header.nav .brand{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:600;letter-spacing:.01em;text-transform:lowercase;text-decoration:none}
header.nav nav{display:flex;flex-wrap:wrap;gap:10px 30px;font-family:Inter,sans-serif;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
header.nav nav a{text-decoration:none;padding:6px 0}
header.nav nav a:hover,header.nav nav a:focus-visible{color:var(--rust)}

/* buttons */
.btn{display:inline-block;text-decoration:none;font-family:Inter,sans-serif;font-size:14px;font-weight:600;letter-spacing:.04em;padding:15px 26px;min-height:48px;border:1.5px solid transparent;cursor:pointer;text-align:center}
.btn-solid{background:var(--navy);color:var(--cream);border-color:var(--navy)}
.btn-solid:hover,.btn-solid:focus-visible{background:var(--rust);border-color:var(--rust)}
.btn-line{border-color:var(--navy);color:var(--navy);background:transparent}
.btn-line:hover,.btn-line:focus-visible{background:var(--navy);color:var(--cream)}
.btn-rust{background:var(--peach);color:var(--deep);border-color:var(--peach)}
.btn-rust:hover{background:var(--cream);border-color:var(--cream)}
.btn-ghost{background:transparent;color:var(--cream);border-color:var(--peach)}
.btn-ghost:hover{background:var(--peach);color:var(--deep)}
:focus-visible{outline:3px solid var(--rust);outline-offset:3px}
.on-dark :focus-visible{outline-color:var(--peach)}

/* hero */
.hero{display:flex;flex-wrap:wrap;gap:48px 7vw;align-items:center;justify-content:center;padding:72px 6vw 88px}
.hero .copy{flex:1 1 440px;max-width:640px}
.hero h1{margin-top:18px;font-size:clamp(48px,6.4vw,92px);line-height:.98;text-transform:lowercase}
.rule{width:96px;height:2px;background:var(--rust);margin:28px 0}
.sub{font-family:Inter,sans-serif;font-size:15px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;line-height:1.7}
.hero p.lede{margin:26px 0 0;font-size:22px;max-width:560px}
.ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.meta{margin-top:34px;font-size:18px;font-style:italic;color:var(--mid)}
.hero .art{flex:0 1 420px;display:flex;justify-content:center}
.hero .art img{width:100%;max-width:380px;display:block;box-shadow:0 30px 60px rgba(18,40,74,.28),0 6px 14px rgba(18,40,74,.18)}

/* endorsement */
.endorse{padding:64px 6vw;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--cream2)}
.endorse q{display:block;quotes:none;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:clamp(30px,3.6vw,48px);line-height:1.25;max-width:900px;margin:0 auto}
.endorse .by{margin-top:14px}

/* dark sections */
.dark{background:var(--deep);color:var(--cream)}
.dark p{color:var(--soft)}
.flex2{display:flex;flex-wrap:wrap;gap:48px 6vw;align-items:flex-start;justify-content:center}

/* forms */
form.card{flex:1 1 380px;max-width:520px;background:var(--cream);color:var(--navy);padding:36px 32px;display:flex;flex-direction:column;gap:20px;font-family:Inter,sans-serif}
form.card.wide{max-width:none}
.field{display:flex;flex-direction:column;gap:8px}
.field label,.legend{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.field input,.field select,.field textarea{font-family:Inter,sans-serif;font-size:16px;padding:14px;border:1.5px solid var(--navy);background:var(--cream3);color:var(--navy);min-height:48px;border-radius:0;width:100%}
.field textarea{min-height:96px;resize:vertical}
.check{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.5}
.check input{width:22px;height:22px;margin:2px 0 0;flex:none;accent-color:var(--navy)}
.small{font-size:13px;line-height:1.5;color:var(--mid)}
.hp{position:absolute;left:-9999px;height:0;overflow:hidden}

/* book */
.book{display:flex;flex-wrap:wrap;gap:40px 7vw;justify-content:center}
.book .l{flex:1 1 380px;max-width:520px}.book .r{flex:1 1 440px;max-width:620px}
.book h2{font-size:clamp(36px,4vw,56px)}
.book .pull{margin-top:30px;padding-top:26px;border-top:1px solid var(--line);font-family:'Cormorant Garamond',serif;font-style:italic;font-size:30px;line-height:1.3}

/* order */
.order{background:var(--cream3);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;margin-top:44px}
.card-p{background:var(--cream);border:1px solid var(--line);padding:34px 30px;display:flex;flex-direction:column;gap:12px}
.card-p .price{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:48px;line-height:1}
.card-p p{margin:0;font-size:19px}
.card-p .btn{margin-top:auto}
.note-box{margin-top:36px;padding:26px 30px;border:1px solid var(--line);background:var(--cream);font-family:Inter,sans-serif;font-size:15px;line-height:1.7;max-width:860px}
.note-box h3{font-family:Inter,sans-serif;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--mid)}
#order-form{margin-top:56px;max-width:860px;border:1px solid var(--line)}
.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}

/* at a glance */
.glance{background:var(--deep);color:var(--cream);padding:84px 6vw}
.glance .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:36px 24px;margin:44px auto 0;max-width:1180px}
.glance .t{border-top:1px solid #4A6288;padding-top:20px}
.glance .big{font-family:'Cormorant Garamond',serif;font-size:44px;line-height:1.05}
.glance .lab{font-family:Inter,sans-serif;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#C9D4E6;margin-top:8px}
.glance a{text-decoration:none}

/* questions */
.questions ol{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:0 56px}
.questions li{padding:26px 0;border-top:1px solid var(--line)}
.questions .ch{font-family:Inter,sans-serif;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--rust)}
.questions .q{display:block;margin-top:8px;font-family:'Cormorant Garamond',serif;font-size:26px;line-height:1.3;font-style:italic}

/* angles */
.angles{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px;margin-top:48px}
.angle{background:var(--cream3);border:1px solid var(--line);padding:34px 30px;display:flex;flex-direction:column;gap:14px}
.angle h3{font-weight:600;font-size:32px;line-height:1.1}
.angle p{margin:0;font-size:19px}
.angle a{font-family:Inter,sans-serif;font-size:14px;font-weight:600;margin-top:auto}
.topics{display:flex;flex-wrap:wrap;gap:10px;margin:36px 0 0;padding:0;list-style:none}
.topics li{font-family:Inter,sans-serif;font-size:14px;border:1px solid var(--line);background:var(--cream3);padding:9px 16px}

/* author */
.author{background:var(--cream2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.author .in{display:flex;flex-wrap:wrap;gap:44px 6vw;align-items:center}
.author img{width:100%;max-width:340px;display:block;box-shadow:0 18px 40px rgba(18,40,74,.22)}
.author h2{font-size:clamp(40px,4.4vw,64px);line-height:1.02}

/* facts + downloads */
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));column-gap:56px;margin-top:34px}
.facts div{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid var(--line)}
.facts dt{font-family:Inter,sans-serif;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--mid)}
.facts dd{margin:0;text-align:right}
.dls{display:flex;flex-direction:column;border-top:1px solid var(--line);margin-top:34px}
.dls a{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;justify-content:space-between;padding:22px 12px;border-bottom:1px solid var(--line);text-decoration:none}
.dls a:hover{background:var(--cream2)}
.dls .tag{font-family:Inter,sans-serif;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--rust)}

footer{padding:40px 6vw;display:flex;flex-wrap:wrap;gap:12px 40px;justify-content:space-between;align-items:center;font-family:Inter,sans-serif;font-size:13px;color:var(--mid)}
footer a{font-weight:600;color:var(--navy)}

/* simple pages */
.page{max-width:760px;margin:0 auto;padding:72px 6vw 96px}
.page h1{font-size:clamp(40px,5vw,64px);line-height:1.05;margin-bottom:24px}
.page h2{font-size:30px;margin-top:40px}
.page p,.page li{font-size:19px}

@media (max-width:600px){body{font-size:18px}section{padding:64px 6vw}.facts div{flex-direction:column;gap:4px}.facts dd{text-align:left}}
@media print{header.nav,footer,.ctas{display:none}}
