:root{--wine:#9b3d52;--bg:#fdf9f3;--ink:#2b2b2b;--soft:#f6e6e0;--green:#2f4a2a;--line:#eadfd6}
*{box-sizing:border-box}body{margin:0;font:15px/1.5 'DM Sans',sans-serif;background:var(--bg);color:var(--ink)}
h1,h2,h3,.serif{font-family:'Playfair Display',Georgia,serif;font-weight:500}a{color:inherit;text-decoration:none}
.wrap{max-width:1200px;margin:auto;padding:0 20px}.top{background:var(--wine);color:#fff;font-size:12px;text-align:center;padding:7px}
header.nav{border-bottom:1px solid var(--line)}header .wrap{display:flex;align-items:center;justify-content:space-between;height:70px}
.logo{font:600 22px 'Playfair Display',serif;color:var(--wine)}nav a{margin:0 14px;font-size:14px}nav a.on{border-bottom:2px solid var(--wine)}
.btn{display:inline-block;background:var(--wine);color:#fff;padding:11px 22px;border:0;cursor:pointer;font-size:13px;letter-spacing:1px;text-transform:uppercase;border-radius:2px}
.btn.out{background:none;border:1px solid var(--wine);color:var(--wine)}
.hero{background:linear-gradient(120deg,#f6e6e0,#f3d9cf);padding:90px 0}.hero h1{font-size:54px;margin:0;color:var(--green)}.hero h1 em{color:var(--wine);display:block;font-style:normal}
.sec{padding:40px 0}.sec>.wrap>h2{text-align:center;font-size:30px;color:var(--green)}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:#fff;border:1px solid var(--line);text-align:center;padding-bottom:12px;position:relative}
.ph{aspect-ratio:3/4;display:flex;align-items:flex-end;justify-content:center;color:#fff;font-size:12px;padding:8px}
.badge{position:absolute;top:10px;left:10px;background:var(--wine);color:#fff;font-size:11px;padding:3px 10px}
.sizes label{display:inline-block;border:1px solid var(--line);padding:2px 8px;margin:2px;font-size:12px;cursor:pointer}
.shop{display:grid;grid-template-columns:220px 1fr;gap:30px}.shop aside label{display:block;margin:4px 0}
.pd{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:30px 0}.pd .ph{font-size:16px}
.price{font-size:30px;font-weight:700}.old{text-decoration:line-through;color:#888;font-size:18px;margin:0 8px}.off{background:#f7d4dc;color:var(--wine);padding:3px 8px;font-size:13px}
table{width:100%;border-collapse:collapse;background:#fff}td,th{padding:14px;border-bottom:1px solid var(--line);text-align:left}
.two{display:grid;grid-template-columns:1.6fr 1fr;gap:30px}.box{background:var(--soft);padding:24px}
input,select,textarea{width:100%;padding:10px;border:1px solid var(--line);margin:4px 0 12px;font:inherit}
.tag{padding:3px 10px;font-size:12px;background:#d9efd9}
footer{background:#fff;border-top:1px solid var(--line);margin-top:40px;padding:30px 0;font-size:13px}footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:20px}
.acct{display:grid;grid-template-columns:200px 1fr;gap:30px;padding:30px 0}.acct a{display:block;padding:10px}.acct a.on{background:var(--soft)}
@media(max-width:800px){.grid,.grid3,footer .wrap{grid-template-columns:1fr 1fr}nav{display:none}.shop,.pd,.two,.acct{grid-template-columns:1fr}}
