/* Ultima Voxa Hero 1.2.0 — Sitewide autumn gradient */
:root{
    --uv-title-size: clamp(56px, 10vw, 128px);
    --uv-sub-size: clamp(18px, 3vw, 28px);
    --uv-title-weight: 900; --uv-sub-weight: 600;
    --uv-padding: min(6vw, 48px);
    --uv-text:#0b1b3a; --uv-accent:#0b1b3a;

    --uv-autumn-amber: .75;
    --uv-autumn-orange: .58;
    --uv-autumn-blue: .34;
}

/* SITEWIDE BACKGROUND */
body.uvh-sitewide-bg{ background: transparent !important; }
body.uvh-sitewide-bg::before{
    content:""; position: fixed; inset: 0; z-index: -1; pointer-events:none;
    background:
        radial-gradient(1300px 650px at 18% 8%, rgba(255, 208, 132, var(--uv-autumn-amber)), rgba(255, 208, 132, 0) 60%),
        radial-gradient(1000px 520px at 84% 28%, rgba(255, 176, 106, var(--uv-autumn-orange)), rgba(255, 176, 106, 0) 62%),
        radial-gradient(900px 900px at 50% 90%, rgba(173, 208, 255, var(--uv-autumn-blue)), rgba(173, 208, 255, 0) 62%),
        linear-gradient(180deg, #ffffff 0%, #fff2cc 40%, #ffffff 100%);
    background-attachment: fixed, fixed, fixed, fixed;
    will-change: transform;
}
body.uvh-sitewide-bg .site,
body.uvh-sitewide-bg .wp-site-blocks,
body.uvh-sitewide-bg main,
body.uvh-sitewide-bg .content-area,
body.uvh-sitewide-bg .entry-content,
body.uvh-sitewide-bg .wp-block-group{ background: transparent !important; }

/* Overlays et animation */
html.uvih-lock, body.uvih-lock { overflow: hidden; }

/* Overlay transparent (on s'appuie sur le sitewide) */
.uvih-overlay{
    position: fixed; inset: 0;
    background: transparent;
    z-index: 2147483647; pointer-events:none;
}
.uvih-center{ pointer-events:auto; position:absolute; top:50%; left:50%; transform:translate(-50%,-46%) scale(0.96);
    text-align:center; padding:var(--uv-padding); opacity:0;
    transition: opacity 2000ms ease, transform 2000ms ease, top 3000ms ease, left 3000ms ease, padding 3000ms ease; }
.uvih-overlay.reveal .uvih-center{ opacity:1; transform:translate(-50%,-50%) scale(1); }
.uvih-overlay.to-top .uvih-center{ top:0; left:50%; transform:translate(-50%,0) scale(1); padding:10px var(--uv-padding); width:100%; max-width:1200px; }

.uvih-title, .uvih-subtitle{ margin:0; color:var(--uv-text); line-height:1.05; letter-spacing:0.01em; text-shadow: none; }
.uvih-title{ font-size:var(--uv-title-size); font-weight:var(--uv-title-weight); }
.uvih-subtitle{ margin-top: clamp(8px,2vw,16px); font-size:var(--uv-sub-size); font-weight:var(--uv-sub-weight); opacity:.95; }

.uvih-cta-block{ display:none; padding:12px 0 6px; }
.uvih-cta-block.show{ display:block; }
.uvih-cta-inner{ text-align:center; }
.uvih-button{ display:inline-block; padding:10px 18px; border-radius:999px; background:#fff; border:1px solid rgba(15,23,42,0.14);
    box-shadow:0 2px 10px rgba(0,0,0,.06); color:var(--uv-accent); text-decoration:none; font-weight:600; letter-spacing:.02em;
    transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease, background-color 120ms ease; }
.uvih-button:hover{ transform:translateY(-1px); border-color:rgba(15,23,42,.22); box-shadow:0 6px 16px rgba(0,0,0,.08); background-color:#fbfdff; }
