:root { --ink:#292929; --red:#8f1515; --nav:#303030; --line:#dedede; }
* { box-sizing:border-box; }
html,body { min-height:100%; }
body { min-height:100vh; margin:0; display:flex; flex-direction:column; background-color:#eeeeee; background-image:url('assets/woi-background-light.jpg'); background-repeat:no-repeat; background-position:center top; background-size:cover; background-attachment:fixed; color:var(--ink); font-family:Georgia,'Times New Roman',serif; font-size:22px; line-height:1.55; }
header { flex:0 0 auto; background:#111; color:#fff; text-align:center; padding:27px 16px 24px; }
header h1 { color:#fff; font-size:clamp(39px,5vw,63px); margin:0; line-height:1.13; }
header p { margin:8px 0 0; font-style:italic; font-size:clamp(19px,2.6vw,26px); }
nav { display:flex; flex-wrap:wrap; justify-content:center; background:var(--nav); }
nav a { color:#fff; text-decoration:none; padding:15px 18px; font:18px Arial,sans-serif; }
nav a:hover,nav a[aria-current="page"] { background:#5a1a1a; color:#fff; }
main { flex:1 0 auto; width:100%; max-width:1125px; margin:0 auto; background:rgba(255,255,255,.94); padding:47px clamp(28px,5vw,67px) 67px; box-shadow:0 0 24px #00000018; }
h2,h3 { color:var(--red); line-height:1.24; }
h2 { font-size:clamp(33px,3vw,44px); margin:0 0 20px; }
h3 { font-size:27px; margin:35px 0 11px; }
p { margin:0 0 19px; }
li { margin:7px 0; }
a { color:#861010; }
a:hover { color:#5b0b0b; }
.hero { display:grid; grid-template-columns:minmax(255px,360px) 1fr; gap:44px; align-items:start; }
.cover { width:100%; height:auto; display:block; border:1px solid #aaa; box-shadow:0 7px 20px #0003; }
.buttons { display:flex; flex-wrap:wrap; gap:11px; margin-top:25px; }
.button { background:var(--red); color:white; padding:13px 20px; text-decoration:none; border-radius:3px; font:bold 18px Arial,sans-serif; display:inline-block; }
.button:hover { background:#611010; color:white; }
.button.secondary { background:#444; }
.lead { font-size:25px; }
.callout { border-left:5px solid var(--red); padding:18px 23px; background:#f7f1f1; margin:28px 0; }
.card { border:1px solid var(--line); padding:21px 25px; margin:19px 0; }
.card h3 { margin-top:0; }
.card p:last-child { margin-bottom:0; }
.resource-list { list-style:none; padding:0; }
.resource-list li { padding:17px 0; border-bottom:1px solid var(--line); }
.resource-list a { font-weight:bold; }
.small { font-size:18px; color:#555; }
footer { flex:0 0 auto; margin-top:auto; text-align:center; background:rgba(227,227,227,.96); padding:19px; font-size:16px; }
@media(max-width:690px) { body { font-size:17px; background-attachment:scroll; } header { padding:21px 13px 18px; } header h1 { font-size:31px; } header p { font-size:17px; } .hero { grid-template-columns:1fr; gap:25px; } .hero .cover { max-width:275px; margin:0 auto 7px; } nav a { padding:11px; font-size:14px; } main { padding:27px 20px 39px; } h2 { font-size:27px; } h3 { font-size:21px; } .lead { font-size:19px; } .button { font-size:16px; padding:11px 15px; } }
