/* Equal flexible rows center the copy; the footer stays at the bottom.
 * Content remains in flow so short viewports and long copy can grow safely. */
.vernalia-hero { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(min-content,1fr) auto; min-height:100vh; min-height:100svh; width:100%; min-width:0; background:var(--wp--preset--color--blanco); }
.vernalia-hero__visual {
    position:relative; isolation:isolate; display:grid;
    grid-template-columns:minmax(0,1fr); min-width:0;
    grid-template-rows:minmax(4rem,1fr) auto minmax(min-content,1fr);
    padding:clamp(1.5rem,4vh,3rem) clamp(1rem,2.5vw,3rem);
    color:var(--wp--preset--color--blanco); background:var(--wp--preset--color--berenjena);
    gap:clamp(1rem,2vh,1.5rem); box-sizing:border-box;
}
.vernalia-hero__image { position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; z-index:-2; }
.vernalia-hero__visual::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,color-mix(in srgb,var(--wp--preset--color--berenjena) 35%,transparent),color-mix(in srgb,var(--wp--preset--color--berenjena) 20%,transparent) 40%,color-mix(in srgb,var(--wp--preset--color--berenjena) 50%,transparent)); }
.vernalia-hero__content { grid-row:2; margin-block:0; width:100%; min-width:0; }
.vernalia-hero .vernalia-hero__title { color:inherit; font-family:var(--wp--preset--font-family--heading); font-weight:700; font-size:var(--hero-title-size,clamp(3rem,9.5vw,15rem)); line-height:.98; letter-spacing:-.035em; margin:0; text-wrap:balance; white-space:pre-line; overflow-wrap:anywhere; }
.vernalia-hero__description { max-width:38rem; font-size:clamp(1rem,1.6vw,1.75rem); line-height:1.5; margin:clamp(1.25rem,3vw,2.5rem) 0 0; text-wrap:pretty; }
.vernalia-hero .vernalia-hero__button { display:inline-flex; align-items:center; justify-content:center; align-self:center; gap:.75rem; min-height:48px; max-width:100%; padding:.85rem 1.5rem; border:1px solid transparent; border-radius:99px; background:var(--wp--preset--color--blanco); color:var(--wp--preset--color--negro); text-align:center; text-decoration:none; font-family:var(--wp--preset--font-family--body); font-size:1rem; font-weight:400; line-height:1.5; transition:background-color 300ms,color 300ms,box-shadow 300ms; }
.vernalia-hero__button span { min-width:0; overflow-wrap:anywhere; }
.vernalia-hero__button svg { flex:none; width:22px; height:22px; transition:transform 400ms cubic-bezier(.2,.7,.2,1); }
.vernalia-hero__button:focus-visible { outline:3px solid var(--wp--preset--color--blanco); outline-offset:5px; }
.wp-site-blocks > main:has(> .wp-block-post-content > .vernalia-hero:first-child) { padding-top:0!important; margin-block-start:0; }
main:has(> .wp-block-post-content > .vernalia-hero:first-child) > .wp-block-post-title,
main:has(> .wp-block-post-content > .vernalia-hero:first-child) > .wp-block-post-featured-image { display:none; }
main > .wp-block-post-content:has(> .vernalia-hero:first-child), .wp-block-post-content > .vernalia-hero:first-child { margin-block-start:0; }
@media (hover:hover) and (pointer:fine) {
 .vernalia-hero__button:hover { box-shadow:0 8px 24px color-mix(in srgb,var(--wp--preset--color--negro) 20%,transparent); }
 .vernalia-hero__button:hover svg { transform:translateX(4px); }
}
@media (prefers-reduced-motion:reduce) { .vernalia-hero .vernalia-hero__button,.vernalia-hero__button svg { transition:none; } .vernalia-hero__button:hover svg { transform:none; } }

/* Release the post-content wrapper from the page reading-width constraint. */
.wp-site-blocks > main:has(> .wp-block-post-content > .vernalia-hero:first-child) { padding-inline:0; }
main > .wp-block-post-content:has(> .vernalia-hero:first-child) { max-width:none; width:100%; }

/* Center the mobile composition while retaining room for long content. */
@media (max-width:599.98px) {
 .vernalia-hero__visual { padding:max(1.5rem,env(safe-area-inset-bottom)) 1.25rem; }
 .vernalia-hero__content { text-align:center; }
 .vernalia-hero .vernalia-hero__title { max-width:10ch; margin-inline:auto; font-size:var(--hero-title-mobile-size,clamp(3rem,12.5vw,4.5rem)); line-height:.98; }
 .vernalia-hero__description { max-width:30ch; margin:1.25rem auto 0; font-size:clamp(1rem,3.8vw,1.25rem); line-height:1.4; }
}

/* Keep letter/word boxes after the entrance to preserve spacing and wrapping. */
.vernalia-hero__word { display:inline-block; max-width:100%; }
.vernalia-hero__letter { display:inline-block; transform-origin:50% 75%; }
@media (prefers-reduced-motion:reduce) {
 .vernalia-hero__letter { opacity:1!important; transform:none!important; }
}

/* The paragraph itself is the invisible reveal mask; its layout stays fixed. */
.vernalia-hero__description.is-revealing { overflow:clip; }
.vernalia-hero__description-inner { display:block; }
@media (prefers-reduced-motion:reduce) {
 .vernalia-hero__description-inner { transform:none!important; }
}

/* The decoration has its own space, including when text or the button wraps. */
.vernalia-hero__footer { grid-row:3; align-self:end; min-width:0; display:grid; width:100%; gap:1.5rem; align-items:center; }
.vernalia-hero__cta { justify-self:center; min-width:0; max-width:100%; display:flex; flex-direction:column; align-items:center; gap:.65rem; }
.vernalia-hero__note { margin:0; color:var(--wp--preset--color--blanco); font-size:clamp(.75rem,.9vw,.875rem); line-height:1.4; text-align:center; overflow-wrap:anywhere; }
.vernalia-hero__rotating-icon { width:clamp(5rem,12vw,12rem); aspect-ratio:1; justify-self:end; display:grid; place-items:center; color:var(--wp--preset--color--blanco); pointer-events:none; }
.vernalia-hero__rotating-icon > :is(svg,img) { display:block; width:70%; height:70%; object-fit:contain; animation:vernalia-icon-spin var(--hero-icon-duration,20s) linear infinite; }
@keyframes vernalia-icon-spin { to { transform:rotate(360deg); } }
@media (min-width:600px) {
 .vernalia-hero__footer.has-icon { grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(0,1fr); }
 .vernalia-hero__footer.has-icon > .vernalia-hero__cta { grid-column:2; }
 .vernalia-hero__rotating-icon { grid-column:3; max-width:100%; }
}
@media (prefers-reduced-motion:reduce) {
 .vernalia-hero__rotating-icon > :is(svg,img) { animation:none; }
}

/* The message strip closes the block, outside the photo, with no intervening gap. */
.vernalia-hero .vernalia-hero__pills { display:grid; grid-template-columns:minmax(0,1fr); width:100%; min-width:0; list-style:none; padding:0; margin:0; }
.vernalia-hero__pill-item { display:flex; min-width:0; max-width:100%; }
.vernalia-hero__pill { display:flex; align-items:center; justify-content:center; gap:.75rem; width:100%; min-height:64px; padding:1rem clamp(1rem,2vw,2rem); border:0; border-top:1px solid var(--wp--preset--color--berenjena); border-radius:0; color:var(--wp--preset--color--blanco); background:var(--wp--preset--color--blanco); font-size:clamp(.875rem,1.1vw,1.125rem); line-height:1.4; text-align:center; text-decoration:none; }
.vernalia-hero__pill-item:nth-child(2) .vernalia-hero__pill { background:var(--wp--preset--color--terracota); }
.vernalia-hero__pill-item:nth-child(3) .vernalia-hero__pill { background:var(--wp--preset--color--arcilla); }
.vernalia-hero__pill svg { width:24px; height:24px; flex:none; }
.vernalia-hero__pill > span { min-width:0; overflow-wrap:anywhere; }
.vernalia-hero a.vernalia-hero__pill:hover { text-decoration:underline; text-underline-offset:.2em; }
.vernalia-hero a.vernalia-hero__pill:focus-visible { outline:3px solid var(--wp--preset--color--berenjena); outline-offset:-5px; }
@media (min-width:782px) {
 .vernalia-hero .vernalia-hero__pills { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .vernalia-hero__pill-item:not(:first-child) { border-left:1px solid var(--wp--preset--color--berenjena); }
 .vernalia-hero__pills:has(> :only-child) { grid-template-columns:minmax(0,1fr); }
 .vernalia-hero__pills:has(> :nth-child(2):last-child) { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Reserve first-screen space for the closing messages on wide, short viewports. */
.vernalia-hero__pill-item:first-child .vernalia-hero__pill { background:var(--wp--preset--color--salvia); }
@media (min-width:600px) {
 .vernalia-hero .vernalia-hero__title { font-size:min(var(--hero-title-size,clamp(3rem,9.5vw,15rem)),clamp(3rem,12svh,9rem)); }
 .vernalia-hero__visual { padding-block:clamp(1rem,2.5svh,2rem); gap:clamp(.75rem,1.5svh,1.25rem); }
 .vernalia-hero__rotating-icon { width:min(clamp(5rem,12vw,12rem),16svh); }
}
