body[data-page="home"] .hero { height:80vh; min-height:560px; }
body[data-page="home"] .hero-slide::after { background:linear-gradient(90deg,rgba(0,0,0,.42) 0,rgba(0,0,0,.16) 43%,rgba(0,0,0,0) 72%); }
body[data-page="home"] .hero-content { left:max(calc((100vw - var(--content))/2),70px); bottom:auto; top:50%; transform:translateY(-50%); width:min(900px,64vw); padding:30px 34px; text-shadow:0 6px 42px rgba(0,0,0,.8); }
body[data-page="home"] .hero-title { font-size:clamp(36px,3.4vw,50px); }

.home-intro { padding:60px 0; background:#fff; }
.home-intro-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:56px; }
.home-intro-copy .section-title { font-size:31px; margin-bottom:18px; }
.home-intro-copy .copy { color:#6b6b6b; font-size:13px; line-height:1.6; }
.home-intro-image { min-height:350px; background:center / cover no-repeat; border-radius:100px 0 100px 0; }

.home-parallax { min-height:350px; background-position:center; background-size:cover; background-repeat:no-repeat; background-attachment:fixed; position:relative; }
.home-parallax::after { content:""; position:absolute; inset:0; background:rgba(0,0,0,.5); }
.home-parallax--story { background-image:url('../images/empresa/estrutura.jpg'); }

.service-overview { padding:50px 0; text-align:left; }
.services-heading { display:grid; grid-template-columns:.85fr 1.15fr; align-items:start; gap:70px; }
.service-overview .eyebrow-title { font-size:54px; }
.service-overview .copy { max-width:none; margin:8px 0 0; color:#777; font-size:15px; line-height:1.55; }
.service-format-grid { gap:55px; margin-top:34px; }
.service-format { min-height:0; padding:0; color:var(--ink); text-align:center; background:none !important; overflow:visible; }
.service-format::before { content:""; display:block; position:static; width:46px; height:53px; margin:0 auto 22px; background:url('../images/icons/servico-padrao.svg') center / contain no-repeat; }
.service-format > * { position:static; }
.service-icon { display:none; }
.service-format h3 { font-size:19px; margin:0 0 8px; }
.service-format p { color:#777; font-size:15px; line-height:1.45; }

body[data-page="home"] .solutions { padding:62px 0 58px; }
body[data-page="home"] .solutions-grid { grid-template-columns:.72fr 1.28fr; gap:64px; }
body[data-page="home"] .solutions .eyebrow-title { font-size:48px; }
body[data-page="home"] .solutions-intro .copy { color:#777; font-size:14px; line-height:1.55; }
body[data-page="home"] .accordion { border-color:#70b7d4; }
body[data-page="home"] .accordion-item { border-color:#70b7d4; }
body[data-page="home"] .accordion-button { position:relative; min-height:58px; padding:14px 52px; justify-content:center; gap:16px; font-size:24px; line-height:1.15; text-align:center; }
body[data-page="home"] .accordion-title { display:block; max-width:100%; }
body[data-page="home"] .accordion-button span { position:absolute; right:20px; }
body[data-page="home"] .accordion-button .accordion-title { position:static; }
body[data-page="home"] .accordion-panel { text-align:left; color:#777; font-size:14px; line-height:1.5; }
body[data-page="home"] .accordion-copy { padding:14px 8px 2px; }

.home-budget { min-height:200px; display:flex; align-items:center; padding:38px 0; background-image:url('../images/home/hero-projetos.jpg'); background-position:center; background-size:cover; background-attachment:fixed; }
.home-budget::before { background:rgba(0,0,0,.7); }
.home-budget .section-title { font-size:29px; margin-bottom:17px; }

body[data-page="home"] .cases { padding:0; background:#000; }
.cases-heading { background:var(--blue); color:#fff; padding:43px 0 27px; }
.cases-heading .container { display:grid; grid-template-columns:.75fr 1.25fr; align-items:end; gap:80px; }
.cases-heading .eyebrow-title { font-size:54px; }
.cases-heading p { margin:0 0 7px; font-size:12px; }
body[data-page="home"] .event-grid { margin:0; gap:0; grid-template-columns:repeat(3,1fr); }
body[data-page="home"] .case-card { min-height:450px; padding:30px; }
body[data-page="home"] .case-card::after { background:linear-gradient(0deg,rgba(0,0,0,.74),rgba(0,0,0,.02) 62%); }
body[data-page="home"] .case-card:hover { transform:none; }
body[data-page="home"] .case-card h3 { font-size:22px; text-align:center; }
body[data-page="home"] .case-card p { text-align:center; }
body[data-page="home"] .case-card > div { width:100%; }

.home-contact { padding:58px 0 66px; background:#fff; }
.home-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.home-contact-intro .section-title { font-size:54px; }
.home-contact-intro img { width:100%; height:220px; object-fit:cover; object-position:center; border-radius:100px 0 100px 0; }
.home-contact .contact-form-wrap { padding:0; }
.home-contact .form-grid { gap:8px; }
.home-contact .field { padding:10px 12px; border-color:#258ebc; border-radius:10px 0 10px 0; font-size:12px; }
.home-contact textarea.field { min-height:112px; }
.home-contact .form-actions { margin-top:9px; }

.instagram-section { padding:70px 0 78px; background:#f1f5f7; }
.instagram-heading { display:grid; grid-template-columns:.8fr 1.2fr; align-items:end; gap:70px; margin-bottom:34px; }
.instagram-kicker { margin:0 0 8px; color:var(--blue); font-size:13px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.instagram-heading .section-title { margin:0; font-size:46px; }
.instagram-heading > div:last-child { max-width:620px; }
.instagram-heading p { color:#666; }
.instagram-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:14px; }
.instagram-button { margin:0; }
.instagram-nav-group { display:flex; gap:7px; }
.instagram-nav { display:grid; place-items:center; width:42px; height:42px; padding:0 0 3px; border:1px solid #a8c6d3; border-radius:50%; background:#fff; color:var(--blue); font:500 28px/1 Montserrat,sans-serif; cursor:pointer; transition:background .2s ease,color .2s ease,transform .2s ease; }
.instagram-nav:hover { background:var(--blue); color:#fff; transform:translateY(-1px); }
.instagram-rail { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 32px)/3); align-items:start; gap:16px; padding:2px 2px 14px; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scroll-behavior:smooth; overscroll-behavior-inline:contain; scrollbar-width:thin; scrollbar-color:#8ab6c9 transparent; }
.instagram-embed { min-width:0; scroll-snap-align:start; }
.instagram-embed .instagram-media { width:100% !important; min-width:0 !important; max-width:100% !important; margin:0 !important; border:0 !important; border-radius:24px 0 24px 0 !important; box-shadow:0 12px 32px rgba(0,48,74,.12) !important; overflow:hidden !important; }
.instagram-loading { grid-column:1/-1; min-height:180px; display:grid; place-items:center; margin:0; padding:30px; border:1px dashed #8ab6c9; border-radius:32px 0 32px 0; color:#58707b; text-align:center; }
.instagram-loading a { color:var(--blue); font-weight:700; }

@media (max-width:1050px) {
  body[data-page="home"] .hero-content { left:45px; }
  .home-intro-grid { gap:40px; }
  .service-format-grid { gap:30px; }
  .instagram-rail { grid-auto-columns:calc((100% - 16px)/2); }
}

@media (max-width:720px) {
  body[data-page="home"] .hero { height:68vh; min-height:520px; }
  body[data-page="home"] .hero-content { left:22px; width:calc(100% - 44px); padding:24px 28px; bottom:auto; }
  body[data-page="home"] .hero-title { font-size:30px; }
  .home-intro { padding:50px 0; }
  .home-intro-grid,.services-heading,body[data-page="home"] .solutions-grid,.cases-heading .container,.home-contact-grid { grid-template-columns:1fr; gap:30px; }
  .home-intro-image { min-height:280px; }
  .home-intro--reverse .home-intro-image { order:2; }
  .home-parallax { min-height:260px; background-attachment:scroll; }
  .service-overview .eyebrow-title,body[data-page="home"] .solutions .eyebrow-title,.cases-heading .eyebrow-title,.home-contact-intro .section-title { font-size:38px; }
  .service-format-grid { grid-template-columns:1fr; gap:42px; margin-top:24px; }
  .service-overview .copy,body[data-page="home"] .solutions-intro .copy { font-size:14px; }
  body[data-page="home"] .solutions { padding:50px 0; }
  body[data-page="home"] .accordion-button { min-height:54px; padding:13px 42px; font-size:18px; line-height:1.2; }
  body[data-page="home"] .accordion-button span { right:14px; }
  body[data-page="home"] .event-grid { grid-template-columns:1fr; }
  body[data-page="home"] .case-card { min-height:380px; }
  .home-budget { background-attachment:scroll; }
  .home-contact .form-grid { grid-template-columns:1fr; }
  .home-contact .form-grid .wide { grid-column:auto; }
  .instagram-section { padding:54px 0 60px; }
  .instagram-heading { grid-template-columns:1fr; gap:20px; }
  .instagram-heading .section-title { font-size:36px; }
  .instagram-actions { align-items:stretch; }
  .instagram-button { flex:1 1 auto; }
  .instagram-rail { grid-auto-columns:min(92%,360px); gap:12px; }
}
