/* ==========================================================================
   RĪGAS GARŠA — kopīgā dizaina sistēma
   Latviešu šprotu un Rīgas Melnā balzama gardēžu biedrība
   Viss iekļauts (bez ārējiem resursiem): fonti sistēmas, attēli — inline SVG.
   ========================================================================== */

:root {
  /* palete: Baltijas jūra, kūpinātas šprotes, tumšais balzama pudele */
  --ink:        #1a1512;   /* balzama stikls, teksts */
  --ink-2:      #2b2320;
  --paper:      #f7f1e6;   /* krējuma papīrs */
  --paper-2:    #efe6d4;
  --gold:       #c8992e;   /* šprotu zelts / eļļa */
  --gold-2:     #e7be5b;
  --amber:      #a9641b;
  --sea:        #1f6f6b;   /* Baltijas tirkīzs */
  --sea-2:      #2f938c;
  --rust:       #8c2f1d;   /* skārda bundžas rūsa */
  --cream:      #f7f1e6;
  --muted:      #7c7166;
  --line:       rgba(26,21,18,.14);
  --line-dk:    rgba(247,241,230,.16);
  --shadow:     0 18px 48px -22px rgba(26,21,18,.55);
  --shadow-sm:  0 8px 22px -14px rgba(26,21,18,.5);
  --radius:     14px;
  --radius-lg:  26px;
  --maxw:       1180px;
  --serif:      "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;
  --sans:       ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: var(--sans);
  color: var(--ink);
  background: var(--paper);
  line-height: 1.65;
  font-size: 17px;
  overflow-x: hidden;
}
img, svg { max-width: 100%; display: block; }
a { color: var(--amber); text-decoration: none; transition: color .18s; }
a:hover { color: var(--rust); }

h1, h2, h3, h4 { font-family: var(--serif); line-height: 1.12; font-weight: 700; letter-spacing: -.01em; margin: 0 0 .5em; }
h1 { font-size: clamp(2.3rem, 5.5vw, 4.4rem); }
h2 { font-size: clamp(1.7rem, 3.6vw, 2.8rem); }
h3 { font-size: clamp(1.2rem, 2vw, 1.6rem); }
p  { margin: 0 0 1.1em; }
.lead { font-size: 1.22rem; color: var(--ink-2); max-width: 62ch; }
.eyebrow {
  font-family: var(--sans); font-weight: 700; text-transform: uppercase;
  letter-spacing: .22em; font-size: .74rem; color: var(--amber); margin: 0 0 1rem;
}
.container { width: 100%; max-width: var(--maxw); margin: 0 auto; padding: 0 22px; }
.section { padding: clamp(48px, 8vw, 104px) 0; position: relative; }
.section.tight { padding: clamp(32px, 5vw, 60px) 0; }
.section.dark { background: var(--ink); color: var(--cream); }
.section.dark h1,.section.dark h2,.section.dark h3 { color: #fff; }
.section.dark .eyebrow { color: var(--gold-2); }
.section.dark .lead { color: rgba(247,241,230,.8); }
.section.sea { background: linear-gradient(160deg,#134e4a,#1f6f6b 60%,#2f938c); color: #eafcfa; }
.section.sea h2,.section.sea h3 { color:#fff; }
.section.sea .eyebrow { color:#a9ecdf; }
.section.gold { background: linear-gradient(150deg,var(--gold-2),var(--gold)); color:#2a1f08; }
.section.gold .eyebrow{ color:#5c4408; }
.center { text-align: center; }
.center .lead { margin-left: auto; margin-right: auto; }

/* ---------- Header / navigācija ---------- */
.site-header {
  position: sticky; top: 0; z-index: 50;
  background: rgba(247,241,230,.86);
  backdrop-filter: saturate(150%) blur(10px);
  border-bottom: 1px solid var(--line);
}
.nav { display: flex; align-items: center; gap: 20px; height: 70px; }
.brand { display: flex; align-items: center; gap: 12px; font-family: var(--serif); font-weight: 700; font-size: 1.24rem; color: var(--ink); }
.brand:hover { color: var(--ink); }
.brand .mark { width: 38px; height: 38px; flex: none; }
.brand small { display:block; font-family: var(--sans); font-weight:600; font-size:.6rem; letter-spacing:.18em; text-transform:uppercase; color: var(--muted); }
.nav-links { display: flex; gap: 4px; margin-left: auto; align-items: center; flex-wrap: wrap; }
.nav-links a {
  color: var(--ink-2); font-weight: 600; font-size: .93rem;
  padding: 8px 12px; border-radius: 9px;
}
.nav-links a:hover { background: var(--paper-2); color: var(--ink); }
.nav-links a.active { color: var(--rust); }
.nav-cta {
  background: var(--ink) !important; color: #fff !important;
  padding: 9px 16px !important; border-radius: 999px !important;
}
.nav-cta:hover { background: var(--rust) !important; }
.nav-toggle { display: none; margin-left: auto; background: none; border: 1px solid var(--line); border-radius: 9px; padding: 9px 12px; cursor: pointer; }
.nav-toggle span { display:block; width:20px; height:2px; background: var(--ink); margin: 4px 0; }

/* ---------- Poga ---------- */
.btn {
  display: inline-flex; align-items: center; gap: 9px;
  padding: 13px 26px; border-radius: 999px;
  font-weight: 700; font-size: .98rem; cursor: pointer; border: 0;
  background: var(--gold); color: #2a1f08; box-shadow: var(--shadow-sm);
  transition: transform .15s, box-shadow .2s, background .2s;
}
.btn:hover { transform: translateY(-2px); background: var(--gold-2); color:#2a1f08; }
.btn.dark { background: var(--ink); color:#fff; }
.btn.dark:hover { background: var(--rust); color:#fff; }
.btn.ghost { background: transparent; border: 1.5px solid currentColor; color: inherit; box-shadow:none; }
.btn.big { padding: 16px 34px; font-size: 1.05rem; }
.btn-row { display:flex; gap: 14px; flex-wrap: wrap; }

/* ---------- Hero ---------- */
.hero { position: relative; overflow: hidden; background: radial-gradient(120% 130% at 80% -10%, #24313a 0%, var(--ink) 55%); color: var(--cream); }
.hero .container { position: relative; z-index: 2; padding-top: clamp(60px,9vw,120px); padding-bottom: clamp(60px,9vw,120px); }
.hero h1 { color: #fff; max-width: 15ch; }
.hero .lead { color: rgba(247,241,230,.85); }
.hero-grid { display:grid; grid-template-columns: 1.05fr .95fr; gap: 48px; align-items: center; }
.hero-art { position: relative; filter: drop-shadow(0 30px 40px rgba(0,0,0,.5)); }
.hero-badges { display:flex; gap: 26px; margin-top: 30px; flex-wrap: wrap; }
.hero-badges .b { display:flex; flex-direction:column; }
.hero-badges .b b { font-family: var(--serif); font-size: 1.9rem; color: var(--gold-2); line-height:1; }
.hero-badges .b span { font-size:.8rem; color: rgba(247,241,230,.7); text-transform:uppercase; letter-spacing:.12em; }

/* ---------- Režģi / kartītes ---------- */
.grid { display: grid; gap: 26px; }
.grid.cols-2 { grid-template-columns: repeat(2,1fr); }
.grid.cols-3 { grid-template-columns: repeat(3,1fr); }
.grid.cols-4 { grid-template-columns: repeat(4,1fr); }
.split { display:grid; grid-template-columns: 1fr 1fr; gap: clamp(30px,5vw,64px); align-items:center; }
.split.narrow-left { grid-template-columns: .85fr 1.15fr; }

.card {
  background: #fff; border: 1px solid var(--line); border-radius: var(--radius);
  padding: 26px; box-shadow: var(--shadow-sm);
  transition: transform .18s, box-shadow .22s; height: 100%;
}
.card:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
.card .ic { width: 46px; height: 46px; margin-bottom: 14px; color: var(--amber); }
.card h3 { margin-bottom: .35em; }
.card p { color: var(--ink-2); margin-bottom: 0; }
.section.dark .card { background: var(--ink-2); border-color: var(--line-dk); color: rgba(247,241,230,.86); }
.section.dark .card h3 { color:#fff; }

.badge {
  display:inline-flex; align-items:center; gap:6px; padding: 5px 12px; border-radius: 999px;
  font-size: .74rem; font-weight: 700; letter-spacing:.04em; text-transform: uppercase;
  background: rgba(200,153,46,.16); color: var(--amber);
}
.badge.sea { background: rgba(31,111,107,.16); color: var(--sea); }
.badge.rust { background: rgba(140,47,29,.14); color: var(--rust); }

/* ---------- Statistika ---------- */
.stats { display:grid; grid-template-columns: repeat(4,1fr); gap: 20px; }
.stat { text-align:center; padding: 22px 12px; border-radius: var(--radius); background: rgba(255,255,255,.05); border: 1px solid var(--line-dk); }
.stat b { display:block; font-family: var(--serif); font-size: clamp(2rem,4vw,3rem); color: var(--gold-2); line-height:1; }
.stat span { font-size:.82rem; letter-spacing:.08em; text-transform:uppercase; opacity:.8; }

/* ---------- Laika līnija ---------- */
.timeline { position: relative; margin: 30px 0; padding-left: 34px; }
.timeline::before { content:""; position:absolute; left: 9px; top: 6px; bottom: 6px; width: 2px; background: linear-gradient(var(--gold),var(--sea)); }
.tl-item { position: relative; margin-bottom: 30px; }
.tl-item::before { content:""; position:absolute; left:-30px; top: 4px; width: 16px; height:16px; border-radius:50%; background: var(--gold); border: 3px solid var(--paper); box-shadow: 0 0 0 2px var(--gold); }
.section.dark .tl-item::before { border-color: var(--ink); }
.tl-item .yr { font-family: var(--serif); font-weight:700; color: var(--amber); font-size: 1.15rem; }
.section.dark .tl-item .yr { color: var(--gold-2); }

/* ---------- Citāts ---------- */
.quote { font-family: var(--serif); font-size: clamp(1.4rem,3vw,2.1rem); line-height:1.35; max-width: 26ch; }
.quote-block { border-left: 4px solid var(--gold); padding: 6px 0 6px 26px; }
figure.pull { margin: 0; }
figure.pull figcaption { margin-top: 14px; color: var(--muted); font-size:.9rem; }

/* ---------- Produkta kartīte (veikals) ---------- */
.product { background:#fff; border:1px solid var(--line); border-radius: var(--radius); overflow:hidden; box-shadow: var(--shadow-sm); display:flex; flex-direction:column; transition: transform .18s, box-shadow .2s; }
.product:hover { transform: translateY(-4px); box-shadow: var(--shadow); }
.product .thumb { aspect-ratio: 4/3; background: linear-gradient(145deg,#20303a,#0f1a20); display:grid; place-items:center; }
.product .thumb svg { width: 62%; }
.product .body { padding: 18px 20px 22px; display:flex; flex-direction:column; flex:1; }
.product .body h3 { font-size: 1.15rem; margin-bottom:.2em; }
.product .desc { color: var(--muted); font-size:.9rem; flex:1; }
.product .row { display:flex; align-items:center; justify-content:space-between; margin-top: 14px; }
.product .price { font-family: var(--serif); font-size: 1.4rem; font-weight:700; }
.product .price small { font-size:.8rem; color: var(--muted); font-weight:400; }

/* ---------- Galerija ---------- */
.gallery { display:grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.gallery .tile { border-radius: var(--radius); overflow:hidden; cursor: pointer; position:relative; aspect-ratio: 1/1; border:1px solid var(--line); box-shadow: var(--shadow-sm); transition: transform .2s; }
.gallery .tile:hover { transform: scale(1.02); }
.gallery .tile svg, .gallery .tile > div { width:100%; height:100%; }
.gallery .tile .cap { position:absolute; left:0; right:0; bottom:0; padding: 22px 14px 12px; color:#fff; font-weight:700; font-size:.9rem; background: linear-gradient(transparent, rgba(0,0,0,.65)); }

/* lightbox */
.lightbox { position: fixed; inset: 0; background: rgba(10,8,6,.88); display:none; place-items:center; z-index: 100; padding: 30px; }
.lightbox.open { display:grid; }
.lightbox .frame { max-width: 560px; width:100%; background: var(--ink); border-radius: var(--radius-lg); padding: 22px; box-shadow: var(--shadow); }
.lightbox .frame .cap { color: var(--gold-2); font-family: var(--serif); font-size: 1.3rem; margin-top: 14px; }
.lightbox .close { position:absolute; top: 20px; right: 26px; color:#fff; font-size: 2rem; cursor:pointer; line-height:1; }

/* ---------- Recepte ---------- */
.recipe { background:#fff; border:1px solid var(--line); border-radius: var(--radius); padding: 26px; box-shadow: var(--shadow-sm); }
.recipe .meta { display:flex; gap: 18px; flex-wrap:wrap; color: var(--muted); font-size:.85rem; margin-bottom: 14px; }
.recipe .meta b { color: var(--ink); }
.recipe ol, .recipe ul { padding-left: 1.2em; margin: 0 0 1em; }
.recipe li { margin-bottom: .4em; }

/* ---------- Tastes profils (interaktīvs) ---------- */
.taste { display:grid; gap: 14px; }
.taste .row { display:grid; grid-template-columns: 140px 1fr 40px; align-items:center; gap: 14px; }
.taste .bar { height: 12px; border-radius: 999px; background: rgba(0,0,0,.12); overflow:hidden; }
.section.dark .taste .bar { background: rgba(255,255,255,.14); }
.taste .fill { height:100%; border-radius:999px; background: linear-gradient(90deg,var(--gold),var(--amber)); width: 0; transition: width 1.1s cubic-bezier(.2,.8,.2,1); }

/* ---------- Akordeons (FAQ) ---------- */
.acc-item { border-bottom: 1px solid var(--line); }
.acc-q { width:100%; text-align:left; background:none; border:0; padding: 20px 0; font-family: var(--serif); font-size: 1.2rem; font-weight:700; color: var(--ink); cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap: 14px; }
.acc-q .pm { flex:none; font-size:1.5rem; color: var(--amber); transition: transform .2s; }
.acc-item.open .acc-q .pm { transform: rotate(45deg); }
.acc-a { max-height:0; overflow:hidden; transition: max-height .3s ease; }
.acc-a p { padding-bottom: 18px; color: var(--ink-2); margin:0; }

/* ---------- Forma ---------- */
.form { display:grid; gap: 16px; max-width: 560px; }
.form .field { display:grid; gap: 6px; }
.form label { font-weight:600; font-size:.9rem; }
.form input, .form textarea, .form select {
  width:100%; padding: 13px 15px; border-radius: 10px; border: 1px solid var(--line);
  font: inherit; background:#fff; color: var(--ink);
}
.form input:focus, .form textarea:focus { outline: 2px solid var(--gold); border-color: transparent; }
.form .note { font-size:.82rem; color: var(--muted); }

/* ---------- Josla / lente ---------- */
.marquee { background: var(--rust); color:#fff; overflow:hidden; white-space:nowrap; padding: 10px 0; font-weight:600; letter-spacing:.04em; }
.marquee .track { display:inline-block; animation: scroll 26s linear infinite; }
.marquee .track span { margin: 0 26px; }
@keyframes scroll { from{transform:translateX(0)} to{transform:translateX(-50%)} }

/* ---------- Footer ---------- */
.site-footer { background: var(--ink); color: rgba(247,241,230,.78); padding: 64px 0 30px; }
.site-footer h4 { color:#fff; font-family: var(--sans); font-size:.8rem; letter-spacing:.14em; text-transform:uppercase; margin-bottom: 16px; }
.footer-grid { display:grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 34px; }
.footer-grid a { color: rgba(247,241,230,.72); display:block; padding: 4px 0; font-size:.95rem; }
.footer-grid a:hover { color: var(--gold-2); }
.footer-bottom { border-top: 1px solid var(--line-dk); margin-top: 44px; padding-top: 22px; display:flex; justify-content:space-between; gap: 14px; flex-wrap:wrap; font-size:.85rem; color: rgba(247,241,230,.55); }

/* ---------- Reveal animācija ---------- */
.reveal { opacity: 0; transform: translateY(22px); transition: opacity .6s, transform .6s; }
.reveal.in { opacity: 1; transform: none; }

/* ---------- Sīkrīki ---------- */
.divider { height:1px; background: var(--line); margin: 0; border:0; }
.tag-row { display:flex; gap:8px; flex-wrap:wrap; margin: 10px 0; }
.pagehead { padding: clamp(56px,8vw,96px) 0 clamp(30px,4vw,44px); background: linear-gradient(180deg,#fff, var(--paper)); border-bottom:1px solid var(--line); }
.crumbs { font-size:.85rem; color: var(--muted); margin-bottom: 14px; }
.crumbs a { color: var(--muted); }
.prose { max-width: 72ch; }
.prose h2 { margin-top: 1.4em; }
.prose h3 { margin-top: 1.2em; }
.prose img { border-radius: var(--radius); margin: 1.4em 0; }
.note-box { background: rgba(200,153,46,.1); border-left: 4px solid var(--gold); padding: 18px 22px; border-radius: 0 var(--radius) var(--radius) 0; margin: 1.4em 0; }

/* ---------- Responsīvs ---------- */
@media (max-width: 960px) {
  .hero-grid, .split, .split.narrow-left { grid-template-columns: 1fr; }
  .grid.cols-4 { grid-template-columns: repeat(2,1fr); }
  .grid.cols-3 { grid-template-columns: repeat(2,1fr); }
  .stats { grid-template-columns: repeat(2,1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .gallery { grid-template-columns: repeat(2,1fr); }
  .nav-links { display:none; position:absolute; top:70px; left:0; right:0; background: var(--paper); flex-direction:column; padding: 12px 22px 20px; border-bottom:1px solid var(--line); box-shadow: var(--shadow); }
  .nav-links.open { display:flex; }
  .nav-links a { width:100%; }
  .nav-toggle { display:block; }
}
@media (max-width: 560px) {
  .grid.cols-4, .grid.cols-3, .grid.cols-2 { grid-template-columns: 1fr; }
  .stats { grid-template-columns: 1fr 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  body { font-size: 16px; }
}
