/* Alencar, Alberto e Associados — folha única do site. Tokens conforme o manual de marca v1. */
@font-face{font-family:'Manrope';font-style:normal;font-weight:300;font-display:swap;src:url('fonts/manrope-latin-300-normal.woff2') format('woff2');}
@font-face{font-family:'Manrope';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/manrope-latin-700-normal.woff2') format('woff2');}
@font-face{font-family:'Manrope';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/manrope-latin-800-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/inter-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/inter-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/inter-latin-600-normal.woff2') format('woff2');}
:root{
    /* tokens do manual de marca — não alterar sem revisão */
    --canvas:#E6E9EA;
    --paper:#FFFFFF;
    --deep:#0E3743;
    --deep2:#1F5A6B;
    --sand:#C9A462;
    --sand-lt:#DCBE84;
    --ink:#15242A;
    --mute:#6E7B80;
    --hair:#D2D8DA;
    --hair-soft:#E4E8E9;
    --body-txt:#41525A;

    --display:'Manrope','Segoe UI',system-ui,Arial,sans-serif;
    --util:'Inter','Helvetica Neue',Arial,sans-serif;

    --pad:clamp(20px,5vw,56px);
    --maxw:1060px;
  }

  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    background:var(--canvas);color:var(--ink);
    font-family:var(--util);font-size:17.5px;line-height:1.68;font-weight:400;
    -webkit-font-smoothing:antialiased;padding-bottom:64px;
  }
  img{max-width:100%;display:block}
  a{color:var(--ink)}
  .wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
  .narrow{max-width:70ch}

  h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;line-height:1.15;font-weight:700}
  h1{font-size:clamp(28px,5.2vw,46px);font-weight:800;line-height:1.08;color:var(--deep)}
  h2{font-size:clamp(23px,3.4vw,32px);color:var(--deep)}
  h3{font-size:18.5px;line-height:1.3;font-weight:700;color:var(--deep)}
  p + p{margin-top:14px}

  .kicker{
    font-family:var(--util);font-size:11px;font-weight:500;letter-spacing:.24em;
    text-transform:uppercase;color:var(--mute);
  }

  /* ---------- cabeçalho ---------- */
  .masthead{background:var(--paper);border-bottom:1px solid var(--hair)}
  .masthead .wrap{display:flex;justify-content:space-between;align-items:center;gap:18px;
    padding-top:20px;padding-bottom:20px;flex-wrap:wrap}
  /* assinatura principal: 60px de altura = 144px de largura, acima da redução mínima de 120px */
  .masthead svg{display:block;height:60px;width:auto}
  @media(max-width:520px){.masthead svg{height:52px}.masthead .wrap{padding-top:16px;padding-bottom:16px}}
  .masthead .contact{font-size:12.5px;letter-spacing:.06em;color:var(--mute);text-transform:uppercase}
  .masthead .contact a{text-decoration:none;color:var(--deep);border-bottom:1px solid var(--hair)}
  .masthead .contact a:hover{border-bottom-color:var(--sand);color:var(--deep2)}

  /* navegação principal — vale para todas as páginas do site */
  .nav{border-top:1px solid var(--hair-soft)}
  .nav ul{list-style:none;display:flex;gap:28px;overflow-x:auto;scrollbar-width:none}
  .nav ul::-webkit-scrollbar{display:none}
  .nav a{display:block;padding:13px 0;font-size:12px;font-weight:500;letter-spacing:.16em;
    text-transform:uppercase;color:var(--mute);text-decoration:none;white-space:nowrap;
    border-bottom:2px solid transparent}
  .nav a:hover{color:var(--deep)}
  .nav a[aria-current="page"]{color:var(--deep);border-bottom-color:var(--sand)}

  /* ---------- abertura em petróleo ---------- */
  .opening{background:var(--deep);border-bottom:none}
  .opening .wrap{padding-top:clamp(46px,7vw,78px);padding-bottom:clamp(44px,6vw,66px)}
  .opening .kicker{color:var(--sand-lt)}
  .opening h1{margin:16px 0 0;max-width:19ch;color:#fff}
  .opening .lead{margin-top:22px;max-width:60ch;font-size:clamp(17px,2.2vw,20px);color:#BDD0D7}
  .opening .lead b{color:#fff;font-weight:600}

  /* atalhos para os assuntos mais procurados */
  .shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
  .shortcuts a{
    display:inline-block;padding:10px 16px;border:1.5px solid var(--sand-lt);color:var(--sand-lt);
    font-size:14px;font-weight:500;text-decoration:none;transition:background .15s ease,color .15s ease}
  .shortcuts a:hover{background:var(--sand-lt);color:var(--deep)}

  /* aviso emoldurado pelo par de colchetes — uso previsto no manual */
  .framed{position:relative;margin-top:32px;padding:20px 34px;max-width:64ch}
  .framed p{font-size:15px;color:#9FBAC2;margin:0}
  .framed .bk{position:absolute;top:0;height:100%;width:20px}
  .framed .bk.l{left:0}
  .framed .bk.r{right:0}

  /* ---------- sumário ---------- */
  .toc{background:var(--canvas);border-bottom:1px solid var(--hair)}
  .toc .wrap{padding-top:30px;padding-bottom:30px}
  .toc ol{list-style:none;counter-reset:t;margin-top:16px;display:grid;gap:1px;
    background:var(--hair);border:1px solid var(--hair)}
  @media(min-width:720px){.toc ol{grid-template-columns:repeat(2,1fr)}}
  @media(min-width:1000px){.toc ol{grid-template-columns:repeat(3,1fr)}}
  .toc li{background:var(--canvas);counter-increment:t}
  .toc a{display:flex;gap:12px;padding:14px 16px;text-decoration:none;font-size:15.5px;
    line-height:1.35;align-items:baseline;color:var(--ink)}
  .toc a::before{content:counter(t,decimal-leading-zero);font-size:11px;font-weight:600;
    letter-spacing:.1em;color:var(--sand);flex:none}
  .toc a:hover{background:var(--paper);color:var(--deep)}

  /* ---------- guia ---------- */
  .guide{padding-top:clamp(44px,6vw,72px);padding-bottom:clamp(10px,2vw,18px)}
  .sec{padding-bottom:clamp(40px,6vw,64px);border-bottom:1px solid var(--hair);margin-bottom:clamp(40px,6vw,64px)}
  .sec:last-of-type{border-bottom:none;margin-bottom:0}
  .sec-num{font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--sand)}
  .sec h2{margin:10px 0 18px;max-width:24ch}
  .sec p{color:var(--body-txt)}

  .law{display:block;margin-top:20px;padding:15px 17px;background:var(--paper);
    border-left:2px solid var(--sand);font-size:14.5px;color:var(--body-txt);max-width:66ch}
  .law b{font-family:var(--util);font-size:10.5px;font-weight:600;letter-spacing:.2em;
    text-transform:uppercase;color:var(--deep);display:block;margin-bottom:6px}

  .deflist{margin-top:24px;display:grid;gap:1px;background:var(--hair);border:1px solid var(--hair)}
  @media(min-width:760px){.deflist{grid-template-columns:repeat(2,1fr)}}
  .deflist div{background:var(--paper);padding:20px 20px 22px}
  .deflist h3{margin-bottom:7px}
  .deflist p{font-size:15.5px}

  .checklist{margin-top:22px;list-style:none;border-top:1px solid var(--hair)}
  .checklist li{padding:13px 0 13px 30px;border-bottom:1px solid var(--hair);position:relative;
    font-size:16px;color:var(--body-txt)}
  .checklist li::before{content:"";position:absolute;left:2px;top:19px;width:10px;height:10px;
    border:1.5px solid var(--sand)}
  .checklist li b{color:var(--deep);font-weight:600}

  .timeline{margin-top:26px}
  .tl{display:grid;grid-template-columns:92px 1fr;gap:18px;padding:18px 0;border-top:1px solid var(--hair)}
  .tl:last-child{border-bottom:1px solid var(--hair)}
  .tl .when{font-size:11.5px;font-weight:600;letter-spacing:.12em;color:var(--sand);padding-top:5px}
  .tl h3{font-size:17px;margin-bottom:5px}
  .tl p{font-size:15.5px}

  .helpgrid{margin-top:24px;display:grid;gap:1px;background:var(--hair);border:1px solid var(--hair)}
  @media(min-width:700px){.helpgrid{grid-template-columns:repeat(2,1fr)}}
  .helpgrid div{background:var(--paper);padding:18px 20px}
  .helpgrid h3{font-size:16px;margin-bottom:6px}
  .helpgrid p{font-size:15px;color:var(--body-txt)}

  /* faixa de conteúdo em petróleo — usada nos prazos */
  .band-deep{background:var(--deep);padding-top:clamp(46px,6.5vw,74px);padding-bottom:clamp(46px,6.5vw,74px)}
  .band-deep .sec{border-bottom:none;padding-bottom:0;margin-bottom:0}
  .band-deep .sec-num{color:var(--sand-lt)}
  .band-deep h2,.band-deep h3{color:#fff}
  .band-deep p{color:#AFC4CB}
  .band-deep .tl{border-top-color:#1E4A57}
  .band-deep .tl:last-child{border-bottom-color:#1E4A57}
  .band-deep .tl .when{color:var(--sand-lt)}
  .band-deep .law{background:rgba(255,255,255,.05);border-left-color:var(--sand-lt);color:#AFC4CB}
  .band-deep .law b{color:#fff}

  /* selo de encerramento do guia — colchete isolado */
  .seal{display:flex;justify-content:center;padding:44px 0 6px}
  .seal svg{width:26px;height:26px;opacity:.6}

  /* ---------- escritório ---------- */
  .office{background:var(--paper);border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);
    padding-top:clamp(44px,6vw,68px);padding-bottom:clamp(44px,6vw,68px)}
  .office .intro{display:flex;gap:18px;align-items:flex-start}
  .office .intro .avatar{flex:none}
  .partners{display:grid;gap:26px;margin-top:34px}
  @media(min-width:720px){.partners{grid-template-columns:1fr 1fr;gap:34px}}
  .partner{display:grid;grid-template-columns:104px 1fr;gap:20px;align-items:start}
  .partner .photo{width:104px;aspect-ratio:4/5;background:var(--canvas);overflow:hidden;
    border:1px solid var(--hair)}
  .partner .photo img{width:100%;height:100%;object-fit:cover;object-position:center 22%}
  .partner h3{font-size:17.5px}
  .partner .oab{font-size:11px;font-weight:500;letter-spacing:.18em;color:var(--mute);
    text-transform:uppercase;margin-top:5px}
  .partner .rule{width:52px;height:1.6px;background:var(--sand);margin:12px 0}
  .partner p{font-size:15px;color:var(--body-txt)}

  /* ---------- perguntas ---------- */
  .faq{margin-top:28px;border-top:1px solid var(--hair)}
  .faq details{border-bottom:1px solid var(--hair)}
  .faq summary{list-style:none;cursor:pointer;padding:18px 40px 18px 0;position:relative;
    font-family:var(--display);font-weight:700;font-size:17px;line-height:1.35;color:var(--deep)}
  .faq summary::-webkit-details-marker{display:none}
  .faq summary::after{content:"+";position:absolute;right:6px;top:15px;font-size:20px;
    font-weight:400;color:var(--sand)}
  .faq details[open] summary::after{content:"–"}
  .faq .answer{padding:0 6px 20px 0;color:var(--body-txt);font-size:16px;max-width:68ch}

  /* ---------- contato ---------- */
  .contact-sec{background:var(--deep2);border-top:none;
    padding-top:clamp(44px,6vw,68px);padding-bottom:clamp(44px,6vw,68px)}
  .contact-grid{display:grid;gap:34px;align-items:start}
  @media(min-width:900px){.contact-grid{grid-template-columns:1fr 1fr;gap:52px}}
  .contact-intro .kicker{color:var(--sand-lt)}
  .contact-intro h2{color:#fff}
  .contact-intro p{color:#CFE0E5;margin-top:14px;max-width:44ch}
  .contact-intro .ways{margin-top:24px;font-size:15.5px;color:#CFE0E5}
  .contact-intro .ways a{color:#fff;border-bottom:1px solid rgba(255,255,255,.32);text-decoration:none}
  .contact-intro .ways a:hover{color:var(--sand-lt);border-bottom-color:var(--sand-lt)}

  form{background:var(--paper);border:1px solid var(--hair);padding:26px clamp(18px,3vw,30px) 30px}
  form .kicker{display:block;padding-bottom:12px;border-bottom:1px solid var(--hair)}
  .field{margin-top:20px}
  .field label{display:block;font-size:10.5px;font-weight:600;letter-spacing:.2em;
    text-transform:uppercase;color:var(--mute);margin-bottom:7px}
  .field label b{color:var(--deep);font-weight:600}
  .field input,.field select,.field textarea{
    width:100%;font-family:var(--util);font-size:16.5px;color:var(--ink);background:transparent;
    border:none;border-bottom:1px solid var(--hair);padding:8px 2px;border-radius:0}
  .field textarea{resize:vertical;min-height:80px;line-height:1.5}
  .field input:focus,.field select:focus,.field textarea:focus{
    outline:none;border-bottom-color:var(--sand);box-shadow:0 1px 0 0 var(--sand)}
  .field select{appearance:none;
    background-image:linear-gradient(45deg,transparent 50%,var(--deep2) 50%),linear-gradient(135deg,var(--deep2) 50%,transparent 50%);
    background-position:calc(100% - 13px) 17px,calc(100% - 8px) 17px;background-size:6px 6px;background-repeat:no-repeat}
  .consent{display:flex;gap:10px;align-items:flex-start;margin-top:24px;font-size:13.5px;
    color:var(--body-txt);line-height:1.5}
  .consent input{margin-top:3px;width:17px;height:17px;flex:none;accent-color:var(--deep)}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--display);
    font-weight:700;font-size:15.5px;letter-spacing:-.01em;padding:14px 22px;border:1.5px solid var(--deep);
    background:var(--deep);color:var(--paper);cursor:pointer;text-decoration:none;border-radius:0;
    transition:background .15s ease,color .15s ease}
  .btn:hover{background:var(--deep2);border-color:var(--deep2)}
  .btn-line{background:transparent;color:var(--deep)}
  .btn-line:hover{background:var(--deep);color:var(--paper);border-color:var(--deep)}
  .btn-full{width:100%;margin-top:24px}
  .form-note{margin-top:12px;font-size:12.5px;color:var(--mute);text-align:center;line-height:1.5}
  .sent{display:none;padding:22px 2px}
  .sent.on{display:block}
  .sent h3{font-size:19px}
  .sent p{margin-top:10px;color:var(--body-txt);font-size:15.5px}
  .sent a{display:inline-block;margin-top:16px}

  /* ---------- rodapé ---------- */
  .footer{background:var(--deep);color:#9FBAC2;font-size:14.5px;line-height:1.65}
  .footer .wrap{padding-top:44px;padding-bottom:44px}
  .footer .sig{margin-bottom:34px}
  .footer .sig svg{height:52px;width:auto;display:block}
  .footer-grid{display:grid;gap:26px}
  @media(min-width:640px){.footer-grid{grid-template-columns:1fr 1fr}}
  @media(min-width:900px){.footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
  .footer h4{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--sand-lt);
    margin-bottom:11px;font-weight:600}
  .footer a{color:#9FBAC2;text-decoration:none}
  .footer a:hover{color:#fff}
  .footer strong{color:#fff;font-weight:600}
  .footer .legal{margin-top:32px;padding-top:20px;border-top:1px solid #1E4A57;font-size:12.5px;
    color:#7C97A1;max-width:80ch}
  .sources{margin-top:14px;font-size:10.5px;letter-spacing:.14em;color:#6C8792;line-height:1.9;text-transform:uppercase}

  /* ---------- barra discreta ---------- */
  .bar{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--deep);
    border-top:2px solid var(--sand);padding:11px var(--pad);display:flex;align-items:center;
    justify-content:space-between;gap:14px}
  .bar .who{display:flex;align-items:center;gap:11px;min-width:0}
  .bar .who svg{flex:none}
  .bar .who span{color:#BDD0D7;font-size:13.5px;line-height:1.35}
  .bar .btn{padding:11px 18px;font-size:14.5px;flex:none;background:#fff;color:var(--deep);border-color:#fff}
  .bar .btn:hover{background:var(--sand-lt);border-color:var(--sand-lt);color:var(--deep)}
  @media(max-width:600px){.bar .who span{display:none}.bar .btn{flex:1}}
  @media(min-width:1000px){body{padding-bottom:0}.bar{display:none}}

  .reveal{opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .5s ease}
  .reveal.in{opacity:1;transform:none}
  @media(prefers-reduced-motion:reduce){
    .reveal{opacity:1;transform:none;transition:none}
    html{scroll-behavior:auto}
  }
  :focus-visible{outline:2px solid var(--sand);outline-offset:3px}
