/*
Theme Name: Spec.lv
Theme URI: https://spec.lv
Author: Jānis Vilciņš
Description: Mazā Mēbeļu Māja / spec.lv - virtuves moduļi un mēbeles ar redzamām cenām. Klasiskā tēma ar WooCommerce atbalstu.
Version: 1.0.0
Requires at least: 6.4
Requires PHP: 8.1
Text Domain: spec
*/
/* spec.lv demo - jaunās lapas izskats.
   Paraksta elements: mērlīnija (sarkana līnija ar galu atzīmēm un mm), jo virtuves sākas ar mērīšanu
   un moduļa platums ir galvenais lielums, ko pircējs izvēlas. Citur viss kluss un plakans. */
:root {
  --melamins: #f4f5f3;   /* fons - balts melamīns */
  --balts: #ffffff;
  --grafits: #1d2327;    /* teksts - grafīta fasādes */
  --osis: #d6be97;       /* LKSP oša lamināts */
  --osis-gaiss: #efe6d6;
  --zils: #2341c8;       /* zīmola zilais (Spec.lv) */
  --zils-tumss: #1a32a0;
  --sarkans: #d42a2f;    /* zīmola sarkanais + mērlīnija */
  --inox: #6f787e;       /* sekundārais teksts */
  --linija: #d9dde0;
  --rad: 4px;
  --mala: clamp(16px, 4vw, 40px);
  --plat: 1200px;
  --virsr: "Barlow Condensed", "Arial Narrow", sans-serif;
  --teksts: "Barlow", "Segoe UI", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition: none !important; animation: none !important; } }
body {
  margin: 0;
  background: var(--melamins);
  color: var(--grafits);
  font-family: var(--teksts);
  font-size: 1.0625rem;
  line-height: 1.55;
  font-variant-numeric: tabular-nums;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--zils); text-underline-offset: 3px; }
a:hover { color: var(--zils-tumss); }
:focus-visible { outline: 3px solid var(--zils); outline-offset: 2px; }
h1, h2, h3 { font-family: var(--virsr); font-weight: 700; line-height: 1.05; margin: 0 0 .5em; letter-spacing: .005em; }
h1 { font-size: clamp(2.4rem, 7vw, 4.25rem); }
h2 { font-size: clamp(1.9rem, 4.6vw, 2.75rem); }
h3 { font-size: 1.45rem; font-weight: 600; }
p { margin: 0 0 1em; max-width: 68ch; }
.iekss { width: 100%; max-width: var(--plat); margin: 0 auto; padding: 0 var(--mala); }
.paslept { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* demo josla */
.demo-josla { background: var(--grafits); color: #e9ecee; font-size: .875rem; padding: 7px 0; }
.demo-josla p { margin: 0; max-width: none; }

/* galvene */
.galvene { background: var(--balts); border-bottom: 1px solid var(--linija); position: sticky; top: 0; z-index: 30; }
.galvene .iekss { display: flex; align-items: center; gap: 16px; min-height: 68px; }
.logo { text-decoration: none; display: flex; flex-direction: column; line-height: 1; flex-shrink: 0; }
.logo-aug { font-family: var(--virsr); font-style: italic; font-weight: 700; color: var(--sarkans); font-size: .95rem; letter-spacing: .01em; }
.logo-gal { font-family: var(--virsr); font-weight: 800; color: var(--zils); font-size: 2rem; letter-spacing: -.01em; margin-top: 1px; }
.nav { display: none; gap: 2px; margin-left: 8px; flex-wrap: wrap; }
.nav a { text-decoration: none; color: var(--grafits); font-weight: 500; padding: 8px 9px; border-radius: var(--rad); white-space: nowrap; }
.nav a:hover, .nav a[aria-current="page"] { background: var(--melamins); color: var(--zils); }
.galv-labi { margin-left: auto; display: flex; align-items: center; gap: 8px; }
.tel { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 11px; border: 1px solid var(--linija); border-radius: var(--rad); background: var(--balts); text-decoration: none; color: var(--grafits); font-weight: 600; font-family: var(--virsr); font-size: 1.3rem; white-space: nowrap; }
.tel svg { width: 22px; height: 22px; flex-shrink: 0; }
.tel .tel-teksts { display: none; }
.ikona-poga { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: var(--rad); border: 1px solid var(--linija); background: var(--balts); color: var(--grafits); position: relative; text-decoration: none; cursor: pointer; }
.ikona-poga svg { width: 22px; height: 22px; }
.groza-skaits { position: absolute; top: -6px; right: -6px; min-width: 20px; height: 20px; border-radius: 10px; background: var(--sarkans); color: #fff; font-size: .75rem; font-weight: 700; display: none; align-items: center; justify-content: center; padding: 0 5px; }
.groza-skaits.ir { display: inline-flex; }
.poga { white-space: nowrap; display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 20px; border-radius: var(--rad); border: 2px solid var(--zils); background: var(--zils); color: #fff; font-family: var(--teksts); font-weight: 600; font-size: 1rem; text-decoration: none; cursor: pointer; }
.poga:hover { background: var(--zils-tumss); border-color: var(--zils-tumss); color: #fff; }
.poga.otra { background: transparent; color: var(--zils); }
.poga.otra:hover { background: var(--balts); color: var(--zils-tumss); }
.galvene .poga { display: none; min-height: 44px; }
.izvelne-poga { display: inline-flex; }
.mob-izvelne { display: none; border-top: 1px solid var(--linija); background: var(--balts); }
.mob-izvelne.atverta { display: block; }
.mob-izvelne ul { list-style: none; margin: 0; padding: 8px var(--mala) 18px; columns: 2; column-gap: 16px; }
.mob-izvelne li { break-inside: avoid; }
.mob-izvelne a { display: block; padding: 10px 0; text-decoration: none; color: var(--grafits); font-weight: 500; border-bottom: 1px solid var(--melamins); }
@media (min-width: 560px) { .tel .tel-teksts { display: inline; } }
/* telefonā garš pogas teksts (piem. krieviski) drīkst pāriet jaunā rindā */
@media (max-width: 599px) { .poga { white-space: normal; text-align: center; } }
/* valodu pārslēdzējs LV | RU (TranslatePress) */
.valodas { display: inline-flex; border: 1px solid var(--linija); border-radius: var(--rad); overflow: hidden; flex-shrink: 0; }
.valodas a { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; height: 42px; padding: 0 8px; font-family: var(--virsr); font-weight: 600; font-size: 1.05rem; text-decoration: none; color: var(--grafits); background: var(--balts); }
.valodas a + a { border-left: 1px solid var(--linija); }
.valodas a:hover { color: var(--zils); }
.valodas a[aria-current] { background: var(--grafits); color: #fff; }
.mob-valodas { display: flex; width: max-content; margin: 0 var(--mala) 18px; }
/* galvenē tikai otra valoda (LV lapā "RU", RU lapā "LV"); telefona izvēlnē abas */
.galv-labi .valodas a[aria-current] { display: none; }
.galv-labi .valodas a { height: 42px; min-width: 42px; }
.galv-labi .valodas a + a { border-left: 0; }
@media (min-width: 1180px) {
  .nav { display: flex; flex-wrap: nowrap; }
  .tel { border-color: transparent; padding: 0 4px; }
  .galvene .poga { display: inline-flex; }
  .izvelne-poga { display: none; }
  .mob-izvelne, .mob-izvelne.atverta { display: none; }
}
@media (min-width: 1180px) and (max-width: 1279px) { .galvene .nav a { padding: 8px 6px; } }
/* krieviski izvēlnes vārdi garāki: pilna izvēlne tikai no 1400 px, līdz tam izvēlnes poga */
@media (min-width: 1180px) { html[lang^="ru"] .nav a { padding: 8px 6px; } }
@media (min-width: 1180px) and (max-width: 1399px) {
  html[lang^="ru"] .nav { display: none; }
  html[lang^="ru"] .izvelne-poga { display: inline-flex; }
  html[lang^="ru"] .mob-izvelne.atverta { display: block; }
}

/* mērlīnija */
.merlinija { position: relative; height: 22px; margin: 0 0 14px; color: var(--sarkans); }
.merlinija::before { content: ""; position: absolute; left: 0; right: 0; top: 50%; border-top: 1.5px solid currentColor; }
.merlinija::after { content: ""; position: absolute; left: 0; right: 0; top: 3px; bottom: 3px; border-left: 1.5px solid currentColor; border-right: 1.5px solid currentColor; }
.merlinija span { position: relative; z-index: 1; display: table; margin: 0 auto; background: var(--melamins); padding: 0 8px; font-family: var(--virsr); font-weight: 600; font-size: .95rem; line-height: 22px; color: var(--sarkans); }
.uz-balta .merlinija span, .balts-fons .merlinija span { background: var(--balts); }

/* hero */
.hero { padding: clamp(28px, 6vw, 72px) 0 clamp(32px, 6vw, 80px); }
.hero .iekss { display: grid; gap: 18px clamp(24px, 4vw, 56px); grid-template-areas: "virsr" "foto" "teksts"; }
.hero-virsr { grid-area: virsr; max-width: 13ch; margin: 0; }
.hero-foto-bloks { grid-area: foto; }
.hero-teksts { grid-area: teksts; }
.hero .ievads { font-size: clamp(1.1rem, 2.2vw, 1.3rem); color: #3a4247; max-width: 34ch; }
.hero .pogas { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.hero-foto { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.hero-foto figure { margin: 0; background: var(--osis-gaiss); overflow: hidden; aspect-ratio: 3 / 4; }
.hero-foto img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 599px) {
  .hero-foto { grid-template-columns: 1fr; }
  .hero-foto figure:first-child { aspect-ratio: 4 / 3.4; }
  .hero-foto figure:not(:first-child) { display: none; }
}
.fakti { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 24px 0 0; padding: 0; list-style: none; color: #3a4247; font-size: .975rem; }
.fakti strong { font-family: var(--virsr); font-size: 1.35rem; color: var(--grafits); margin-right: 4px; }
@media (min-width: 900px) {
  .hero .iekss { grid-template-columns: 5fr 7fr; grid-template-areas: "virsr foto" "teksts foto"; align-items: end; }
  .hero-teksts { align-self: start; }
  .hero-foto-bloks { align-self: center; }
}

/* sadaļas */
.sadala { padding: clamp(40px, 7vw, 88px) 0; }
.sadala.balts-fons { background: var(--balts); border-top: 1px solid var(--linija); border-bottom: 1px solid var(--linija); }
.sadala-galva { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 12px 24px; margin-bottom: clamp(20px, 3vw, 36px); }
.sadala-galva h2 { margin: 0; }
.sadala-galva p { margin: 0; color: #4a5358; }

/* fasādes: viens modulis, trīs materiāli */
.fasades { display: grid; gap: 1px; background: var(--linija); border: 1px solid var(--linija); }
.fasade { background: var(--balts); padding: 22px 20px 20px; display: grid; grid-template-rows: auto auto 1fr auto; gap: 10px; text-decoration: none; color: var(--grafits); }
.fasade:hover { background: #fbfbfa; color: var(--grafits); }
.fasade img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; margin: 0 0 4px; }
.fasade h3 { margin: 0; }
.fasade .cena-no { font-family: var(--virsr); font-weight: 700; font-size: 1.9rem; color: var(--grafits); }
.fasade .cena-no small { font-family: var(--teksts); font-weight: 500; font-size: .9rem; color: var(--inox); margin-right: 6px; }
.fasade ul { margin: 0; padding-left: 18px; color: #3a4247; font-size: .975rem; }
.fasade .saite { color: var(--zils); font-weight: 600; }
@media (min-width: 760px) { .fasades { grid-template-columns: repeat(3, 1fr); } }

/* soļi */
.soli { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; counter-reset: solis; border-top: 1px solid var(--linija); }
.soli li { counter-increment: solis; display: grid; grid-template-columns: 54px 1fr; gap: 4px 16px; padding: 18px 0; border-bottom: 1px solid var(--linija); }
.soli li::before { content: counter(solis); grid-row: span 2; font-family: var(--virsr); font-weight: 700; font-size: 2.6rem; line-height: 1; color: var(--sarkans); }
.soli h3 { margin: 0; font-size: 1.3rem; }
.soli p { margin: 0; color: #3a4247; }
@media (min-width: 900px) {
  .soli { grid-template-columns: repeat(5, 1fr); border-top: 0; gap: 20px; }
  .soli li { grid-template-columns: 1fr; border-bottom: 0; border-top: 2px solid var(--grafits); padding-top: 14px; }
  .soli li::before { grid-row: auto; margin-bottom: 6px; }
}

/* kategoriju flīzes */
.flizes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.flize { position: relative; display: block; background: var(--balts); text-decoration: none; color: var(--grafits); border: 1px solid var(--linija); }
.flize .att { aspect-ratio: 1; background: var(--balts); display: flex; align-items: center; justify-content: center; padding: 10px; }
.flize .att img { width: 100%; height: 100%; object-fit: contain; }
/* ja garš vārds (RU telefonā) un skaits neietilpst vienā rindā, skaits pāriet zem nosaukuma */
.flize .nos { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 4px; align-items: baseline; padding: 10px 12px 12px; border-top: 1px solid var(--melamins); }
.flize .nos b { flex: 1 1 0; font-family: var(--virsr); font-weight: 600; font-size: 1.2rem; line-height: 1.1; }
.flize .nos span { color: var(--inox); font-size: .875rem; white-space: nowrap; }
.flize:hover { border-color: var(--zils); color: var(--grafits); }
@media (min-width: 640px) { .flizes { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .flizes { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* galerija */
.galerija { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.galerija figure { margin: 0; aspect-ratio: 3 / 4; overflow: hidden; background: var(--osis-gaiss); }
.galerija img { width: 100%; height: 100%; object-fit: cover; }
@media (min-width: 760px) { .galerija { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.fb-saites { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }

/* kontakti */
.kontakti { display: grid; gap: 28px; }
.kontakti dl { margin: 0; display: grid; grid-template-columns: max-content 1fr; gap: 10px 18px; }
.kontakti dt { color: var(--inox); }
.kontakti dd { margin: 0; font-weight: 500; min-width: 0; overflow-wrap: anywhere; }
.karte { border: 1px solid var(--linija); background: var(--balts); min-height: 280px; }
.karte iframe { width: 100%; height: 100%; min-height: 280px; border: 0; display: block; }
@media (min-width: 900px) { .kontakti { grid-template-columns: 5fr 7fr; } }

/* kājene */
.kajene { background: var(--grafits); color: #cfd5d8; padding: 40px 0 28px; font-size: .95rem; }
.kajene a { color: #fff; }
.kajene .iekss { display: grid; gap: 24px; }
.kajene h3 { color: #fff; font-size: 1.2rem; margin-bottom: .4em; }
.kajene ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.kajene .rekv { color: #9aa4a9; font-size: .875rem; border-top: 1px solid #343c41; padding-top: 18px; }
@media (min-width: 800px) { .kajene .iekss { grid-template-columns: repeat(3, 1fr); } .kajene .rekv { grid-column: 1 / -1; } }

/* ceļš (breadcrumb) */
.cels { font-size: .9rem; color: var(--inox); padding: 16px 0 6px; }
.cels a { color: var(--inox); }
.cels ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 8px; }
.cels li + li::before { content: "/"; margin-right: 8px; color: #b5bcc0; }

/* kategorijas lapa */
.kat-galva { padding: 8px 0 18px; }
.kat-galva h1 { font-size: clamp(2rem, 5.5vw, 3.2rem); margin-bottom: .25em; }
.kat-galva p { color: #3a4247; }
.cipi { display: flex; gap: 8px; overflow-x: auto; padding: 4px 0 14px; scrollbar-width: thin; }
.cipi a { flex-shrink: 0; text-decoration: none; padding: 9px 14px; border: 1px solid var(--linija); border-radius: 999px; background: var(--balts); color: var(--grafits); font-weight: 500; font-size: .95rem; }
.cipi a[aria-current="page"] { background: var(--grafits); border-color: var(--grafits); color: #fff; }
.grupas-virsr { font-family: var(--virsr); font-weight: 600; font-size: 1.35rem; margin: 26px 0 10px; }
.preces { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.karte-prece { display: grid; grid-template-rows: auto 1fr; background: var(--balts); border: 1px solid var(--linija); text-decoration: none; color: var(--grafits); }
.karte-prece:hover { border-color: var(--zils); color: var(--grafits); }
.karte-prece .att { aspect-ratio: 1; display: flex; align-items: center; justify-content: center; padding: 12px; }
.karte-prece .att img { width: 100%; height: 100%; object-fit: contain; }
.karte-prece .info { padding: 10px 12px 12px; border-top: 1px solid var(--melamins); display: grid; gap: 2px; align-content: start; }
.karte-prece .kods { font-family: var(--virsr); font-weight: 600; font-size: 1.15rem; line-height: 1.15; overflow-wrap: anywhere; }
.karte-prece .iss { color: var(--inox); font-size: .875rem; line-height: 1.35; }
.karte-prece .cena { font-family: var(--virsr); font-weight: 700; font-size: 1.3rem; margin-top: 4px; }
.karte-prece .cena small { font-family: var(--teksts); font-weight: 500; color: var(--inox); font-size: .8rem; margin-right: 4px; }
@media (min-width: 640px) { .preces { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .preces { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.materials { display: grid; gap: 16px; background: var(--balts); border: 1px solid var(--linija); padding: 18px 20px; margin: 6px 0 22px; }
.materials ul { margin: 0; padding-left: 18px; }
.materials .plusi li::marker { content: "+  "; color: #1f7a3a; font-weight: 700; }
.materials .minusi li::marker { content: "−  "; color: var(--sarkans); font-weight: 700; }
@media (min-width: 800px) { .materials { grid-template-columns: 2fr 1fr 1fr; } }

/* preces lapa */
.prece { display: grid; gap: clamp(20px, 4vw, 48px); padding-bottom: 40px; }
.prece-bildes { display: grid; gap: 6px; align-content: start; }
.prece-bildes .galvena { background: var(--balts); border: 1px solid var(--linija); aspect-ratio: 1; display: flex; align-items: center; justify-content: center; padding: 18px; }
.prece-bildes .galvena img { width: 100%; height: 100%; object-fit: contain; }
.prece-bildes .mazas { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; }
.prece-bildes .mazas button { padding: 4px; background: var(--balts); border: 1px solid var(--linija); aspect-ratio: 1; cursor: pointer; }
.prece-bildes .mazas button[aria-pressed="true"] { border-color: var(--zils); }
.prece-bildes .mazas img { width: 100%; height: 100%; object-fit: contain; }
.prece h1 { font-size: clamp(2.2rem, 6vw, 3.4rem); margin-bottom: .1em; }
.prece .apakssv { color: var(--inox); margin-bottom: 14px; }
.cena-liela { font-family: var(--virsr); font-weight: 700; font-size: clamp(2.3rem, 6vw, 3rem); line-height: 1; margin: 6px 0 4px; }
.cena-piezime { color: var(--inox); font-size: .9rem; margin-bottom: 18px; }
.modulis { background: var(--balts); border: 1px solid var(--linija); padding: 16px 16px 20px; margin: 0 0 18px; }
.modulis .lauks-pl { position: relative; height: 210px; }
.modulis .kaste { position: absolute; left: 0; bottom: 22px; height: 160px; width: 50%; background: linear-gradient(var(--osis-gaiss), var(--osis-gaiss)); border: 2px solid var(--grafits); transition: width .32s cubic-bezier(.2,.8,.2,1); }
.modulis .kaste::before { content: ""; position: absolute; left: 10%; right: 10%; top: 50%; height: 3px; background: var(--grafits); border-radius: 2px; }
.modulis .kajas { position: absolute; left: 0; bottom: 0; height: 22px; width: 50%; transition: width .32s cubic-bezier(.2,.8,.2,1); }
.modulis .kajas::before, .modulis .kajas::after { content: ""; position: absolute; bottom: 0; width: 10px; height: 22px; background: var(--inox); }
.modulis .kajas::before { left: 10%; } .modulis .kajas::after { right: 10%; }
.modulis .merlinija { position: absolute; left: 0; top: 0; width: 50%; transition: width .32s cubic-bezier(.2,.8,.2,1); margin: 0; }
.modulis .merlinija span { background: var(--balts); }
.modulis .skala { display: flex; justify-content: space-between; color: var(--inox); font-size: .8rem; border-top: 1px dashed var(--linija); padding-top: 6px; margin-top: 4px; }
.izv-grupa { border: 0; margin: 0 0 16px; padding: 0; }
.izv-grupa legend { font-weight: 600; margin-bottom: 8px; padding: 0; }
.izv-grupa .paskaid { color: var(--inox); font-size: .9rem; margin: -4px 0 8px; }
.izv-pogas { display: flex; flex-wrap: wrap; gap: 6px; }
.izv-pogas label { position: relative; }
.izv-pogas input { position: absolute; opacity: 0; inset: 0; }
.izv-pogas span { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; min-height: 48px; min-width: 64px; padding: 6px 12px; border: 1px solid var(--linija); border-radius: var(--rad); background: var(--balts); cursor: pointer; line-height: 1.15; text-align: center; }
.izv-pogas span small { color: var(--inox); font-size: .78rem; margin-top: 2px; }
.izv-pogas input:checked + span { border: 2px solid var(--zils); padding: 5px 11px; background: #f3f5fd; }
.izv-pogas input:focus-visible + span { outline: 3px solid var(--zils); outline-offset: 2px; }
.pirkt { display: flex; gap: 10px; align-items: stretch; margin: 6px 0 14px; }
.daudz { display: flex; border: 1px solid var(--linija); border-radius: var(--rad); background: var(--balts); }
.daudz button { width: 44px; border: 0; background: transparent; font-size: 1.3rem; cursor: pointer; color: var(--grafits); }
.daudz input { width: 46px; border: 0; text-align: center; font: inherit; font-weight: 600; background: transparent; }
.pirkt .poga { flex: 1; }
.ieklauts { background: var(--osis-gaiss); padding: 14px 16px; margin: 14px 0; }
.ieklauts ul { margin: 0; padding-left: 18px; }
.apraksts dl { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); margin: 0; border-top: 1px solid var(--linija); }
.apraksts dt, .apraksts dd { padding: 9px 0; border-bottom: 1px solid var(--linija); margin: 0; }
.apraksts dd { text-align: right; font-weight: 600; padding-left: 16px; overflow-wrap: anywhere; }
.apraksts dt { padding-right: 8px; }
.citas { display: grid; gap: 6px; margin-top: 10px; }
.citas a { display: flex; justify-content: space-between; gap: 12px; padding: 12px 14px; border: 1px solid var(--linija); background: var(--balts); text-decoration: none; color: var(--grafits); }
.citas a:hover { border-color: var(--zils); }
.citas b { font-family: var(--virsr); font-size: 1.2rem; }
.lipiga { position: sticky; bottom: 0; z-index: 20; background: var(--balts); border-top: 1px solid var(--linija); padding: 10px var(--mala); display: flex; align-items: center; gap: 12px; }
.lipiga .cena-mazā { font-family: var(--virsr); font-weight: 700; font-size: 1.6rem; }
.lipiga .poga { margin-left: auto; }
.lipiga[hidden] { display: none; }
@media (min-width: 900px) { .prece { grid-template-columns: 6fr 5fr; } .prece-bildes { position: sticky; top: 92px; align-self: start; } .lipiga { display: none; } }

/* paziņojums */
.zina { position: fixed; left: 50%; bottom: 84px; transform: translate(-50%, 20px); opacity: 0; background: var(--grafits); color: #fff; padding: 12px 18px; border-radius: var(--rad); z-index: 50; transition: opacity .2s, transform .2s; max-width: calc(100vw - 32px); }
.zina.redz { opacity: 1; transform: translate(-50%, 0); }

/* formas */
.forma { display: grid; gap: 14px; background: var(--balts); border: 1px solid var(--linija); padding: clamp(16px, 3vw, 28px); }
.forma label { display: grid; gap: 6px; font-weight: 600; }
.forma input, .forma textarea, .forma select { font: inherit; font-weight: 400; padding: 12px; border: 1px solid #b9c0c4; border-radius: var(--rad); background: #fff; color: var(--grafits); width: 100%; }
.forma textarea { min-height: 110px; resize: vertical; }
.forma .rinda2 { display: grid; gap: 14px; }
@media (min-width: 700px) { .forma .rinda2 { grid-template-columns: 1fr 1fr; } }
.forma fieldset { border: 0; padding: 0; margin: 0; }
.forma legend { font-weight: 600; margin-bottom: 6px; }
.forma .radio { display: flex; flex-wrap: wrap; gap: 6px; }
.forma .radio label { display: inline-flex; align-items: center; gap: 8px; font-weight: 500; padding: 10px 14px; border: 1px solid var(--linija); border-radius: var(--rad); }
.forma .radio input { width: auto; }
.pazinojums { padding: 14px 16px; background: #eef6f0; border-left: 4px solid #1f7a3a; }
.divkol { display: grid; gap: clamp(24px, 4vw, 48px); }
@media (min-width: 900px) { .divkol { grid-template-columns: 7fr 5fr; } }
.padomi ol { padding-left: 20px; } .padomi li { margin-bottom: 8px; }

/* grozs */
.groza-rinda { display: grid; grid-template-columns: 72px 1fr auto; gap: 12px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--linija); }
.groza-rinda img { width: 72px; height: 72px; object-fit: contain; background: var(--balts); border: 1px solid var(--linija); }
.groza-rinda .izv { color: var(--inox); font-size: .875rem; }
.groza-rinda .summa { font-family: var(--virsr); font-weight: 700; font-size: 1.25rem; text-align: right; }
.groza-rinda button { border: 0; background: none; color: var(--sarkans); cursor: pointer; padding: 4px 0; font: inherit; font-size: .875rem; }
.kopa { display: flex; justify-content: space-between; align-items: baseline; padding: 18px 0; font-family: var(--virsr); font-size: 1.6rem; font-weight: 700; }

/* info lapas */
.info-teksts { background: var(--balts); border: 1px solid var(--linija); padding: clamp(16px, 3vw, 32px); }
.info-teksts h2 { font-size: 1.8rem; margin-top: .6em; }
.info-teksts h2:first-child { margin-top: 0; }
.flize .att img[src*="materiali"], .flize .att img[src*="/foto/"] { object-fit: cover; }
@media (max-width: 899px) { .prece-bildes .galvena { aspect-ratio: 4 / 3; } }

/* 01.10: viena liela bilde sākumā (Ulda vēlme) */
.hero2 { padding: clamp(14px, 3vw, 32px) 0 clamp(28px, 5vw, 64px); }
.h2-foto img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; object-position: center 55%; background: var(--osis-gaiss); }
.h2-karte { background: var(--balts); border: 1px solid var(--linija); padding: clamp(18px, 3vw, 32px); margin-top: 12px; }
.h2-karte h1 { font-size: clamp(2.2rem, 5.2vw, 3.6rem); max-width: 14ch; margin-bottom: .35em; }
.h2-karte .ievads { font-size: clamp(1.05rem, 2vw, 1.2rem); color: #3a4247; margin-bottom: 0; }
.h2-karte .pogas { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.hero2 .fakti { margin-top: 22px; }
@media (min-width: 760px) { .h2-foto img { aspect-ratio: 16 / 8; } }
@media (min-width: 1000px) {
  .h2-karte { position: relative; width: min(620px, 54%); margin: -190px 0 0 32px; }
  .hero2 .fakti { margin-left: 32px; }
}
.galerija figure { aspect-ratio: 1; }
.busins { margin: 22px 0 0; }
.busins img { width: 100%; max-width: 520px; aspect-ratio: 4 / 3; object-fit: cover; }
.busins figcaption { color: var(--inox); font-size: .9rem; margin-top: 6px; }
.padomi .busins { margin: 0 0 22px; }

/* ===== WordPress un WooCommerce papildinājumi (jauns.spec.lv) ===== */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.admin-bar .galvene { top: 32px; }
@media (max-width: 782px) { .admin-bar .galvene { top: 0; } }
.saturs-iekss { padding-bottom: 56px; }
.woocommerce-breadcrumb { font-size: .9rem; color: var(--inox); padding: 16px 0 6px; margin: 0 !important; }
.woocommerce-breadcrumb a { color: var(--inox); }
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info, .woocommerce .woocommerce-error,
.woocommerce-message, .woocommerce-info, .woocommerce-error { border-top-color: var(--zils); background: var(--balts); color: var(--grafits); }
.woocommerce-message::before, .woocommerce-info::before { color: var(--zils); }
.woocommerce .button, .woocommerce button.button, .woocommerce a.button, .woocommerce input.button,
.woocommerce #respond input#submit, .woocommerce button.button.alt, .woocommerce a.button.alt, .woocommerce input.button.alt {
  background: var(--zils); color: #fff; border-radius: var(--rad); font-family: var(--teksts); font-weight: 600; padding: 14px 20px; line-height: 1.2; border: 0;
}
.woocommerce .button:hover, .woocommerce button.button:hover, .woocommerce a.button:hover, .woocommerce button.button.alt:hover, .woocommerce a.button.alt:hover { background: var(--zils-tumss); color: #fff; }
.woocommerce button.button.alt.disabled, .woocommerce button.button.alt:disabled { background: #8c99d8; }
.woocommerce span.onsale { background: var(--sarkans); border-radius: var(--rad); min-height: 0; min-width: 0; padding: 4px 10px; line-height: 1.3; }
.woocommerce .price .no, .karte-prece .cena .no { font-family: var(--teksts); font-weight: 500; color: var(--inox); font-size: .8em; margin-right: 2px; }
.woocommerce .price del { color: var(--inox); font-weight: 400; }
.woocommerce .price ins { text-decoration: none; }

/* preču saraksts */
ul.products.preces { list-style: none; margin: 0; padding: 0; }
ul.products.preces::before, ul.products.preces::after { display: none !important; }
ul.products.preces li.product { width: auto !important; margin: 0 !important; float: none !important; padding: 0 !important; }
.karte-prece .cena { color: var(--grafits); }
/* WooCommerce noklusējums (img height:auto, margin) citādi izstiepj augstās bildes ārpus kartītes */
ul.products li.product .karte-prece .att { overflow: hidden; min-width: 0; }
ul.products li.product .karte-prece .att img { width: 100%; height: 100%; max-height: 100%; object-fit: contain; margin: 0; box-shadow: none; }
.flize .att.foto { padding: 0; }
.flize .att.foto img { object-fit: cover; }
.woocommerce-pagination { margin: 28px 0 0; }
.woocommerce nav.woocommerce-pagination ul { border: 0; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; margin: 0 3px; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { padding: 10px 14px; border: 1px solid var(--linija); border-radius: var(--rad); background: var(--balts); }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--grafits); color: #fff; border-color: var(--grafits); }
.woocommerce-result-count, .woocommerce-ordering { display: none; }
.kat-apraksts { max-width: 70ch; }

/* preces lapa */
.single-product div.product { padding-bottom: 32px; }
.preces-augsa { display: grid; gap: clamp(20px, 4vw, 48px); margin-bottom: clamp(28px, 5vw, 48px); }
.single-product div.product .woocommerce-product-gallery { width: 100% !important; float: none !important; margin: 0 !important; background: var(--balts); border: 1px solid var(--linija); padding: 14px; }
.single-product div.product .woocommerce-product-gallery__image img { object-fit: contain; max-height: 640px; margin: 0 auto; }
.single-product div.product .flex-control-thumbs { display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; margin-top: 8px !important; }
.single-product div.product .flex-control-thumbs li { width: auto !important; float: none !important; border: 1px solid var(--linija); padding: 4px; background: var(--balts); }
.single-product div.product .flex-control-thumbs li img { aspect-ratio: 1; object-fit: contain; }
.single-product div.product .summary { width: 100% !important; float: none !important; margin: 0 !important; }
.single-product div.product .product_title { font-size: clamp(2.2rem, 6vw, 3.4rem); margin-bottom: .1em; }
.single-product div.product p.price, .single-product div.product span.price { font-family: var(--virsr); font-weight: 700; font-size: clamp(2.2rem, 6vw, 3rem) !important; line-height: 1; color: var(--grafits) !important; margin: 10px 0 4px; }
.single-product .woocommerce-product-details__short-description { color: var(--inox); }
.single-product .woocommerce-product-details__short-description p { margin: 0 0 8px; }
.single-product div.product form.cart { margin: 6px 0 14px !important; }
.single-product div.product form.cart .variations { margin: 0 0 6px; border: 0; }
.single-product div.product form.cart .variations tr { display: block; margin: 0 0 14px; }
.single-product div.product form.cart .variations th, .single-product div.product form.cart .variations td { display: block; padding: 0 !important; text-align: left; line-height: 1.4 !important; }
.single-product div.product form.cart .variations th label { font-weight: 600; margin-bottom: 8px; display: block; }
.single-product div.product form.cart .variations th .paskaid, .single-product div.product form.cart .variations td .paskaid { font-weight: 400; color: var(--inox); font-size: .9rem; margin: -4px 0 8px; }
.single-product div.product form.cart .variations select.spec-slepts { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.single-product div.product form.cart .reset_variations { display: none !important; }
.single-product .woocommerce-variation-price { display: none; }
.single-product .woocommerce-variation-availability { display: none; }
.single-product div.product form.cart .variations_button, .single-product div.product form.cart:not(.variations_form) { display: flex; gap: 10px; align-items: stretch; flex-wrap: wrap; }
.single-product div.product form.cart .quantity { margin: 0 !important; }
.single-product div.product form.cart .quantity .qty { width: 72px; height: 50px; border: 1px solid var(--linija); border-radius: var(--rad); font: inherit; font-weight: 600; text-align: center; background: var(--balts); }
.single-product div.product form.cart .single_add_to_cart_button { flex: 1; min-height: 50px; font-size: 1.05rem; }
.izv-pogas button { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; min-height: 48px; min-width: 64px; padding: 6px 12px; border: 1px solid var(--linija); border-radius: var(--rad); background: var(--balts); cursor: pointer; line-height: 1.15; text-align: center; font: inherit; color: var(--grafits); }
.izv-pogas button small { color: var(--inox); font-size: .78rem; margin-top: 2px; }
.izv-pogas button[aria-pressed="true"] { border: 2px solid var(--zils); padding: 5px 11px; background: #f3f5fd; }
.izv-pogas button:disabled { opacity: .35; cursor: not-allowed; }
.spec-apraksts { grid-column: 1 / -1; max-width: 900px; }
.spec-apraksts table { width: 100%; border-collapse: collapse; margin: 0 0 14px; }
.spec-apraksts th, .spec-apraksts td { text-align: left; padding: 9px 0; border-bottom: 1px solid var(--linija); vertical-align: top; }
.spec-apraksts td { text-align: right; font-weight: 600; padding-left: 16px; }
.related.products { grid-column: 1 / -1; }
.related.products > h2 { font-size: 1.8rem; }
.cena-piezime { color: var(--inox); font-size: .9rem; margin: 0 0 16px; }
@media (min-width: 900px) {
  .preces-augsa { grid-template-columns: 6fr 5fr; }
  .woocommerce div.product .preces-augsa div.images { position: sticky; top: 92px; align-self: start; }
}

/* grozs, norēķini, konts */
.woocommerce-cart .saturs-iekss, .woocommerce-checkout .saturs-iekss, .woocommerce-account .saturs-iekss { max-width: var(--plat); }
.woocommerce table.shop_table { border-radius: 0; border-color: var(--linija); background: var(--balts); }
.woocommerce table.shop_table th { font-weight: 600; }
.woocommerce-cart table.cart img { width: 72px; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select,
.woocommerce .select2-container .select2-selection--single { border: 1px solid #b9c0c4; border-radius: var(--rad); padding: 10px 12px; min-height: 46px; background: #fff; }
.woocommerce .select2-container .select2-selection--single { padding: 8px 6px; }
.woocommerce-checkout #payment { background: var(--balts); border: 1px solid var(--linija); border-radius: 0; }
.woocommerce-checkout #payment div.payment_box { background: var(--melamins); color: var(--grafits); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: var(--melamins); }
.woocommerce .cart-collaterals .cart_totals, .woocommerce-page .cart-collaterals .cart_totals { width: 100%; max-width: 520px; }

/* lapas */
.lapa-galva { padding: 8px 0 18px; }
.lapa-galva h1 { font-size: clamp(2rem, 5.5vw, 3.2rem); margin-bottom: .25em; }
.info-teksts > *:last-child { margin-bottom: 0; }
.info-teksts h3 { font-size: 1.3rem; margin-top: 1em; }
.info-teksts ul, .info-teksts ol { padding-left: 22px; }
.wpcf7 form .wpcf7-response-output { margin: 12px 0 0; padding: 12px 14px; border-radius: var(--rad); }
.wpcf7-not-valid-tip { font-size: .875rem; color: var(--sarkans); }
.forma .wpcf7-list-item { margin: 0; }
.forma .wpcf7-radio { display: flex; flex-wrap: wrap; gap: 6px; }
.forma .wpcf7-radio label { display: inline-flex; align-items: center; gap: 8px; font-weight: 500; padding: 10px 14px; border: 1px solid var(--linija); border-radius: var(--rad); }
.forma .wpcf7-radio input { width: auto; }
.forma p { margin: 0; max-width: none; }
.forma .wpcf7-submit { justify-self: start; }

.cena-no .no { font-family: var(--teksts); font-weight: 500; font-size: .9rem; color: var(--inox); margin-right: 6px; }
.fasade .cena-no .woocommerce-Price-amount { font-family: var(--virsr); font-weight: 700; }
.paslept:focus { position: fixed !important; left: 12px; top: 12px; width: auto; height: auto; clip: auto; z-index: 100; background: #fff; padding: 10px 14px; border: 2px solid var(--zils); }

/* mērīšanas forma (Contact Form 7) */
.forma .wpcf7-form { display: grid; gap: 14px; }
.forma .wpcf7-form-control-wrap { display: block; }
.forma .hp-lauks { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.forma .forma-piezime { color: var(--inox); font-size: .875rem; }
.forma .wpcf7-spinner { margin: 0 0 0 12px; }
.forma textarea.wpcf7-textarea { height: 140px; min-height: 110px; }
.forma input.wpcf7-submit.poga { width: auto; background: var(--zils); color: #fff; border: 0; padding: 14px 24px; font-weight: 600; cursor: pointer; justify-self: start; }
.forma input.wpcf7-submit.poga:hover { background: var(--zils-tumss); }
.forma .wpcf7-response-output:empty, .forma .wpcf7 form.init .wpcf7-response-output { display: none; }

.pogas-rinda { display: flex; flex-wrap: wrap; gap: 10px; margin: 8px 0 24px; }
.ieklauts .atseviski { margin: 10px 0 0; padding-top: 10px; border-top: 1px solid rgba(29, 35, 39, .15); font-size: .9rem; font-weight: 600; }
.saturs-iekss > .lapa-galva:first-child { padding-top: 28px; }

/* prece bez cenas, PDF saite */
.bez-cenas { background: var(--balts); border: 1px solid var(--linija); padding: 16px 18px; margin: 10px 0 18px; }
.bez-cenas p { margin: 0 0 10px; }
.bez-cenas .pogas { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; }
.pdf-saite a { font-weight: 600; }

/* pasūtījuma noformēšana */
.woocommerce-checkout .woocommerce-billing-fields h3, .woocommerce-checkout #order_review_heading, .woocommerce-additional-fields h3 { font-size: 1.5rem; }
.woocommerce form .form-row label { font-weight: 600; }
.woocommerce form .form-row .required { color: var(--sarkans); text-decoration: none; }
.woocommerce-checkout #payment ul.payment_methods li label { font-weight: 600; }
.woocommerce ul#shipping_method li { margin-bottom: 6px; }
.woocommerce-order-received .woocommerce-thankyou-order-received { font-size: 1.15rem; font-weight: 600; }
.woocommerce table.shop_table td.product-total, .woocommerce table.shop_table th.product-total { white-space: nowrap; text-align: right; }
.woocommerce table.shop_table tfoot td { text-align: right; }
.woocommerce-checkout #payment #place_order { float: none; width: 100%; padding: 16px 20px; font-size: 1.1rem; }
@media (min-width: 1000px) {
  /* pasūtījuma noformēšana: dati pa kreisi, pasūtījums pa labi */
  .woocommerce-checkout form.checkout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 460px); column-gap: 48px; align-items: start; }
  .woocommerce-checkout form.checkout > .woocommerce-NoticeGroup { grid-column: 1 / -1; grid-row: 1; }
  .woocommerce-checkout form.checkout #customer_details { grid-column: 1; grid-row: 2 / span 2; }
  .woocommerce-checkout #customer_details .col-1, .woocommerce-checkout #customer_details .col-2 { float: none; width: 100%; }
  .woocommerce-checkout form.checkout #order_review_heading { grid-column: 2; grid-row: 2; margin-top: 0; }
  .woocommerce-checkout form.checkout #order_review { grid-column: 2; grid-row: 3; position: sticky; top: 92px; }
}
.woocommerce table.shop_table dl.variation { display: block; margin: 4px 0 0; font-size: .875rem; color: var(--inox); line-height: 1.45; }
.woocommerce table.shop_table dl.variation dt, .woocommerce table.shop_table dl.variation dd { display: inline; margin: 0; padding: 0; float: none; font-weight: 400; }
.woocommerce table.shop_table dl.variation dd { color: var(--grafits); }
.woocommerce table.shop_table dl.variation dd::after { content: ""; display: block; }
.woocommerce table.shop_table dl.variation dd p { display: inline; margin: 0; }
.woocommerce ul.wc-item-meta { list-style: none; margin: 4px 0 0; padding: 0; font-size: .875rem; color: var(--inox); }
.woocommerce ul.wc-item-meta li { margin: 0; }
.woocommerce ul.wc-item-meta li strong { font-weight: 400; }
.woocommerce ul.wc-item-meta li p { display: inline; margin: 0; color: var(--grafits); }
.woocommerce-cart table.cart .quantity .qty { width: 64px; height: 42px; border: 1px solid #b9c0c4; border-radius: var(--rad); text-align: center; font: inherit; }
.piegades-piez { display: block; color: var(--inox); font-size: .8rem; margin: 2px 0 0 22px; font-weight: 400; }
.woocommerce ul#shipping_method li label { font-weight: 600; }

/* ===== 02.10 pēc tikšanās: logo ar īkšķi, slīdrāde, galerijas, "Noderīgi", kontakti ===== */
/* Ulda logo (Spec.lv ar īkšķi, WA 03.10) - izsekots no viņa bildes SVG; Mazā Mēbeļu Māja - mazs zem tā */
.logo { flex-direction: column; align-items: flex-start; gap: 2px; }
/* .galvene priekšā - citādi WooCommerce lapās ".woocommerce img { height: auto }" logo izstiepj līdz 605 px */
.galvene .logo-att { display: block; width: auto; height: 38px; max-width: none; }
.logo-mmm { font-family: var(--virsr); font-style: italic; font-weight: 700; color: var(--sarkans); font-size: .78rem; line-height: 1; white-space: nowrap; padding-left: 2px; }
@media (min-width: 1180px) { .nav a { padding: 8px 8px; } }

/* paziņojums virs galvenes (svētki, atvaļinājums) */
.pazinojuma-josla { background: var(--sarkans); color: #fff; font-weight: 600; text-align: center; padding: 9px 0; font-size: .95rem; }
.pazinojuma-josla a { color: #fff; }

/* sākumlapas slīdrāde */
.slidrade { position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: var(--osis-gaiss); }
.slidrade .slaids { position: absolute; inset: 0; margin: 0; opacity: 0; visibility: hidden; transition: opacity .9s ease, visibility 0s linear .9s; }
.slidrade .slaids.aktivs { opacity: 1; visibility: visible; transition: opacity .9s ease; }
.slidrade .slaids img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; object-position: center; }
.slidrade .punkti { position: absolute; left: 0; right: 0; bottom: 6px; display: flex; justify-content: center; gap: 0; }
.slidrade .punkti button { width: 34px; height: 34px; padding: 0; border: 0; background: transparent; cursor: pointer; display: grid; place-items: center; }
.slidrade .punkti button::before { content: ""; width: 10px; height: 10px; border-radius: 5px; background: rgba(255, 255, 255, .55); box-shadow: 0 0 0 1px rgba(0, 0, 0, .3); transition: width .3s; }
.slidrade .punkti button[aria-current="true"]::before { width: 26px; background: #fff; }
.slidrade .punkti button:focus-visible { outline-offset: -4px; }
@media (min-width: 760px) { .slidrade { aspect-ratio: 16 / 8; } }
@media (min-width: 1000px) { .slidrade .punkti { justify-content: flex-end; padding-right: 14px; bottom: 10px; } }
/* sākuma teksta bloks mazs, bilde redzama vairāk (Ulda vēlme 02.10 un vēlreiz 03.10 13:26 - "vēl mazāku") */
.h2-karte { padding: 14px 16px 16px; }
.h2-karte h1 { font-size: clamp(1.55rem, 3vw, 2.05rem); max-width: 18ch; margin-bottom: .25em; }
.h2-karte .ievads { font-size: .95rem; max-width: 40ch; }
.h2-karte .pogas { margin-top: 12px; gap: 8px; }
.h2-karte .poga { min-height: 42px; padding: 0 14px; font-size: .95rem; }
@media (min-width: 1000px) {
  .h2-karte { width: min(410px, 36%); margin: -96px 0 0 24px; }
  .hero2 .fakti { margin-left: 24px; }
}

/* galerijas: sākumlapā un lapā "Mūsu darbi" (bildes var atvērt lielākas) */
.galerija figure a { display: block; width: 100%; height: 100%; }
.galerija figure a:focus-visible, .wp-block-gallery.spec-darbi a:focus-visible { outline-offset: -3px; }
.darbi-saturs > p:first-child { max-width: 68ch; color: #3a4247; }
.darbi-saturs h2 { font-size: clamp(1.7rem, 4vw, 2.3rem); margin: 30px 0 12px; scroll-margin-top: 90px; }
.wp-block-gallery.spec-darbi { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px !important; margin: 0 0 8px; }
.wp-block-gallery.spec-darbi figure.wp-block-image { width: auto !important; margin: 0 !important; aspect-ratio: 1; overflow: hidden; background: var(--osis-gaiss); }
.wp-block-gallery.spec-darbi figure.wp-block-image a { display: block; width: 100%; height: 100%; }
.wp-block-gallery.spec-darbi figure.wp-block-image img { width: 100% !important; height: 100% !important; object-fit: cover; }
@media (min-width: 640px) { .wp-block-gallery.spec-darbi { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .wp-block-gallery.spec-darbi { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.saturs-iekss > .cipi { margin-bottom: 4px; }
/* Uldis 03.10: virtuves cenas ir orientējošas */
.cena-piezime.orientejosa { color: var(--grafits); margin-bottom: 4px; }
.kat-piezime { color: var(--inox); font-size: .95rem; margin: 0 0 14px; }
.saturs-iekss > .fb-saites { margin-top: 26px; }

/* bilde pa visu ekrānu */
.lb { position: fixed; inset: 0; z-index: 100; background: rgba(20, 24, 27, .95); display: flex; align-items: center; justify-content: center; padding: 60px 12px; }
.lb[hidden] { display: none; }
.lb-bilde { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
.lb button { position: absolute; width: 48px; height: 48px; padding: 0; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .14); color: #fff; cursor: pointer; display: grid; place-items: center; }
.lb button:hover { background: rgba(255, 255, 255, .28); }
.lb button:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.lb button svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.lb-aizv { top: 8px; right: 8px; }
.lb-iepr, .lb-nak { top: 50%; transform: translateY(-50%); }
.lb-iepr { left: 10px; }
.lb-nak { right: 10px; }
.lb-skaits { position: absolute; top: 0; left: 0; margin: 0; padding: 20px 16px; color: #cfd5d8; font-size: .95rem; }
.lb.viena .lb-iepr, .lb.viena .lb-nak, .lb.viena .lb-skaits { display: none; }
.lb.ielade .lb-bilde { opacity: 0; }
.lb.ielade::after { content: ""; position: absolute; left: 50%; top: 50%; width: 36px; height: 36px; margin: -18px 0 0 -18px; border: 3px solid rgba(255, 255, 255, .25); border-top-color: #fff; border-radius: 50%; animation: lb-griezt .8s linear infinite; }
@keyframes lb-griezt { to { transform: rotate(360deg); } }
html.lb-atverts, html.lb-atverts body { overflow: hidden; }
@media (max-width: 699px) {
  .lb-iepr, .lb-nak { top: auto; bottom: 8px; transform: none; }
  .lb-iepr { left: calc(50% - 60px); }
  .lb-nak { right: calc(50% - 60px); }
}

/* "Noderīgi" */
.noderigi-flizes { display: grid; gap: 6px; grid-template-columns: minmax(0, 1fr); }
.nod-flize { display: grid; grid-template-rows: auto 1fr; background: var(--balts); border: 1px solid var(--linija); text-decoration: none; color: var(--grafits); }
.nod-flize:hover { border-color: var(--zils); color: var(--grafits); }
.nod-flize .att { display: flex; align-items: center; justify-content: center; aspect-ratio: 16 / 10; padding: 12px; overflow: hidden; }
.nod-flize .att img { width: 100%; height: 100%; object-fit: contain; }
.nod-flize .nos { display: grid; gap: 4px; align-content: start; padding: 14px 16px 16px; border-top: 1px solid var(--melamins); }
.nod-flize .nos b { font-family: var(--virsr); font-weight: 600; font-size: 1.45rem; line-height: 1.1; }
.nod-flize .nos span { color: #4a5358; font-size: .95rem; }
.nod-flize.merit { grid-template-rows: 1fr; background: var(--zils); border-color: var(--zils); color: #fff; }
.nod-flize.merit .nos { align-content: end; border-top: 0; padding: 22px 18px; }
.nod-flize.merit .nos span { color: #dfe4fb; }
.nod-flize.merit:hover { background: var(--zils-tumss); border-color: var(--zils-tumss); color: #fff; }
@media (min-width: 640px) { .noderigi-flizes { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .noderigi-flizes { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.lapa-galva > p { color: #3a4247; }
.nod-virsr { font-size: clamp(1.6rem, 3.6vw, 2.1rem); margin: 36px 0 12px; }
.pirc-saites { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; grid-template-columns: minmax(0, 1fr); }
.pirc-saites a { display: grid; gap: 2px; padding: 14px 16px; background: var(--balts); border: 1px solid var(--linija); text-decoration: none; color: var(--grafits); height: 100%; }
.pirc-saites a:hover { border-color: var(--zils); }
.pirc-saites b { font-family: var(--virsr); font-weight: 600; font-size: 1.3rem; line-height: 1.15; }
.pirc-saites span { color: #4a5358; font-size: .95rem; }
@media (min-width: 640px) { .pirc-saites { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1000px) { .pirc-saites { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.sanu-izvelne h2 a { color: inherit; text-decoration: none; }
.sanu-izvelne h2.otra { margin-top: 16px; }
.ar-sanu { display: grid; gap: 20px; align-items: start; }
@media (min-width: 900px) { .ar-sanu { grid-template-columns: minmax(0, 1fr) 300px; } .sanu-izvelne { position: sticky; top: 92px; } }
.sanu-izvelne { background: var(--balts); border: 1px solid var(--linija); padding: 16px 18px; }
.sanu-izvelne h2 { font-size: 1.35rem; margin: 0 0 8px; }
.sanu-izvelne ul { list-style: none; margin: 0; padding: 0; }
.sanu-izvelne a { display: block; padding: 9px 0; border-top: 1px solid var(--melamins); text-decoration: none; color: var(--grafits); font-weight: 500; }
.sanu-izvelne a:hover { color: var(--zils); }
.sanu-izvelne a[aria-current="page"] { color: var(--zils); font-weight: 700; }
.info-teksts figure { margin: 18px 0; }
.info-teksts figure img { max-width: min(100%, 640px); }
.info-teksts .plusi, .info-teksts .minusi { padding-left: 22px; }
.info-teksts .plusi li::marker { content: "+  "; color: #1f7a3a; font-weight: 700; }
.info-teksts .minusi li::marker { content: "−  "; color: var(--sarkans); font-weight: 700; }
.info-teksts .poga { margin: 4px 0; }
.info-teksts .piezime { color: var(--inox); font-size: .9rem; }
/* krāsu paraugi (LKSP, galda virsmas) */
.krasu-saites { margin: 10px 0 0; font-size: .95rem; }
.dekori { list-style: none; padding: 0 !important; margin: 12px 0 16px; display: grid; grid-template-columns: repeat(auto-fill, minmax(92px, 1fr)); gap: 12px 8px; }
@media (min-width: 800px) { .dekori { grid-template-columns: repeat(auto-fill, minmax(108px, 1fr)); } }
.dekori li { display: grid; gap: 2px; font-size: .82rem; line-height: 1.2; align-content: start; }
.dekori img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border: 1px solid var(--linija); background: var(--balts); }
.dekori .nos { font-weight: 500; }
.dekori .kods { color: var(--inox); font-size: .75rem; }
.krasu-paraugi { list-style: none; padding: 0 !important; margin: 0 0 12px; display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 8px; }
.krasu-paraugi li { display: grid; gap: 6px; font-size: .9rem; font-weight: 500; }
.krasu-paraugi .krasa { display: block; aspect-ratio: 4 / 3; border: 1px solid var(--linija); }

/* kontakti: forma un rekvizīti */
.kontakti-apaksa { display: grid; gap: 28px; margin-top: 32px; align-items: start; }
.kontakti-apaksa h2 { font-size: 1.7rem; margin: 0; }
.kontakti-apaksa .forma-ievads { margin: -6px 0 0; color: #4a5358; }
.kontakti-apaksa .rekviziti h2 { margin-bottom: 14px; }
@media (min-width: 900px) { .kontakti-apaksa { grid-template-columns: 7fr 5fr; } }

/* formas: bez liekas atstarpes zem pogas (CF7 stils ielādējas pēc tēmas stila) */
.forma .wpcf7 form .wpcf7-response-output { margin: 0; padding: 12px 14px; border-radius: var(--rad); }
.forma .wpcf7-spinner { display: none; }
.forma .submitting .wpcf7-spinner { display: inline-block; }

/* kājene: 4 slejas */
@media (min-width: 1000px) { .kajene .iekss { grid-template-columns: repeat(4, 1fr); } }
.materials .krasu-saites { grid-column: 1 / -1; margin: 0; }
