/* DRESSCODE — дизайн «Тёплий затишний» */
:root{
  --cream:#FBF6EF; --sand:#F1E4D3; --wine:#7A2E2A; --wine-dark:#5E211E;
  --terra:#C4452F; --terra-dark:#8E2F20; --ink:#3A2A22; --muted:#6B5548;
  --soft:#8A7466; --line:#E8D6C2; --field:#D9C3AC; --green:#4E7A3A; --rose:#F6C9A8;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:#EADFD1;color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased}
img{display:block;width:100%;height:auto}
svg{width:100%;height:100%;display:block}
a{color:inherit}
h1,h2,.brand,.price b,.p b,.row h3,.badge b{font-family:Lora,Georgia,serif}
h2 em,h1 em{font-style:italic}

.page{max-width:480px;margin:0 auto;background:var(--cream);overflow:hidden}

/* шапка */
.topbar{background:var(--wine);color:#FBF1E6;text-align:center;padding:16px 0 13px}
.brand{font-size:28px;letter-spacing:.14em;font-weight:600;padding-left:.14em}
.tag{font-size:14px;letter-spacing:.08em;opacity:.85;margin-top:2px}

/* первый экран */
.hero{padding:22px 20px 8px;text-align:center}
.eyebrow{font-size:15px;color:#A0522D;font-weight:600;letter-spacing:.04em}
.hero h1{font-size:40px;font-weight:600;line-height:1.1;margin:4px 0 6px}
.hero h1 em{color:var(--wine)}
.lead{font-size:18px;color:var(--muted)}
.photo{position:relative;margin-top:16px;overflow:hidden;border-radius:22px;box-shadow:0 10px 30px rgba(122,46,42,.15)}
.photo img{aspect-ratio:3/3.6;object-fit:cover;object-position:center 15%}
.badge{position:absolute;top:16px;right:16px;width:92px;height:92px;border-radius:50%;background:var(--terra);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;border:3px solid var(--cream)}
.badge b{font-size:28px;line-height:1.1}.badge span{font-size:14px}
.price{display:flex;margin-top:16px;background:#fff;border-radius:18px;border:1.5px solid var(--line);overflow:hidden}
.price>div{flex:1;display:flex;flex-direction:column;justify-content:center;padding:12px 16px;text-align:center}
.price span{font-size:15px}
.price s{font-size:22px}
.price b{font-size:34px;line-height:1.1}
.price .old{color:var(--soft)}
.price .new{background:#FFF1E4;color:var(--wine)}
.ship{display:flex;align-items:center;gap:10px;justify-content:center;font-size:17px;margin:14px 0 4px}
.ship svg{width:24px;height:24px;flex:none;color:#A0522D}

/* преимущества */
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:16px 20px}
.benefits img{aspect-ratio:3/4;object-fit:cover;border-radius:14px}
.benefits p{font-size:15px;line-height:1.3;margin-top:8px;text-align:center}
.benefits i{display:inline-block;width:15px;height:15px;margin-right:4px;vertical-align:-2px;color:var(--green)}

/* кнопки */
.btn{display:block;width:100%;border:0;cursor:pointer;text-align:center;font-family:Inter,Arial,sans-serif;font-size:21px;font-weight:700;padding:20px;text-decoration:none;background:var(--terra);color:#fff;border-radius:16px;box-shadow:0 6px 0 var(--terra-dark);transition:transform .1s,box-shadow .1s,background .2s}
.btn:hover{background:#B23C28}
.btn:active{transform:translateY(4px);box-shadow:0 2px 0 var(--terra-dark)}
.btn.small{font-size:19px;padding:16px;margin-top:14px}
.btn[disabled]{opacity:.7}
.cta-wrap{padding:6px 20px 26px;text-align:center}
.left{margin-top:14px;font-size:16px}
.left b{color:var(--terra)}

/* доверие */
.trust{padding:30px 20px;background:var(--sand)}
.trust h2,.colors h2,.order h2{text-align:center;margin-bottom:18px;font-size:32px;font-weight:600;line-height:1.2}
h2 em{color:var(--wine)}
.t{display:flex;gap:14px;align-items:flex-start;padding:16px;background:var(--cream);border-radius:16px}
.t+.t{margin-top:10px}
.t i{flex:none;width:48px;height:48px;padding:11px;display:block;background:var(--wine);color:#FBF1E6;border-radius:50%}
.t h3{font-size:19px;margin-bottom:3px}
.t p{font-size:16px;line-height:1.4;color:var(--muted)}

/* цвета */
.colors{padding:30px 20px 10px}
.card{padding:12px;margin-bottom:20px;background:#fff;border-radius:20px;border:1.5px solid var(--line)}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.duo img{aspect-ratio:3/4;object-fit:cover;border-radius:12px}
.row{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding:0 4px;gap:10px}
.row h3{font-size:24px;display:flex;align-items:center;gap:8px}
.dot{width:16px;height:16px;border-radius:50%;display:inline-block}
.dot.blue{background:#4a55a2}.dot.red{background:#c4161c}
.sizes{font-size:14px;margin-top:4px;color:var(--soft)}
.p{text-align:right;white-space:nowrap}.p s{display:block;font-size:16px;color:var(--soft)}.p b{font-size:28px;color:var(--wine)}

/* форма заказа */
.order{padding:30px 20px 40px;background:var(--wine);color:#FBF1E6}
.order h2 em{color:var(--rose)}
.order .sub{text-align:center;font-size:17px;line-height:1.45;margin:-6px 10px 18px}
.form{padding:20px;background:var(--cream);color:var(--ink);border-radius:22px}
.form label{display:block;font-size:15px;margin:12px 0 6px}
.form label:first-child{margin-top:0}
.field{display:block;width:100%;font:inherit;font-size:18px;padding:15px 16px;background:#fff;color:var(--ink);border:1.5px solid var(--field);border-radius:12px;outline:none;-webkit-appearance:none;appearance:none}
.field::placeholder{color:#9C8677}
.field:focus{border-color:var(--terra);box-shadow:0 0 0 3px rgba(196,69,47,.15)}
select.field{padding-right:44px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233A2A22' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/22px}
select.field:invalid{color:#9C8677}
select.field option{color:var(--ink)}
.form .btn{margin-top:22px}
.note{text-align:center;font-size:15px;margin-top:14px;color:var(--green);font-weight:600}

/* подвал з телефоном */
.footer{background:var(--wine-dark);color:#F3DFCC;text-align:center;padding:30px 20px 34px;font-size:15px}
.footer .call{display:inline-flex;align-items:center;gap:10px;margin:4px 0 12px;padding:12px 22px;border-radius:14px;background:var(--cream);color:var(--wine);text-decoration:none;font-family:Lora,Georgia,serif;font-size:24px;font-weight:600}
.footer .call svg{width:22px;height:22px}
.footer p{margin-top:4px}
.footer .links{margin-top:18px}
.footer .links a{display:block;color:#FBF1E6;text-underline-offset:3px;margin-top:6px}
.footer .tit{margin-top:20px;font-size:13px;letter-spacing:.06em;font-weight:600;color:#FBF1E6}
.footer .logos{display:flex;justify-content:center;align-items:center;gap:16px;margin:12px auto 0;padding:12px 16px;width:fit-content;max-width:100%;background:var(--cream);border-radius:14px}
.footer .logos img{width:auto;max-height:34px;max-width:30%}

@media (max-width:380px){
  .hero h1{font-size:34px}
  .price b{font-size:28px}
  .trust h2,.colors h2,.order h2{font-size:28px}
  .benefits p{font-size:13px}
  .btn{font-size:19px}
}
.dot.bordo{background:#7B1E36}.dot.grafit{background:#4A5058}.dot.smarahd{background:#0F6B63}.dot.shokolad{background:#5A3424}
.solo img{aspect-ratio:1/1;object-fit:cover;border-radius:12px}
.dot.chornyi{background:#1E1E1E}.dot.synii{background:#1F2A4D}

/* таблиця розмірів */
.sizes-block{padding:30px 20px 34px}
.sizes-block h2{text-align:center;margin-bottom:18px;font-size:32px;font-weight:600;line-height:1.2}
.size-table{background:#fff;border:1.5px solid var(--line);border-radius:20px;overflow:hidden}
.size-table table{width:100%;border-collapse:collapse;font-size:18px;text-align:center}
.size-table th{background:var(--wine);color:#FBF1E6;font-size:14px;font-weight:600;letter-spacing:.03em;padding:14px 8px}
.size-table td{padding:13px 8px;border-top:1px solid var(--line)}
.size-table tbody tr:nth-child(even){background:#F7EEE3}
.size-table td:first-child{font-weight:700}
.size-note{text-align:center;color:var(--muted);font-size:16px;margin:16px 0 18px}
.size-help{background:#F1E4D3;border-radius:20px;padding:20px}
.size-help h3{font-size:19px;margin-bottom:8px}
.size-help p{font-size:17px;line-height:1.5}

/* картки з трьома фото (спереду, збоку, ззаду) */
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.trio img{aspect-ratio:3/4;object-fit:cover;border-radius:10px}
/* опис товару */
.specs{list-style:none;background:#fff;border:1.5px solid var(--line);border-radius:20px;overflow:hidden;margin-bottom:14px}
.specs li{display:flex;justify-content:space-between;gap:14px;padding:12px 16px;font-size:16px}
.specs li+li{border-top:1px solid var(--line)}
.specs b{flex:none;font-weight:600}
.specs span{text-align:right;color:var(--muted)}

.gal{position:relative;border-radius:14px;overflow:hidden;background:#f4efe8}
.gal-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.gal-track::-webkit-scrollbar{display:none}
.gal-track img{flex:0 0 100%;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center top;scroll-snap-align:start}
.gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border:0;border-radius:50%;background:rgba(251,246,239,.92);color:var(--wine);font:400 28px/38px Arial,sans-serif;box-shadow:0 2px 8px rgba(0,0,0,.15);cursor:pointer}
.gal-prev{left:10px}.gal-next{right:10px}
.gal-count{position:absolute;top:10px;right:10px;background:rgba(58,42,34,.72);color:#fff;font:600 13px Inter,Arial,sans-serif;padding:4px 9px;border-radius:20px}
.gal-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:7px}
.gal-dots i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.75);box-shadow:0 0 0 1px rgba(0,0,0,.15)}
.gal-dots i.on{width:22px;border-radius:5px;background:var(--terra)}
.dot.bilyi{background:#fff radial-gradient(circle,#1E1E1E 1.6px,transparent 1.8px) 0 0/6px 6px;border:1.5px solid #BBA593}
.dot.chornyi{background:#1E1E1E radial-gradient(circle,#fff 1.6px,transparent 1.8px) 0 0/6px 6px}
.hint-gal{text-align:center;font-size:15px;color:var(--muted);margin:-8px 0 16px}
.row .sizes+.sizes{margin-top:2px}
.size-table td{white-space:nowrap}
@media (max-width:400px){.size-table th{padding:12px 4px;font-size:13px}.size-table td{padding:12px 4px;font-size:17px}}
