/* =====================================================================
   ZAMBAK FLOWERS — Tasarım sistemi
   Palet doğrudan logodan alındı: koyu orman yeşili + antik altın + fildişi
   ===================================================================== */
:root{
  --ink:        #0B3220;   /* logo yeşili */
  --ink-2:      #134A31;
  --ink-3:      #1E6242;
  --gold:       #C6A356;   /* logo altını */
  --gold-deep:  #A6863F;
  --gold-soft:  #EADFC2;
  --ivory:      #FBFAF7;
  --cream:      #F4F0E7;
  --paper:      #FFFFFF;
  --rose:       #A8474F;   /* yalnızca indirim / uyarı */
  --text:       #24211E;
  --muted:      #6E675F;
  --line:       rgba(11,50,32,0.14);
  --line-soft:  rgba(11,50,32,0.07);
  --wa:         #25D366;

  --radius:     3px;
  --shadow-sm:  0 2px 10px rgba(11,50,32,0.05);
  --shadow-md:  0 14px 34px rgba(11,50,32,0.10);
  --shadow-lg:  0 26px 60px rgba(11,50,32,0.16);
  --header-h:   74px;
}

*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth; scroll-padding-top:120px;}
body{
  background:var(--ivory);
  color:var(--text);
  font-family:'Jost', system-ui, sans-serif;
  font-weight:400;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4,.serif{
  font-family:'Cormorant Garamond', Georgia, serif;
  font-weight:600;
  letter-spacing:0.005em;
  line-height:1.15;
  color:var(--ink);
}
a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
button{font-family:inherit; cursor:pointer; border:none; background:none; color:inherit;}
input,select,textarea{font-family:inherit;}

a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, summary:focus-visible{
  outline:2px solid var(--gold-deep);
  outline-offset:3px;
  border-radius:2px;
}

.container{max-width:1220px; margin:0 auto; padding:0 28px;}
.section{padding:84px 0;}
.section--tight{padding:56px 0;}
.section--cream{background:var(--cream);}
.eyebrow{
  font-size:11.5px; letter-spacing:0.22em; text-transform:uppercase;
  color:var(--gold-deep); font-weight:500; display:block;
}
.section-head{text-align:center; max-width:620px; margin:0 auto 46px;}
.section-head h2{font-size:clamp(30px,3.6vw,44px); margin-top:12px;}
.section-head p{color:var(--muted); margin-top:14px; font-size:15.5px;}
.sr-only{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap;}

/* İMZA: zambak amblemli ayraç */
.lily-rule{
  display:flex; align-items:center; justify-content:center; gap:20px;
  padding:6px 0;
}
.lily-rule::before, .lily-rule::after{
  content:''; height:1px; width:min(180px, 22vw);
  background:linear-gradient(90deg, transparent, var(--gold));
  opacity:.55;
}
.lily-rule::after{background:linear-gradient(270deg, transparent, var(--gold)); }
.lily-rule img{width:30px; opacity:.9;}

/* ---------------------------------------------------------------
   DUYURU ŞERİDİ
   --------------------------------------------------------------- */
.announce{
  background:var(--ink); color:var(--gold-soft);
  text-align:center; font-size:12.5px; letter-spacing:0.07em;
  padding:10px 16px; display:flex; align-items:center;
  justify-content:center; gap:10px; flex-wrap:wrap;
}
.announce .code{
  border:1px dashed var(--gold); color:#fff; padding:2px 10px;
  letter-spacing:0.14em; font-weight:500; cursor:pointer;
  transition:background .2s ease, color .2s ease;
}
.announce .code:hover{background:var(--gold); color:var(--ink);}

/* ---------------------------------------------------------------
   HEADER
   --------------------------------------------------------------- */
.site-header{
  position:sticky; top:0; z-index:70;
  background:rgba(251,250,247,0.94);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line-soft);
  transition:box-shadow .25s ease;
}
.site-header.scrolled{box-shadow:var(--shadow-sm); border-bottom-color:transparent;}
.nav-row{
  display:flex; align-items:center; gap:24px;
  max-width:1220px; margin:0 auto; padding:14px 28px;
}
.brand{display:flex; align-items:center; gap:12px; flex-shrink:0;}
.brand img{height:46px; width:auto;}
.brand .brand-text{display:flex; flex-direction:column; line-height:1;}
.brand .brand-name{
  font-family:'Cormorant Garamond', serif; font-size:25px; font-weight:600;
  color:var(--ink); letter-spacing:0.02em;
}
.brand .brand-sub{
  font-size:9px; letter-spacing:0.3em; text-transform:uppercase;
  color:var(--gold-deep); margin-top:3px;
}

nav.categories{display:flex; align-items:center; gap:28px; margin-left:auto;}
nav.categories > a, .nav-item > a{
  position:relative; font-size:13.5px; letter-spacing:0.04em;
  color:var(--text); padding:8px 0; display:inline-flex; align-items:center; gap:6px;
  transition:color .2s ease;
}
nav.categories > a::after, .nav-item > a::after{
  content:''; position:absolute; left:0; bottom:2px; height:1px; width:0;
  background:var(--gold); transition:width .28s ease;
}
nav.categories > a:hover::after, .nav-item:hover > a::after{width:100%;}
nav.categories a[aria-current="page"]{color:var(--ink); font-weight:500;}
nav.categories a[aria-current="page"]::after{width:100%;}

.nav-item{position:relative;}
.caret{
  width:6px; height:6px; border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor; transform:rotate(45deg);
  margin-top:-4px; opacity:.5; transition:transform .2s ease;
}
.nav-item:hover .caret{transform:rotate(225deg); margin-top:0;}

.mega{
  position:absolute; top:100%; left:50%;
  transform:translateX(-50%) translateY(10px);
  background:var(--paper); box-shadow:var(--shadow-lg);
  border-top:2px solid var(--gold);
  padding:22px; display:flex; gap:26px; min-width:480px;
  opacity:0; pointer-events:none; transition:opacity .2s ease, transform .2s ease;
  z-index:80;
}
.nav-item:hover .mega{opacity:1; pointer-events:auto; transform:translateX(-50%) translateY(0);}
.mega-links{min-width:170px;}
.mega-links a{
  display:block; padding:10px 0; font-size:13.5px; color:var(--text);
  border-bottom:1px solid var(--line-soft); transition:padding-left .2s ease, color .2s ease;
}
.mega-links a:last-child{border-bottom:none;}
.mega-links a:hover{color:var(--ink-3); padding-left:5px;}
.mega-banners{display:flex; gap:12px;}
.mega-banner{position:relative; width:132px; height:164px; overflow:hidden;}
.mega-banner img{width:100%; height:100%; object-fit:cover; transition:transform .4s ease;}
.mega-banner:hover img{transform:scale(1.07);}
.mega-banner span{
  position:absolute; inset:auto 0 0 0; padding:10px;
  background:linear-gradient(to top, rgba(11,50,32,.9), transparent);
  color:#fff; font-size:11.5px; letter-spacing:0.04em;
}

.nav-actions{display:flex; align-items:center; gap:6px; flex-shrink:0;}
.icon-btn{
  position:relative; width:38px; height:38px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  font-size:17px; color:var(--ink); transition:background .2s ease;
}
.icon-btn:hover{background:var(--cream);}
.icon-btn .badge{
  position:absolute; top:1px; right:1px;
  background:var(--ink); color:#fff; font-size:10px; font-weight:600;
  min-width:17px; height:17px; padding:0 4px; border-radius:9px;
  display:none; align-items:center; justify-content:center;
  font-family:'Jost', sans-serif;
}
.icon-btn .badge.on{display:flex;}
.menu-toggle{display:none;}

/* ---------------------------------------------------------------
   TESLİMAT ŞERİDİ
   --------------------------------------------------------------- */
.delivery-bar{
  background:var(--paper); border-bottom:1px solid var(--line-soft);
  padding:9px 28px; display:flex; align-items:center; justify-content:center;
  gap:12px; font-size:12.5px; flex-wrap:wrap; color:var(--muted);
}
.delivery-bar strong{color:var(--ink); font-weight:500;}
.delivery-bar select{
  border:1px solid var(--line); background:var(--ivory); padding:6px 12px;
  font-size:12.5px; color:var(--text); border-radius:2px;
}
.delivery-bar select:focus{outline:none; border-color:var(--gold);}
.delivery-note{color:var(--ink-3);}

/* ---------------------------------------------------------------
   TOAST
   --------------------------------------------------------------- */
.toast{
  position:fixed; left:50%; top:88px; z-index:200;
  transform:translateX(-50%) translateY(-14px);
  background:var(--ink); color:#fff; padding:13px 22px; font-size:13.5px;
  box-shadow:var(--shadow-lg); opacity:0; pointer-events:none;
  transition:opacity .25s ease, transform .25s ease; max-width:90vw; text-align:center;
}
.toast.show{opacity:1; transform:translateX(-50%) translateY(0);}

/* ---------------------------------------------------------------
   ARAMA
   --------------------------------------------------------------- */
.search-scrim{
  position:fixed; inset:0; background:rgba(11,50,32,0.4); z-index:125;
  opacity:0; pointer-events:none; transition:opacity .25s ease;
}
.search-scrim.open{opacity:1; pointer-events:auto;}
.search-panel{
  position:fixed; top:0; left:0; right:0; z-index:130;
  background:var(--paper); box-shadow:var(--shadow-lg);
  transform:translateY(-102%); transition:transform .3s ease;
  padding:26px 28px 22px;
}
.search-panel.open{transform:translateY(0);}
.search-panel-inner{max-width:760px; margin:0 auto; position:relative;}
.search-panel input{
  width:100%; padding:14px 46px 14px 4px; font-size:19px;
  border:none; border-bottom:1px solid var(--gold); background:transparent;
  color:var(--ink); font-family:'Cormorant Garamond', serif;
}
.search-panel input::placeholder{color:#aca396;}
.search-panel input:focus{outline:none;}
.search-close{position:absolute; right:0; top:12px; font-size:19px; color:var(--muted);}
.search-results{max-width:760px; margin:12px auto 0; max-height:58vh; overflow-y:auto;}
.search-hint{font-size:12.5px; color:var(--muted); padding:14px 0 4px;}
.search-hint b{color:var(--ink); font-weight:500;}
.chip-row{display:flex; flex-wrap:wrap; gap:8px; padding:6px 0 4px;}
.chip{
  border:1px solid var(--line); padding:6px 14px; font-size:12.5px;
  border-radius:999px; color:var(--text); transition:.2s ease;
}
.chip:hover{background:var(--ink); color:#fff; border-color:var(--ink);}
.search-result-item{
  display:flex; align-items:center; gap:14px; padding:11px 4px;
  border-bottom:1px solid var(--line-soft);
}
.search-result-item:hover{background:var(--cream);}
.search-result-item img{width:48px; height:58px; object-fit:cover;}
.search-result-item .sr-name{font-size:14.5px; color:var(--text);}
.search-result-item .sr-cat{
  font-size:11px; color:var(--gold-deep); text-transform:uppercase; letter-spacing:0.1em;
}
.search-result-item .sr-price{
  margin-left:auto; font-family:'Cormorant Garamond', serif;
  font-weight:600; color:var(--ink); font-size:17px;
}
.search-empty{text-align:center; color:var(--muted); font-size:14px; padding:26px 0;}

/* ---------------------------------------------------------------
   BUTONLAR
   --------------------------------------------------------------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  padding:15px 32px; font-size:13.5px; letter-spacing:0.06em;
  border-radius:var(--radius); transition:transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
  text-transform:uppercase; font-weight:500; cursor:pointer;
}
.btn-primary{background:var(--ink); color:#fff;}
.btn-primary:hover{background:var(--ink-2); transform:translateY(-2px); box-shadow:0 12px 26px rgba(11,50,32,0.22);}
.btn-gold{background:var(--gold); color:var(--ink);}
.btn-gold:hover{background:var(--gold-deep); color:#fff; transform:translateY(-2px);}
.btn-ghost{border:1px solid var(--ink); color:var(--ink);}
.btn-ghost:hover{background:var(--ink); color:#fff;}
.btn-wa{background:var(--wa); color:#fff;}
.btn-wa:hover{filter:brightness(.94); transform:translateY(-2px);}
.btn-block{width:100%;}
.btn-row{display:flex; gap:14px; flex-wrap:wrap;}

/* ---------------------------------------------------------------
   HERO
   --------------------------------------------------------------- */
.hero{
  max-width:1220px; margin:0 auto; padding:70px 28px 48px;
  display:grid; grid-template-columns:1.02fr 0.98fr; gap:56px; align-items:center;
}
.hero-copy h1{
  font-size:clamp(42px,5.2vw,68px); line-height:1.02; margin:18px 0 22px;
}
.hero-copy h1 em{font-style:italic; color:var(--gold-deep);}
.hero-copy p{max-width:450px; font-size:16px; color:var(--muted); margin-bottom:32px;}
.hero-meta{
  display:flex; gap:26px; margin-top:34px; padding-top:24px;
  border-top:1px solid var(--line-soft); flex-wrap:wrap;
}
.hero-meta div{font-size:12.5px; color:var(--muted); line-height:1.4;}
.hero-meta strong{
  display:block; font-family:'Cormorant Garamond', serif;
  font-size:24px; color:var(--ink); font-weight:600;
}

/* İMZA: altın hatlı çerçeve içinde görsel */
.hero-visual{position:relative;}
.hero-visual .frame{
  position:absolute; inset:16px -16px -16px 16px;
  border:1px solid var(--gold); pointer-events:none; z-index:0;
}
.hero-visual .shot{
  position:relative; z-index:1; aspect-ratio:4/5; overflow:hidden; background:var(--cream);
}
.hero-visual .shot img{width:100%; height:100%; object-fit:cover;}
.cutoff-badge{
  position:absolute; z-index:2; left:-24px; bottom:38px;
  background:var(--paper); padding:16px 20px; max-width:250px;
  box-shadow:var(--shadow-md); border-left:3px solid var(--gold);
}
.cutoff-badge .ct-label{
  font-size:10.5px; letter-spacing:0.16em; text-transform:uppercase; color:var(--gold-deep);
}
.cutoff-badge .ct-time{
  font-family:'Cormorant Garamond', serif; font-size:29px; font-weight:600;
  color:var(--ink); font-variant-numeric:tabular-nums; line-height:1.2; margin:2px 0;
}
.cutoff-badge .ct-sub{font-size:12px; color:var(--muted); line-height:1.35;}

/* ---------------------------------------------------------------
   GÜVEN ŞERİDİ
   --------------------------------------------------------------- */
.trust{background:var(--paper); border-block:1px solid var(--line-soft);}
.trust-row{
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  max-width:1220px; margin:0 auto;
}
.trust-item{
  padding:26px 26px; display:flex; align-items:center; gap:14px;
  border-right:1px solid var(--line-soft); font-size:13px;
}
.trust-item:last-child{border-right:none;}
.trust-item .ic{font-size:21px; line-height:1;}
.trust-item strong{display:block; font-size:13.5px; color:var(--ink); font-weight:500;}
.trust-item small{color:var(--muted); font-size:12px;}

/* ---------------------------------------------------------------
   ÖZEL GÜNLER
   --------------------------------------------------------------- */
.occasions{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px;}
.occ{
  position:relative; aspect-ratio:1/1.18; overflow:hidden; display:block; background:var(--ink);
}
.occ img{width:100%; height:100%; object-fit:cover; opacity:.82; transition:transform .55s ease, opacity .3s ease;}
.occ:hover img{transform:scale(1.06); opacity:.68;}
.occ-body{
  position:absolute; inset:auto 0 0 0; padding:20px;
  background:linear-gradient(to top, rgba(11,50,32,0.92), transparent);
  color:#fff;
}
.occ-body h3{color:#fff; font-size:22px;}
.occ-body span{font-size:11.5px; letter-spacing:0.14em; text-transform:uppercase; color:var(--gold-soft);}

/* ---------------------------------------------------------------
   ÜRÜN KARTI
   --------------------------------------------------------------- */
.grid{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:26px;}
.card{
  position:relative; background:var(--paper); border:1px solid var(--line-soft);
  display:flex; flex-direction:column;
  transition:box-shadow .3s ease, transform .3s ease, border-color .3s ease;
}
.card:hover{box-shadow:var(--shadow-md); transform:translateY(-4px); border-color:var(--line);}
.card .media{position:relative;}
.card .thumb{position:relative; display:block; aspect-ratio:3/4; overflow:hidden; background:var(--cream);}
.card .thumb img{width:100%; height:100%; object-fit:cover; transition:transform .6s ease;}
.card:hover .thumb img{transform:scale(1.05);}
.badge-discount{
  position:absolute; top:12px; left:12px; z-index:4;
  background:var(--rose); color:#fff; font-size:11px; font-weight:600;
  letter-spacing:0.04em; padding:5px 10px;
}
.fav-btn{
  position:absolute; top:10px; right:10px; z-index:5;
  width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,0.92);
  display:flex; align-items:center; justify-content:center;
  font-size:16px; color:var(--ink); transition:transform .2s ease, color .2s ease;
  box-shadow:var(--shadow-sm);
}
.fav-btn:hover{transform:scale(1.12);}
.fav-btn.active{color:var(--rose);}
.card .quick{
  position:absolute; left:12px; right:12px; bottom:12px; z-index:4;
  background:var(--ink); color:#fff; padding:12px; text-align:center;
  font-size:12.5px; letter-spacing:0.08em; text-transform:uppercase;
  opacity:0; transform:translateY(10px); transition:.28s ease; cursor:pointer;
}
.card:hover .quick{opacity:1; transform:translateY(0);}
.card .quick:hover{background:var(--gold); color:var(--ink);}
.card .info{padding:16px 16px 18px; display:flex; flex-direction:column; gap:6px; flex:1;}
.card .cat{font-size:10.5px; letter-spacing:0.14em; text-transform:uppercase; color:var(--gold-deep);}
.card h3{
  font-family:'Jost', sans-serif; font-size:15px; font-weight:400;
  color:var(--text); line-height:1.4;
}
.card .price{
  margin-top:auto; padding-top:8px; font-family:'Cormorant Garamond', serif;
  font-size:22px; font-weight:600; color:var(--ink);
}
.card .price .old{
  color:#a49b8f; text-decoration:line-through; font-size:15px;
  margin-right:9px; font-weight:400;
}

/* Ana sayfa kategori blokları */
.cat-block{margin-bottom:60px;}
.cat-block:last-child{margin-bottom:0;}
.cat-block-head{
  display:flex; align-items:baseline; justify-content:space-between; gap:20px;
  margin-bottom:24px; padding-bottom:14px; border-bottom:1px solid var(--line-soft);
}
.cat-block-head h2{font-size:28px;}
.cat-block-head a{
  font-size:12.5px; letter-spacing:0.08em; text-transform:uppercase;
  color:var(--gold-deep); white-space:nowrap; border-bottom:1px solid var(--gold-soft); padding-bottom:3px;
}
.cat-block-head a:hover{color:var(--ink); border-color:var(--ink);}

/* ---------------------------------------------------------------
   HİKAYE
   --------------------------------------------------------------- */
.story{display:grid; grid-template-columns:0.9fr 1.1fr; gap:60px; align-items:center;}
.story .img-wrap{position:relative; aspect-ratio:1/1.1; overflow:hidden;}
.story .img-wrap img{width:100%; height:100%; object-fit:cover;}
.story h2{font-size:clamp(28px,3.2vw,40px); margin:12px 0 18px;}
.story p{color:var(--muted); margin-bottom:14px; max-width:520px;}
.story ul{list-style:none; margin-top:24px; display:flex; flex-direction:column; gap:13px;}
.story li{display:flex; gap:13px; font-size:14.5px; align-items:flex-start;}
.story li .dot{color:var(--gold); font-size:15px; line-height:1.5;}

/* ---------------------------------------------------------------
   YORUMLAR
   --------------------------------------------------------------- */
.reviews{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px;}
.review{
  background:var(--paper); border:1px solid var(--line-soft); padding:28px 26px;
  display:flex; flex-direction:column; gap:14px;
}
.review .stars{color:var(--gold); letter-spacing:3px; font-size:13px;}
.review p{font-family:'Cormorant Garamond', serif; font-size:19px; line-height:1.5; color:var(--text);}
.review .who{font-size:12.5px; color:var(--muted); margin-top:auto;}
.review .who b{color:var(--ink); font-weight:500; display:block; font-size:13.5px;}

/* Süreç adımları (Hakkımızda) */
.steps{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px;}
.steps .review .stars{
  font-family:'Cormorant Garamond', serif; font-size:30px;
  letter-spacing:0; color:var(--gold); line-height:1;
}
.steps .review p{font-size:16px;}
.steps .review .who{
  font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--gold-deep);
}

/* ---------------------------------------------------------------
   SSS / AKORDİYON
   --------------------------------------------------------------- */
.faq{max-width:820px; margin:0 auto;}
.faq details{border-bottom:1px solid var(--line-soft); background:transparent;}
.faq summary{
  list-style:none; cursor:pointer; padding:22px 40px 22px 0; position:relative;
  font-family:'Cormorant Garamond', serif; font-size:21px; color:var(--ink); font-weight:600;
}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{
  content:''; position:absolute; right:6px; top:29px; width:9px; height:9px;
  border-right:1.5px solid var(--gold-deep); border-bottom:1.5px solid var(--gold-deep);
  transform:rotate(45deg); transition:transform .25s ease;
}
.faq details[open] summary::after{transform:rotate(225deg); top:32px;}
.faq .answer{padding:0 30px 24px 0; color:var(--muted); font-size:14.5px;}
.faq .answer a{color:var(--ink-3); border-bottom:1px solid var(--gold-soft);}

/* ---------------------------------------------------------------
   BÜLTEN
   --------------------------------------------------------------- */
.newsletter{background:var(--ink); color:#fff; padding:76px 28px; text-align:center;}
.newsletter img.mark{width:44px; margin:0 auto 18px; opacity:.9;}
.newsletter h2{color:#fff; font-size:clamp(27px,3vw,38px); margin-bottom:12px;}
.newsletter p{color:rgba(255,255,255,0.68); margin-bottom:28px; font-size:15px;}
.subscribe-form{display:flex; max-width:470px; margin:0 auto; gap:10px;}
.subscribe-form input{
  flex:1; padding:15px 16px; border:1px solid rgba(255,255,255,0.28);
  background:transparent; color:#fff; font-size:14px;
}
.subscribe-form input::placeholder{color:rgba(255,255,255,0.45);}
.subscribe-form input:focus{outline:none; border-color:var(--gold);}
.subscribe-form button{background:var(--gold); color:var(--ink); padding:15px 26px; font-size:13px; letter-spacing:0.08em; text-transform:uppercase; font-weight:500;}
.subscribe-form button:hover{background:#fff;}
#sub-msg{margin-top:14px; font-size:13.5px; color:var(--gold-soft); min-height:20px;}

/* ---------------------------------------------------------------
   FOOTER
   --------------------------------------------------------------- */
.site-footer{background:#082518; color:#b9c4bc; padding:70px 0 26px; margin-top:0;}
.footer-grid{
  display:grid; grid-template-columns:1.5fr 1fr 1fr 1.2fr; gap:44px;
  padding-bottom:44px; border-bottom:1px solid rgba(255,255,255,0.08);
}
.site-footer .f-logo{width:190px; margin-bottom:18px;}
.site-footer p{font-size:13.5px; color:#8fa096; max-width:300px;}
.site-footer h4{color:#fff; font-size:19px; margin-bottom:18px;}
.site-footer ul{list-style:none; display:flex; flex-direction:column; gap:11px;}
.site-footer li, .site-footer a{font-size:13.5px; color:#b9c4bc; transition:color .2s ease;}
.site-footer a:hover{color:var(--gold);}
.f-contact li{display:flex; gap:9px; align-items:flex-start;}
.f-social{display:flex; gap:10px; margin-top:20px;}
.f-social a{
  width:36px; height:36px; border:1px solid rgba(255,255,255,0.18);
  display:flex; align-items:center; justify-content:center; font-size:15px;
  transition:.2s ease;
}
.f-social a:hover{background:var(--gold); border-color:var(--gold); color:var(--ink);}
.bottom-row{
  padding-top:22px; display:flex; justify-content:space-between; gap:12px;
  flex-wrap:wrap; font-size:12px; color:#6d7d74;
}
.bottom-row a{color:var(--gold); font-size:12px;}

/* ---------------------------------------------------------------
   SEPET ÇEKMECESİ
   --------------------------------------------------------------- */
.overlay{
  position:fixed; inset:0; background:rgba(11,50,32,0.45); z-index:90;
  opacity:0; pointer-events:none; transition:opacity .3s ease;
}
.overlay.open{opacity:1; pointer-events:auto;}
.cart-drawer{
  position:fixed; top:0; right:0; height:100%; width:420px; max-width:92vw;
  background:var(--ivory); z-index:95; transform:translateX(101%);
  transition:transform .35s cubic-bezier(.4,0,.2,1);
  display:flex; flex-direction:column; box-shadow:-14px 0 44px rgba(11,50,32,0.18);
}
.cart-drawer.open{transform:translateX(0);}
.cart-head{
  padding:22px 26px; border-bottom:1px solid var(--line-soft);
  display:flex; justify-content:space-between; align-items:center;
}
.cart-head h3{font-size:23px;}
.close-x{font-size:20px; color:var(--muted); width:34px; height:34px; border-radius:50%;}
.close-x:hover{background:var(--cream);}
.cart-items{flex:1; overflow-y:auto; padding:6px 26px;}
.cart-item{display:flex; gap:14px; padding:16px 0; border-bottom:1px solid var(--line-soft);}
.cart-item img{width:68px; height:82px; object-fit:cover;}
.cart-item .ci-info{flex:1; min-width:0;}
.cart-item h4{font-family:'Jost', sans-serif; font-size:14px; font-weight:400; color:var(--text); margin-bottom:4px;}
.cart-item .ci-price{color:var(--ink); font-family:'Cormorant Garamond', serif; font-weight:600; font-size:17px;}
.qty-row{display:flex; align-items:center; gap:2px; margin-top:9px;}
.qty-row button{
  width:28px; height:28px; border:1px solid var(--line); font-size:14px;
  display:flex; align-items:center; justify-content:center; color:var(--ink);
}
.qty-row button:hover{background:var(--ink); color:#fff; border-color:var(--ink);}
.qty-row span{width:34px; text-align:center; font-size:14px;}
.remove-btn{font-size:12px; color:var(--rose); margin-top:8px; text-decoration:underline;}
.cart-empty{text-align:center; padding:56px 20px; color:var(--muted); font-size:14px;}
.cart-empty img{width:46px; margin:0 auto 16px; opacity:.6;}
.cart-foot{padding:20px 26px 24px; border-top:1px solid var(--line-soft); background:var(--paper);}
.cart-total-row{display:flex; justify-content:space-between; align-items:baseline; font-size:14px; margin-bottom:6px;}
.cart-total-row strong{font-family:'Cormorant Garamond', serif; font-size:24px; color:var(--ink);}
.cart-ship{font-size:12px; color:var(--muted); margin-bottom:14px;}

/* ---------------------------------------------------------------
   WHATSAPP WIDGET
   --------------------------------------------------------------- */
.wa-widget{position:fixed; bottom:24px; right:24px; z-index:85; display:flex; flex-direction:column; align-items:flex-end; gap:12px;}
.wa-card{
  width:290px; background:var(--paper); box-shadow:var(--shadow-lg);
  overflow:hidden; opacity:0; transform:translateY(14px) scale(.97);
  pointer-events:none; transition:.22s ease;
}
.wa-card.open{opacity:1; transform:none; pointer-events:auto;}
.wa-card-head{background:var(--ink); color:#fff; padding:14px 16px; display:flex; align-items:center; gap:11px;}
.wa-avatar{width:38px; height:38px; border-radius:50%; background:var(--paper); display:flex; align-items:center; justify-content:center; flex-shrink:0; overflow:hidden;}
.wa-avatar img{width:26px;}
.wa-card-head strong{display:block; font-size:13.5px;}
.wa-card-head small{color:rgba(255,255,255,0.6); font-size:11px;}
.wa-card-body{padding:16px;}
.wa-bubble{background:var(--cream); padding:12px 14px; font-size:13px; margin-bottom:14px;}
.wa-toggle{
  width:58px; height:58px; border-radius:50%; background:var(--wa); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:27px;
  box-shadow:0 10px 26px rgba(37,211,102,0.4); transition:transform .2s ease;
}
.wa-toggle:hover{transform:scale(1.07);}

/* ---------------------------------------------------------------
   BREADCRUMB & KATEGORİ SAYFASI
   --------------------------------------------------------------- */
.breadcrumb{font-size:12.5px; color:var(--muted); padding:20px 0 0;}
.breadcrumb a:hover{color:var(--ink);}
.breadcrumb span{color:var(--text);}

.page-head{padding:26px 0 8px;}
.page-head h1{font-size:clamp(30px,3.8vw,44px);}
.page-head .count{color:var(--muted); font-size:13px; margin-top:8px;}
.page-head .lead{color:var(--muted); font-size:15px; margin-top:12px; max-width:620px;}

.sort-bar{
  display:flex; align-items:center; gap:8px; flex-wrap:wrap;
  padding:18px 0; border-bottom:1px solid var(--line-soft); margin-bottom:32px;
}
.sort-bar .lbl{font-size:12px; color:var(--muted); margin-right:4px; letter-spacing:0.08em; text-transform:uppercase;}
.sort-btn{
  font-size:12.5px; padding:8px 16px; border:1px solid var(--line);
  background:var(--paper); color:var(--text); white-space:nowrap; transition:.2s ease;
}
.sort-btn:hover{border-color:var(--ink);}
.sort-btn.active{background:var(--ink); color:#fff; border-color:var(--ink);}

.pagination{display:flex; justify-content:center; align-items:center; gap:7px; padding:48px 0 76px;}
.page-btn{
  min-width:40px; height:40px; border:1px solid var(--line); background:var(--paper);
  font-size:13.5px; color:var(--text); display:flex; align-items:center; justify-content:center;
  transition:.2s ease;
}
.page-btn:hover:not([disabled]){border-color:var(--ink);}
.page-btn.active{background:var(--ink); color:#fff; border-color:var(--ink);}
.page-btn[disabled]{opacity:.3; cursor:default;}
.empty-state{
  grid-column:1/-1; text-align:center; padding:72px 20px; color:var(--muted);
  border:1px dashed var(--line); background:var(--paper);
}
.empty-state img{width:44px; margin:0 auto 18px; opacity:.55;}
.empty-state h3{font-size:23px; margin-bottom:8px;}
.empty-state p{margin-bottom:20px; font-size:14px;}

/* ---------------------------------------------------------------
   ÜRÜN DETAY
   --------------------------------------------------------------- */
.pd-wrap{display:grid; grid-template-columns:88px 1fr 1.02fr; gap:34px; padding:26px 0 70px; align-items:start;}
.pd-wrap--single{grid-template-columns:1fr 1.05fr;}
.pd-thumbs{display:flex; flex-direction:column; gap:10px;}
.pd-thumbs img{
  width:100%; aspect-ratio:1/1; object-fit:cover; cursor:pointer;
  border:1px solid var(--line-soft); opacity:.65; transition:.2s ease;
}
.pd-thumbs img.active, .pd-thumbs img:hover{opacity:1; border-color:var(--gold);}
.pd-main-img{position:relative; aspect-ratio:4/5; overflow:hidden; background:var(--cream);}
.pd-main-img img{width:100%; height:100%; object-fit:cover;}
.pd-info h1{font-size:clamp(27px,3vw,36px); margin:8px 0 10px;}
.pd-cat-link{font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--gold-deep);}
.pd-desc{color:var(--muted); font-size:14.5px; margin-bottom:16px;}
.pd-price-row{display:flex; align-items:baseline; gap:12px; margin:14px 0 6px; flex-wrap:wrap;}
.pd-price{font-family:'Cormorant Garamond', serif; font-size:34px; font-weight:600; color:var(--ink);}
.pd-price.old{font-size:19px; color:#a49b8f; text-decoration:line-through; font-weight:400;}
.pd-sale-tag{display:inline-block; background:var(--rose); color:#fff; font-size:11px; padding:4px 10px; letter-spacing:0.05em;}
.pd-note{
  background:#F7F3E8; color:#77602c; font-size:13px; padding:11px 14px;
  border-left:3px solid var(--gold); margin:18px 0;
}
.pd-note b{color:var(--ink);}

.buy-box{background:var(--paper); border:1px solid var(--line-soft); padding:22px; margin-bottom:18px;}
.qty-select{display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:16px;}
.qty-select .lbl{font-size:13px; color:var(--muted);}
.qty-box{display:flex; align-items:center; border:1px solid var(--line);}
.qty-box button{width:40px; height:44px; font-size:16px; color:var(--ink);}
.qty-box button:hover{background:var(--cream);}
.qty-box span{width:44px; text-align:center; font-size:15px;}
.pd-actions{display:flex; flex-direction:column; gap:10px;}

.order-panel{background:var(--paper); border:1px solid var(--line-soft); padding:26px;}
.order-panel > h3{
  font-family:'Jost', sans-serif; font-size:12px; letter-spacing:0.16em;
  text-transform:uppercase; color:var(--gold-deep); margin-bottom:6px; font-weight:500;
}
.order-panel .panel-sub{font-size:13px; color:var(--muted); margin-bottom:20px;}
.field{margin-bottom:16px;}
.field label{display:block; font-size:12.5px; font-weight:500; color:var(--text); margin-bottom:6px;}
.field label .req{color:var(--rose);}
.field input, .field select, .field textarea{
  width:100%; padding:12px 14px; border:1px solid var(--line);
  font-size:14px; background:var(--ivory); color:var(--text); border-radius:2px;
}
.field textarea{resize:vertical; min-height:70px;}
.field input:focus, .field select:focus, .field textarea:focus{outline:none; border-color:var(--gold); background:var(--paper);}
.field-row{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px;}
.field-hint{font-size:11.5px; color:var(--muted); margin-top:5px;}
.field-error{font-size:12px; color:var(--rose); margin-top:5px; display:none;}
.field.invalid input, .field.invalid select, .field.invalid textarea{border-color:var(--rose); background:#FDF6F6;}
.field.invalid .field-error{display:block;}
.form-success{display:none; background:#EDF4EE; border:1px solid #BBD6C2; color:#1E6242; padding:14px 16px; font-size:13.5px; margin-top:14px;}
.form-success.show{display:block;}
.pd-guarantee{margin-top:20px; font-size:12.5px; color:var(--muted); display:flex; gap:10px; align-items:flex-start;}

.related{padding:0 0 80px;}
.related h2{font-size:26px; margin-bottom:22px; padding-bottom:14px; border-bottom:1px solid var(--line-soft);}

/* ---------------------------------------------------------------
   İÇERİK SAYFALARI (SSS, sözleşmeler, iletişim, hakkımızda)
   --------------------------------------------------------------- */
.prose{max-width:820px; margin:0 auto; padding:10px 0 80px;}
.prose h2{font-size:26px; margin:36px 0 12px;}
.prose h3{font-size:20px; margin:26px 0 10px;}
.prose p, .prose li{color:var(--muted); font-size:15px; margin-bottom:12px;}
.prose ul, .prose ol{padding-left:22px; margin-bottom:18px;}
.prose a{color:var(--ink-3); border-bottom:1px solid var(--gold-soft);}
.prose .note{
  background:var(--cream); border-left:3px solid var(--gold);
  padding:16px 18px; margin:22px 0; font-size:14px; color:var(--text);
}

.contact-grid{display:grid; grid-template-columns:1fr 1.1fr; gap:48px; padding:14px 0 80px; align-items:start;}
.contact-card{background:var(--paper); border:1px solid var(--line-soft); padding:28px;}
.contact-card h3{font-size:22px; margin-bottom:18px;}
.contact-list{list-style:none; display:flex; flex-direction:column; gap:16px;}
.contact-list li{display:flex; gap:13px; align-items:flex-start; font-size:14px; color:var(--text);}
.contact-list .ic{font-size:17px; line-height:1.3;}
.contact-list small{display:block; color:var(--muted); font-size:12px; letter-spacing:0.08em; text-transform:uppercase; margin-bottom:2px;}
.contact-list a:hover{color:var(--ink-3);}
.district-tags{display:flex; flex-wrap:wrap; gap:8px; margin-top:14px;}
.district-tags span{border:1px solid var(--line); padding:5px 12px; font-size:12.5px; color:var(--muted);}

/* ---------------------------------------------------------------
   ADMIN
   --------------------------------------------------------------- */
body.admin-body{background:#F2F0EA;}
.admin-shell{display:flex; min-height:100vh;}
.admin-sidebar{width:252px; background:var(--ink); color:#cbd6cf; padding:28px 20px; flex-shrink:0;}
.admin-sidebar img{width:150px; margin-bottom:6px;}
.admin-sidebar .tag{font-size:10.5px; color:rgba(255,255,255,0.5); letter-spacing:0.16em; text-transform:uppercase; display:block; margin-bottom:32px;}
.admin-nav button, .admin-nav a{
  display:flex; align-items:center; gap:10px; padding:12px 14px; font-size:14px;
  color:rgba(255,255,255,0.72); margin-bottom:3px; width:100%; text-align:left;
  border-radius:2px; transition:.2s ease;
}
.admin-nav button.active, .admin-nav button:hover, .admin-nav a:hover{background:rgba(255,255,255,0.09); color:#fff;}
.admin-main{flex:1; padding:36px 40px; min-width:0;}
.admin-header{display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:28px; flex-wrap:wrap;}
.admin-header h1{font-size:30px;}
.admin-header p{color:var(--muted); font-size:13.5px; margin-top:4px;}
.stat-row{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-bottom:32px;}
.stat-card{background:var(--paper); border:1px solid var(--line-soft); padding:20px 22px; border-left:3px solid var(--gold);}
.stat-label{font-size:11px; letter-spacing:0.1em; text-transform:uppercase; color:var(--muted);}
.stat-value{font-family:'Cormorant Garamond', serif; font-size:32px; font-weight:600; color:var(--ink); margin-top:6px;}
.admin-table-wrap{background:var(--paper); border:1px solid var(--line-soft); overflow:hidden;}
.admin-table-head{display:flex; justify-content:space-between; align-items:center; gap:14px; padding:18px 22px; border-bottom:1px solid var(--line-soft); flex-wrap:wrap;}
.admin-table-head h2{font-family:'Jost', sans-serif; font-size:16px; font-weight:500; color:var(--text);}
.admin-search{padding:9px 13px; border:1px solid var(--line); font-size:13px; width:230px; background:var(--ivory);}
.table-scroll{overflow-x:auto;}
table.orders{width:100%; border-collapse:collapse; font-size:13.5px; min-width:760px;}
table.orders th{
  text-align:left; padding:12px 22px; font-size:11px; letter-spacing:0.08em;
  text-transform:uppercase; color:var(--muted); border-bottom:1px solid var(--line-soft); background:#FAF8F4;
}
table.orders td{padding:15px 22px; border-bottom:1px solid var(--line-soft); vertical-align:top;}
table.orders tr:last-child td{border-bottom:none;}
table.orders tr:hover td{background:#FBFAF6;}
.order-product{display:flex; gap:10px; align-items:center; margin-bottom:6px;}
.order-product img{width:40px; height:50px; object-fit:cover;}
.status-pill{display:inline-block; padding:5px 12px; font-size:11.5px; border-radius:999px;}
.status-Yeni{background:#FBEAEA; color:#A8474F;}
.status-Hazırlanıyor{background:#FBF1DC; color:#8a6a2b;}
.status-Yolda{background:#E3EEF7; color:#2b5a8a;}
.status-Teslim{background:#E6F1E9; color:#1E6242;}
.status-select{border:1px solid var(--line); padding:6px 10px; font-size:12.5px; background:var(--ivory);}
.admin-empty{padding:60px; text-align:center; color:var(--muted);}
.del-link{font-size:12px; color:var(--rose); text-decoration:underline;}
.edit-link{font-size:12px; color:var(--ink-3); text-decoration:underline; margin-right:12px;}
.prod-thumb-cell{display:flex; align-items:center; gap:12px;}
.prod-thumb-cell img{width:44px; height:54px; object-fit:cover; border:1px solid var(--line-soft);}
.cat-tag{display:inline-block; font-size:11.5px; padding:4px 11px; border-radius:999px; background:var(--cream); color:var(--ink-3);}
.admin-login{
  max-width:400px; margin:110px auto; background:var(--paper);
  border:1px solid var(--line-soft); padding:38px; text-align:center; box-shadow:var(--shadow-sm);
}
.admin-login img{width:130px; margin:0 auto 20px;}
.admin-login h2{font-size:25px; margin-bottom:8px;}
.admin-login p{color:var(--muted); font-size:13.5px; margin-bottom:22px;}
.admin-login input{width:100%; padding:13px 14px; border:1px solid var(--line); margin-bottom:14px; background:var(--ivory);}
.admin-login .err{font-size:12.5px; color:var(--rose); margin-bottom:10px; min-height:16px;}
.admin-login .warn{font-size:11.5px; color:var(--muted); margin-top:18px; line-height:1.5;}
.product-modal{
  position:fixed; top:50%; left:50%; transform:translate(-50%,-50%) scale(.96);
  width:540px; max-width:92vw; max-height:88vh; overflow-y:auto;
  background:var(--paper); z-index:120; box-shadow:var(--shadow-lg);
  opacity:0; pointer-events:none; transition:opacity .2s ease, transform .2s ease;
}
.product-modal.open{opacity:1; pointer-events:auto; transform:translate(-50%,-50%) scale(1);}
.product-modal-inner{padding:26px;}
.product-modal-head{display:flex; justify-content:space-between; align-items:center; margin-bottom:18px;}
.product-modal-head h3{font-size:22px;}
#product-overlay{z-index:110;}

/* ---------------------------------------------------------------
   GİRİŞ ANİMASYONU
   --------------------------------------------------------------- */
.reveal{opacity:0; transform:translateY(18px); transition:opacity .7s ease, transform .7s ease;}
.reveal.in{opacity:1; transform:none;}

/* ---------------------------------------------------------------
   RESPONSIVE
   --------------------------------------------------------------- */
@media (max-width:1080px){
  .grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .occasions{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pd-wrap{grid-template-columns:74px 1fr; gap:26px;}
  .pd-wrap--single{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .pd-info{grid-column:1/-1;}
}
@media (max-width:980px){
  /* ÖNEMLİ: backdrop-filter, içindeki position:fixed öğeler için çıpa
     oluşturduğu için mobil menü ekranı kaplayamıyordu. Mobilde kapatıldı. */
  .site-header{
    backdrop-filter:none; -webkit-backdrop-filter:none;
    background:var(--ivory);
  }

  .nav-row{padding:10px 18px; gap:10px;}
  .nav-actions{gap:2px;}
  .icon-btn{width:44px; height:44px; font-size:19px;}
  .menu-toggle{
    display:inline-flex; font-size:23px;
    border:1px solid var(--line); border-radius:3px; margin-left:4px;
  }
  .menu-toggle[aria-expanded="true"]{background:var(--ink); color:#fff; border-color:var(--ink);}

  nav.categories{display:none;}

  .hero{grid-template-columns:1fr; gap:38px; padding-top:40px;}
  .hero-visual{order:-1;}
  .hero-visual .frame{inset:12px -12px -12px 12px;}
  .cutoff-badge{left:12px; bottom:-18px;}
  .trust-row{grid-template-columns:repeat(2,minmax(0,1fr));}
  .trust-item:nth-child(2){border-right:none;}
  .trust-item:nth-child(-n+2){border-bottom:1px solid var(--line-soft);}
  .story{grid-template-columns:1fr; gap:30px;}
  .reviews{grid-template-columns:1fr;}
  .steps{grid-template-columns:repeat(2,minmax(0,1fr));}
  .footer-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .contact-grid{grid-template-columns:1fr; gap:30px;}
  .pd-wrap, .pd-wrap--single{grid-template-columns:1fr;}
  .pd-thumbs{flex-direction:row; overflow-x:auto; order:2;}
  .pd-thumbs img{width:74px; flex-shrink:0;}
  .admin-sidebar{display:none;}
  .stat-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .admin-main{padding:24px 20px;}
}
@media (max-width:720px){
  .section{padding:60px 0;}
  .container{padding:0 20px;}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px;}
  .card .info{padding:13px 12px 15px;}
  .card h3{font-size:13.5px;}
  .card .price{font-size:19px;}
  .card .quick{opacity:1; transform:none; padding:10px; font-size:11.5px; letter-spacing:0.06em;}
  .occasions{grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px;}
  .steps{grid-template-columns:1fr;}
  .subscribe-form{flex-direction:column;}
  .footer-grid{grid-template-columns:1fr; gap:32px;}
  .sort-bar{overflow-x:auto; flex-wrap:nowrap; padding-bottom:14px;}
  .wa-widget{bottom:18px; right:18px;}
  .wa-toggle{width:52px; height:52px; font-size:24px;}
  .wa-card{width:calc(100vw - 36px);}
  .announce{font-size:11.5px; letter-spacing:0.04em;}
  .brand img{height:38px;}
  .brand .brand-name{font-size:21px;}
  .brand .brand-sub{font-size:8px;}
  .cutoff-badge{left:0; right:0; bottom:-26px; max-width:none;}
  .hero{padding-bottom:60px;}
}
@media (max-width:430px){
  /* "Tümünü görün" bağlantısı başlıkla aynı satıra sığmıyor — alt satıra al */
  .cat-block-head{flex-direction:column; align-items:flex-start; gap:8px;}
  .cat-block-head a{white-space:normal;}
  .occ-body{padding:14px;}
  .occ-body h3{font-size:18px;}
  .occ-body span{font-size:10px; letter-spacing:0.1em;}
  /* Güven şeridi iki sütuna sığmıyor — tek sütuna düşür */
  .trust-row{grid-template-columns:1fr;}
  .trust-item{
    padding:16px 20px; border-right:none;
    border-bottom:1px solid var(--line-soft);
  }
  .trust-item:last-child{border-bottom:none;}
  .trust-item:nth-child(-n+2){border-bottom:1px solid var(--line-soft);}
}
@media (max-width:400px){
  .brand .brand-text{display:none;}
}

@media (prefers-reduced-motion: reduce){
  *{transition-duration:.01ms !important; animation-duration:.01ms !important; scroll-behavior:auto !important;}
  .reveal{opacity:1; transform:none;}
}

/* =====================================================================
   MOBİL MENÜ PANELİ
   <body> altına eklenir; üst menünün katman bağlamından bağımsızdır.
   ===================================================================== */
.mnav{
  position:fixed; inset:0; z-index:160;
  background:var(--ivory); display:none; flex-direction:column;
  padding:14px 20px calc(22px + env(safe-area-inset-bottom, 0px));
}
.mnav.open{display:flex; animation:mnavIn .2s ease;}
@keyframes mnavIn{from{opacity:0; transform:translateY(-10px);} to{opacity:1; transform:none;}}
@media (min-width:981px){ .mnav{display:none !important;} }

body.nav-open{overflow:hidden;}
body.nav-open .wa-widget{display:none;}

.mnav-head{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding-bottom:14px; border-bottom:1px solid var(--line-soft);
}
.mnav-head img{width:165px;}
.mnav-close{
  width:46px; height:46px; flex-shrink:0; font-size:20px; color:var(--ink);
  border:1px solid var(--line); border-radius:3px;
  display:flex; align-items:center; justify-content:center;
}
.mnav-close:active{background:var(--cream);}

.mnav-list{flex:1; overflow-y:auto; overscroll-behavior:contain; -webkit-overflow-scrolling:touch;}
.mnav-list > a, .mnav-toggle{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  width:100%; min-height:58px; padding:16px 2px;
  font-family:'Jost', sans-serif; font-size:17.5px; letter-spacing:0.01em;
  color:var(--text); text-align:left;
  border-bottom:1px solid var(--line-soft);
}
.mnav-list > a:active, .mnav-toggle:active{background:var(--cream);}
.mnav-list > a[aria-current="page"]{color:var(--ink); font-weight:500;}
.mnav-toggle .caret{
  width:9px; height:9px; margin:0; opacity:.55;
  border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor;
  transform:rotate(45deg); transition:transform .2s ease;
}
.mnav-group.open > .mnav-toggle{color:var(--ink); font-weight:500;}
.mnav-group.open > .mnav-toggle .caret{transform:rotate(225deg);}

.mnav-sub{display:none; background:var(--cream); border-bottom:1px solid var(--line-soft); padding:2px 0;}
.mnav-group.open .mnav-sub{display:block;}
.mnav-sub a{
  display:flex; align-items:center; min-height:50px; padding:12px 2px 12px 18px;
  font-size:15.5px; color:var(--muted);
  border-bottom:1px solid rgba(11,50,32,0.06);
}
.mnav-sub a:last-child{border-bottom:none;}
.mnav-sub a:active{color:var(--ink);}

.mnav-foot{padding-top:18px; border-top:1px solid var(--line-soft);}
.mnav-foot .btn{width:100%; padding:17px;}
.mnav-phone{
  display:block; text-align:center; margin-top:14px;
  font-size:14.5px; color:var(--muted); letter-spacing:0.02em;
}
