/* /cenas, /metodika, /atbalstitajiem un abi ģimenes ceļveži jaunajā dizainā „Pakāpienu sala”.
   Viss ar .pb priedēkli, lai neaizskartu kopīgos sala*.css. Šablons: sala/publiska.html, aeo_guide.html. */
.sp-wrap:has(> main.pb) { max-width: 1120px; }
/* Vecās lapas pamatstili (brand/components) šauro main līdz 720px; šīm lapām vajag visu platumu. */
body .sp-wrap > main.pb { max-width: none; margin-inline: 0; }
.pb { display: grid; gap: clamp(2.2rem, 1.5rem + 3vw, 4.5rem); }
.pb p { margin: 0; }
.pb :focus-visible { outline: 3px solid var(--coral); outline-offset: 3px; }
.pb .ulink { min-height: 44px; display: inline-flex; align-items: center; }
.pb-smalks { font-size: var(--t-xs); color: var(--c-muted); line-height: 1.55; max-width: 62ch; }
.pb-rinda { display: flex; flex-wrap: wrap; gap: .8rem 1.2rem; align-items: center; }
.pb-trail { display: flex; flex-wrap: wrap; gap: .1rem .5rem; align-items: center; font-size: var(--t-s); color: var(--c-muted); margin-bottom: -1rem; }
.pb-h2 { font-family: var(--f-display); font-weight: 800; font-size: var(--t-l); line-height: 1; letter-spacing: -0.025em; margin: 0; }

/* ---------- Ievads: teksts + izometriskā ikona */
.pb-hero { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 4fr); gap: clamp(1.5rem, 1rem + 3vw, 4rem); align-items: center; }
.pb .pb-display { font-family: var(--f-display); font-weight: 800; font-size: clamp(2.2rem, 1.4rem + 3.2vw, 4.1rem); line-height: .98; letter-spacing: -0.035em; margin: 0; text-wrap: balance; }
.pb-hero .kicker { margin-bottom: 1rem; }
.pb .pb-lead { font-size: var(--t-m); line-height: 1.45; max-width: 40ch; margin-top: 1.1rem; }
.pb .pb-hero__piezime { margin-top: 1rem; rotate: -1.5deg; font-size: 1.6rem; width: fit-content; }
.pb-hero .pb-rinda, .pb-hero .pb-toc { margin-top: 1.5rem; }
.pb-toc { display: flex; flex-wrap: wrap; gap: 0 1.4rem; }
.pb-sala { margin: 0; display: grid; place-items: center; background: var(--lavender-2); border: 2px solid var(--c-edge); border-radius: 26px; box-shadow: 0 8px 0 var(--c-edge); padding: clamp(1.2rem, 1rem + 2vw, 2.4rem); }
.pb-sala .iso-ikona { width: min(100%, 260px); }

/* ---------- Kartes */
.pb-karte { background: var(--c-card); border: 2px solid var(--c-edge); border-radius: 22px; box-shadow: 0 7px 0 var(--c-edge); padding: clamp(1.2rem, .9rem + 1.4vw, 2rem); display: grid; gap: .8rem; align-content: start; min-width: 0; }
.pb-karte--sun { background: var(--sun); color: var(--violet); }
.pb-karte h2 { font-family: var(--f-display); font-weight: 800; font-size: clamp(1.3rem, 1.1rem + .8vw, 1.7rem); line-height: 1.05; letter-spacing: -0.02em; margin: 0; }
.pb-karte p { font-size: var(--t-body); line-height: 1.55; max-width: 62ch; }
.pb-karte .iso-ikona { margin: 0 0 .1rem; }
.pb-saraksts { list-style: none; padding: 0; margin: 0; display: grid; gap: .55rem; }
.pb-saraksts li { position: relative; padding-left: 1.5rem; line-height: 1.45; }
.pb-saraksts li::before { content: ''; position: absolute; left: .1rem; top: .5em; width: .62rem; height: .62rem; background: var(--sun); border: 2px solid var(--c-edge); border-radius: 3px; rotate: 45deg; }
.pb-karte--sun .pb-saraksts li::before { background: var(--cream); }

/* Kartes kāpnēs: otrā rinda pacelta */
.pb-kartes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1rem, .6rem + 1.6vw, 2rem); align-items: start; }
.pb-sadala-karte[style*="--i:1"] { margin-top: 1.6rem; background: var(--cream); }

/* ---------- /cenas */
.pb-cenas { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, .6rem + 1.6vw, 2rem); align-items: stretch; }
.pb-piedavajums { grid-template-rows: auto auto auto 3.4rem auto 1fr auto; align-content: stretch; }
@supports (grid-template-rows: subgrid) { @media (min-width: 901px) { .pb-piedavajums { grid-row: span 7; grid-template-rows: subgrid; } .pb-cenas { grid-template-rows: auto auto minmax(2.2rem, auto) 3.4rem auto 1fr auto; } } }
.pb-piedavajums:nth-child(2) { background: var(--sun); color: var(--violet); }
.pb-piedavajums:nth-child(2) .pb-saraksts li::before { background: var(--cream); }
.pb-birka { font-weight: 800; font-size: var(--t-s); text-transform: uppercase; letter-spacing: .06em; color: var(--c-muted); }
.pb-piedavajums:nth-child(2) .pb-birka { color: var(--violet); }
.pb-cena { display: flex !important; align-items: center; min-height: 3.4rem; }
.pb-cena__liels { font-family: var(--f-display); font-weight: 800; font-size: 3rem; line-height: 1; letter-spacing: -0.04em; }
.pb-cena__teksts { font-weight: 800; font-size: var(--t-body); line-height: 1.3; }
.pb-nolukums { font-weight: 700; }
.pb-piedavajums__beigas { display: grid; gap: .7rem; align-content: end; justify-items: start; margin-top: .6rem; }
.pb-sadala { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1rem, .6rem + 2vw, 3rem); align-items: start; }
.pb-sadala > div { display: grid; gap: .8rem; align-content: start; }
.pb-karte--sun a { color: var(--violet); }

/* ---------- /metodika */
.pb-process { display: grid; gap: 1.4rem; }
.pb-pakapieni { list-style: none; padding: 0; margin: .4rem 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; align-items: end; }
.pb-pakapieni li { background: var(--c-card); border: 2px solid var(--c-edge); border-radius: var(--radius); padding: 1.1rem 1rem 1.3rem; box-shadow: 0 calc(6px + var(--i) * 7px) 0 var(--c-edge); margin-top: calc((2 - var(--i)) * 2.2rem); margin-bottom: calc(var(--i) * 7px); }
.pb-pakapieni li:nth-child(3) { background: var(--sun); color: var(--violet); }
.pb-pakapieni h3 { font-size: 1.15rem; line-height: 1.15; margin: 0; }
.pb-pakapieni p { font-size: var(--t-s); line-height: 1.5; margin-top: .45rem; }
.pb-nr { display: block; font-family: var(--f-display); font-weight: 800; font-size: 2.4rem; line-height: 1; letter-spacing: -0.04em; margin-bottom: .5rem; }
.pb-robeza { border-left: 6px solid var(--coral); background: var(--c-card); padding: 1rem 1.2rem; border-radius: 0 var(--radius) var(--radius) 0; line-height: 1.5; max-width: 70ch; }
.pb-detalas { border: 2px solid var(--c-edge); border-radius: 14px; background: var(--c-card); padding: 0 1.1rem; max-width: 70ch; }
.pb-detalas summary { min-height: 48px; display: flex; align-items: center; font-weight: 800; cursor: pointer; }
.pb-detalas p { padding-bottom: 1rem; line-height: 1.55; }
.pb .pb-kajene { padding-top: 1.2rem; border-top: 2px solid var(--c-fg); }

/* ---------- Ģimenes ceļveži (aeo_guide.html) */
.pb-raksts { max-width: 820px; display: grid; gap: clamp(1.6rem, 1.2rem + 2vw, 3rem); }
.pb-meta { font-size: var(--t-s); color: var(--c-muted); }
.pb-isa { background: var(--sun); color: var(--violet); }
.pb-isa a { color: var(--violet); }
.pb-isa .pb-smalks { color: var(--violet); }
.pb-chips { display: flex; flex-wrap: wrap; gap: .6rem; }
.pb-chips a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 1rem; font-weight: 800; text-decoration: none; color: var(--c-fg); background: var(--c-card); border: 2px solid var(--c-edge); border-radius: 999px; box-shadow: 0 3px 0 var(--c-edge); }
.pb-chips a:hover { background: var(--sun); color: var(--violet); }
.pb-sekcija { display: grid; gap: 1rem; scroll-margin-top: 6.5rem; }
.pb-sekcija__galva { display: flex; align-items: center; gap: 1rem; }
.pb-sekcija__galva .iso-ikona { flex: none; width: 52px; }
.pb-sekcija p, .pb-sekcija li { line-height: 1.6; }
.pb-sekcija ul, .pb-sekcija ol { margin: 0; padding-left: 1.3rem; display: grid; gap: .5rem; }
.pb-jautajumi { list-style: none !important; padding: 0 !important; display: grid; gap: .7rem !important; }
.pb-jautajumi li { background: var(--c-card); border: 2px solid var(--c-edge); border-radius: 16px 16px 16px 4px; box-shadow: 0 4px 0 var(--c-edge); padding: .7rem 1rem; width: fit-content; max-width: 100%; font-weight: 700; }
.pb-jautajumi li:nth-child(2) { margin-left: 1rem; } .pb-jautajumi li:nth-child(3) { margin-left: 2rem; }
.pb-soli { list-style: none !important; padding: 0 !important; counter-reset: pb; display: grid; gap: .8rem !important; }
.pb-soli li { counter-increment: pb; display: grid; grid-template-columns: 2.4rem 1fr; gap: .8rem; align-items: start; background: var(--c-card); border: 2px solid var(--c-edge); border-radius: 14px; box-shadow: 0 4px 0 var(--c-edge); padding: .8rem 1rem; }
.pb-soli li::before { content: counter(pb); display: grid; place-items: center; width: 2.2rem; height: 2.2rem; background: var(--sun); color: var(--violet); border: 2px solid var(--c-edge); border-radius: 8px; font-family: var(--f-display); font-weight: 800; rotate: -4deg; }
.pb-soli li:nth-child(2) { margin-left: .8rem; } .pb-soli li:nth-child(3) { margin-left: 1.6rem; } .pb-soli li:nth-child(4) { margin-left: 2.4rem; } .pb-soli li:nth-child(5) { margin-left: 3.2rem; }
.pb-citats { margin: 0; padding: 1rem 1.2rem; background: var(--lavender-2); border: 2px solid var(--c-edge); border-radius: 22px; }
.pb-citats p { background: #fff; color: var(--violet); border: 2px solid var(--violet); border-radius: 16px 16px 4px 16px; box-shadow: 0 4px 0 var(--violet); padding: .9rem 1rem; line-height: 1.55; }
.pb-nakamais { text-align: left; }
.pb-stat { background: var(--c-card); border: 2px dashed var(--c-edge); border-radius: 18px; padding: 1.2rem; display: grid; gap: .8rem; }
.pb-stat h2 { font-family: var(--f-display); font-weight: 800; font-size: 1.3rem; margin: 0; }
.pb-stat__pogas { display: flex; flex-wrap: wrap; gap: .8rem; }

@media (max-width: 900px) {
  .pb-hero, .pb-cenas, .pb-sadala { grid-template-columns: minmax(0, 1fr); }
  .pb-sala { order: -1; padding: 1rem; } .pb-sala .iso-ikona { width: 150px; }
  .pb-piedavajums { grid-template-rows: none; }
  .pb-cena { min-height: 0; }
}
@media (max-width: 640px) {
  .pb-kartes, .pb-pakapieni { grid-template-columns: minmax(0, 1fr); }
  .pb-pakapieni li { margin-top: 0; margin-bottom: 0; }
  .pb-sadala-karte[style*="--i:1"] { margin-top: 0; }
  .pb-soli li:nth-child(n) { margin-left: 0; } .pb-jautajumi li:nth-child(n) { margin-left: 0; }
  .pb-rinda .btn { width: 100%; justify-content: center; }
}

/* Iekļautās saites tekstā nedrīkst lauzt rindu augstumu */
.pb p .ulink, .pb li .ulink, .pb footer .ulink { display: inline; min-height: 0; padding: .1em .1em; }
.pb .btn { line-height: 1.2; }
.pb-piedavajums__beigas { align-content: start; }
.pb-pakapieni li { margin-top: calc((2 - var(--i)) * 1.3rem); }
.pb p .ulink, .pb li .ulink, .pb footer .ulink { padding: 0; }
.pb p .ulink span, .pb li .ulink span, .pb footer .ulink span { padding: 0; }
