/*
 * Le voile n'a AUCUN fond par defaut : la famille `background` l'ecrit
 * elle-meme. Le degrade qui vivait ici ne pouvait PAS etre retire depuis le
 * panneau — `Group_Control_Background` n'ecrit que ce qu'on lui regle, jamais
 * `background-image`, et la cascade tranche propriete par propriete : une
 * couleur reglee transparente laissait le degrade peint par-dessus. Mesures :
 * hero-voile.spec.ts.
 */
.ivy-hero--plein { position:relative; display:grid; min-height:var(--ivy-hero-min-height,100vh); overflow:hidden; background:var(--ivy-deep,rgb(27 30 28)); color:var(--ivy-on-deep,rgb(255 255 255)); isolation:isolate; }
.ivy-hero--plein .ivy-hero__media,.ivy-hero--plein .ivy-hero__overlay { position:absolute; z-index:-2; inset:-5%; }
.ivy-hero--plein .ivy-hero__overlay { z-index:-1; }
.ivy-hero--plein .ivy-hero__image { display:block; width:100%; height:100%; object-fit:cover; }
.ivy-hero--plein .ivy-hero__inner { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); align-items:end; gap:24px; width:min(100%,1400px); min-height:inherit; margin-inline:auto; padding:clamp(80px,10vh,96px) clamp(20px,6vw,96px) clamp(48px,8vh,88px); }
.ivy-hero--plein .ivy-hero__content { grid-column:1 / span 8; max-width:900px; }
.ivy-hero--plein .ivy-hero__eyebrow { display:block; margin-bottom:20px; padding-inline-start:14px; border-inline-start:1px solid var(--ivy-line-deep,rgb(255 255 255 / 28%)); color:var(--ivy-eyebrow-color,var(--ivy-accent-on-deep,rgb(218 221 207))); font-size:var(--ivy-font-label); font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.ivy-hero--plein .ivy-hero__title { margin:0; color:var(--ivy-title-color,var(--ivy-on-deep,rgb(255 255 255))); line-height:.93; letter-spacing:-.055em; }
.ivy-hero--plein .ivy-hero__text { max-width:46ch; margin:28px 0 0; color:var(--ivy-text-color,var(--ivy-on-deep-muted,rgb(238 239 233))); font-size:var(--ivy-font-lead); line-height:1.55; }
.ivy-hero--plein .ivy-hero__actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
:where( .ivy-hero--plein ) .ivy-hero__cta { display:inline-flex; min-height:44px; align-items:center; padding:.85em 1.45em; border:1px solid var(--ivy-cta-border-color,var(--ivy-accent-on-deep,rgb(218 221 207))); background:var(--ivy-cta-background-color,var(--ivy-accent-on-deep,rgb(218 221 207))); color:var(--ivy-cta-color,var(--ivy-deep,rgb(27 30 28))); font-size:var(--ivy-font-body); font-weight:700; text-decoration:none; transition:transform 180ms cubic-bezier(.23,1,.32,1),background-color 180ms ease,color 180ms ease; }
:where( .ivy-hero--plein ) .ivy-hero__cta.ivy-hero__cta--secondary { border-color:var(--ivy-cta_secondary-border-color,var(--ivy-line-deep,rgb(255 255 255 / 42%))); background:var(--ivy-cta_secondary-background-color,transparent); color:var(--ivy-cta_secondary-color,var(--ivy-on-deep,rgb(255 255 255))); }
:where( .ivy-hero--plein ) .ivy-hero__cta:hover,:where( .ivy-hero--plein ) .ivy-hero__cta:focus-visible { transform:translateY(-2px); }
:where( .ivy-hero--plein ) .ivy-hero__cta:active { transform:scale(.97); }
:where( .ivy-hero--plein ) .ivy-hero__cta:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
.ivy-hero--plein .ivy-hero__scroll-hint { grid-column:12; align-self:end; justify-self:end; min-width:44px; min-height:44px; padding:0; border:0; appearance:none; background:transparent; color:var(--ivy-scroll_hint-color,var(--ivy-accent-on-deep,rgb(218 221 207))); cursor:pointer; font:inherit; font-size:var(--ivy-font-label); line-height:1; text-decoration:none; }
@media(max-width:640px){.ivy-hero--plein .ivy-hero__inner{grid-template-columns:1fr;padding:80px 20px 40px}.ivy-hero--plein .ivy-hero__content{grid-column:1;max-width:none}.ivy-hero--plein .ivy-hero__text{max-width:34ch;margin-top:22px}.ivy-hero--plein .ivy-hero__actions{margin-top:28px}.ivy-hero--plein .ivy-hero__scroll-hint{display:none}}
@media(prefers-reduced-motion:reduce){:where( .ivy-hero--plein ) .ivy-hero__cta{transition:none}}

/* L'image suit le rayon de son cadre — media-rayon.spec.ts. */
.ivy-hero--plein .ivy-hero__media img { border-radius: inherit; }
