/* Spatial content, not decoration attached to a conventional grid. */
.spatial-section{position:relative;isolation:isolate;background:#f5f2ed;color:#181815}
.spatial-stage{position:relative;overflow:clip;min-height:780px}
.spatial-canvas{position:absolute;inset:0;width:100%;height:100%;display:none;touch-action:pan-y}
.spatial-section.is-spatial{padding:0}
.spatial-section.is-spatial .spatial-stage{height:100svh;min-height:0;position:sticky;top:0}
.spatial-section.is-spatial .spatial-canvas{display:block}
.spatial-top,.spatial-bottom{position:absolute;z-index:2;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;gap:24px;pointer-events:none}
.spatial-top{top:100px;align-items:start}
.spatial-bottom{bottom:55px;align-items:end}
.spatial-top h2{font:400 clamp(24px,2.4vw,36px)/1.15 'Instrument Sans',sans-serif;letter-spacing:-.035em;margin:0;max-width:22ch}
.spatial-top a,.spatial-bottom a,.spatial-bottom button{pointer-events:auto}
.spatial-top a{font-size:15px;padding-bottom:8px;border-bottom:1px solid currentColor}
.spatial-bottom>p{font-size:clamp(20px,2vw,28px);line-height:1.35;letter-spacing:-.025em;margin:0}
.brand-space.is-spatial{height:140svh}
.brand-space-fallback{min-height:780px;display:grid;place-items:center;padding:100px 6vw}
.brand-space-fallback img{width:100%;height:auto;transform:perspective(1200px) rotateY(-20deg) rotateZ(-5deg)}
.is-spatial .brand-space-fallback{display:none}
.sculpture-controls{display:none;align-items:center;gap:18px;font-size:13px;line-height:1.4}
.is-spatial .sculpture-controls{display:flex}
.sculpture-reset{border-radius:50%;width:58px;height:58px;background:#ff4f31;border:0;color:#181815;font-size:26px;cursor:pointer}
.sculpture-reset:active{scale:.94}
.spatial-section button:focus-visible,.spatial-section a:focus-visible,.spatial-dialog button:focus-visible{outline:2px solid currentColor;outline-offset:6px;border-radius:8px}
.spatial-gallery.is-spatial{height:460svh}
.spatial-gallery.is-spatial .wk[hidden]{display:none}
.spatial-gallery.is-spatial .gallery-stage>.u{height:100%}
.spatial-gallery.is-spatial .rd-g{position:absolute;top:98px;left:var(--pad);right:var(--pad);margin:0;display:flex;justify-content:space-between;pointer-events:none}
.spatial-gallery.is-spatial .rd-g .oz,.spatial-gallery.is-spatial .rd-g>.vod{display:none}
.spatial-gallery.is-spatial .rd-g h2{font:400 clamp(26px,2.5vw,38px)/1.1 'Instrument Sans',sans-serif;letter-spacing:-.045em;margin:0!important}
.spatial-gallery.is-spatial .rd-g h2 br{display:none}
.spatial-gallery.is-spatial .rd-g h2 .mk{display:none}
.gallery-caption{position:absolute;z-index:2;bottom:48px;left:var(--pad);right:var(--pad);display:grid;grid-template-columns:1fr auto;align-items:end;gap:24px;pointer-events:none}
.gallery-caption h3{font:400 clamp(38px,5.4vw,78px)/1 'Instrument Sans',sans-serif;letter-spacing:-.05em;margin:0 0 12px}
.gallery-caption p{font-size:15px;line-height:1.4;margin:0;color:#625f57;max-width:42ch}
.gallery-actions{display:flex;align-items:center;gap:18px;pointer-events:auto}
.gallery-actions button{width:48px;height:48px;border:1px solid #18181545;border-radius:50%;font-size:22px;background:transparent;cursor:pointer}
.gallery-actions button:disabled{opacity:.3;cursor:default}
.gallery-actions button:not(:disabled):hover,.sculpture-reset:hover{background:#181815;color:#f5f2ed}
.gallery-actions button:active,.gallery-open:active{scale:.96}
.gallery-open:hover{background:#181815;color:#f5f2ed}
.gallery-actions output{font-size:13px;white-space:nowrap;font-variant-numeric:tabular-nums}
.gallery-open{background:#ff4f31;color:#181815;padding:18px 24px;border-radius:999px;font-size:15px;white-space:nowrap;margin-left:18px}
.gallery-all{position:absolute;z-index:3;right:var(--pad);top:102px;border:0;border-bottom:1px solid currentColor;padding:0 0 8px;font:14px 'Instrument Sans',sans-serif;background:none;cursor:pointer}
.gallery-drag-hint{position:absolute;left:var(--pad);top:155px;font-size:12px;color:#625f57;pointer-events:none}
.spatial-dialog{border:1px solid #18181520;border-radius:30px;background:#f5f2ed;color:#181815;padding:32px;width:min(760px,calc(100% - 32px));max-height:85svh;overflow:auto}
.spatial-dialog::backdrop{background:#181815aa;backdrop-filter:blur(12px)}
.spatial-dialog header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:25px}
.spatial-dialog header h2{font:400 30px/1.1 'Instrument Sans',sans-serif;letter-spacing:-.04em;margin:0}
.spatial-dialog header button{background:#e9e4db;border:0;width:44px;height:44px;border-radius:50%;font-size:24px;cursor:pointer}
.project-index{display:grid;gap:8px}
.project-index a{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:20px;padding:12px;border-radius:18px;background:#ebe7df;text-decoration:none}
.project-index img{width:110px;height:70px;object-fit:contain;border-radius:10px;background:white}
.project-index b{display:block;font-size:20px;font-weight:500}
.project-index small{font-size:13px;color:#625f57}
.discipline-space{background:#ff4f31}
.discipline-space .spatial-stage{padding:90px var(--pad)}
.discipline-space .spatial-top{position:relative;inset:auto;margin-bottom:70px}
.discipline-list{display:grid;gap:45px}
.discipline-list h3{margin:0 0 14px;font-size:44px;letter-spacing:-.04em;font-weight:400}
.discipline-list h3 button{font:inherit;color:inherit;background:none;border:none;text-align:left;padding:0;cursor:pointer}
.discipline-list p{font-size:19px;line-height:1.55;max-width:46ch;margin:0 0 20px}
.discipline-list a{font-size:15px;text-decoration:underline;text-underline-offset:6px}
.discipline-hint{font-size:13px}
.discipline-controls{display:none}
.discipline-space.is-spatial{height:380svh}
.discipline-space.is-spatial .spatial-stage{padding:0}
.discipline-space.is-spatial .spatial-top{position:absolute;left:var(--pad);right:var(--pad);top:95px;margin:0}
.discipline-space.is-spatial .discipline-list{position:absolute;z-index:2;left:var(--pad);bottom:50px;max-width:45%;display:block}
.discipline-space.is-spatial .discipline-list h3{display:none}
.discipline-space.is-spatial .discipline-list article[hidden]{display:none}
.discipline-space.is-spatial .discipline-list p{font-size:19px;line-height:1.4;max-width:40ch}
.discipline-space.is-spatial .discipline-controls{display:flex;position:absolute;z-index:2;right:var(--pad);bottom:55px;gap:18px;flex-wrap:wrap;max-width:48%}
.discipline-controls button{font:15px 'Instrument Sans',sans-serif;border:0;border-bottom:1px solid transparent;background:none;color:#181815;padding:12px 0;cursor:pointer}
.discipline-controls button[aria-pressed=true]{border-color:#181815;font-weight:600}
.process-delivery{margin-top:18px;border:0;border-bottom:1px solid #ffffff70;background:none;color:#fff;padding:10px 0;align-self:start;font:14px 'Instrument Sans',sans-serif;cursor:pointer}
.handover-dialog li{padding:20px 0;border-top:1px solid #18181525;list-style:none}
.handover-dialog ol{padding:0}.handover-dialog h3{font-size:24px;margin:0 0 10px;font-weight:400}.handover-dialog p{font-size:16px;line-height:1.6;color:#625f57}
#postanak.team-editorial{background:#f5f2ed;position:relative;min-height:100svh;isolation:isolate}
#postanak .tm-l{perspective:1600px}
#postanak .tm-k{transform-origin:50% 0}
#partnerstvo-icbl{background:#f5f2ed}
.gsa-home .gsa-home-eu{height:auto;aspect-ratio:605/96}
@media(max-width:700px){
 .spatial-stage{min-height:720px}.spatial-section.is-spatial .spatial-stage{min-height:0}
 .spatial-top{top:90px}.spatial-top h2{font-size:23px;max-width:16ch}.spatial-top a{font-size:12px;white-space:nowrap}
 .spatial-bottom{bottom:45px;align-items:start}.spatial-bottom>p{font-size:20px}.sculpture-controls{gap:10px;font-size:10px;max-width:145px}.sculpture-reset{width:44px;height:44px;font-size:23px;flex-shrink:0}
 .brand-space-fallback{min-height:720px}.brand-space.is-spatial{height:135svh}
 .gallery-caption{bottom:35px;grid-template-columns:1fr;gap:25px}.gallery-caption h3{font-size:43px}.gallery-caption p{font-size:14px}.gallery-actions{gap:12px;justify-content:space-between}.gallery-actions button{width:44px;height:44px;flex-shrink:0}.gallery-open{padding:15px;font-size:13px;margin-left:0}.gallery-actions output{font-size:11px}
 .spatial-gallery.is-spatial .rd-g{top:90px}.spatial-gallery.is-spatial .rd-g h2{font-size:24px;max-width:12ch}.gallery-all{top:92px;font-size:12px}.gallery-drag-hint{top:157px}
 .spatial-gallery.is-spatial{height:430svh}.project-index a{grid-template-columns:75px 1fr auto;gap:12px}.project-index img{width:75px;height:55px}.project-index b{font-size:17px}.project-index small{font-size:11px}
 .discipline-space.is-spatial{height:340svh}.discipline-space.is-spatial .spatial-top{top:90px}.discipline-hint{display:none}.discipline-space.is-spatial .discipline-list{max-width:none;right:var(--pad);bottom:120px}.discipline-space.is-spatial .discipline-list p{font-size:16px;max-width:36ch;margin-bottom:15px}.discipline-space.is-spatial .discipline-controls{left:var(--pad);right:var(--pad);bottom:32px;max-width:none;gap:0;justify-content:space-between}.discipline-controls button{font-size:12px;min-height:44px}
 .discipline-list h3{font-size:38px}.discipline-list p{font-size:17px}
}
@media(prefers-reduced-motion:reduce){.sculpture-controls,.discipline-hint{display:none}.brand-space-fallback img{transform:none}.spatial-canvas{display:none!important}}

/* Short viewports retain the 3D scene, with room reserved for readable controls. */
@media(max-height:720px){
 .spatial-top,.spatial-gallery.is-spatial .rd-g{top:70px}
 .gallery-all{top:74px}.gallery-drag-hint{top:116px}
 .spatial-bottom{bottom:24px}.gallery-caption{bottom:20px;gap:12px}
 .gallery-caption h3{font-size:clamp(28px,4vw,48px);margin-bottom:8px}
 .gallery-caption p{font-size:13px}.gallery-open{padding:14px 18px}
}
@media(max-height:480px){
 .spatial-top,.spatial-gallery.is-spatial .rd-g{top:60px}
 .gallery-all{top:64px}.gallery-drag-hint{top:90px;font-size:10px}
 .gallery-caption{grid-template-columns:1fr auto;bottom:12px;gap:12px}
 .gallery-caption h3{font-size:26px}.gallery-caption p{font-size:11px;max-width:34ch}
 .gallery-actions{gap:8px}.gallery-actions button{width:40px;height:40px}
 .gallery-open{padding:12px;font-size:12px;margin-left:0}
 .spatial-bottom>p{font-size:17px}.spatial-top h2{font-size:21px}
}

/* Ulaz natpisa u #izjava: naslov i donja linija dolaze tek kad se znak spusti,
   umjesto da ulaze kao gola traka odozdo. Vrijednost postavlja brand-journey.js. */
.brand-space .spatial-top,.brand-space .spatial-bottom{
  opacity:var(--spatial-in,1);
  transform:translateY(calc((1 - var(--spatial-in,1)) * 18px));
  transition:none;
}
