/* Alcantara Coelho & Alabi Advogados Associados — site estático
   Cores e medidas seguem o template original (Sparky / ET Law). */

@font-face{font-family:"Encode Sans Expanded";font-style:normal;font-weight:300;font-display:swap;src:url("../fonts/encode-sans-expanded-300.woff2") format("woff2")}
@font-face{font-family:"Encode Sans Expanded";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/encode-sans-expanded-400.woff2") format("woff2")}
@font-face{font-family:"Encode Sans Expanded";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/encode-sans-expanded-700.woff2") format("woff2")}

:root{
  --gold:#d6a15b;          /* dourado da marca */
  --gold-hover:#cc9b4b;
  --gold-ink:#a8741f;      /* dourado mais escuro, para texto sobre branco */
  --brown-ink:#7a4e0f;     /* título dos cartões (legível sobre o fundo dourado claro) */
  --ink:#333;
  --black-row:#222;
  --menu-dark:#1c1c1c;
  --box1:#fedb96;
  --box2:#fec878;
  --footer:#333;
  --linkedin:#007bb5;
  --font:"Encode Sans Expanded",Arial,Helvetica,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fff;font:400 14px/1.7 var(--font);overflow-x:hidden}
img{max-width:100%;height:auto;border:0}
a{color:var(--gold);text-decoration:none}
a:hover{color:var(--gold-hover)}
p{margin:0 0 15px}
h1,h2,h3,h4{margin:0;color:var(--ink);line-height:1.4;text-transform:uppercase;font-weight:400}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

.skip-link{position:absolute;left:-9999px;top:0;z-index:1000;background:#fff;color:var(--ink);padding:10px 16px}
.skip-link:focus{left:10px;top:10px}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.container{width:100%;max-width:100%;margin:0 auto;padding:0 15px}
@media(min-width:768px){.container{max-width:750px}}
@media(min-width:992px){.container{max-width:970px}}
@media(min-width:1140px){.container{max-width:1110px}}

/* ---------- Cabeçalho e menu ---------- */
.site-header{position:sticky;top:0;z-index:89;background:#fff;border-bottom:1px solid var(--gold);box-shadow:0 1px 5px rgba(0,0,0,.15);transition:background .2s}
.site-header.is-compact{background:rgba(255,255,255,.92)}
.header-inner{display:flex;align-items:center;flex-wrap:wrap;padding:0 0 0 10px;min-height:80px}
.site-header.is-compact .header-inner{min-height:60px}
.brand{display:block;flex:0 0 auto;line-height:0}
.brand img{display:block;width:249px;height:55px}

.nav-toggle{display:none;margin:0 15px 0 auto;width:44px;height:36px;padding:0;border:0;background:none;cursor:pointer}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{display:block;width:28px;height:3px;background:var(--ink);content:"";position:relative;margin:0 auto;transition:transform .2s}
.nav-toggle span::before{position:absolute;top:-9px;left:0}
.nav-toggle span::after{position:absolute;top:9px;left:0}

.main-nav{margin-left:auto;padding-right:30px}
.menu{display:flex;margin:0;padding:0;list-style:none}
.menu>li{position:relative}
.menu>li>a{display:block;padding:0 18px;font-size:17px;line-height:80px;text-transform:uppercase;color:var(--ink);white-space:nowrap;transition:color .2s}
.site-header.is-compact .menu>li>a{line-height:60px}
.menu>li>a:hover,.menu>li:hover>a,.menu>li>a:focus-visible{color:var(--gold-hover)}

.submenu{display:none;position:absolute;top:100%;left:0;z-index:100;margin:0;padding:12px;list-style:none;background:var(--menu-dark);border:1px solid #333;min-width:210px;width:max-content}
.submenu a{display:block;padding:0 18px;font-size:15px;line-height:36px;color:#fff;white-space:nowrap}
.submenu a:hover,.submenu a:focus-visible{color:var(--gold)}
.has-sub:hover>.submenu,.has-sub:focus-within>.submenu,.has-sub.open>.submenu{display:block}

@media(min-width:992px) and (max-width:1199px){
  .brand img{width:200px;height:auto}
  .main-nav{padding-right:8px}
  .menu>li>a{padding:0 8px;font-size:13px}
  .submenu a{font-size:14px}
}
@media(min-width:1200px) and (max-width:1365px){
  .main-nav{padding-right:10px}
  .menu>li>a{padding:0 10px;font-size:15px}
  .submenu a{font-size:15px}
}
@media(min-width:1366px) and (max-width:1599px){
  .main-nav{padding-right:20px}
  .menu>li>a{padding:0 14px;font-size:16px}
}

@media(max-width:991px){
  .nav-toggle{display:block}
  .main-nav{display:none;flex:0 0 100%;margin:0;padding:0 0 10px}
  .main-nav.is-open{display:block}
  .menu{flex-direction:column}
  .menu>li>a,.site-header.is-compact .menu>li>a{line-height:44px;padding:0 20px;font-size:17px}
  .submenu{position:static;display:none;border:0;padding:4px 0;width:auto;min-width:0}
  .has-sub:hover>.submenu,.has-sub:focus-within>.submenu{display:none}
  .has-sub.open>.submenu{display:block}
  .submenu a{padding:0 30px;font-size:16px}
}

/* ---------- Slider ---------- */
.hero{position:relative;overflow:hidden;aspect-ratio:1366/539;background:#ddd}
.hero .slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity 1s cubic-bezier(.86,0,.07,1),visibility 0s linear 1s}
.hero .slide.is-active{opacity:1;visibility:visible;transition-delay:0s}
.hero .slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0}
.hero .arrow{position:absolute;top:53%;transform:translateY(-50%);z-index:2;width:35px;height:35px;padding:0;border:0;background:none;cursor:pointer;opacity:0;transition:opacity .3s}
.hero:hover .arrow,.hero .arrow:focus-visible{opacity:1}
.hero .prev{left:2.1%}
.hero .next{right:2.1%}
.hero .arrow img{display:block;width:35px;height:35px}
@media(max-width:767px){.hero{aspect-ratio:16/10}}
@media(hover:none){.hero .arrow{opacity:.85}}

/* ---------- Blocos da home ---------- */
.page-row{margin:50px 0}
.black-row{margin:50px 0;padding:30px 0;background:var(--black-row);color:#fff;text-align:center}
.areas-line{margin:0;padding:15px 0;font-size:18.67px;font-weight:300;letter-spacing:3px;text-transform:uppercase;line-height:1.4;color:#fff}
.areas-line a{color:var(--gold)}
.areas-line a:hover{color:#f0e1c9}
.areas-line .dash{color:var(--gold)}
.black-row .btn-wrap{margin:24px 0 0}

.btn{display:inline-block;padding:10px 30px;border:2px solid var(--gold);background:transparent;color:var(--gold);font:inherit;font-size:14px;line-height:1.7;letter-spacing:3px;text-transform:uppercase;text-align:center;cursor:pointer;transition:all .3s}
.btn:hover,.btn:focus-visible{background:var(--gold);color:#fff}

.cards{display:flex;margin:0}
.card{flex:1 1 0;min-width:0;padding:50px}
.card--1{background:var(--box1)}
.card--2{background:var(--box2)}
.card-title{display:block;margin:0 0 24px;text-align:center;font-size:18.67px;font-weight:400;line-height:1.4;text-transform:none;letter-spacing:0}
.card-title a{color:var(--brown-ink)}
.card-title a:hover{color:#4d3208}
.card p{margin:0;text-align:left}
@media(max-width:767px){.cards{flex-direction:column}}

.intro h1{padding:15px 0;font-size:24px;letter-spacing:3px}
.headline{margin:-15px 0 0;padding-bottom:30px;font:italic 18px/1.7 Arial,Helvetica,sans-serif}
.intro p.just,.prose p.just{text-align:justify}

/* ---------- Páginas internas ---------- */
.page-main{padding:50px 0}
.page-title{padding:15px 0;font-size:36px;letter-spacing:4px}
.prose{margin-top:30px}
.prose p{margin:0 0 24px;text-align:left}
@media(max-width:550px){.page-title{font-size:28px;letter-spacing:3px}}

.provisional{margin:0 0 24px;padding:12px 16px;border:2px dashed #c0392b;background:#fff6f5;color:#8a2c20;font-size:13px}

/* Mapa da página de contato */
.map-section{margin:20px 0 0}
.map-wrap{height:400px;background:#eee}
.map-wrap iframe{display:block;width:100%;height:100%;border:0}
.map-link{margin:10px 0 0;text-align:right;font-size:13px}
.map-link a{color:var(--gold-ink)}
@media(max-width:767px){.map-wrap{height:320px}}

/* Notícias */
.news-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 30px;margin-top:30px}
.news-item h2{margin:0 0 .3em;font-size:18px;font-weight:700;letter-spacing:3px;line-height:normal;color:var(--gold-ink)}
.news-date{display:block;font-size:.9em;color:#666}
.news-intro{margin:.7em 0 0;font-size:.9em}
@media(max-width:991px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.news-grid{grid-template-columns:1fr}}

/* ---------- Rodapé ---------- */
.bottom-row{margin:70px 0 90px}
.bottom-row .container{display:flex;align-items:flex-start}
.contact-info{flex:0 0 41.6667%;padding-right:15px}
.contact-form-col{flex:0 0 58.3333%}
.foot-title{margin:0 0 30px;padding:15px 0;font-size:36px;letter-spacing:3px;line-height:1.4}
.contact-info address{margin:0 0 15px;font-style:normal}
.contact-info h3{display:flex;align-items:center;gap:10px;padding:15px 0;font-size:18px;letter-spacing:3px}
.contact-info h3 img{width:18px;height:18px}
.contact-info a{color:var(--ink)}
.contact-info a:hover{color:var(--gold)}
@media(max-width:991px){
  .bottom-row .container{flex-direction:column}
  .contact-info,.contact-form-col{flex:0 0 auto;width:100%;padding-right:0}
  .foot-title{font-size:30px}
}

.contact-form .form-row{display:flex;gap:25px}
.contact-form .field{flex:1;min-width:0}
.contact-form input[type=text],.contact-form input[type=email]{display:block;width:100%;margin:0 0 30px;padding:20px 10px;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:transparent;color:var(--ink);font:inherit}
.contact-form textarea{display:block;width:100%;margin:0 0 30px;padding:10px;border:1px solid var(--ink);border-radius:0;background:transparent;color:var(--ink);font:inherit;resize:vertical}
.contact-form ::placeholder{color:#999;opacity:1}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--gold)}
.contact-form .actions{display:flex;justify-content:space-between;align-items:flex-start;gap:25px}
.contact-form .antispam{flex:0 0 206px}
.contact-form .antispam input{margin-bottom:0}
.contact-form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media(max-width:550px){
  .contact-form .form-row,.contact-form .actions{flex-direction:column;gap:0}
  .contact-form .antispam{flex:0 0 auto;margin-bottom:30px}
  .contact-form .btn{width:100%}
}

.social-row{display:flex;align-items:center;min-height:150px}
.social-link{display:flex;align-items:center;justify-content:center;width:max(8.3333%,100px);min-height:150px;background:var(--linkedin)}
.social-link img{display:block;width:50px;height:50px;transition:transform .3s}
.social-link:hover img,.social-link:focus-visible img{transform:scale(1.4)}

.copyright-row{padding:30px;background:var(--footer);color:#fff;text-align:center}
.copyright-row p{margin:0}

.back-top{position:fixed;right:25px;bottom:25px;z-index:90;display:flex;align-items:center;justify-content:center;width:60px;height:60px;opacity:0;pointer-events:none;transition:opacity .3s}
.back-top.show{opacity:1;pointer-events:auto}
.back-top svg{width:32px;height:32px;fill:var(--gold)}

/* Mensagens do formulário / 404 */
.notice{max-width:640px;margin:0 auto;padding:80px 15px;text-align:center}
.notice h1{margin-bottom:20px;font-size:28px;letter-spacing:3px}
.notice img{display:block;margin:0 auto 40px}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hero .slide{transition:none}
}
