:root{--sand:#F6EFE4;--ink:#24302C;--palm:#2F5D50;--sunset:#B8532E;--teak:#8E6A49;--mist:#DCE6E1;--card:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--sand);color:var(--ink);font:18px/1.6 Georgia,serif}
img{display:block;width:100%;height:100%;object-fit:cover}
a{color:inherit;text-decoration:none}
.sans{font-family:system-ui,-apple-system,sans-serif}
nav{position:sticky;top:0;z-index:20;background:#fffffff2;backdrop-filter:blur(6px);border-bottom:1px solid #0001;display:flex;align-items:center;gap:22px;padding:12px 24px;font:600 15px system-ui}
nav .logo{font:700 20px Georgia,serif;color:var(--palm);margin-right:auto}
nav a:hover{color:var(--palm)}
.btn{display:inline-block;background:var(--sunset);color:#fff;padding:11px 26px;border-radius:8px;font:700 16px system-ui;box-shadow:0 3px 10px #b8532e55;transition:.2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #b8532e66}
.btn.big{padding:15px 38px;font-size:19px}
.ghost{display:inline-block;border:2px solid #fff;color:#fff;padding:13px 30px;border-radius:8px;font:700 17px system-ui}
.hero{position:relative;height:78vh;min-height:480px;color:#fff}
.hero img{position:absolute;inset:0}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 20%,#10201cd9)}
.hero .in{position:absolute;z-index:2;left:0;right:0;bottom:0;max-width:1100px;margin:auto;padding:0 24px 56px}
.hero h1{font-size:clamp(34px,6vw,60px);line-height:1.1;margin:0 0 12px;max-width:760px}
.hero p{max-width:620px;font-size:20px;margin:0 0 22px}
.wrap{max-width:1100px;margin:auto;padding:64px 24px}
h2{color:var(--palm);font-size:clamp(28px,4vw,38px);margin:0 0 8px}
.lead{max-width:640px;opacity:.85;margin:0 0 30px}
.tag{font:700 12px system-ui;letter-spacing:.1em;color:var(--teak);text-transform:uppercase}
/* program tiles */
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tile{position:relative;border-radius:16px;overflow:hidden;min-height:430px;color:#fff;display:flex;align-items:flex-end;transition:.25s;box-shadow:0 4px 18px #0003}
.tile:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0004}
.tile img{position:absolute;inset:0;transition:.4s}.tile:hover img{transform:scale(1.05)}
.tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 25%,#0f1f1bef)}
.tile .t{position:relative;z-index:2;padding:26px}
.tile h3{font-size:30px;margin:2px 0 4px;line-height:1.15}.tile .d{font:700 17px system-ui;color:#ffe3c9;margin-bottom:10px}
.tile p{margin:0 0 16px;font-size:17px}
.mini{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}
.mini a{display:flex;gap:16px;align-items:center;background:var(--card);border-radius:14px;padding:14px;box-shadow:0 2px 10px #0002;transition:.2s}
.mini a:hover{transform:translateY(-3px)}.mini img{width:110px;height:90px;border-radius:10px;flex:none}
.mini b{font:700 17px system-ui;color:var(--palm);display:block}.mini span{font:15px system-ui}
.mini em{font:700 14px system-ui;color:var(--sunset);font-style:normal}
/* squares */
.band{background:var(--mist)}
.squares{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.sq{background:var(--card);border-radius:14px;padding:22px 18px;box-shadow:0 2px 10px #0002;text-align:center;transition:.2s}
.sq:hover{transform:translateY(-4px)}
.sq .n{font:700 40px Georgia;color:var(--sunset);line-height:1}.sq .l{font:600 15px/1.35 system-ui;margin-top:8px}
/* day accordion */
details.day{background:var(--card);border-radius:12px;margin:12px 0;box-shadow:0 2px 8px #0002;overflow:hidden}
details.day summary{cursor:pointer;padding:18px 22px;font:700 18px system-ui;color:var(--palm);list-style:none;display:flex;justify-content:space-between}
details.day summary:after{content:"+";font-size:26px;line-height:1;color:var(--sunset)}details[open].day summary:after{content:"–"}
.tl{margin:0;padding:0 22px 18px;list-style:none;font:16px/1.4 system-ui}
.tl li{display:flex;gap:14px;padding:9px 0;border-top:1px solid #0001}.tl li b{width:96px;flex:none;color:var(--teak)}
/* strip */
.strip{display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:210px;gap:10px}
.strip div{border-radius:12px;overflow:hidden}.strip div:first-child{grid-column:span 2;grid-row:span 2}
.strip div img{transition:.4s}.strip div:hover img{transform:scale(1.06)}
/* leads */
.leads{display:grid;grid-template-columns:300px 1fr;gap:36px;align-items:center}
.leads .ph{border-radius:16px;overflow:hidden;height:380px;box-shadow:0 4px 18px #0003}
.cred{display:inline-block;background:var(--palm);color:#fff;border-radius:8px;padding:10px 16px;font:600 15px system-ui;margin-top:8px}
.cta{background:var(--palm);color:#fff;text-align:center}.cta h2{color:#fff}
footer{padding:26px;text-align:center;font:14px system-ui;color:var(--teak)}
.float{position:fixed;right:18px;bottom:18px;z-index:30}
@media(max-width:820px){.tiles,.mini,.leads{grid-template-columns:1fr}.squares{grid-template-columns:1fr 1fr}.strip{grid-template-columns:1fr 1fr}.strip div:first-child{grid-column:span 2;grid-row:span 1}.leads .ph{height:300px}nav a:not(.btn){display:none}.hero{height:70vh}}

.pagehero{position:relative;height:56vh;min-height:360px;color:#fff}.pagehero img{position:absolute;inset:0}
.pagehero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 15%,#10201cdd)}
.pagehero .in{position:absolute;z-index:2;left:0;right:0;bottom:0;max-width:1100px;margin:auto;padding:0 24px 44px}
.pagehero h1{font-size:clamp(30px,5vw,50px);line-height:1.12;margin:0 0 10px;max-width:820px}.pagehero p{max-width:680px;font-size:19px;margin:0 0 18px}
.cap{font:13px system-ui;color:var(--teak);text-align:center;margin:8px 0 0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.cards.two{grid-template-columns:1fr 1fr}.cards.four{grid-template-columns:repeat(4,1fr)}
.card{background:var(--card);border-radius:14px;overflow:hidden;box-shadow:0 2px 12px #0002;transition:.2s}.card:hover{transform:translateY(-4px)}
.card .ph{height:190px}.card .tx{padding:18px 20px}.card h3{margin:0 0 6px;color:var(--palm);font-size:21px}.card p{margin:0;font-size:16px;line-height:1.5}
.card .num{font:700 34px Georgia;color:var(--sunset);line-height:1}
.glance{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.glance div{background:var(--card);border-radius:12px;padding:16px 18px;box-shadow:0 2px 8px #0002;font:15px/1.4 system-ui}
.glance b{display:block;font:700 12px system-ui;letter-spacing:.08em;text-transform:uppercase;color:var(--teak);margin-bottom:4px}
details.q{background:var(--card);border-radius:12px;margin:10px 0;box-shadow:0 2px 8px #0002}
details.q summary{cursor:pointer;padding:16px 22px;font:700 17px system-ui;color:var(--palm);list-style:none;display:flex;justify-content:space-between;gap:14px}
details.q summary:after{content:"+";font-size:24px;line-height:1;color:var(--sunset)}details[open].q summary:after{content:"–"}
details.q div{padding:0 22px 18px;font:16px/1.55 system-ui}
.quote{background:var(--card);border-radius:14px;padding:26px 28px;box-shadow:0 2px 12px #0002;border-left:6px solid var(--sunset);font-size:17px;line-height:1.6}
.quote b{display:block;margin-top:12px;font:700 15px system-ui;color:var(--palm)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;counter-reset:s}
.steps div{background:var(--card);border-radius:12px;padding:18px;box-shadow:0 2px 8px #0002;font:15px/1.45 system-ui;position:relative;padding-top:44px}
.steps div:before{counter-increment:s;content:counter(s);position:absolute;top:10px;left:16px;width:28px;height:28px;border-radius:50%;background:var(--palm);color:#fff;font:700 15px/28px system-ui;text-align:center}
.formbox{max-width:560px;margin:0 auto;background:var(--card);border-radius:16px;padding:34px;box-shadow:0 6px 24px #0003}
.formbox .prog{font:600 14px system-ui;color:var(--teak);margin-bottom:10px}.bar2{height:6px;background:var(--mist);border-radius:3px;margin-bottom:22px}.bar2 i{display:block;height:100%;background:var(--palm);border-radius:3px;transition:.3s}
.formbox h2{font-size:26px}.formbox input,.formbox .opt{width:100%;padding:13px 14px;border:2px solid var(--mist);border-radius:8px;font:17px system-ui;margin:8px 0;display:block;background:#fff}
.formbox .opt{cursor:pointer;font-weight:600;color:var(--palm)}.formbox .opt:hover{border-color:var(--palm)}.formbox .opt.sel{background:var(--palm);color:#fff;border-color:var(--palm)}
.formbox .helper{font:14px system-ui;color:var(--teak)}.fnav{display:flex;justify-content:space-between;margin-top:20px}.fnav button{font:700 16px system-ui;border:0;border-radius:8px;padding:12px 28px;cursor:pointer}
.fnav .back{background:var(--mist);color:var(--palm)}.fnav .next{background:var(--sunset);color:#fff}.fine{font:14px system-ui;color:var(--teak);text-align:center;margin-top:14px}
.gift{display:grid;grid-template-columns:70px 1fr;gap:18px;align-items:start;background:var(--card);border-radius:14px;padding:22px;box-shadow:0 2px 12px #0002;margin-bottom:16px}
.gift .no{font:700 44px Georgia;color:var(--sunset);line-height:1}.gift h3{margin:0 0 4px;color:var(--palm)}.gift a.btn{margin-top:10px}
.covers{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:14px}.covers img{height:210px;object-fit:contain;background:#fff;border-radius:8px;padding:6px;box-shadow:0 2px 8px #0002}.covers span{display:block;font:13px/1.35 system-ui;text-align:center;margin-top:6px}
nav a.aava{color:var(--teak);border:1px solid var(--teak);padding:5px 12px;border-radius:6px;font-size:14px}nav a.aava:hover{background:var(--teak);color:#fff}@media(max-width:820px){nav a.aava{display:inline-block!important;font-size:12px;padding:4px 8px}}nav .logo{line-height:1.05}nav .logo small{display:block;font:600 11px/1.2 system-ui;letter-spacing:.12em;text-transform:uppercase;color:var(--teak);margin-top:3px}.card.clk{cursor:pointer}.card .more{display:inline-block;margin-top:8px;font:700 14px system-ui;color:var(--sunset)}.card.clk:focus{outline:3px solid var(--sunset)}.modal{position:fixed;inset:0;background:#000b;z-index:60;display:flex;align-items:center;justify-content:center;padding:16px}.modal[hidden]{display:none}.mbox{position:relative;background:var(--sand);border-radius:16px;max-width:760px;width:100%;max-height:92vh;overflow:auto;box-shadow:0 10px 40px #0008}.mph{height:300px;overflow:hidden}.mtx{padding:24px 28px 30px}.mtx h3{font-size:28px;color:var(--palm);margin:0 0 10px}.mtx p{margin:0 0 18px}.mx{position:absolute;right:12px;top:10px;z-index:3;background:#fff;border:0;border-radius:50%;width:38px;height:38px;font-size:24px;cursor:pointer;box-shadow:0 2px 8px #0004}.arow{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:560px){.arow{grid-template-columns:1fr}}.prow{display:grid;grid-template-columns:200px 1fr;gap:12px}.formbox select{width:100%;padding:13px 10px;border:2px solid var(--mist);border-radius:8px;font:16px system-ui;margin:8px 0;background:#fff}@media(max-width:560px){.prow{grid-template-columns:1fr}}.gmain{height:360px;overflow:hidden;background:#000}.gmain img{width:100%;height:100%;object-fit:cover}.gthumbs{display:flex;gap:8px;padding:10px 14px 0;overflow-x:auto}.gthumbs img{width:84px;height:60px;object-fit:cover;border-radius:6px;cursor:pointer;opacity:.7;border:2px solid transparent;flex:none}.gthumbs img:hover,.gthumbs img.on{opacity:1;border-color:var(--sunset)}.tabnote-unused{position:fixed;left:12px;bottom:12px;z-index:40;background:#000a;color:#fff;font:12px system-ui;padding:6px 10px;border-radius:6px}
@media(max-width:820px){.cards,.cards.two,.cards.four,.steps,.covers,.glance{grid-template-columns:1fr 1fr}.pagehero{height:46vh}.formbox{padding:22px}}
@media(max-width:560px){.cards,.cards.two,.cards.four,.steps,.covers,.glance{grid-template-columns:1fr}}
/* ---- builder additions (2026-11-15) ---- */
:root{--teak:#7A5A3C}
picture{display:contents}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:#fff;color:var(--palm);padding:10px 16px;border-radius:8px;font:700 15px system-ui}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--sunset);outline-offset:2px}
.btn{border:0;cursor:pointer;font-family:system-ui}
button.btn:focus-visible,a.btn:focus-visible{outline-color:var(--ink)}
nav{flex-wrap:wrap;row-gap:6px}
nav a[aria-current="page"]:not(.btn):not(.logo){color:var(--palm);text-decoration:underline;text-underline-offset:5px}
@media(max-width:820px){nav a:not(.btn):not(.logo){display:inline-block!important;font-size:14px}nav{gap:10px 14px;padding:10px 16px}nav .logo{width:100%}}
.card.clk{cursor:pointer}
.card.clk:focus-visible{outline:3px solid var(--sunset)}
dialog.modal{position:fixed;inset:0;margin:0;border:0;padding:16px;width:100%;height:100%;max-width:none;max-height:none;background:transparent;color:inherit;align-items:center;justify-content:center;overflow:hidden}
dialog.modal:not([open]){display:none}
dialog.modal[open]{display:flex}
dialog.modal::backdrop{background:#000b}
body.lock{overflow:hidden}
.gslide[hidden]{display:none}
.gslide{height:100%}
.gmain .gslide img{width:100%;height:100%;object-fit:cover}
.gthumb{padding:0;border:2px solid transparent;border-radius:6px;background:none;cursor:pointer;opacity:.7;flex:none;line-height:0}
.gthumb:hover,.gthumb.on{opacity:1;border-color:var(--sunset)}
.gthumb img{width:84px;height:60px;border-radius:4px}
.gthumbs{padding-bottom:4px}
.credit{font-size:13px;opacity:.8;margin-top:8px}
.mx:focus-visible{outline:3px solid var(--sunset)}
.mtx{padding-bottom:30px}
footer p{margin:6px 0}
footer .fnav2 a{text-decoration:underline;text-underline-offset:3px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.booktop{text-align:center;margin-bottom:28px}.booktop h1{color:var(--palm);font-size:clamp(30px,5vw,44px);margin:6px 0}.booktop .lead{margin:auto}
.steps.stepsthree{grid-template-columns:repeat(3,1fr);margin:0 auto 30px;max-width:900px}
@media(max-width:820px){.steps.stepsthree{grid-template-columns:1fr}}
.formbox fieldset{border:0;margin:0;padding:0;min-width:0}
.formbox legend{padding:0;width:100%}
.formbox legend h2{font-size:26px;margin:0 0 6px}
.formbox .opt{position:relative}
.formbox .opt input{position:absolute;opacity:0;width:1px;height:1px;margin:0;padding:0;border:0}
.formbox .opt:has(input:checked){background:var(--palm);color:#fff;border-color:var(--palm)}
.formbox .opt:has(input:focus-visible){outline:3px solid var(--sunset);outline-offset:2px}
.formbox .opt span{display:block}
.formbox input:focus-visible,.formbox select:focus-visible{outline:3px solid var(--sunset);outline-offset:1px}
.formbox input:user-invalid,.formbox select:user-invalid{border-color:#b3261e}
.arow>div,.prow>div{min-width:0}
.hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.formerr{background:#fbe9e7;color:#8c1d13;border-radius:8px;padding:10px 14px;font:15px system-ui;margin:14px 0 0}
.tsbox{margin-top:14px;min-height:0}
.fnav{gap:10px;flex-wrap:wrap}
html.js .fstep{display:none}html.js .fstep.cur{display:block}
html:not(.js) .formtop,html:not(.js) .fnav .back,html:not(.js) .fnav .next:not(.submit){display:none}
html:not(.js) .fstep{margin-bottom:26px}
html.js .fnav .submit{display:none}html.js.last .fnav .submit{display:inline-block}html.js.last .fnav #fnext{display:none}
html.js .fine{display:none}html.js.last .fine{display:block}
.fnav button:disabled{opacity:.6;cursor:wait}
.fnav .back,.fnav .next{font-family:system-ui}
.factspage{max-width:900px}.factspage h1{color:var(--palm);font-size:clamp(30px,5vw,44px);margin:0 0 14px}.factspage h2{margin-top:36px}
.tablewrap{overflow-x:auto;margin:20px 0}
table{border-collapse:collapse;width:100%;font:15px/1.45 system-ui;background:var(--card);border-radius:12px}
th,td{border-bottom:1px solid #0002;padding:10px 12px;text-align:left;vertical-align:top}
thead th{color:var(--palm)}
.factcards{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:820px){.factcards{grid-template-columns:1fr}}
.factcard{background:var(--card);border-radius:14px;padding:18px 22px;box-shadow:0 2px 10px #0002;font:15px/1.5 system-ui}.factcard h3{margin:0 0 8px;color:var(--palm);font:700 18px Georgia,serif}.factcard ul{margin:0;padding-left:18px}.factcard li{margin:5px 0}
.factlinks{margin-top:30px;font:15px system-ui}.factlinks a{text-decoration:underline}
.covers img{width:100%}
.gift a.btn{margin-top:10px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}.tile img,.strip div img{transition:none!important}}
@media(max-width:820px){.hero{height:70vh}}
