/* PRANIS v2.0.0-beta1.4 image architecture and replaceable placeholders */
.pranis-page-hero--image{background-position:var(--pranis-hero-position,center center)}
.pranis-page-hero--placeholder{position:relative;min-height:clamp(440px,58vw,680px);display:flex;align-items:flex-end;overflow:hidden;background:linear-gradient(135deg,#071f43 0%,#0b4c71 58%,#d9c9ad 100%);color:#fff}
.pranis-page-hero--placeholder .pranis-page-hero__overlay{display:block;position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(2,18,42,.91),rgba(2,18,42,.46) 58%,rgba(2,18,42,.1))}
.pranis-page-hero__placeholder-media{position:absolute;z-index:1;right:clamp(1rem,6vw,7rem);top:50%;width:min(42vw,580px);transform:translateY(-42%);opacity:.82}
.pranis-page-hero--placeholder .pranis-page-hero__content{z-index:3}
.pranis-page-hero--placeholder h1,.pranis-page-hero--placeholder p{color:#fff}
.pranis-image-placeholder{min-height:280px;display:flex;flex-direction:column;justify-content:flex-end;gap:.5rem;padding:clamp(1.4rem,3vw,2.4rem);border:1px dashed rgba(255,255,255,.52);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.04)),radial-gradient(circle at 78% 20%,rgba(100,221,230,.38),transparent 28%);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.pranis-image-placeholder__status{font-size:.7rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#8be7ed}
.pranis-image-placeholder strong{max-width:22ch;font:700 clamp(1.15rem,2vw,1.65rem)/1.15 var(--serif)}
.pranis-image-placeholder small{max-width:34ch;color:rgba(255,255,255,.72)}
.pranis-visual-story{padding:clamp(2rem,5vw,5rem) 0 clamp(4rem,8vw,8rem)}
.pranis-visual-story .pranis-shell{display:grid;gap:clamp(3rem,7vw,7rem)}
.pranis-visual-row{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:clamp(2rem,6vw,6rem);align-items:center;margin:0}
.pranis-visual-row--reverse{grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr)}
.pranis-visual-row--reverse .pranis-visual-media,.pranis-visual-row--reverse>.pranis-image-placeholder{order:2}
.pranis-visual-row figcaption{max-width:650px}
.pranis-visual-row figcaption h2{margin:.45rem 0 .8rem}
.pranis-visual-media{position:relative;overflow:hidden;border-radius:22px;background:#eef4f6;box-shadow:0 18px 44px rgba(3,37,71,.12)}
.pranis-visual-media--editorial{aspect-ratio:4/3;max-width:720px;width:100%}
.pranis-visual-media img{width:100%;height:100%;display:block;object-fit:cover;object-position:var(--pranis-image-position,center center)}
.pranis-visual-row>.pranis-image-placeholder{min-height:340px;color:var(--navy);border-color:rgba(10,74,111,.34);background:linear-gradient(145deg,#eef6f7,#f9f4ea),radial-gradient(circle at 78% 20%,rgba(29,143,171,.18),transparent 28%);box-shadow:0 18px 44px rgba(3,37,71,.08)}
.pranis-visual-row>.pranis-image-placeholder .pranis-image-placeholder__status{color:var(--ocean)}
.pranis-visual-row>.pranis-image-placeholder small{color:#5f7182}
.pranis-portrait-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.2rem,3vw,2rem);margin:clamp(2rem,5vw,4rem) 0}
.pranis-portrait-grid figure{margin:0}
.pranis-portrait-media{aspect-ratio:4/5;overflow:hidden;border-radius:22px;background:#eef4f6;box-shadow:0 16px 36px rgba(3,37,71,.1)}
.pranis-portrait-media .pranis-image-placeholder{height:100%;min-height:0;color:var(--navy);border-color:rgba(10,74,111,.34);background:linear-gradient(145deg,#edf6f7,#f8f1e7)}
.pranis-portrait-media .pranis-image-placeholder__status{color:var(--ocean)}
.pranis-portrait-media .pranis-image-placeholder small{color:#657383}
.pranis-portrait-grid figcaption{padding:.8rem .2rem 0;text-align:center;color:var(--navy)}
.pranis-tech-panel__media{margin:.8rem 0 1.2rem}
.pranis-tech-panel__media .pranis-visual-media--technical,.pranis-tech-panel__media .pranis-image-placeholder{aspect-ratio:4/3;min-height:0;border-radius:18px}
.pranis-tech-panel__media .pranis-image-placeholder{color:var(--navy);border-color:rgba(10,74,111,.32);background:linear-gradient(145deg,#edf5f7,#faf4e9)}
.pranis-tech-panel__media .pranis-image-placeholder__status{color:var(--ocean)}
.pranis-tech-panel__media .pranis-image-placeholder small{color:#657383}
.pranis-page--technical .pranis-content-stage>.wp-block-image.pranis-editorial-image{max-width:720px;margin:2rem auto 3rem}
.pranis-page--technical .pranis-content-stage>.wp-block-image.pranis-editorial-image img{width:100%;max-height:520px;object-fit:cover;object-position:center 42%;border-radius:22px;box-shadow:0 18px 44px rgba(3,37,71,.12)}
@media(max-width:820px){
 .pranis-page-hero__placeholder-media{right:1rem;top:46%;width:min(50vw,420px);opacity:.52}
 .pranis-visual-row,.pranis-visual-row--reverse{grid-template-columns:1fr}
 .pranis-visual-row--reverse .pranis-visual-media,.pranis-visual-row--reverse>.pranis-image-placeholder{order:0}
 .pranis-portrait-grid{grid-template-columns:1fr}
 .pranis-portrait-grid figure{max-width:440px;width:100%;margin-inline:auto}
}
@media(max-width:560px){
 .pranis-page-hero__placeholder-media{width:66vw;right:-12vw;top:42%;opacity:.38}
 .pranis-image-placeholder{min-height:240px}
 .pranis-visual-row>.pranis-image-placeholder{min-height:280px}
}
