/* Editorial section headlines share the existing "Sites que representam" scale.
   The large Home manifesto before the astronaut keeps its own scale. */
:root{--ideal-editorial-headline:clamp(48px,6.1vw,110px)}
#home-hero-title.ideal-hero-headline,#studio-hero-title.ideal-hero-headline,#home-reel-title,#home-featured-title,#ideal-services-title,#ideal-studio #about-capability-title,#estudio .v7-section-head>h2{font-size:var(--ideal-editorial-headline)}
#home-hero-title.ideal-hero-headline,#studio-hero-title.ideal-hero-headline{font-family:Aeonik,Arial,sans-serif;font-weight:400;font-synthesis:none;line-height:1.16;letter-spacing:-.04em;text-transform:none}
#home-hero-title.ideal-editorial-headline,#studio-hero-title.ideal-editorial-headline{display:block;width:100%;text-align:center}
:is(#home-hero-title,#studio-hero-title) .ideal-hero-line{display:block;width:100%;white-space:normal}
:is(#home-hero-title,#studio-hero-title) .ideal-hero-line+.ideal-hero-line{margin-top:.12em}
:is(#home-hero-title,#studio-hero-title) .ideal-hero-fragment{display:block;max-width:100%;font-size:1em;white-space:normal;flex-basis:auto;text-wrap:balance}
:is(#home-hero-title,#studio-hero-title) .ideal-headline-cover{position:relative;display:inline-block;vertical-align:middle;flex:none;width:1.5em;height:auto;aspect-ratio:16/9;margin:-.08em .08em .05em;line-height:0;letter-spacing:0;white-space:normal;perspective:800px}
:is(#home-hero-title,#studio-hero-title) .ideal-headline-cover img{display:block;width:100%;height:100%;aspect-ratio:16/9;object-fit:cover;object-position:center;border:2px solid #fff;border-radius:.12em;box-shadow:0 .08em .16em -.08em #10131b70;transform:rotate(-4deg)}
@media(max-width:812px){
 :root{--ideal-editorial-headline:11vw}
 :is(#home-hero-title,#studio-hero-title) .ideal-hero-fragment:first-child{font-size:1em;flex-basis:auto}
 :is(#home-hero-title,#studio-hero-title) .ideal-headline-cover{width:1.35em;border-radius:.12em}
}

/* The supplied descriptions follow the Studio profile copy, without changing copy/layout. */
:root{--ideal-description-size:clamp(19px,1.5vw,28px);--ideal-description-color:var(--ideal-ink,#10131b)}
#home-hero .ideal-hero-description,#ideal-studio-stage .ideal-hero-description,#home-reel-desc,#home-featured-disclaimer,#ideal-services .is93-intro,#ideal-studio-process .v7-section-head>p,#estudio .v7-studio-copy>p{font-size:var(--ideal-description-size);color:var(--ideal-description-color);font-weight:400;line-height:1.45;letter-spacing:-.017em}
#home-featured-disclaimer{text-transform:none}
/* Only hero eyebrows disappear; section overlines and their animation hooks remain. */
#home-hero .ideal-hero-eyebrow,#ideal-studio-stage .ideal-hero-eyebrow{display:none}
#home-hero.ideal-hero-v9,#ideal-studio-stage.ideal-hero-v9{padding-top:clamp(131px,calc(12vw - 24px),206px)}
@media(max-width:812px){
 :root{--ideal-description-size:21px}
 #home-hero.ideal-hero-v9{padding-top:139px}
 #ideal-studio-stage.ideal-hero-v9{padding-top:104px}
}
@media(max-width:480px){
 #home-hero.ideal-hero-v9{padding-top:116px}
 #ideal-studio-stage.ideal-hero-v9{padding-top:96px}
}

/* Reserve the relative travel of the title and the shared copy/CTA parallax group. */
#home-reel-content{margin-top:max(32px,7.5svh)}

/* Mobile Studio motion: both lines start left; the clock moves only the second line. */
@media(max-width:812px){
 #home-reel-title-inner{display:block;width:100%}
 #home-reel-title-inner>div{width:100%;white-space:nowrap;overflow:hidden;padding:var(--ideal-text-bleed-top) var(--ideal-text-bleed-x) var(--ideal-text-bleed-bottom);margin:calc(-1 * var(--ideal-text-bleed-top)) calc(-1 * var(--ideal-text-bleed-x)) calc(-1 * var(--ideal-text-bleed-bottom))}
 #home-reel-title-line-1{padding-left:var(--ideal-text-bleed-x);text-align:left}
 #home-reel-title-line-2{width:max-content;max-width:100%;text-align:left}
 #home-goal-texts .home-goal-texts-paragraph{font-size:var(--ideal-description-size)}
}

@media(max-width:812px){#home-reel-content{margin-top:max(32px,12.5svh)}}

/* The Studio opening fills the mobile viewport before the blue covering section begins. */
@media(max-width:812px){#ideal-studio-stage.ideal-hero-v9{min-height:max(100svh,calc(var(--vh,1vh)*100))}}

/* Equal spacing remains active on both heroes. */
:is(#home-hero,#ideal-studio-stage){--ideal-hero-copy-gap:clamp(28px,3vw,52px)}
:is(#home-hero,#ideal-studio-stage) .ideal-hero-description{margin-block:var(--ideal-hero-copy-gap) 0}
:is(#home-hero,#ideal-studio-stage) .ideal-hero-actions{margin-block:var(--ideal-hero-copy-gap) 0}
