/* Sivarica — krojački atelje. Fonts self-hosted, no external CDN. */

@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400 500;font-display:swap;src:url('/fonts/cormorant-italic-400-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400 500;font-display:swap;src:url('/fonts/cormorant-italic-400.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400 600;font-display:swap;src:url('/fonts/cormorant-normal-400-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400 600;font-display:swap;src:url('/fonts/cormorant-normal-400.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Jost';font-style:normal;font-weight:300 500;font-display:swap;src:url('/fonts/jost-400-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:'Jost';font-style:normal;font-weight:300 500;font-display:swap;src:url('/fonts/jost-400.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}

:root{
  --bg:#F8F2EF; --ink:#2A2325; --maroon:#7A2236; --maroon-dark:#561726;
  --muted:#6F6769; --muted2:#5A5254; --text2:#4A4244; --text3:#3A3234;
  --border:#E6D6D1; --border2:#EADBD6; --border3:#E3D3CE; --border4:#D9C2BC; --border5:#DCCBC6;
  --panel:#FFFCFB; --panel2:#EFE2DE; --cream:#FBF5F2; --accent-light:#D9B8B0;
  --dark:#2A2325; --dark-text:#C9B9B5; --dark-border:#5A4F52; --dark-border2:#443A3D;
  --serif:'Cormorant Garamond',serif; --sans:'Jost',sans-serif;
}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:300;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
a{color:var(--maroon);text-decoration:none}
a:hover{color:var(--maroon-dark)}
img{max-width:100%;display:block}
h1,h2,h3{font-family:var(--serif);font-weight:500;margin:0}
p{margin:0}
button{font-family:inherit}
.wrap{max-width:1240px;margin:0 auto;padding:0 32px}
.btn{display:inline-flex;align-items:center;gap:8px;font-size:13px;letter-spacing:.16em;text-transform:uppercase;padding:16px 28px;border:1px solid transparent;cursor:pointer;font-family:var(--sans)}
.btn-primary{background:var(--maroon);color:var(--cream)}
.btn-primary:hover{background:var(--maroon-dark);color:var(--cream)}
.btn-outline{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-outline:hover{background:var(--ink);color:var(--bg)}
.btn-light{background:var(--cream);color:var(--maroon)}
.btn-light:hover{background:#EAD5CF;color:var(--maroon-dark)}

/* ===== top bar ===== */
.topbar{background:var(--dark);color:#E9D9D4;font-size:12.5px;letter-spacing:.04em}
.topbar .wrap{padding:9px 32px;display:flex;flex-wrap:wrap;gap:8px 28px;justify-content:space-between}
.topbar .locs{display:flex;flex-wrap:wrap;gap:6px 24px}

/* ===== header ===== */
header.site{position:sticky;top:0;z-index:40;background:rgba(248,242,239,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}
.header-row{padding:18px 32px 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;max-width:1240px;margin:0 auto}
.logo{display:flex;flex-direction:column;line-height:1;color:var(--ink)}
.logo .name{font-family:var(--serif);font-style:italic;font-weight:500;font-size:38px;color:var(--maroon);letter-spacing:.01em}
.logo .sub{font-size:10.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.header-actions{display:flex;align-items:center;gap:12px}
.link-btn{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);border:1px solid var(--ink);padding:11px 18px}
.link-btn:hover{background:var(--ink);color:var(--bg)}
.cart-btn{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;background:var(--maroon);color:var(--cream);padding:12px 18px}
.cart-btn:hover{background:var(--maroon-dark);color:var(--cream)}
.cart-count{background:var(--cream);color:var(--maroon);border-radius:20px;min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:500;letter-spacing:0}
nav.main{max-width:1240px;margin:0 auto;padding:10px 32px 0;display:flex;flex-wrap:wrap;gap:2px 26px}
nav.main a{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);padding:10px 0 12px;border-bottom:2px solid transparent;font-weight:400}
nav.main a:hover,nav.main a.active{color:var(--maroon)}
nav.main a.active{border-bottom-color:var(--maroon)}

/* ===== photo placeholders ===== */
.photo{position:relative;overflow:hidden;background:#D9C2BC}
.photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.photo .cap{position:absolute;left:14px;bottom:12px;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:rgba(42,35,37,.45);padding:4px 9px;z-index:2}
.photo .cap.sm{left:12px;bottom:10px;font-size:10px;padding:3px 8px}
.photo .badge{position:absolute;top:12px;left:12px;background:var(--cream);color:var(--maroon);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;z-index:2}

/* texture placeholders (decorative, non-photo) */
.tex-linen{background:repeating-linear-gradient(0deg,rgba(255,255,255,.22) 0 1px,transparent 1px 4px),repeating-linear-gradient(90deg,rgba(110,40,55,.08) 0 1px,transparent 1px 4px),linear-gradient(135deg,#E6CCC4,#D4B0A7)}
.tex-herring{background:repeating-linear-gradient(60deg,rgba(0,0,0,.09) 0 3px,transparent 3px 8px),repeating-linear-gradient(-60deg,rgba(255,255,255,.12) 0 3px,transparent 3px 8px),#A69C9E}

/* ===== sections / grids ===== */
section.pad{padding:90px 32px;max-width:1240px;margin:0 auto}
.kicker{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--maroon);font-weight:500}
.grid-auto{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:22px}
.card{display:flex;flex-direction:column;color:var(--ink);background:var(--panel);border:1px solid var(--border2)}
.card:hover{border-color:var(--maroon)}

/* ===== footer ===== */
.band{background:var(--maroon);color:#F3E3DE}
.band .wrap{padding:64px 32px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px}
footer.site{background:var(--dark);color:var(--dark-text);font-size:14.5px}
footer.site .cols{max-width:1240px;margin:0 auto;padding:72px 32px 36px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:40px}
footer.site .colhead{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--cream);margin-bottom:6px}
footer.site a{color:var(--dark-text)}
footer.site a:hover{color:var(--cream)}
footer.site .col{display:flex;flex-direction:column;gap:8px}
footer.site .bottom{max-width:1240px;margin:0 auto;padding:22px 32px 30px;border-top:1px solid var(--dark-border2);display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;font-size:13px}
footer.site .pay{display:flex;flex-wrap:wrap;gap:8px}
footer.site .pay span{border:1px solid var(--dark-border);padding:3px 10px}
.cookie-btn{background:none;border:none;padding:0;text-align:left;color:var(--dark-text);font-family:inherit;font-size:14.5px;cursor:pointer;text-decoration:underline}

/* ===== forms ===== */
.field{display:flex;flex-direction:column;gap:6px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.field input,.field select,.field textarea{padding:13px 14px;border:1px solid var(--border5);background:#FFFDFC;font-family:inherit;font-size:15px;color:var(--ink);outline:none;text-transform:none;letter-spacing:0}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--maroon)}
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:14px}
.radio-row{display:flex;gap:10px;align-items:center;padding:12px 14px;border:1px solid var(--border3);cursor:pointer;font-size:15px}
.check-row{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--text2)}
.check-row input{accent-color:var(--maroon);margin-top:5px}

/* ===== misc ===== */
.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:22px}
.faq-item{padding:22px 0;border-bottom:1px solid var(--border3)}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;background:none;border:none;padding:0;cursor:pointer;text-align:left;font-family:var(--serif);font-size:24px;color:var(--ink)}
.faq-sign{font-family:var(--sans);font-size:24px;color:var(--maroon);font-weight:300}
.faq-a{margin:14px 0 0;color:var(--text2);max-width:720px;display:none}
.faq-item.open .faq-a{display:block}
.faq-item.open .faq-sign{content:'–'}

.toast{position:fixed;right:24px;bottom:24px;z-index:60;background:var(--dark);color:var(--cream);padding:16px 20px;display:flex;gap:18px;align-items:center;box-shadow:0 10px 30px rgba(42,35,37,.25);animation:sivToast .3s ease;max-width:calc(100vw - 48px);display:none}
.toast.show{display:flex}
@keyframes sivToast{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.toast a{color:#EAD5CF;font-size:12px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}

.cookie-banner{position:fixed;left:24px;bottom:24px;z-index:70;max-width:440px;width:calc(100vw - 48px);background:var(--panel);border:1px solid var(--border4);padding:26px 26px 22px;box-shadow:0 18px 50px rgba(42,35,37,.18)}
.cookie-banner.hidden{display:none}
.qty-box{display:flex;align-items:center;border:1px solid var(--border4);width:max-content}
.qty-box button{width:34px;height:34px;border:none;background:transparent;cursor:pointer;font-size:17px;color:var(--ink)}
.qty-box span{min-width:30px;text-align:center;font-size:15px}

@media (max-width: 640px){
  .header-row,nav.main,section.pad,.wrap,footer.site .cols,footer.site .bottom,.band .wrap{padding-left:20px;padding-right:20px}
}
