/* APN 2026: reforça uma narrativa B2B, técnica e orientada à qualificação. */
.hero { min-height: 100svh; background: #07090a; }
.hero:after { content:""; position:absolute; z-index:1; left:calc(50% - 72px); top:88px; bottom:0; width:150px; background:linear-gradient(90deg,#07090a 0%,rgba(7,9,10,.94) 34%,rgba(7,9,10,0) 100%); pointer-events:none; }
.hero-media { inset: 118px 0 54px 50%; background-size: 100% auto; background-position: center center; background-repeat:no-repeat; background-color:#0b0e10; filter: saturate(.82) contrast(1.03) brightness(.96); border-radius: 28px 0 0 28px; box-shadow:0 30px 90px rgba(0,0,0,.42); }
.hero-overlay { inset: 88px 50% 0 0; background: radial-gradient(circle at 25% 35%,rgba(0,168,232,.08),transparent 36%),#07090a; }
.hero-content { max-width: 1200px; grid-template-columns: minmax(0, 600px); justify-content: start; align-items: center; padding: 132px 0 58px; }
.hero-copy { max-width: 600px; }
.hero h1 { max-width: 600px; font-size: clamp(52px, 4.05vw, 66px); line-height: .91; margin: 23px 0 25px; letter-spacing: -.025em; }
.hero h1 span { display: block; }
.hero h1 em { display: block; margin-top: .08em; color: var(--blue); -webkit-text-stroke: 0; text-shadow: 0 3px 24px rgba(0,0,0,.72); }
.hero .lead { max-width: 520px; font-size: clamp(16px,1.1vw,18px); }
.hero-cta { margin-top: 22px; min-width: 320px; justify-content: space-between; padding: 20px 24px; border-radius: 10px; box-shadow: 0 0 0 0 rgba(0,168,232,.48),0 18px 42px rgba(0,168,232,.18); animation: ctaPulse 2.4s ease-out infinite; }
.hero-disclaimer { display: block; max-width: 650px; margin-top: 14px; color: #879198; font-size: 10px; line-height: 1.45; }
.qualification { max-width: none; display: grid; grid-template-columns: minmax(0,.82fr) minmax(430px,.68fr); align-items: start; gap: clamp(55px,8vw,120px); padding-inline: max(24px,calc((100vw - 1200px)/2)); background: radial-gradient(circle at 14% 20%,#192a34,#0d1215 46%); border-bottom: 1px solid var(--line); }
.qualification-copy { max-width: 620px; padding-top: 30px; }
.qualification-copy>p:not(.eyebrow) { color: #aab4ba; font-size: 16px; line-height: 1.7; max-width: 560px; }
.qualification-points { display: grid; gap: 0; margin-top: 38px; border-top: 1px solid var(--line); }
.qualification-points span { display: grid; grid-template-columns: 38px 1fr; gap: 10px; padding: 16px 0; border-bottom: 1px solid var(--line); color: #c9d1d6; font-size: 13px; }
.qualification-points b { color: var(--blue); font-size: 11px; }
.qualification .lead-card { width: 100%; max-width: 590px; margin-left: auto; border-radius: 18px; overflow: hidden; }
.market-strip { display:block; padding: 42px max(24px,calc((100vw - 1200px)/2)); border: 0; background: linear-gradient(135deg,#07131a,#0b1d27 56%,#081014); }
.market-strip>.market-strip-inner { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; max-width: 1200px; margin: auto; padding:0; border:0; }
.market-strip article { position:relative; min-height: 185px; padding: 28px 30px; display:flex; flex-direction:column; justify-content:flex-end; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.015)); box-shadow:0 18px 45px rgba(0,0,0,.2); transition:transform .35s, border-color .35s, box-shadow .35s; overflow:hidden; }
.market-strip article:before { content:""; position:absolute; inset:auto -35px -55px auto; width:130px; height:130px; border-radius:50%; background:rgba(0,168,232,.11); filter:blur(4px); }
.market-strip article:hover { transform:translateY(-7px); border-color:rgba(0,168,232,.6); box-shadow:0 24px 58px rgba(0,0,0,.38),0 0 28px rgba(0,168,232,.12); }
.market-strip article>span { position:absolute; top:24px; left:28px; color:var(--blue); font:700 11px var(--body); letter-spacing:.12em; }
.market-strip strong { position:relative; color:#fff; font:800 clamp(42px,4vw,60px)/.9 var(--display); text-transform:uppercase; }
.market-strip strong b { font:inherit; }
.market-strip strong i { font:700 .42em var(--display); font-style:normal; letter-spacing:.02em; }
.market-strip small { position:relative; margin-top:12px; color:#9ba8af; font-size:.78rem; line-height:1.35; }
.evidence-grid a b { font-size: clamp(2.55rem, 4vw, 4.1rem); }
.evidence-grid a p { font-size: .9rem; }
.number-card b { font-size: clamp(2.9rem, 4.2vw, 4.8rem); line-height: .9; white-space: normal; }
.number-card p { font-size: .92rem; line-height: 1.55; }
.financial-grid { grid-template-columns: repeat(4, 1fr); }
.financial-grid article { min-height: 250px; display: flex; flex-direction: column; justify-content: flex-end; }
.financial-grid b { letter-spacing: -.035em; }
.financial-grid p { font-size: .88rem; line-height: 1.55; }
.market-evidence,.opportunity,.formats,.profile { max-width:none; padding-inline:max(24px,calc((100vw - 1200px)/2)); }
.market-evidence { background:#07090b; }
.cost-of-stop { max-width:none; padding-inline:max(24px,calc((100vw - 1200px)/2)); background:linear-gradient(180deg,#11191e,#0d1215); }
.opportunity { background:#080b0d; }
.numbers { background:linear-gradient(180deg,#10181d,#0b1013); }
.formats { padding-top: 6rem; background:#07090b; }
.profile { background:linear-gradient(145deg,#10171b,#0b0f12); }
.evidence-grid { gap:18px; border:0; }
.evidence-grid a { border:1px solid var(--line)!important; border-radius:18px; background:#0e1316; box-shadow:0 18px 42px rgba(0,0,0,.18); }
.evidence-grid a>img { height:190px!important; aspect-ratio:auto; object-fit:cover!important; background:#101518; }
.evidence-grid a:nth-child(1)>img { object-position:center 58%; }
.evidence-grid a:nth-child(2)>img { object-position:center 62%; }
.evidence-grid a:nth-child(3)>img { object-position:center 55%; }
.evidence-grid a:nth-child(4)>img { object-position:center 48%; }
.evidence-grid a:hover { border-color:rgba(0,168,232,.55)!important; box-shadow:0 26px 58px rgba(0,0,0,.36),0 0 26px rgba(0,168,232,.1); animation:cardPulse 1.8s ease-in-out infinite; }
.cost-cards { gap:14px; background:transparent; border:0; }
.cost-cards article { border:1px solid var(--line); border-radius:16px; background:#0b1013; box-shadow:0 16px 34px rgba(0,0,0,.18); transition:transform .35s,border-color .35s,box-shadow .35s; }
.cost-cards article:hover { transform:translateX(-6px); border-color:rgba(0,168,232,.5); box-shadow:0 22px 48px rgba(0,0,0,.32),0 0 24px rgba(0,168,232,.1); }
.cost-cards article>img { border-radius:15px 0 0 15px; }
.opportunity-copy,.founder,.number-card,.drv-steps,.format-grid,.profile-cards { border-radius:18px; overflow:hidden; }
.numbers-grid { gap:16px; border:0; }
.numbers-grid article { border:1px solid var(--line); border-radius:16px; background:rgba(255,255,255,.025); transition:transform .35s,border-color .35s; }
.numbers-grid article:hover { transform:translateY(-6px); border-color:rgba(0,168,232,.55); }
.format-grid { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--line); margin-bottom: 2rem; }
.format-grid article { min-height: 270px; padding: 2rem; border-right: 1px solid var(--line); display: flex; flex-direction: column; }
.format-grid article:last-child { border-right: 0; }
.format-grid span,.profile-paths span { color: var(--blue); font: 700 .78rem var(--body); letter-spacing: .12em; }
.format-grid h3 { margin: 1rem 0 .7rem; font: 800 clamp(2.3rem,3.5vw,3.25rem)/.95 var(--display); text-transform: uppercase; }
.format-grid p { margin: 0; color: #c3cbd0; font-size: 1rem; line-height: 1.55; }
.format-grid small { margin-top: auto; padding-top: 1.5rem; color: #7d8990; font-size: .8rem; line-height: 1.45; }
.formats > .primary-button { margin-top: .25rem; }
.profile-paths article { min-height: 225px; }
.profile-paths h3 { margin-top: 1.25rem; }
.journey .eyebrow { max-width: 620px; line-height: 1.45; }
.journey-track { grid-template-columns: repeat(8, 1fr); }
.final-cta h2 { max-width: 940px; }
@keyframes ctaPulse { 0%,100%{box-shadow:0 0 0 0 rgba(0,168,232,.38),0 18px 42px rgba(0,168,232,.18)} 55%{box-shadow:0 0 0 9px rgba(0,168,232,0),0 22px 52px rgba(0,168,232,.32)} }
@keyframes cardPulse { 0%,100%{box-shadow:0 26px 58px rgba(0,0,0,.36),0 0 18px rgba(0,168,232,.08)} 50%{box-shadow:0 30px 66px rgba(0,0,0,.42),0 0 34px rgba(0,168,232,.18)} }
@media (max-width: 900px) {
  .hero:after { display:none; }
  .hero-media { inset:74px 0 auto; height:46vh; border-radius:0 0 22px 22px; background-image:url('fachada-mobile.png'); background-size:cover; background-position:center 20%; }
  .hero-overlay { inset:0; background:linear-gradient(0deg,#080a0b 0%,#080a0b 46%,rgba(8,10,11,.12) 71%,rgba(8,10,11,.42) 100%); }
  .hero-content { display: block; padding: 88px 20px 54px; }
  .hero-copy { padding-top: 39vh; }
  .qualification { display: block; }
  .qualification-copy { padding-top: 0; }
  .qualification .lead-card { max-width: none; margin-top: 44px; }
  .financial-grid { grid-template-columns: 1fr 1fr; }
  .format-grid { grid-template-columns: 1fr; }
  .format-grid article,.format-grid article:last-child { border-right: 0; border-bottom: 1px solid var(--line); min-height: 0; }
  .format-grid article:last-child { border-bottom: 0; }
  .journey-track { grid-template-columns: repeat(8, minmax(125px, 1fr)); }
  .market-strip { padding:32px 20px; }
  .market-strip>.market-strip-inner { grid-template-columns:1fr; }
  .evidence-grid a>img { height:220px!important; }
}
@media (max-width: 520px) {
  .hero-media { background-position: center 16%; filter: saturate(.78) contrast(1.04) brightness(.88); }
  .hero-overlay { background:linear-gradient(0deg,#080a0b 0%,#080a0b 49%,rgba(8,10,11,.18) 72%,rgba(8,10,11,.5) 100%); }
  .hero-content { padding-top: 96px; }
  .hero-copy { padding-top: 30vh; }
  .hero h1 { font-size: clamp(2.65rem, 11.4vw, 3.35rem); line-height: .91; margin: 20px 0 22px; }
  .hero .lead { font-size: 14px; line-height: 1.5; }
  .hero-cta { width: 100%; justify-content: space-between; }
  .qualification { padding-top: 76px; }
  .qualification-copy h2 { font-size: 46px; }
  .qualification-points { margin-top: 28px; }
  .financial-grid { grid-template-columns: 1fr; }
  .financial-grid article { min-height: 210px; }
  .format-grid article { padding: 1.55rem; }
  .format-grid h3 { font-size: 2.6rem; }
  .cost-cards article>img { border-radius:15px 15px 0 0; }
}
@media (min-width:901px) and (max-width:1280px) {
  .hero-content { padding-left:40px; padding-right:40px; }
  .hero-copy { max-width:500px; }
  .hero h1 { max-width:500px; font-size:58px; }
}
@media (prefers-reduced-motion:reduce) { .hero-cta,.evidence-grid a:hover { animation:none; } }
