/* Horizonte: entrada por enquadramento, profundidade fotográfica e capítulos empilhados. */
:root{--paper-grain:url('/assets/paper-grain.svg')}
body,.site-header,.contact-section,.site-footer,.city-card,.philosophy-copy,.blog-featured{background-image:var(--paper-grain);background-size:256px 256px}
.hero-photo>img{animation:none;transform:translate3d(0,var(--parallax-y,0px),0);height:calc(100% + 72px);margin-top:-36px}
.philosophy-photo>img{height:calc(100% + 72px);top:-36px;transform:translate3d(0,var(--parallax-y,0px),0)}
.parallax-live>img{will-change:transform}
.launches{padding-bottom:var(--layout-section)}
.launch-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(40px,9vw,144px);align-items:end;margin-bottom:64px}
.launch-heading h2{font:500 clamp(48px,4.8vw,72px)/1.04 var(--font-display);letter-spacing:-.03em;max-width:20ch}
.launch-heading h2 em{display:block;font-size:1em}
.launch-heading>p{font-size:16px;line-height:1.85;color:var(--ink-muted);max-width:43ch}
.launch-stack{position:relative;padding-bottom:40px}
.launch-panel{position:sticky;top:32px;display:flex;flex-direction:column;min-height:clamp(540px,78svh,820px);border-radius:16px;overflow:hidden;background:var(--color-forest);color:var(--color-paper);transform:scale(var(--stack-scale,1));transform-origin:50% 0;isolation:isolate}
.launch-panel:nth-child(2){top:56px;margin-top:96px}.launch-panel:nth-child(3){top:80px;margin-top:96px}
.launch-panel:focus-within{z-index:5;outline:3px solid var(--color-clay);outline-offset:5px}
.launch-visual{position:absolute;inset:0;overflow:hidden;z-index:-2}
.launch-visual img{height:calc(100% + 112px);width:100%;margin-top:-56px;object-fit:cover;transform:translate3d(0,var(--parallax-y,0px),0);filter:brightness(calc(1 - var(--stack-dim,0)))}
.launch-shade{position:absolute;inset:0;background:linear-gradient(180deg,#14261cb3 0%,#14261cab 45%,#14261cf0 100%);z-index:-1}
.launch-topline{display:flex;justify-content:space-between;gap:24px;padding:32px 40px;font-size:13px;line-height:1.5}
.launch-topline>span:first-child{border-bottom:1px solid #fffdf88c;padding-bottom:8px;align-self:start}
.launch-topline>span:last-child{text-align:right}
.launch-center{position:relative;flex:1;min-height:290px;padding:24px 40px 40px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:32px}
.launch-center h3{font:500 clamp(46px,6vw,88px)/1.02 var(--font-display);letter-spacing:-.03em;max-width:22ch;text-wrap:balance}
.launch-center .button{background:var(--color-paper);color:var(--color-forest);border:0;min-height:54px}
.launch-facts{position:relative;display:flex;flex-wrap:wrap;margin-top:auto;padding:0 40px 36px;gap:48px;align-items:end;font-size:12px;line-height:1.8}
.launch-facts strong{font-size:16px;font-weight:500}.launch-project-link{margin-left:auto;text-align:right}
.launch-awaiting{display:grid;grid-template-columns:1.15fr 1fr;background:var(--color-sage);border-radius:16px;overflow:hidden;min-height:440px}
.launch-awaiting-image{overflow:hidden;position:relative;min-height:440px}
.launch-awaiting-image img{position:absolute;inset:-36px 0 0;height:calc(100% + 72px);object-fit:cover;object-position:35% center;transform:translate3d(0,var(--parallax-y,0px),0)}
.launch-awaiting-copy{padding:56px 48px;align-self:center;background-image:var(--paper-grain)}
.launch-awaiting-copy h3{font:500 clamp(34px,3.1vw,48px)/1.08 var(--font-display);letter-spacing:-.025em}
.launch-awaiting-copy p{font-size:15px;line-height:1.9;margin:24px 0;color:var(--color-forest);max-width:45ch}
.launch-awaiting-copy small{display:block;font-size:11px;color:var(--ink-muted);margin-top:24px}
.launch-detail-meta{display:flex;flex-wrap:wrap;gap:12px 32px;font-size:14px;color:var(--ink-muted);margin-top:20px}
.launch-detail-meta strong{color:var(--color-forest);font-weight:500}
.launch-card-tag{background:var(--color-forest);color:var(--color-paper)}
@media(max-width:900px){.launch-heading{gap:40px}.launch-heading>p{font-size:15px}.launch-topline{padding:28px}.launch-facts{padding-inline:28px;gap:24px}.launch-project-link{display:none}.launch-awaiting{grid-template-columns:1fr 1fr}.launch-awaiting-copy{padding:36px 28px}.launch-awaiting-copy h3{font-size:36px}}
@media(max-width:700px){.launch-heading{display:block;margin-bottom:36px}.launch-heading h2{font-size:46px}.launch-heading>p{margin-top:24px;font-size:15px}.launch-panel{top:20px;min-height:540px;border-radius:12px}.launch-panel:nth-child(2){top:32px;margin-top:48px}.launch-panel:nth-child(3){top:44px;margin-top:48px}.launch-topline{padding:24px;display:block;font-size:12px}.launch-topline>span{display:block;width:fit-content}.launch-topline>span:last-child{text-align:left;margin-top:12px}.launch-center{min-height:260px;padding:20px 24px 36px;gap:24px}.launch-center h3{font-size:clamp(40px,10vw,60px)}.launch-center .button{font-size:12px;padding-inline:18px;gap:16px}.launch-facts{padding:0 24px 28px;gap:16px;justify-content:space-between;font-size:11px}.launch-facts>span{min-width:0;max-width:50%}.launch-facts strong{font-size:14px;overflow-wrap:anywhere}.launch-awaiting{grid-template-columns:1fr}.launch-awaiting-image{min-height:300px}.launch-awaiting-copy{padding:36px 28px 40px}.launch-awaiting-copy h3{font-size:38px}.launch-detail-meta{display:block}.launch-detail-meta span{display:block;margin-top:12px}}
@media(max-width:360px){.launch-heading h2{font-size:40px}.launch-center{padding-inline:20px}.launch-center h3{font-size:40px}.launch-center .button{font-size:11px;gap:12px}.launch-topline{padding:20px}.launch-facts{padding-inline:20px}.launch-awaiting-copy{padding:28px 24px}.launch-awaiting-copy h3{font-size:34px}}
@media(max-height:600px) and (max-width:1000px){.launch-panel,.launch-panel:nth-child(2),.launch-panel:nth-child(3){position:relative;top:auto;height:auto;margin-top:24px;transform:none}}
@media(prefers-reduced-motion:reduce){.hero-photo>img,.philosophy-photo>img,.launch-visual img,.launch-awaiting-image img{transform:none;will-change:auto}.launch-panel,.launch-panel:nth-child(2),.launch-panel:nth-child(3){position:relative;top:auto;margin-top:24px;transform:none}.launch-visual img{filter:none}}

.launch-panel.media-compact{max-width:1024px;margin-inline:auto}
.launch-facts>span{min-width:0}.launch-facts strong{overflow-wrap:anywhere}
@media(max-width:900px) and (min-width:701px){.launch-center{padding-inline:28px}}
@media(max-height:650px){.launch-panel,.launch-panel:nth-child(2),.launch-panel:nth-child(3){position:relative;top:auto;min-height:540px;margin-top:24px;transform:none}}
