:root{--ink:#1f2a37;--muted:#5b6675;--accent:#7a4e2d;--gold:#c99a3d;--bg:#fbf8f3;--card:#fff;--line:#e8e1d6}
*{box-sizing:border-box}body{margin:0;font:17px/1.6 Georgia,"Times New Roman",serif;color:var(--ink);background:var(--bg)}
a{color:var(--accent)}a:focus,button:focus,input:focus{outline:3px solid var(--gold);outline-offset:2px}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px}
header.top{background:#fff;border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding-top:14px;padding-bottom:14px}
.brand{font-size:1.4rem;font-weight:bold;text-decoration:none;color:var(--ink)}.tagline{display:block;font:0.85rem/1.3 system-ui,sans-serif;color:var(--muted)}
nav a{font:0.95rem system-ui,sans-serif;margin-left:16px;text-decoration:none;color:var(--ink)}nav a:hover{color:var(--accent)}
.hero{background:linear-gradient(135deg,#3b2a1e,#7a4e2d);color:#fff;padding:72px 0 64px}
.hero h1{font-size:clamp(2.2rem,6vw,3.4rem);margin:0 0 8px}.hero p{max-width:640px;font-size:1.15rem}
.verse{border-left:4px solid var(--gold);padding-left:14px;font-style:italic;max-width:640px;margin-top:24px}
.verse cite{display:block;font-style:normal;font-size:0.85rem;opacity:.85;margin-top:4px}
.btn{display:inline-block;background:var(--gold);color:#1f1300;padding:10px 18px;border-radius:6px;text-decoration:none;font:600 0.95rem system-ui,sans-serif;border:0}
section{padding:56px 0}section h2{font-size:1.8rem;margin:0 0 6px}.lead{color:var(--muted);margin-top:0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:22px}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px}
.card h3{margin:6px 0 8px;font-size:1.2rem}.badge{display:inline-block;font:600 0.72rem system-ui,sans-serif;letter-spacing:.05em;text-transform:uppercase;background:#f1e6d3;color:#6b4a1f;padding:3px 8px;border-radius:4px}
.alt{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
form.signup{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}form.signup input{flex:1 1 240px;padding:10px;border:1px solid var(--line);border-radius:6px;font-size:1rem}
form.signup button[disabled]{opacity:.6;cursor:not-allowed}.note{font:0.85rem system-ui,sans-serif;color:var(--muted)}
footer{background:#2a2019;color:#e9dfd2;padding:28px 0;font:0.9rem system-ui,sans-serif}footer a{color:#f3d9a4}
@media (max-width:600px){nav a{margin:0 14px 0 0}.hero{padding:48px 0}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
.layout{display:grid;grid-template-columns:220px minmax(0,1fr);max-width:1320px;margin:0 auto}
.rail{position:sticky;top:0;align-self:start;display:flex;flex-direction:column;gap:2px;padding:24px 12px;font:0.95rem system-ui,sans-serif}
.rail a{padding:8px 12px;border-radius:6px;text-decoration:none;color:var(--ink)}.rail a:hover{background:#f1e6d3;color:var(--accent)}
.content{min-width:0}
@media (max-width:800px){.layout{grid-template-columns:minmax(0,1fr)}.rail{position:static;flex-direction:row;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--line);background:#fff}.rail a{padding:6px 10px}}
.intro,.working{max-width:640px;margin:18px 0}.intro h2,.working h2{font-size:1.2rem;margin:0 0 4px;color:#f3d9a4}
.intro p{margin:0}.working ul{margin:0;padding-left:20px}.working li{margin:2px 0}
.rail a.current{background:#f1e6d3;color:var(--accent);font-weight:600}
.price{font:600 1.05rem system-ui,sans-serif;margin:8px 0}
.credit{font-size:.75rem;opacity:.8;margin:8px 0 0}
.pimg{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:6px;background:#fbf8f3;margin-bottom:10px}
.previewnote{background:#fff4dc;border:1px solid var(--gold);padding:8px 12px;font:0.9rem system-ui,sans-serif}
.tablewrap{overflow-x:auto}.carttable{width:100%;border-collapse:collapse;font:0.95rem system-ui,sans-serif;margin:16px 0}
.carttable th,.carttable td{border-bottom:1px solid var(--line);padding:8px;text-align:left;vertical-align:middle}
.qty{width:56px;padding:6px;border:1px solid var(--line);border-radius:0;text-align:center;font-size:1rem}
.qbtn{width:32px;height:32px;border:1px solid var(--accent);background:#fff;color:var(--accent);font-size:1.1rem;cursor:pointer;margin:0 2px;border-radius:0}
.link{background:none;border:0;color:var(--accent);text-decoration:underline;cursor:pointer;font:inherit;padding:4px}
.subtotal{font:1.1rem system-ui,sans-serif}
.steps{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:12px 0 20px;font:0.85rem system-ui,sans-serif}
.steps li{padding:6px 10px;border:1px solid var(--line);background:#fff}.steps li.on{background:var(--accent);color:#fff;border-color:var(--accent)}.steps li.done{background:#f1e6d3}
.form label,.paybox label{display:block;font:0.9rem system-ui,sans-serif;margin:10px 0;max-width:420px}
.form input,.paybox input{display:block;width:100%;padding:10px;margin-top:4px;border:1px solid #a0522d;border-radius:0;font-size:1rem}
.form input:focus{box-shadow:0 0 0 4px rgba(160,82,45,.25);outline:none}
.paybox{max-width:460px;border:1px solid var(--line);background:#fff;padding:16px}.paybox input[disabled]{background:#f3efe8;color:#6b6b6b}
.payrow{display:flex;gap:12px}.payrow label{flex:1}
.paybanner{background:#7a4e2d;color:#fff;padding:10px 12px;font:600 0.9rem system-ui,sans-serif;margin:0 0 8px}
.error{color:#a3261f;font:0.9rem system-ui,sans-serif;min-height:1.2em}
/* v1.0.4 welcome hero: full-bleed photo (edge to edge, no container), field report card overlaid lower left */
@font-face{font-family:"Special Elite";src:url(/fonts/specialelite.woff2) format("woff2");font-display:swap}
.herophoto{position:relative;width:100%;margin:0;overflow:hidden;background:#1a120c;padding:56px 0 300px;min-height:min(92vh,900px)}
.herobg{position:absolute;inset:0;z-index:0;margin:0;padding:0}
.herobg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%;display:block;max-width:none}
.herophoto::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(26,18,12,.9) 0%,rgba(42,30,20,.72) 38%,rgba(59,42,30,.25) 70%,rgba(26,18,12,.35) 100%),linear-gradient(0deg,rgba(26,18,12,.55),rgba(26,18,12,0) 40%)}
.herogrid{position:relative;z-index:2}.herotext{max-width:620px;text-shadow:0 1px 3px rgba(0,0,0,.7)}
.fieldreport dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:2px 10px}.fieldreport dl div{display:flex;gap:6px;flex-wrap:wrap}
.fieldreport dl div:nth-child(-n+3){grid-column:1/-1}.fieldreport dt{color:#f3c27a}.fieldreport dd{margin:0}
.herobg{animation:herofade 1s ease-out both}.fieldreport{animation:cardfade 1s ease-out .35s both}
@keyframes herofade{from{opacity:0}to{opacity:1}}
@keyframes cardfade{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}
@media (prefers-reduced-motion:reduce){.herobg,.fieldreport{animation:none}}
.soundtoggle{position:absolute;top:12px;right:12px;z-index:4;width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(243,217,164,.45);border-radius:50%;background:rgba(26,18,12,.5);color:#f3d9a4;cursor:pointer;opacity:.75;padding:0}
.soundtoggle:hover,.soundtoggle:focus-visible{opacity:1}.soundtoggle .cross{display:none}.soundtoggle.muted .cross{display:inline}.soundtoggle.muted .waves{display:none}
.fieldreport dd.redacted{background:#0d0907;color:#fff3d6;padding:0 6px;letter-spacing:.12em}
/* Field report typed directly on the photo, lower right; no backing, box, stamp or tape; glow for legibility */
.fieldreport{position:absolute;z-index:3;right:max(24px,calc((100% - 1080px)/4));bottom:40px;width:300px;font-family:"Special Elite","Courier New",monospace;font-size:17px;line-height:1.4;color:#fff3d6;background:none;border:0;box-shadow:none;padding:0;text-shadow:0 0 2px #000,0 0 6px rgba(0,0,0,.95),0 0 12px rgba(0,0,0,.8),0 0 18px rgba(255,170,60,.55)}
.fieldreport::before{content:none}
.frhead{margin:0 0 6px;font-size:1.25rem;letter-spacing:.14em;color:#ffd9a0}
.frstatus{margin:8px 0 0;letter-spacing:.04em;color:#ffd9a0}.frlabel{color:#f3c27a}
.herophoto::before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse 45% 40% at 88% 85%,rgba(10,7,5,.55),rgba(10,7,5,0) 70%)}
@media (max-width:900px){
.herophoto{display:flex;flex-direction:column;padding:0;min-height:0}
.herophoto .wrap.herogrid{order:1;padding-top:40px;padding-bottom:32px}
.herobg{order:2;position:relative;inset:auto;width:100%;aspect-ratio:3/4}
.herophoto::after{background:linear-gradient(180deg,rgba(26,18,12,.95) 0%,rgba(26,18,12,.92) 45%,rgba(26,18,12,.25) 60%,rgba(26,18,12,.35) 100%)}
.fieldreport{right:1.5%;bottom:calc(100vw * 4 / 3 * .15);width:32%;font-size:13px;line-height:1.3}
.frhead{font-size:13px;letter-spacing:.08em}.fieldreport dl{grid-template-columns:1fr}.fieldreport dl div{grid-column:1/-1}
.herophoto::before{background:radial-gradient(ellipse 45% 22% at 82% 75%,rgba(10,7,5,.6),rgba(10,7,5,0) 70%)}
}
@media (min-width:601px) and (max-width:900px){.fieldreport{font-size:16px;width:31%}.frhead{font-size:17px}}
