:root{--walnut:#4a2e1d;--cream:#faf6ef;--sand:#efe6d6;--ink:#262220;--accent:#b5622f;--muted:#6f655c}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Inter",system-ui,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}
h1,h2,h3{font-family:"Playfair Display",Georgia,serif;line-height:1.2;margin:0 0 .5em}
img{max-width:100%;display:block}a{color:inherit}
.wrap{max-width:1140px;margin:0 auto;padding:0 20px}
header{position:sticky;top:0;background:rgba(250,246,239,.95);backdrop-filter:blur(6px);border-bottom:1px solid var(--sand);z-index:10}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;max-width:1140px;margin:auto;flex-wrap:wrap;gap:10px}
.logo{font-family:"Playfair Display",serif;font-weight:700;font-size:1.3rem;text-decoration:none;color:var(--walnut)}
nav a{margin-left:22px;text-decoration:none;font-size:.95rem}nav a:hover{color:var(--accent)}
.btn{display:inline-block;background:var(--accent);color:#fff;padding:13px 26px;border-radius:4px;text-decoration:none;border:0;font:inherit;font-weight:600;cursor:pointer}
.btn:hover{background:var(--walnut)}.btn.ghost{background:transparent;border:2px solid #fff}
.btn.ghost-dark{background:transparent;color:var(--walnut);border:2px solid var(--walnut)}.btn.ghost-dark:hover{background:var(--sand)}
.btn[hidden]{display:none}
.hero{position:relative;min-height:78vh;display:grid;align-items:center;color:#fff;background:linear-gradient(rgba(30,18,10,.55),rgba(30,18,10,.55)),url(images/board-angle-2.jpg) center/cover}
.hero h1{font-size:clamp(2.2rem,5vw,3.8rem);max-width:15ch}.hero p{max-width:46ch;font-size:1.15rem}
.hero .btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
section{padding:72px 0}.alt{background:var(--sand)}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;color:var(--accent);font-weight:600}
.grid{display:grid;gap:24px}.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 14px rgba(0,0,0,.07)}
.card .body{padding:18px}.card img,.card svg,.ph{aspect-ratio:4/3;width:100%;object-fit:cover;background:var(--sand)}
.ph{display:grid;place-items:center;color:var(--muted);font-size:.9rem;border-bottom:1px solid var(--sand)}
.badge{display:inline-block;font-size:.75rem;background:var(--sand);padding:3px 10px;border-radius:99px;color:var(--walnut);font-weight:600}
.price{font-weight:700;color:var(--walnut)}.meta{color:var(--muted);font-size:.9rem;margin:.2em 0}
.note{font-size:.85rem;color:var(--muted)}
.path{position:relative;min-height:340px;color:#fff;display:flex;align-items:flex-end;border-radius:8px;overflow:hidden;background:#3a2515 center/cover}
.path div{padding:26px;background:linear-gradient(transparent,rgba(0,0,0,.75));width:100%}
.steps{counter-reset:s;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.step{background:#fff;padding:22px;border-radius:8px;border-top:4px solid var(--accent)}
.step:before{counter-increment:s;content:counter(s);font-family:"Playfair Display",serif;font-size:2rem;color:var(--accent)}
.filters{display:flex;gap:10px;margin-bottom:22px;flex-wrap:wrap}.filters button{border:1px solid var(--walnut);background:none;padding:8px 16px;border-radius:99px;cursor:pointer;font:inherit}
.filters button.on{background:var(--walnut);color:#fff}
form{display:grid;gap:14px;background:#fff;padding:28px;border-radius:8px;box-shadow:0 2px 14px rgba(0,0,0,.07)}
label{font-weight:600;font-size:.9rem;display:grid;gap:5px}
input,select,textarea{font:inherit;padding:11px;border:1px solid #cfc5b6;border-radius:4px;background:#fff}
input:focus,select:focus,textarea:focus,a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.row{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
details{background:#fff;border-radius:6px;padding:14px 18px;margin-bottom:10px}summary{cursor:pointer;font-weight:600}
.care{background:#fff;border-left:4px solid var(--accent);border-radius:6px;padding:20px 24px}.care ul{margin:0;padding-left:20px}.care li{margin-bottom:8px}
dialog{border:0;border-radius:10px;max-width:880px;width:94%;padding:0}dialog::backdrop{background:rgba(0,0,0,.6)}
.modal{display:grid;grid-template-columns:1.2fr 1fr}.modal .main .slide{width:100%;height:100%;min-height:320px;aspect-ratio:auto;object-fit:cover}
.thumbs{display:flex;gap:8px;padding:8px}.thumbs img{width:64px;height:48px;object-fit:cover;cursor:pointer;border-radius:3px}
.modal .info{padding:26px}.close{float:right;background:none;border:0;font-size:1.6rem;cursor:pointer}
.wiz-wrap{max-width:720px}
.wiz{background:#fff;padding:28px;border-radius:8px;box-shadow:0 2px 14px rgba(0,0,0,.07)}
.wiz-step{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:600;margin:0 0 4px}
.wiz h3{margin-bottom:14px}
.opts{display:grid;gap:10px}
.opt{display:flex;align-items:center;gap:10px;font-weight:400;font-size:1rem;padding:10px 14px;border:1px solid #cfc5b6;border-radius:4px;cursor:pointer}
.opt:has(input:checked){border-color:var(--accent);background:#fbf1e8}
.wiz .row{margin-bottom:14px}.wiz label{margin-bottom:14px}
.wiz-msg{color:var(--accent);font-size:.9rem;min-height:1.4em;margin:6px 0}
.wiz-nav{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;margin-top:12px}
.sum{display:grid;grid-template-columns:120px 1fr;gap:8px 14px;margin:0 0 16px}.sum dt{font-weight:600;color:var(--walnut)}.sum dd{margin:0}
footer{background:var(--walnut);color:#e9ddcc;padding:42px 0;font-size:.92rem}
@media(max-width:700px){.modal{grid-template-columns:1fr}nav a:not(.btn){display:none}}
img[data-zoom]{cursor:zoom-in}
dialog.zoom{max-width:96vw;width:auto;background:#1a1410}
.zoomwrap{position:relative;padding:8px}
.zoomwrap img{display:block;max-width:92vw;max-height:88vh;width:auto;height:auto;margin:0 auto;object-fit:contain}
.zoomwrap .close{position:absolute;top:6px;right:10px;color:#fff;z-index:1;text-shadow:0 1px 4px #000}
.hp{position:absolute;left:-9999px}
.slideshow{position:relative;overflow:hidden;background:var(--sand)}
.slideshow .slide{display:none}.slideshow .slide.active{display:block}
.sl-btn{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.45);color:#fff;border:0;width:38px;height:38px;border-radius:50%;font-size:1.5rem;line-height:1;cursor:pointer;display:grid;place-items:center;z-index:2}
.sl-btn:hover{background:rgba(0,0,0,.7)}.sl-prev{left:8px}.sl-next{right:8px}
.sl-count{position:absolute;bottom:8px;right:10px;background:rgba(0,0,0,.55);color:#fff;font-size:.8rem;padding:2px 9px;border-radius:99px;z-index:2}
.modal .main .slideshow.big{min-height:320px}
form[hidden]{display:none}
