
:root{--bg:#080c0e;--gold:#e4b566;--cream:#f6f0e6;--muted:#b9b8b4;--panel:#131a1d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--cream);font:16px/1.7 Arial,sans-serif}a{color:inherit;text-decoration:none}header{position:sticky;top:0;z-index:20;background:#080c0ef0;border-bottom:1px solid #ffffff20;display:flex;align-items:center;justify-content:space-between;padding:17px max(5%,calc((100vw - 1350px)/2));gap:20px}.brand{font-family:Georgia,serif;letter-spacing:.07em;font-size:20px;font-weight:bold}.brand span{display:block;font:10px Arial,sans-serif;letter-spacing:.3em;color:var(--gold);text-transform:uppercase}nav{display:flex;gap:22px;align-items:center}nav a{font-size:12px;letter-spacing:.12em;text-transform:uppercase}nav a:hover{color:var(--gold)}.menu{display:none;background:none;border:1px solid #777;color:white;padding:8px 12px}.hero{min-height:680px;display:grid;grid-template-columns:1fr 1fr;align-items:center;background:radial-gradient(ellipse at 85% 25%,#78502b4d,transparent 55%),linear-gradient(130deg,#0c1519,#070a0b)}.hero-art{align-self:stretch;min-height:570px;background:url('james-ross-black-shirt.jpg') center center/cover no-repeat;mask-image:linear-gradient(to right,#000 82%,transparent 100%)}.hero-copy{padding:65px 8% 80px 5%}.eyebrow{font-size:12px;letter-spacing:.4em;color:var(--gold);text-transform:uppercase}h1,h2,h3{font-family:Georgia,serif;line-height:1.1}h1{font-size:clamp(52px,5.7vw,92px);margin:20px 0;color:var(--cream)}h1 em{color:var(--gold);font-style:normal}h2{font-size:clamp(34px,4vw,54px);margin:10px 0 22px}h3{font-size:26px}p{color:var(--muted)}.hero-copy p{max-width:580px;font-size:18px}.buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.btn{display:inline-block;padding:14px 24px;background:var(--gold);color:#12110d;font-weight:bold;letter-spacing:.07em;text-transform:uppercase;font-size:12px;border:1px solid var(--gold)}.btn.outline{background:transparent;color:var(--cream)}.btn:hover{filter:brightness(1.13)}.wrap{max-width:1220px;margin:auto;padding:90px 26px}.center{text-align:center}.center p{margin:0 auto 34px;max-width:760px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:var(--panel);border:1px solid #ffffff18;padding:35px;min-height:290px}.card .num{color:var(--gold);font-size:12px;letter-spacing:.2em}.card a{color:var(--gold);font-size:13px;font-weight:bold;text-transform:uppercase;letter-spacing:.08em}.statement{padding:90px 25px;text-align:center;background:linear-gradient(110deg,#171f21,#392c1d 60%,#171b1b)}.statement blockquote{max-width:900px;margin:0 auto;font:italic clamp(27px,3.6vw,48px)/1.3 Georgia,serif}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.feature{background:#171d1f;border-left:3px solid var(--gold);padding:45px}.feature strong{color:var(--gold)}footer{border-top:1px solid #ffffff26;padding:38px 5%;text-align:center;color:#a7aaa9;font-size:13px}footer b{color:var(--gold)}@media(max-width:900px){header{padding:15px 5%}.menu{display:block}nav{display:none;position:absolute;top:100%;left:0;right:0;background:#101619;padding:20px 6%;flex-direction:column;align-items:flex-start}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-art{min-height:430px;mask-image:linear-gradient(to bottom,#000 82%,transparent 100%);background-position:center 30%}.hero-copy{padding:10px 7% 65px}.cards,.split{grid-template-columns:1fr}.wrap{padding:65px 24px}}@media(max-width:480px){.hero-art{min-height:300px}h1{font-size:48px}.card{min-height:0}}

.pagehero{padding:115px max(6%,calc((100vw - 1100px)/2)) 65px;background:radial-gradient(ellipse at 80% 10%,#6a472b66,transparent 60%),#101719}.pagehero h1{font-size:clamp(42px,6vw,78px);max-width:950px}.pagehero p{max-width:750px;font-size:19px}.reading{max-width:840px;margin:auto;padding:65px 25px 100px}.reading h2{font-size:34px;margin-top:45px}.reading p{font-size:18px}.reading a:not(.btn){color:var(--gold);text-decoration:underline}.bookphoto{max-width:100%;border:1px solid #ffffff20;border-radius:3px}.smallnote{font-size:14px;color:#c7bca9}.formgrid{display:grid;gap:14px;max-width:650px}.formgrid input,.formgrid textarea,.formgrid select{width:100%;background:#172023;color:white;border:1px solid #8a8985;padding:15px;font:inherit}.formgrid label{font-weight:bold}.formgrid button{cursor:pointer;justify-self:start}.pill{display:inline-block;border:1px solid #a98b60;padding:7px 12px;color:var(--gold);font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin:5px 5px 5px 0}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* My Story — long-form editorial layout */
.story-hero{position:relative;overflow:hidden;background:linear-gradient(90deg,#0a0f11 0%,#101719e8 60%,#1c1813b8 100%)}.story-hero h1 em{font-style:normal;color:var(--gold)}.story-lead{color:var(--gold)!important;font-weight:bold;letter-spacing:.05em}.story-lead span{font-weight:normal;color:var(--muted)}.story-opening{font:italic clamp(21px,2.6vw,30px)/1.5 Georgia,serif!important;color:var(--cream)!important;max-width:800px!important}.story-reading{max-width:920px}.story-intro{padding-bottom:28px;border-bottom:1px solid #e4b56666}.story-section{padding:28px 0 36px;border-bottom:1px solid #ffffff1b}.story-section h2{margin:10px 0 25px;font-size:clamp(30px,4vw,43px)}.story-kicker{font-size:12px;letter-spacing:.28em;color:var(--gold);font-weight:bold}.story-section p{margin:0 0 20px;line-height:1.9}.story-quote{padding:55px 20px;text-align:center;color:var(--gold);font:italic clamp(27px,4vw,45px)/1.4 Georgia,serif}.story-book{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;background:#141c1e;padding:25px;margin:36px 0 45px;border:1px solid #e4b56655}.story-book img{display:block;width:100%;height:auto}.story-book h3{margin:12px 0}.story-book p{font-size:16px}.story-closing{margin-top:60px;padding:50px 35px;background:linear-gradient(120deg,#1a2223,#34291d);border-left:4px solid var(--gold)}.story-closing h2{margin-top:15px}.story-closing p{color:var(--cream)}.story-closing .signature{color:var(--gold);font-family:Georgia,serif;font-style:italic;font-size:23px}@media(max-width:650px){.story-book{grid-template-columns:1fr}.story-closing{padding:36px 23px}.story-hero{padding-top:80px}.story-reading{padding-top:35px}}

/* Mother tribute on My Story */
.mother-photo{margin:2.2rem auto;text-align:center;max-width:680px}
.mother-photo img{display:block;width:100%;height:auto;border-radius:14px;border:1px solid rgba(206,162,87,.36);box-shadow:0 20px 50px rgba(0,0,0,.28)}
.mother-photo figcaption{padding:12px;color:#cda96c;font-size:.92rem;letter-spacing:.04em}
.mother-tribute{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:2rem;margin:3rem 0;padding:1.6rem;background:linear-gradient(145deg,#211b16,#101011);border:1px solid rgba(206,162,87,.32);border-radius:18px}
.mother-tribute .mother-photo{margin:0}.mother-tribute h3{font-size:clamp(1.5rem,3vw,2.3rem);color:#dfb979;line-height:1.2}.mother-tribute p{line-height:1.8}
@media(max-width:720px){.mother-tribute{grid-template-columns:1fr;padding:1rem;gap:1rem}.mother-tribute-message{padding:.4rem}.mother-photo{margin:1.5rem auto}}

/* My Story: restrained mother-and-son portrait, responsive without changing other images */
.mother-photo-main{width:68%;max-width:460px;margin:2.2rem auto 2.6rem;}
.mother-photo-main img{border:1px solid rgba(228,181,102,.75);border-radius:10px;box-shadow:0 15px 38px rgba(0,0,0,.42);}
@media(max-width:720px){.mother-photo-main{width:82%;max-width:360px;margin:1.7rem auto 2rem;}}
@media(max-width:420px){.mother-photo-main{width:86%;}}
