/* Jupiter Planet — interne stranice */

.svc-lg h2{ font-size:1.3rem; }
.svc-lg p{ font-size:.95rem; }
.svc__ico{ font-size:1.9rem; display:block; margin-bottom:.5rem; }
.ticks{ list-style:none; padding:0; margin:.8rem 0 0; display:flex; flex-direction:column; gap:.5rem; }
.ticks li{ padding-left:1.6rem; position:relative; color:var(--muted); font-size:.92rem; }
.ticks li::before{ content:"✓"; position:absolute; left:0; color:var(--gold); font-weight:700; }

/* Mašinski park */
.machine{ position:relative; transition:transform .25s var(--ease), border-color .25s; }
.machine:hover{ transform:translateY(-4px); border-color:rgba(232,178,58,.4); }
.machine__ico{ font-size:1.9rem; display:block; margin-bottom:.5rem; }
.machine h3{ font-size:1.1rem; }
.machine p{ font-size:.93rem; margin-bottom:.9rem; }
.machine__tags{ display:flex; flex-wrap:wrap; gap:.4rem; }
.machine__tags span{ font-size:.74rem; font-weight:600; color:var(--gold); background:rgba(232,178,58,.08); border:1px solid rgba(232,178,58,.25); padding:.25rem .6rem; border-radius:999px; }

/* prose */
.prose p{ font-size:var(--step-0); line-height:1.8; }
.prose h2{ font-size:var(--step-2); margin-top:1.6rem; }
.stat{ text-align:center; background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:1.4rem 1rem; }
.stat b{ display:block; font-family:var(--font-display); font-size:2rem; color:var(--gold); line-height:1; }
.stat span{ font-size:.85rem; color:var(--muted); }

/* galerija */
.gallery-grid{ display:grid; gap:1rem; grid-template-columns:repeat(2,1fr); }
@media (min-width:760px){ .gallery-grid{ grid-template-columns:repeat(4,1fr); } }
.gallery-card{ margin:0; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; background:var(--surface); }
.gallery-card__img{ aspect-ratio:4/5; background:linear-gradient(135deg,var(--surface-2),var(--bg-1)); position:relative; }
.gallery-card__img::after{ content:"JP"; position:absolute; inset:0; display:grid; place-items:center; font-family:var(--font-display); font-weight:700; font-size:1.6rem; color:rgba(232,178,58,.28); }
.gallery-card figcaption{ padding:.7rem .9rem; font-size:.88rem; color:var(--muted); border-top:1px solid var(--line-2); }
.gallery-card__link{ display:block; }
.gallery-card__photo{ display:block; width:100%; aspect-ratio:3/4; object-fit:cover; transition:transform .35s var(--ease); }
.gallery-card:hover .gallery-card__photo{ transform:scale(1.04); }

/* lightbox */
.lbx{ position:fixed; inset:0; z-index:140; display:none; place-items:center; padding:1rem; background:rgba(5,5,8,.88); backdrop-filter:blur(8px); }
.lbx.open{ display:grid; }
.lbx img{ max-width:92vw; max-height:88vh; border-radius:12px; border:1px solid var(--line); box-shadow:var(--shadow); }
.lbx__close{ position:absolute; top:1rem; right:1rem; width:42px; height:42px; border-radius:50%; border:1px solid var(--line); background:var(--bg); color:var(--text); font-size:1.1rem; z-index:2; }
.lbx__nav{ position:absolute; top:50%; transform:translateY(-50%); width:46px; height:46px; border-radius:50%; border:1px solid var(--line); background:var(--bg); color:var(--text); font-size:1.6rem; line-height:1; z-index:2; }
.lbx__nav:hover, .lbx__close:hover{ color:var(--gold); border-color:var(--gold); }
.lbx__prev{ left:.8rem; }
.lbx__next{ right:.8rem; }

/* forme */
.form-wrap{ max-width:760px; }
.form-card{ background:var(--surface); border:1px solid var(--line); border-radius:var(--radius-l); padding:clamp(1.3rem,3vw,2.2rem); display:flex; flex-direction:column; gap:1rem; }
.form-grid{ display:grid; gap:1rem; grid-template-columns:1fr; }
@media (min-width:560px){ .form-grid{ grid-template-columns:1fr 1fr; } }
.field{ display:flex; flex-direction:column; gap:.4rem; }
.field > span{ font-size:.85rem; color:var(--muted); font-weight:500; }
.field input, .field select, .field textarea{ width:100%; padding:.75rem .85rem; background:var(--bg); border:1px solid var(--line); border-radius:var(--radius-s); color:var(--text); font:inherit; }
.field input:focus, .field select:focus, .field textarea:focus{ outline:none; border-color:var(--gold); box-shadow:0 0 0 3px rgba(232,178,58,.15); }
.field textarea{ resize:vertical; }
.hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }

.form-msg{ display:none; padding:.75rem .95rem; border-radius:var(--radius-s); font-size:.92rem; }
.form-msg.ok{ display:block; background:rgba(88,200,132,.12); border:1px solid rgba(88,200,132,.4); color:var(--ok); }
.form-msg.err{ display:block; background:rgba(255,93,93,.1); border:1px solid rgba(255,93,93,.4); color:var(--danger); }

/* kontakt */
.contact-grid{ display:grid; gap:var(--gap); grid-template-columns:1fr; }
@media (min-width:840px){ .contact-grid{ grid-template-columns:.8fr 1.2fr; } }
.contact-info{ display:flex; flex-direction:column; gap:1.3rem; }
.contact-row{ display:flex; gap:1rem; align-items:flex-start; }
.contact-ico{ flex:0 0 auto; width:42px; height:42px; border-radius:12px; display:grid; place-items:center; background:rgba(232,178,58,.1); border:1px solid rgba(232,178,58,.3); color:var(--gold); font-size:1.1rem; }
.contact-row b{ font-family:var(--font-display); }
.contact-row p{ margin:.15rem 0 0; }

/* legal */
.legal h2{ font-size:1.3rem; margin-top:2rem; }
.legal p, .legal li{ color:var(--muted); }
.legal ul{ padding-left:1.2rem; }
.legal{ max-width:820px; }

/* 404 */
.nf{ text-align:center; padding-block:clamp(3rem,2rem+6vw,7rem); }
.nf h1{ font-size:clamp(4rem,3rem+8vw,9rem); color:var(--gold); margin:0; }
