/* base */
:root {
  --nebo: #e9f1f8;
  --tinta: #1f2f4f;
  --tinta-d: #121c31;
  --maslac: #f6d26b;
  --maslac-d: #dfb43e;
  --bijela: #fdfcfa;
  --blago: #44526d;
  --crta: rgba(31, 47, 79, .16);
  --naslovi: Optima, Candara, 'Noto Sans', source-sans-pro, sans-serif;
  --tekst: Avenir, Montserrat, Corbel, 'URW Gothic', source-sans-pro, sans-serif;
  --okvir: 1160px;
  --zaglavlje: 4rem;
  --prsten: var(--tinta);
}

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }

body {
  margin: 0;
  background: var(--nebo);
  color: var(--tinta);
  font: 400 1.0625rem/1.6 var(--tekst);
  overflow-x: hidden;
}

img { display: block; max-width: 100%; height: auto; }

h1, h2, h3 {
  font-family: var(--naslovi);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -.005em;
  margin: 0 0 .6em;
  overflow-wrap: break-word;
}
h1 { font-size: clamp(2.4rem, 4.8vw, 3.8rem); }
h2 { font-size: clamp(1.6rem, 3vw, 2.5rem); }
h3 { font-size: clamp(1.1rem, 1.5vw, 1.3rem); line-height: 1.3; }

p { margin: 0 0 1em; max-width: 66ch; }
li { max-width: 66ch; }

a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 3px; transition: text-decoration-color .2s, background-color .2s, color .2s; }
a:hover { text-decoration-thickness: 2px; }
a:active { color: var(--tinta-d); }

:focus-visible { outline: 3px solid var(--prsten); outline-offset: 2px; }

.prikriveno-sve {
  position: absolute !important;
  width: 1px; height: 1px;
  margin: -1px; padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.preskok-sve {
  position: absolute;
  left: 1rem; top: -5rem;
  z-index: 100;
  padding: .7rem 1.1rem;
  background: var(--tinta);
  color: var(--bijela);
  border-radius: 8px;
  --prsten: var(--maslac);
}
.preskok-sve:focus { top: 1rem; }

.okvir-sve {
  width: 100%;
  max-width: calc(var(--okvir) + 3rem);
  margin: 0 auto;
  padding: 0 1.5rem;
}

/* buttons */
.kapsula-sve {
  display: inline-flex;
  align-items: stretch;
  max-width: 100%;
  border-radius: 999px;
}

.polovica-sve {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  min-height: 3.1rem;
  padding: .8rem 1.45rem;
  border: 0;
  background: var(--tinta);
  color: var(--bijela);
  font: 600 1rem/1.2 var(--tekst);
  text-decoration: none;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease, box-shadow .2s ease;
}
.polovica-sve { border-radius: 999px; }
.kapsula-sve .polovica-sve:first-child { border-radius: 999px 0 0 999px; }
.kapsula-sve .polovica-sve:last-child { border-radius: 0 999px 999px 0; }
.kapsula-sve .polovica-sve + .polovica-sve { box-shadow: inset 1px 0 0 rgba(253, 252, 250, .3); }
.polovica-sve svg { width: 1.1em; height: 1.1em; flex: 0 0 auto; }
.polovica-sve:hover { background: var(--maslac); color: var(--tinta); text-decoration: none; }
.polovica-sve:focus-visible { position: relative; z-index: 1; outline: 3px solid var(--prsten); outline-offset: 2px; }
.polovica-sve:active { background: var(--maslac-d); color: var(--tinta-d); }
.polovica-sve:disabled { cursor: progress; background: #4b5a78; color: var(--bijela); }

/* header */
.zaglavlje-sve {
  position: sticky;
  top: 0;
  z-index: 40;
  height: var(--zaglavlje);
  background: var(--bijela);
  color: var(--tinta);
  box-shadow: 0 1px 0 var(--crta);
  --prsten: var(--tinta);
  transition: background-color .18s ease, color .18s ease;
}
.nadfotom-sve {
  position: absolute;
  left: 0; right: 0;
  top: var(--vrh, calc(max(76vh, 30rem) - var(--zaglavlje)));
  background: rgba(13, 21, 38, .64);
  color: var(--bijela);
  box-shadow: none;
  --prsten: var(--maslac);
}
.nadfotom-sve.prilijepljeno-sve {
  position: fixed;
  top: 0;
  background: var(--bijela);
  color: var(--tinta);
  box-shadow: 0 1px 0 var(--crta);
  --prsten: var(--tinta);
}

.traka-sve {
  height: 100%;
  max-width: calc(var(--okvir) + 3rem);
  margin: 0 auto;
  padding: 0 1.5rem;
  display: flex;
  align-items: center;
  gap: 1.5rem;
}

.znak-sve {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  flex: 0 0 auto;
  color: inherit;
  text-decoration: none;
  border-radius: 10px;
}
.znak-sve:hover .naziv-sve { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
.plocica-sve {
  display: block;
  width: 2.5rem; height: 2.5rem;
  border-radius: 10px;
  background: var(--maslac);
  overflow: hidden;
}
.plocica-sve img { width: 100%; height: 100%; object-fit: cover; }
.naziv-sve { font: 600 1.35rem/1 var(--naslovi); letter-spacing: -.01em; }

.izbornik-sve {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  min-width: 0;
}
.popis-sve { display: flex; gap: .2rem; margin: 0; padding: 0; list-style: none; }
.stavka-sve {
  position: relative;
  display: block;
  padding: .6rem .75rem;
  color: inherit;
  text-decoration: none;
  font-size: .98rem;
  border-radius: 6px;
}
.stavka-sve::before {
  content: "";
  position: absolute;
  left: .75rem; right: .75rem; top: 0;
  height: 2px;
  background: currentColor;
  opacity: 0;
}
.stavka-sve:hover { background: rgba(127, 150, 190, .2); text-decoration: none; }
.stavka-sve:active { background: rgba(127, 150, 190, .34); color: inherit; }
.stavka-sve[aria-current="page"] { font-weight: 700; }
.stavka-sve[aria-current="page"]::before { opacity: 1; }
.izbornik-sve .polovica-sve { min-height: 2.75rem; padding: .6rem 1.2rem; font-size: .95rem; }
.nadfotom-sve:not(.prilijepljeno-sve) .izbornik-sve .polovica-sve:not(:hover):not(:active) { background: var(--bijela); color: var(--tinta); }
.telefon-sve { display: none; color: inherit; font-weight: 600; }

.prekidac-sve {
  display: none;
  margin-left: auto;
  align-items: center;
  gap: .5rem;
  min-height: 2.6rem;
  padding: .4rem 1rem;
  border: 2px solid currentColor;
  border-radius: 999px;
  background: transparent;
  color: inherit;
  font: 600 .95rem/1 var(--tekst);
  cursor: pointer;
  transition: background-color .2s ease;
}
.prekidac-sve svg { width: 1.1rem; height: 1.1rem; }
.prekidac-sve:hover { background: rgba(127, 150, 190, .24); }
.prekidac-sve:active { background: rgba(127, 150, 190, .4); }

/* hero */
.naslovnica-poc {
  position: relative;
  min-height: max(76vh, 30rem);
  overflow: hidden;
  background: var(--tinta);
  color: var(--bijela);
}
.slika-poc {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: 60% 50%;
}
.zatamnjenje-poc {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(165deg, rgba(13, 21, 38, .84) 0%, rgba(13, 21, 38, .58) 36%, rgba(13, 21, 38, .14) 68%, rgba(13, 21, 38, .3) 100%);
}
.poruka-poc {
  position: relative;
  z-index: 1;
  max-width: calc(var(--okvir) + 3rem);
  margin: 0 auto;
  padding: clamp(2rem, 8vh, 6rem) 1.5rem calc(var(--zaglavlje) + 1.75rem);
  --prsten: var(--maslac);
}
.poruka-poc h1 {
  max-width: 15ch;
  margin-bottom: 1rem;
  font-size: clamp(2.4rem, 5vw, 4.2rem);
  line-height: 1.04;
  letter-spacing: -.01em;
}
.uvodnik-poc { max-width: 44ch; margin-bottom: 1.75rem; color: #eef3f9; font-size: clamp(1.05rem, 1.4vw, 1.2rem); }

/* first stage */
.etapa-poc { padding: 8rem 0 3.5rem; }
.uski-poc { max-width: calc(720px + 3rem); margin: 0 auto; padding: 0 1.5rem; }
.odabir-poc { display: grid; gap: .6rem; margin: 2.25rem 0 0; padding: 0; border: 0; min-width: 0; }
.odabir-poc legend { margin-bottom: .9rem; padding: 0; font: 600 1.15rem/1.3 var(--naslovi); }
.dio-poc {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: .9rem;
  align-items: start;
  padding: 1rem 1.15rem;
  background: var(--bijela);
  border-radius: 12px;
  cursor: pointer;
  transition: background-color .2s ease;
}
.dio-poc:hover { background: #fff6d8; }
.dio-poc:has(input:checked) { background: #fbecbd; }
.dio-poc input { width: 1.3rem; height: 1.3rem; margin: .2rem 0 0; accent-color: var(--tinta); cursor: pointer; }
.dio-poc input:focus-visible { outline: 3px solid var(--tinta); outline-offset: 3px; }
.opis-poc { min-width: 0; }
.opis-poc strong { display: block; font-weight: 700; }
.opis-poc span { display: block; color: var(--blago); font-size: .95rem; }
.cijena-poc { font-weight: 700; white-space: nowrap; font-variant-numeric: tabular-nums; }

.zbroj-poc { margin-top: 2rem; padding-top: 1.5rem; border-top: 2px solid var(--tinta); }
.redak-poc { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .25rem 1rem; margin: 0 0 .35rem; max-width: none; }
.iznos-poc { font: 600 clamp(2rem, 3.6vw, 2.6rem)/1.1 var(--naslovi); font-variant-numeric: tabular-nums; }
.savjet-poc { margin: .9rem 0; padding: .8rem 1rem; background: #fbecbd; border-radius: 10px; font-size: .97rem; }
.podnaslov-poc { margin: 1.25rem 0 .35rem; font-weight: 700; }
.ostatak-poc { margin: 0 0 1.5rem; padding-left: 1.2rem; color: var(--blago); }
.potvrda-poc { margin: .8rem 0 0; font-size: .95rem; min-height: 1.5em; }

/* after the first stage */
.ishod-poc { padding: 4.5rem 0 5rem; }
.stupci-poc { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 2.5rem; align-items: start; }
.lijevo-poc { grid-column: 1 / span 6; min-width: 0; }
.kadar-poc { grid-column: 7 / span 6; margin: 2.75rem 0 0; min-width: 0; }
.kadar-poc img { width: 100%; border-radius: 12px; }
.ocjene-poc { display: grid; gap: .4rem; margin: 1.25rem 0 1.75rem; padding: 0; list-style: none; }
.ocjene-poc li { padding: .55rem .9rem; background: var(--bijela); border-radius: 8px; }
.pravila-poc { display: grid; gap: 1.1rem; margin: 1rem 0 1.5rem; padding: 0; list-style: none; }
.pravilo-poc { position: relative; padding-left: 1.6rem; }
.pravilo-poc::before {
  content: "";
  position: absolute;
  left: 0; top: .5em;
  width: .7rem; height: .7rem;
  border-radius: 50%;
  background: var(--maslac);
  box-shadow: 0 0 0 2px var(--tinta);
}

/* lower part */
.donje-poc, .donje-sve { background: linear-gradient(var(--nebo), var(--bijela) 160px); background-color: var(--bijela); }

/* request */
.upit-poc { padding: 4.5rem 0 3rem; }
.siroki-poc { margin: 0 0 3.5rem; }
.siroki-poc img { width: 100%; border-radius: 12px; }
.raspored-poc { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 3.5rem; align-items: start; }
.kontakt-poc { margin: 1.5rem 0 0; padding: 0; list-style: none; display: grid; gap: .4rem; }
.kontakt-poc a { font-weight: 600; }

/* form */
.obrazac-sve { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.1rem 1.25rem; }
.polje-sve { display: grid; gap: .35rem; align-content: start; min-width: 0; }
.cijelo-sve { grid-column: 1 / -1; }
.oznaka-sve { font-weight: 600; font-size: .95rem; }
.neobavezno-sve { font-weight: 400; color: var(--blago); }
.unos-sve {
  width: 100%;
  min-height: 3rem;
  padding: .7rem .85rem;
  border: 1.5px solid #7a879e;
  border-radius: 10px;
  background: #fff;
  color: var(--tinta);
  font: inherit;
  transition: border-color .2s ease;
}
textarea.unos-sve { min-height: 7rem; resize: vertical; }
.unos-sve:hover { border-color: var(--tinta); }
.unos-sve:focus-visible { outline: 3px solid var(--tinta); outline-offset: 2px; border-color: var(--tinta); }
.dodirnuto-sve .unos-sve:invalid { border-color: #b3261e; }
.greska-sve { margin: 0; color: #a3221b; font-size: .9rem; }
.greska-sve:empty { display: none; }
.privola-sve { display: flex; gap: .65rem; align-items: flex-start; }
.privola-sve input { width: 1.25rem; height: 1.25rem; margin: .2rem 0 0; flex: 0 0 auto; accent-color: var(--tinta); }
.zamka-sve { display: none; }
.sazetak-sve { grid-column: 1 / -1; margin: 0; padding: .8rem 1rem; border-radius: 10px; background: #fbe3e1; color: #7d1a14; }
.sazetak-sve:empty { display: none; }
.slanje-sve { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }
.napomena-sve { margin: 0; font-size: .92rem; color: var(--blago); }

/* pricing */
.cjenik-poc { padding: 6rem 0 3.5rem; }
.glava-poc { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 1rem 3rem; align-items: end; margin-bottom: 2.75rem; }
.glava-poc h2 { margin: 0; }
.glava-poc p { margin: 0; color: var(--blago); }
.ponuda-poc { display: grid; grid-template-columns: minmax(0, 1fr) 15.5rem; gap: 1.5rem; align-items: start; }
.kartice-poc { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.kartica-poc {
  display: flex;
  flex-direction: column;
  gap: .55rem;
  min-width: 0;
  max-width: none;
  padding: 1.4rem 1.4rem 1.5rem;
  background: var(--nebo);
  border-radius: 14px;
}
.kartica-poc h3 { margin: 0; }
.kartica-poc p { margin: 0; font-size: .97rem; }
.siroka-poc { grid-column: span 2; }
.stopa-poc { margin-top: auto !important; padding-top: .5rem; font: 600 1.7rem/1.1 var(--naslovi) !important; font-variant-numeric: tabular-nums; }
.etiketa-poc { display: inline-flex; align-items: center; gap: .45rem; font-size: .9rem !important; font-weight: 600; }
.etiketa-poc::before { content: ""; width: .6rem; height: .6rem; border-radius: 50%; background: var(--maslac); box-shadow: 0 0 0 2px var(--tinta); flex: 0 0 auto; }
.etiketa-poc.ne-poc::before { background: transparent; }
.vertikala-poc { margin: 0; }
.vertikala-poc img { width: 100%; border-radius: 12px; }
.minimum-poc { margin: 2rem 0 .4rem; font-weight: 700; max-width: none; }
.dodatno-poc { color: var(--blago); }

/* faq */
.pitanja-poc { padding: 4rem 0 8rem; }
.dvojno-poc { display: grid; grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 4rem; align-items: start; }
.autor-poc { padding-top: .5rem; }
.inicijali-poc {
  display: grid;
  place-items: center;
  width: 4.5rem; height: 4.5rem;
  margin-bottom: 1rem;
  border-radius: 50%;
  background: var(--maslac);
  color: var(--tinta);
  font: 600 1.5rem/1 var(--naslovi);
}
.ime-poc { margin: 0; font-weight: 700; }
.uloga-poc { margin: 0 0 1rem; color: var(--blago); }
.pitanje-poc { border-bottom: 1px solid var(--crta); }
.pitanje-poc summary {
  position: relative;
  padding: 1.15rem 2.75rem 1.15rem 0;
  font: 600 1.15rem/1.35 var(--naslovi);
  list-style: none;
  cursor: pointer;
  border-radius: 6px;
  transition: color .2s ease;
}
.pitanje-poc summary::-webkit-details-marker { display: none; }
.pitanje-poc summary::after { content: "+"; position: absolute; right: .5rem; top: .95rem; font-size: 1.5rem; line-height: 1; }
.pitanje-poc[open] summary::after { content: "\2212"; }
.pitanje-poc summary:hover { color: #34508a; }
.pitanje-poc summary:active { color: var(--tinta-d); }
.odgovor-poc { padding: 0 0 1.25rem; }
.odgovor-poc p:last-child { margin-bottom: 0; }

/* inner pages */
.stranica-sve { padding: 4.5rem 0 3.5rem; }
.stranica-sve h1 { max-width: 20ch; font-size: clamp(2.4rem, 4.8vw, 3.8rem); }
.mrvice-sve ol { display: flex; flex-wrap: wrap; gap: .4rem; margin: 0 0 1.5rem; padding: 0; list-style: none; font-size: .92rem; color: var(--blago); }
.mrvice-sve li + li::before { content: "/"; margin-right: .4rem; }
.uvodnik-sve { max-width: 56ch; font-size: 1.2rem; }
.donje-sve { padding: 3rem 0 7rem; }
.tekst-sve { max-width: 46rem; }
.tekst-sve h2 { margin-top: 2.2em; }
.tekst-sve h2:first-child { margin-top: 0; }
.tekst-sve h3 { margin-top: 1.6em; }
.tekst-sve ul, .tekst-sve ol { padding-left: 1.25rem; margin: 0 0 1.25rem; }
.tekst-sve li { margin-bottom: .45em; }
.sadrzaj-sve { margin: 0 0 2.75rem; padding: 1.25rem 1.5rem; background: var(--nebo); border-radius: 14px; }
.sadrzaj-sve p { margin: 0 0 .5rem; font-weight: 700; }
.sadrzaj-sve ol { margin: 0; columns: 2 14rem; column-gap: 2rem; }
.vreza-sve { margin: 2rem 0; padding: 1.5rem 1.75rem; background: #fbecbd; border-radius: 14px; }
.vreza-sve h2 { margin-top: 0; font-size: clamp(1.4rem, 2.4vw, 1.9rem); }
.vreza-sve p:last-child { margin-bottom: 0; }
.tablica-sve { width: 100%; margin: 1.5rem 0 2rem; border-collapse: collapse; font-size: .98rem; }
.tablica-sve th, .tablica-sve td { padding: .75rem .8rem; border-bottom: 1px solid var(--crta); text-align: left; vertical-align: top; }
.tablica-sve th { font-weight: 700; }
.tablica-sve thead th { border-bottom: 2px solid var(--tinta); }
.poveznice-sve { display: flex; flex-wrap: wrap; gap: .75rem; margin: 2rem 0 0; padding: 0; list-style: none; }

/* contact page */
.raspored-kon { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 3.5rem; align-items: start; }
.podaci-kon { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: .6rem 1.25rem; margin: 1.25rem 0 2rem; }
.podaci-kon dt { font-weight: 700; }
.podaci-kon dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.vlasnik-kon { padding: 1.25rem 1.5rem; background: var(--nebo); border-radius: 14px; }
.vlasnik-kon p:last-child { margin-bottom: 0; }

/* trust page */
.nacela-nac { display: grid; gap: 1.75rem; margin: 2rem 0; padding: 0; list-style: none; }
.nacela-nac li { padding-left: 1.25rem; border-left: 3px solid var(--maslac); }
.nacela-nac h2 { margin: 0 0 .4rem; font-size: clamp(1.25rem, 2vw, 1.5rem); }

/* thank-you page */
.potvrda-hva { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 3rem; align-items: start; }
.okvirko-hva { padding: 1.5rem 1.75rem; background: var(--nebo); border-radius: 14px; }

/* not found */
.putokaz-nem { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin: 1.5rem 0 2.5rem; padding: 0; list-style: none; }
.putokaz-nem a { display: block; padding: 1rem 1.2rem; background: var(--nebo); border-radius: 12px; text-decoration: none; font-weight: 600; transition: background-color .2s ease; }
.putokaz-nem a:hover { background: #fbecbd; }
.putokaz-nem a:active { background: var(--maslac); }
.putokaz-nem span { display: block; font-weight: 400; color: var(--blago); font-size: .95rem; }

/* topic pages */
.koraci-zim, .vrste-kam { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1.5rem 0 2.25rem; padding: 0; list-style: none; }
.koraci-zim li, .vrste-kam li { max-width: none; padding: 1.2rem 1.3rem; background: var(--nebo); border-radius: 12px; }
.koraci-zim h3 { margin: 0 0 .35rem; }
.vrste-kam h2 { margin: 0 0 .5rem; font-size: clamp(1.3rem, 2vw, 1.6rem); }
.vrste-kam p + p { margin-top: .6rem; }
.koraci-zim p, .vrste-kam p { margin: 0; font-size: .97rem; }
.mjere-aku { font-variant-numeric: tabular-nums; }
.shema-zap { margin: 1.5rem 0 2rem; padding: 1.5rem 1.75rem; border: 1.5px dashed #7a879e; border-radius: 14px; }
.shema-zap dl { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: .5rem 1.25rem; margin: 0; }
.shema-zap dt { font-weight: 700; }
.shema-zap dd { margin: 0; }

/* footer */
.podnozje-sve { padding: 4.5rem 0 2rem; background: var(--tinta); color: #dbe3ef; font-size: .97rem; --prsten: var(--maslac); }
.podnozje-sve a { color: var(--bijela); }
.podnozje-sve a:active { color: var(--maslac); }
.mreza-sve { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) minmax(0, 1fr); gap: 2.5rem; }
.marka-sve { margin: 0 0 .75rem; color: var(--bijela); font: 600 1.5rem/1.1 var(--naslovi); }
.rubrika-sve { margin: 0 0 .75rem; color: var(--bijela); font-weight: 700; }
.veze-sve { margin: 0; padding: 0; list-style: none; display: grid; gap: .45rem; }
.vlasnik-sve p { margin: 0 0 .4rem; }
.autorstvo-sve { margin: 3rem 0 0; padding-top: 1.5rem; border-top: 1px solid rgba(253, 252, 250, .18); font-size: .9rem; max-width: none; }

/* cookie notice */
.kolacici-sve {
  position: fixed;
  left: 1rem; right: 1rem; bottom: .75rem;
  z-index: 60;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  max-width: 64rem;
  margin: 0 auto;
  padding: 1.1rem 1.2rem;
  background: var(--bijela);
  color: var(--tinta);
  border-radius: 14px;
  box-shadow: 0 10px 30px rgba(15, 24, 42, .22);
  font-size: .92rem;
  --prsten: var(--tinta);
}
.kolacici-sve[hidden] { display: none; }
.kolacici-sve p { margin: 0; flex: 1 1 auto; min-width: 0; }
.odluke-sve { display: flex; gap: .6rem; flex: 0 0 auto; }
.odluke-sve .odluka-sve { min-width: 8.5rem; }
.odluka-sve {
  flex: 1;
  min-height: 2.6rem;
  border: 2px solid var(--tinta);
  border-radius: 999px;
  background: transparent;
  color: var(--tinta);
  font: 600 .95rem/1 var(--tekst);
  cursor: pointer;
  transition: background-color .2s ease;
}
.odluka-sve:hover { background: var(--maslac); }
.odluka-sve:active { background: var(--maslac-d); }

/* responsive */
@media (max-width: 1280px) {
  .ponuda-poc { grid-template-columns: minmax(0, 1fr) 13.5rem; }
}

@media (max-width: 1100px) {
  .kartice-poc { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .siroka-poc { grid-column: 1 / -1; }
  .ponuda-poc { grid-template-columns: minmax(0, 1fr) 12rem; }
  .stavka-sve { padding: .6rem .55rem; }
  .izbornik-sve { gap: 1rem; }
}

@media (max-width: 900px) {
  :root { --zaglavlje: 3.5rem; }
  .prekidac-sve { display: inline-flex; }
  .izbornik-sve {
    position: absolute;
    left: 0; right: 0; top: 100%;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
    max-height: calc(100svh - var(--zaglavlje));
    overflow-y: auto;
    padding: 1rem 1.5rem 1.5rem;
    background: var(--bijela);
    color: var(--tinta);
    box-shadow: 0 14px 24px rgba(31, 47, 79, .14);
    --prsten: var(--tinta);
  }
  .nadfotom-sve:not(.prilijepljeno-sve) .izbornik-sve {
    top: auto;
    bottom: 100%;
    max-height: calc(var(--vrh, 50svh) - .5rem);
    background: rgba(13, 21, 38, .96);
    color: var(--bijela);
    box-shadow: none;
    --prsten: var(--maslac);
  }
  .otvoreno-sve .izbornik-sve { display: flex; }
  .popis-sve { flex-direction: column; }
  .stavka-sve { padding: .7rem .25rem; font-size: 1.25rem; }
  .stavka-sve::before { left: .25rem; right: auto; width: 2.5rem; }
  .telefon-sve { display: block; }
  .izbornik-sve .polovica-sve { align-self: flex-start; }
  .stupci-poc, .raspored-poc, .dvojno-poc, .raspored-kon, .potvrda-hva { grid-template-columns: minmax(0, 1fr); gap: 2.5rem; }
  .lijevo-poc, .kadar-poc { grid-column: 1 / -1; }
  .kadar-poc { margin-top: 0; }
  .ponuda-poc { grid-template-columns: minmax(0, 1fr); }
  .vertikala-poc { max-width: 20rem; }
  .glava-poc { grid-template-columns: minmax(0, 1fr); }
  .mreza-sve { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mreza-sve > :first-child { grid-column: 1 / -1; }
}

@media (max-width: 768px) {
  .naslovnica-poc { min-height: 50svh; }
  .poruka-poc { padding-top: 1.75rem; padding-bottom: calc(var(--zaglavlje) + 1.25rem); }
  .uvodnik-poc { margin-bottom: 1.25rem; }
  .etapa-poc { padding: 4.5rem 0 2rem; }
  .ishod-poc { padding: 2.5rem 0 3rem; }
  .upit-poc { padding: 3rem 0 2rem; }
  .cjenik-poc { padding: 3.5rem 0 2rem; }
  .pitanja-poc { padding: 2.5rem 0 5rem; }
  .siroki-poc { margin-bottom: 2.5rem; }
  .stranica-sve { padding: 3rem 0 2.5rem; }
  .donje-sve { padding: 2.5rem 0 5rem; }
}

@media (max-width: 640px) {
  .obrazac-sve, .kartice-poc, .putokaz-nem, .koraci-zim, .vrste-kam, .mreza-sve { grid-template-columns: minmax(0, 1fr); }
  .siroka-poc { grid-column: auto; }
  .polovica-sve { padding: .75rem 1.05rem; }
  .tablica-sve thead { display: none; }
  .tablica-sve tr { display: block; padding: .75rem 0; border-bottom: 1px solid var(--crta); }
  .tablica-sve td { display: block; padding: .15rem 0; border: 0; }
  .tablica-sve td::before { content: attr(data-naslov); display: block; font-weight: 700; }
  .podaci-kon, .shema-zap dl { grid-template-columns: minmax(0, 1fr); gap: .15rem; }
  .podaci-kon dd, .shema-zap dd { margin-bottom: .6rem; }
  .kolacici-sve { left: .5rem; right: .5rem; bottom: .5rem; flex-direction: column; align-items: stretch; gap: .8rem; }
  .odluke-sve .odluka-sve { min-width: 0; }
}

@media (max-width: 480px) {
  .okvir-sve, .uski-poc, .traka-sve, .poruka-poc { padding-left: 1rem; padding-right: 1rem; }
  .poziv-sve .rijec-sve { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .dio-poc { grid-template-columns: auto minmax(0, 1fr); }
  .dio-poc .cijena-poc { grid-column: 2; }
  .naziv-sve { font-size: 1.2rem; }
  .prekidac-sve { padding: .4rem .8rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition-property: background-color, color, border-color !important; }
}
