:root{--bg:#f1f0e8;--ink:#1c2620;--moss:#2f4a3a;--sand:#e4e3d3;--line:#d3d2c0;--mut:#68705f}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;scroll-padding-top:80px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{font:400 16px/1.65 Jost,system-ui,sans-serif;color:var(--ink);background:var(--bg)}
img{display:block;max-width:100%}a{color:inherit}:focus-visible{outline:2px solid var(--moss);outline-offset:2px}
h1,h2,h3,.logo,.from b{font-family:Fraunces,Georgia,serif;font-weight:400;line-height:1.12;letter-spacing:-.01em}
h1{font-size:clamp(2.6rem,7vw,5rem)}h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:.5em}h3{font-size:1.6rem;margin-bottom:.3em}
p{margin-bottom:1em}.mut{color:var(--mut)}.small{font-size:.85rem}.step{color:var(--mut);margin-bottom:.4rem}
.top{position:fixed;inset:0 0 auto;z-index:9;display:flex;align-items:center;justify-content:space-between;padding:14px 5vw;background:rgba(241,240,232,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.logo{font-size:1.4rem;letter-spacing:.2em;text-decoration:none}nav{display:flex;gap:2rem}nav a{text-decoration:none}nav a:hover{text-decoration:underline}
.btn{display:inline-block;background:var(--moss);color:#fff;padding:.9em 1.7em;border:1px solid var(--moss);border-radius:2px;font:500 .95rem Jost,sans-serif;letter-spacing:.03em;text-decoration:none;cursor:pointer}
.btn:hover{background:#223829}.btn.sm{padding:.6em 1.2em}.btn.alt{background:none;color:var(--ink);border-color:var(--ink)}.btn.alt:hover{background:var(--ink);color:#fff}
main{padding-top:64px}
.hero{position:relative;min-height:90vh;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;padding:0 5vw 7vh;background:#2b3a2a center/cover}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 25%,rgba(10,20,10,.65))}.hero>*{position:relative}
.hero h1{max-width:14ch}.lead{max-width:38rem;font-size:1.15rem;margin:1rem 0 2rem}
.bar{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;background:var(--bg);color:var(--ink);padding:1.1rem;max-width:900px;border-radius:2px}
.pagehead{background:var(--sand);padding:70px 5vw 56px;text-align:center}.pagehead .bar{margin:2rem auto 0;text-align:left}
label{display:flex;flex-direction:column;gap:.35rem;flex:1;min-width:140px;font-size:.88rem;font-weight:500;margin-bottom:1rem}.bar label{margin:0}
input,select,textarea{font:400 1rem Jost,sans-serif;padding:.7em;border:1px solid var(--line);background:#fff;border-radius:2px;width:100%}
section{padding:90px 5vw}section.alt{background:var(--sand)}.wrap{max-width:1180px;margin:auto}.narrow{max-width:720px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}.split img{width:100%;aspect-ratio:4/3;object-fit:cover}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:2rem}.list{display:grid;gap:2rem}
.card{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--line)}
.card img{width:100%;height:100%;min-height:260px;object-fit:cover}.card .body{padding:1.8rem}.card.v{grid-template-columns:1fr}.card.v img{height:230px;min-height:0}
.feat{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:0 0 1.2rem}.feat li{font-size:.85rem;border:1px solid var(--line);padding:.15em .8em;border-radius:99px}
.from{margin-bottom:1rem}.from b{font-size:1.5rem}
.pay{display:grid;grid-template-columns:1.4fr 1fr;gap:3rem;align-items:start}.row{display:flex;gap:1rem;flex-wrap:wrap}
.box{background:#fff;border:1px solid var(--line);padding:1.6rem}.box img{margin:-1.6rem -1.6rem 1rem;max-width:none;width:calc(100% + 3.2rem);height:170px;object-fit:cover}
dl{display:grid;grid-template-columns:auto 1fr;gap:.4rem 1.2rem;margin-top:1rem}dd{margin:0;text-align:right}.brk{word-break:break-all}
.tot{font-weight:600;border-top:1px solid var(--line);padding-top:.6rem;font-size:1.1rem}
.opts{display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:1rem}
label.opt,label.chk{flex-direction:row;align-items:center;gap:.5rem;font-size:.95rem;border:1px solid var(--line);background:#fff;padding:.7em 1.1em;margin:0;flex:0 0 auto;min-width:0}
label.chk{border:0;background:none;padding:0;margin-bottom:1rem}.opt input,.chk input{width:auto}
.panel{background:#fff;border:1px dashed var(--line);padding:1.3rem;margin-bottom:1.2rem}
.addr{display:flex;gap:.6rem;align-items:center;margin:.6rem 0}code{background:var(--sand);padding:.5em .7em;word-break:break-all;flex:1;font-size:.85rem}#qr{margin:1rem 0}
.note{background:#fff7e0;border:1px solid #ecd9a0;padding:.9rem 1.1rem;font-size:.92rem;margin-bottom:1.5rem}.note.warn{background:#fdeaea;border-color:#e7b4b4}
footer{background:#1c2620;color:#d7d9cc;padding:60px 5vw 24px}.fgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;font-size:.95rem}footer .logo{color:#fff;margin-bottom:.6rem}.legal{text-align:center;font-size:.85rem;margin:40px 0 0;opacity:.7}
@media(max-width:800px){nav{display:none}.split,.card,.pay,.fgrid{grid-template-columns:1fr}section{padding:60px 5vw}}
