/* Republic of Tea Get Burning — Bulgarian
   Palette: dark spice bg + ivory + chili-red accent + burnt orange CTA
   Fonts: Syne (bold display) + Source Sans 3 (body)
   Signature: Full-width dark ingredient pill ribbon under header
   Layout: Info LEFT, Gallery RIGHT (reversed) */

:root {
  --bg:        #FAF5EE;
  --bg2:       #F2EAE0;
  --surface:   #FFFFFF;
  --surf2:     #FDF7F0;
  --ink:       #1E0E06;
  --ink2:      #2C1808;
  --muted:     #7A5040;
  --border:    #E0C4A8;
  --rule:      #EDD8BC;
  --chili:     #B83A1A;
  --chili-lt:  #D85A38;
  --chili-bg:  #FAEEE8;
  --orange:    #D05010;
  --orange-h:  #A83C08;
  --ribbon-bg: #1E0E06;
  --star:      #C89808;
}

*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body { background:var(--bg); color:var(--ink2); font-family:'Source Sans 3',system-ui,sans-serif; font-size:15px; line-height:1.75; }
img { display:block; max-width:100%; height:auto; }
h1,h2,h3 { font-family:'Syne',sans-serif; }

/* HEADER */
.site-header { background:var(--ribbon-bg); padding:1.1rem 5vw; }
.hdr-inner { max-width:1080px; margin:0 auto; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:0.5rem; }
.hdr-left { display:flex; flex-direction:column; gap:0.1rem; }
.hdr-top { font-family:'Source Sans 3',sans-serif; font-size:0.68rem; color:rgba(255,255,255,0.35); letter-spacing:0.2em; text-transform:uppercase; }
.hdr-main { font-family:'Syne',sans-serif; font-size:clamp(1.2rem,3vw,1.8rem); font-weight:800; color:#fff; letter-spacing:-0.01em; text-transform:uppercase; line-height:1; }
.hdr-tag { display:inline-flex; align-items:center; gap:0.4rem; background:rgba(216,90,56,0.2); border:1px solid rgba(216,90,56,0.4); color:var(--chili-lt); font-size:0.68rem; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; padding:0.28rem 0.8rem; border-radius:3px; }
.hdr-tag i { font-size:0.72rem; }
@media(max-width:500px){ .hdr-tag{ display:none; } }

/* SPICE RIBBON — signature */
.spice-ribbon { background:var(--chili); padding:0.42rem 5vw; overflow:hidden; }
.ribbon-inner { max-width:1080px; margin:0 auto; display:flex; align-items:center; gap:0; flex-wrap:wrap; justify-content:center; }
.ri-pill { font-family:'Source Sans 3',sans-serif; font-size:0.68rem; font-weight:600; letter-spacing:0.08em; color:#fff; padding:0.15rem 0.7rem; display:inline-flex; align-items:center; gap:0.3rem; white-space:nowrap; }
.ri-pill i { font-size:0.65rem; opacity:0.85; }
.ri-hot { font-weight:700; color:#FFE8D0; }
.ri-sep { color:rgba(255,255,255,0.35); font-size:0.8rem; padding:0 0.15rem; }

/* LAYOUT */
.product-section { padding:3rem 5vw 1.5rem; }
.product-grid { max-width:1080px; margin:0 auto; display:grid; grid-template-columns:6fr 5fr; gap:5rem; align-items:start; }

/* INFO LEFT */
.info-col { order:1; }
.product-tag { display:inline-block; background:var(--chili-bg); border:1px solid var(--chili-lt); color:var(--chili); font-size:0.65rem; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; padding:0.22rem 0.75rem; border-radius:2px; margin-bottom:1rem; }
.product-title { font-size:clamp(3rem,6vw,5.5rem); font-weight:800; color:var(--ink); line-height:0.95; margin-bottom:0.3rem; letter-spacing:-0.025em; text-transform:uppercase; }
.title-spice { color:var(--chili); display:block; }
.product-sub { font-size:0.85rem; color:var(--muted); line-height:1.5; margin-bottom:0.8rem; }
.star-row { display:flex; align-items:center; gap:0.5rem; }
.stars { color:var(--star); font-size:1rem; letter-spacing:0.05em; }
.star-label { font-size:0.79rem; color:var(--chili); text-decoration:underline; cursor:default; }

.cert-row { display:flex; flex-wrap:wrap; gap:0.4rem; margin-top:0.7rem; }
.cert-badge { display:inline-flex; align-items:center; gap:0.35rem; background:var(--bg2); border:1px solid var(--border); color:var(--muted); font-size:0.72rem; font-weight:600; padding:0.24rem 0.6rem; border-radius:3px; }
.cert-badge i { color:var(--chili); font-size:0.65rem; }

.hr { height:1px; background:var(--rule); margin:1.3rem 0; }
.about-h { font-size:0.74rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; color:var(--muted); margin-bottom:0.9rem; font-family:'Source Sans 3',sans-serif; }
.about-list { list-style:none; display:flex; flex-direction:column; gap:0.85rem; }
.about-list li { display:flex; gap:0.8rem; align-items:flex-start; font-size:0.91rem; color:var(--ink2); line-height:1.72; }
.al-icon { flex-shrink:0; width:28px; height:28px; border-radius:4px; display:flex; align-items:center; justify-content:center; font-size:0.7rem; margin-top:2px; }
.al-icon.spice { background:var(--chili-bg); border:1px solid var(--border); color:var(--chili); }
.about-list li strong { color:var(--ink); font-weight:700; }

.disclaimer-box { background:var(--surf2); border-left:3px solid var(--chili-lt); padding:0.9rem 1.1rem; border-radius:0 4px 4px 0; }
.disc-lbl { display:flex; align-items:center; gap:0.4rem; font-size:0.7rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--chili); margin-bottom:0.45rem; }
.disclaimer-box p { font-size:0.79rem; color:var(--muted); line-height:1.65; }

.cta-block { display:flex; flex-direction:column; gap:0.65rem; }
.cta-btn { display:flex; align-items:center; justify-content:center; gap:0.65rem; width:100%; background:var(--orange); color:#fff; font-family:'Syne',sans-serif; font-size:0.95rem; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; padding:1rem 1.5rem; border-radius:3px; text-decoration:none; box-shadow:0 4px 18px rgba(208,80,16,0.3); transition:background 0.2s,transform 0.15s; }
.cta-btn:hover,.cta-btn:focus { background:var(--orange-h); transform:translateY(-1px); outline:none; }
.cta-btn i { font-size:1.1rem; }
.cta-meta { display:flex; gap:1.2rem; flex-wrap:wrap; }
.cta-meta span { display:flex; align-items:center; gap:0.35rem; font-size:0.73rem; color:var(--muted); }
.cta-meta i { font-size:0.62rem; color:var(--chili); }

/* GALLERY RIGHT */
.gallery-col { order:2; position:sticky; top:2rem; }
.gallery-frame { border:1px solid var(--border); border-radius:6px; overflow:hidden; background:var(--surf2); }
.gallery-track { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
.gallery-track::-webkit-scrollbar { display:none; }
.gallery-slide { flex:0 0 100%; scroll-snap-align:start; }
.gallery-slide img { width:100%; height:320px; object-fit:contain; padding:1.8rem; background:var(--surf2); }
.gallery-thumbs { display:flex; gap:0.5rem; margin-top:0.65rem; overflow-x:auto; scrollbar-width:none; }
.gallery-thumbs::-webkit-scrollbar { display:none; }
.g-thumb { flex:0 0 60px; border:1.5px solid var(--border); border-radius:4px; overflow:hidden; background:var(--surface); transition:border-color 0.15s; }
.g-thumb:hover,.g-thumb:focus { border-color:var(--chili); outline:none; }
.g-thumb img { width:60px; height:60px; object-fit:cover; }

.count-box { display:flex; align-items:center; gap:0.8rem; background:var(--ribbon-bg); border-radius:5px; padding:1rem 1.3rem; margin-top:0.7rem; }
.cb-num { font-family:'Syne',sans-serif; font-size:2.5rem; font-weight:800; color:var(--chili-lt); line-height:1; }
.cb-lbl { font-size:0.72rem; color:rgba(255,255,255,0.5); line-height:1.4; text-transform:uppercase; letter-spacing:0.08em; font-weight:600; }

/* REVIEWS */
.reviews-section { background:var(--bg2); padding:3.5rem 5vw 5rem; border-top:1px solid var(--border); }
.reviews-wrap { max-width:760px; margin:0 auto; }
.reviews-hdr { margin-bottom:2rem; padding-bottom:1.2rem; border-bottom:2px solid var(--chili); }
.reviews-title { font-size:1.2rem; font-weight:800; color:var(--ink); text-transform:uppercase; letter-spacing:0.04em; margin-bottom:0.4rem; }
.rev-summary { display:flex; align-items:center; gap:0.6rem; flex-wrap:wrap; }
.rev-avg { font-size:0.87rem; font-weight:600; color:var(--ink2); }
.rev-n { font-size:0.8rem; color:var(--muted); }
.review { padding:1.8rem 0; border-bottom:1px solid var(--rule); }
.review:last-child { border-bottom:none; }
.review-head { display:flex; gap:1rem; align-items:flex-start; margin-bottom:0.65rem; }
.rev-avatar img { width:44px; height:44px; border-radius:50%; object-fit:cover; border:2px solid var(--border); flex-shrink:0; }
.rev-meta { display:flex; flex-direction:column; gap:0.05rem; }
.rev-name { font-weight:600; font-size:0.9rem; color:var(--ink); }
.rev-stars { color:var(--star); font-size:0.88rem; }
.rev-headline { font-family:'Syne',sans-serif; font-weight:700; font-size:0.95rem; color:var(--ink); line-height:1.3; }
.rev-date,.rev-attrs { font-size:0.77rem; color:var(--muted); }
.rev-attrs { margin-bottom:0.7rem; }
.rev-body { font-size:0.91rem; color:var(--ink2); line-height:1.8; margin-bottom:0.6rem; }
.rev-photos { display:flex; gap:0.6rem; flex-wrap:wrap; margin-top:0.4rem; }
.rev-photos img { width:90px; height:90px; object-fit:cover; border-radius:4px; border:1px solid var(--border); }

/* FOOTER */
.site-footer { background:var(--ribbon-bg); border-top:3px solid var(--chili); padding:2rem 5vw; text-align:center; }
.footer-inner { max-width:860px; margin:0 auto; display:flex; flex-direction:column; align-items:center; gap:0.7rem; }
.footer-brand { font-family:'Syne',sans-serif; font-size:0.88rem; font-weight:700; color:rgba(255,255,255,0.4); letter-spacing:0.06em; text-transform:uppercase; }
.footer-links { display:flex; flex-wrap:wrap; gap:0.5rem; align-items:center; justify-content:center; }
.footer-links a { font-size:0.76rem; color:rgba(255,255,255,0.28); text-decoration:none; }
.footer-links a:hover { color:var(--chili-lt); }
.fsep { color:rgba(255,255,255,0.14); font-size:0.76rem; }
.footer-copy { font-size:0.7rem; color:rgba(255,255,255,0.18); }

/* RESPONSIVE */
@media(max-width:860px) {
  .product-grid { grid-template-columns:1fr; gap:2.5rem; }
  .info-col { order:2; }
  .gallery-col { order:1; position:static; }
  .gallery-slide img { height:260px; }
  .product-section { padding:2rem 4vw; }
}
@media(max-width:560px) {
  .product-title { font-size:3rem; }
  .gallery-slide img { height:220px; }
  .g-thumb { flex:0 0 54px; }
  .g-thumb img { width:54px; height:54px; }
  .reviews-section { padding:2.5rem 4vw 4rem; }
}