/* Banner institucional: retrato e mensagem em uma composição única. */
.hero{min-height:720px}
.hero-photo{inset:0;background-image:url('assets/hero-owner-v3.png');background-position:center top;opacity:1}
.hero-shade{background:linear-gradient(90deg,#071f29 0%,rgba(7,31,41,.94) 25%,rgba(7,31,41,.58) 44%,rgba(7,31,41,.03) 69%),linear-gradient(0deg,#071f29 0%,transparent 24%)}
.hero-inner{padding-top:84px;padding-bottom:126px}
.hero h1{max-width:680px;font-size:clamp(44px,4.55vw,68px);line-height:1.1;letter-spacing:-.052em}
.hero-inner>p{max-width:450px;line-height:1.75;margin-top:26px;color:#c4d5db}
.hero-actions{margin-top:30px}
.hero-note{margin-top:31px}
.hero-caption{right:5%;bottom:105px;max-width:330px;background:#08242ccc;border-color:#ffffff30;font-size:8px}
@media(min-width:1600px){.hero-photo{background-size:cover;background-position:center 24%}.hero-inner{padding-top:100px;padding-bottom:145px}}
@media(min-width:761px) and (max-width:1100px){.hero h1{font-size:50px;max-width:510px}.hero-photo{background-position:60% top}.hero-inner>p{max-width:370px}.hero-shade{background:linear-gradient(90deg,#071f29 0%,#071f29e8 27%,#071f2966 57%,transparent 78%),linear-gradient(0deg,#071f29,transparent 28%)}.hero-caption{right:32px;max-width:280px}}
@media(max-width:760px){
 .hero{display:flex;flex-direction:column;min-height:0;padding-bottom:65px}
 .hero-inner{order:1;padding-top:43px;padding-bottom:19px}
 .hero h1{font-size:clamp(35px,10.3vw,48px);line-height:1.12;max-width:100%}
 .hero-inner>p{max-width:100%;font-size:14px;margin-top:22px}
 .hero-actions{margin-top:25px;gap:20px}
 .hero-note{margin-top:25px}
 .hero-photo{order:2;position:relative;inset:auto;height:350px;flex:none;margin-top:0;background-size:auto 100%;background-position:right top;opacity:1}
 .hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#071f29 0%,transparent 17%,transparent 76%,#071f29 100%)}
 .hero-shade{display:none}
 .hero-caption{display:none}
 .hero-bottom{padding-top:17px;padding-bottom:17px}
 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .service-card{min-width:0;overflow-wrap:anywhere}
}
@media(max-width:360px){
 .hero h1{font-size:clamp(29px,10vw,34px)}
 .service-grid{grid-template-columns:1fr}
 .service-card{min-height:230px}
 .steps{grid-template-columns:1fr}
 .segment-panel{padding:22px}
}
