  :root{
    --branco:#ffffff;
    --bege:#ebe0ce;
    --azul-petroleo:#344852;
    --azul-noturno:#031e2f;
    --grafite:#2a2a2a;
    --bege-suave:rgba(235,224,206,0.08);
    --bege-borda:rgba(235,224,206,0.18);
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    font-family:'Inter',sans-serif;
    background:var(--azul-petroleo);
    color:var(--bege);
    line-height:1.7;
    overflow-x:hidden;
  }
  h1,h2,h3,h4{font-family:'Cormorant Garamond',serif;font-weight:500;letter-spacing:0.5px}

  /* ========= NAVBAR ========= */
  .navbar{
    position:fixed;top:0;left:0;width:100%;
    padding:18px 6%;
    z-index:1000;
    background:rgba(3,30,47,0.0);
    backdrop-filter:blur(0px);
    transition:all 0.4s ease;
  }
  .navbar.scrolled{
    background:rgba(3,30,47,0.95);
    backdrop-filter:blur(12px);
    padding:14px 6%;
    box-shadow:0 4px 30px rgba(0,0,0,0.3);
  }
  .nav-container{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}
  .nav-logo{display:flex;align-items:center;color:var(--bege);text-decoration:none}
  .nav-logo .logo-full{height:54px;width:auto;display:block}
  .nav-logo .logo-mono{height:48px;width:auto;display:none}
  .nav-menu{display:flex;gap:36px;list-style:none}
  .nav-menu a{color:var(--bege);text-decoration:none;font-size:.9rem;font-weight:400;letter-spacing:1px;position:relative;transition:color .3s}
  .nav-menu a::after{content:'';position:absolute;bottom:-6px;left:0;width:0;height:1px;background:var(--bege);transition:width .3s}
  .nav-menu a:hover::after{width:100%}
  .nav-menu a:hover{color:var(--branco)}
  .nav-cta{
    background:transparent;border:1px solid var(--bege);color:var(--bege);
    padding:10px 22px;border-radius:2px;font-size:.85rem;letter-spacing:1.5px;
    cursor:pointer;text-decoration:none;transition:all .3s;
  }
  .nav-cta:hover{background:var(--bege);color:var(--azul-noturno)}
  .menu-toggle{display:none;color:var(--bege);font-size:1.6rem;background:none;border:none;cursor:pointer}

  /* ========= HERO ========= */
  .hero{
    min-height:100vh;
    background:linear-gradient(135deg,var(--azul-noturno) 0%,var(--azul-petroleo) 60%,var(--azul-noturno) 100%);
    display:flex;align-items:center;
    padding:140px 6% 80px;
    position:relative;
    overflow:hidden;
  }
  .hero::before{
    content:'';position:absolute;top:0;left:0;right:0;bottom:0;
    background:radial-gradient(circle at 80% 50%, rgba(235,224,206,0.06), transparent 60%);
    pointer-events:none;
  }
  .hero-watermark{
    position:absolute;
    top:50%;left:0;
    transform:translate(-30%,-50%);
    width:680px;max-width:60%;
    opacity:0.05;
    pointer-events:none;
    z-index:1;
    filter:brightness(2) saturate(0);
  }
  .hero-grid{
    max-width:1400px;margin:0 auto;
    display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center;
    position:relative;z-index:2;
  }
  .hero-text .pretitle{
    font-size:.8rem;letter-spacing:5px;color:var(--bege);
    opacity:.8;text-transform:uppercase;margin-bottom:24px;
    display:flex;align-items:center;gap:14px;
  }
  .hero-text .pretitle::before{content:'';width:40px;height:1px;background:var(--bege);opacity:.6}
  .hero-text h1{
    font-size:clamp(2.4rem,5vw,4.2rem);
    line-height:1.05;color:var(--branco);
    margin-bottom:28px;font-weight:500;
  }
  .hero-text h1 em{font-style:italic;color:var(--bege);font-weight:400}
  .hero-text .subtitle{
    font-size:1.05rem;color:var(--bege);opacity:.85;
    margin-bottom:40px;max-width:560px;line-height:1.8;
  }
  .hero-buttons{display:flex;gap:18px;flex-wrap:wrap}
  .btn-primary,.btn-secondary{
    padding:16px 34px;font-size:.9rem;letter-spacing:2px;
    text-transform:uppercase;text-decoration:none;border-radius:2px;
    transition:all .35s ease;display:inline-flex;align-items:center;gap:10px;
    font-weight:500;
  }
  .btn-primary{background:var(--bege);color:var(--azul-noturno);border:1px solid var(--bege)}
  .btn-primary:hover{background:transparent;color:var(--bege);transform:translateY(-2px)}
  .btn-secondary{background:transparent;color:var(--bege);border:1px solid var(--bege-borda)}
  .btn-secondary:hover{border-color:var(--bege);transform:translateY(-2px)}

  .hero-image{position:relative;max-width:460px;margin-left:auto;width:100%}
  .hero-image-frame{
    position:relative;
    padding:12px;
    background:linear-gradient(145deg,rgba(3,30,47,0.7),rgba(3,30,47,0.35));
    display:block;
    line-height:0;
    box-shadow:0 30px 80px rgba(0,0,0,.5);
  }
  .hero-image-frame img{
    display:block;
    width:100%;
    height:auto;
    max-width:100%;
    filter:contrast(1.05) brightness(.95);
  }

  /* ========= MOLDURA ELEGANTE (cantos decorativos) ========= */
  .frame-elegant{position:relative;display:block}
  .frame-elegant::before,
  .frame-elegant::after,
  .frame-elegant > .corner-tl,
  .frame-elegant > .corner-tr,
  .frame-elegant > .corner-bl,
  .frame-elegant > .corner-br{
    content:'';position:absolute;
    width:42px;height:42px;
    pointer-events:none;
    transition:all .5s ease;
    z-index:3;
  }
  .frame-elegant::before{
    top:0;left:0;
    border-top:2px solid var(--bege);
    border-left:2px solid var(--bege);
  }
  .frame-elegant::after{
    bottom:0;right:0;
    border-bottom:2px solid var(--bege);
    border-right:2px solid var(--bege);
  }
  .frame-elegant > .corner-tr{
    top:0;right:0;
    border-top:2px solid var(--bege);
    border-right:2px solid var(--bege);
  }
  .frame-elegant > .corner-bl{
    bottom:0;left:0;
    border-bottom:2px solid var(--bege);
    border-left:2px solid var(--bege);
  }
  .frame-elegant:hover::before,
  .frame-elegant:hover::after,
  .frame-elegant:hover > .corner-tr,
  .frame-elegant:hover > .corner-bl{
    width:58px;height:58px;
  }
  @media (max-width:768px){
    .frame-elegant::before,
    .frame-elegant::after,
    .frame-elegant > .corner-tr,
    .frame-elegant > .corner-bl{
      width:30px;height:30px;border-width:1.5px;
    }
  }
  .hero-badge{
    position:absolute;bottom:30px;right:-30px;
    background:var(--azul-noturno);
    border:1px solid var(--bege);
    padding:18px 26px;
    text-align:center;
    box-shadow:0 10px 40px rgba(0,0,0,.5);
  }
  .hero-badge .num{font-family:'Cormorant Garamond',serif;font-size:2.4rem;color:var(--bege);font-weight:600;display:block;line-height:1}
  .hero-badge .label{font-size:.7rem;letter-spacing:2px;color:var(--branco);text-transform:uppercase;margin-top:4px}

  /* ========= AUTHORITY STRIP ========= */
  .authority-strip{
    background:var(--azul-noturno);
    padding:30px 6%;
    border-top:1px solid var(--bege-borda);
    border-bottom:1px solid var(--bege-borda);
  }
  .authority-grid{
    max-width:1400px;margin:0 auto;
    display:grid;grid-template-columns:repeat(4,1fr);gap:40px;
    align-items:center;
  }
  .authority-item{
    text-align:center;
    border-right:1px solid var(--bege-borda);
    padding:0 20px;
  }
  .authority-item:last-child{border-right:none}
  .authority-item i{font-size:1.6rem;color:var(--bege);margin-bottom:10px;display:block}
  .authority-item .title{font-family:'Cormorant Garamond',serif;font-size:1.15rem;color:var(--branco);font-weight:600;margin-bottom:4px}
  .authority-item .sub{font-size:.78rem;color:var(--bege);opacity:.75;letter-spacing:.5px}

  /* ========= SECTIONS BASE ========= */
  section{padding:120px 6%}
  .container{max-width:1400px;margin:0 auto}
  .section-header{margin-bottom:70px;max-width:780px}
  .section-pretitle{
    font-size:.8rem;letter-spacing:5px;color:var(--bege);
    opacity:.7;text-transform:uppercase;margin-bottom:18px;
    display:flex;align-items:center;gap:14px;
  }
  .section-pretitle::before{content:'';width:40px;height:1px;background:var(--bege);opacity:.5}
  .section-title{
    font-size:clamp(2rem,3.6vw,3.2rem);
    color:var(--branco);line-height:1.15;margin-bottom:20px;
  }
  .section-title em{font-style:italic;color:var(--bege);font-weight:400}
  .section-text{color:var(--bege);opacity:.85;font-size:1rem;line-height:1.85}

  /* ========= SOBRE ========= */
  .sobre{background:var(--azul-petroleo)}
  .sobre-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center}
  .sobre-image{position:relative;width:100%;max-width:580px;justify-self:start}
  .sobre-image-frame{
    position:relative;
    padding:14px;
    background:linear-gradient(145deg,rgba(3,30,47,0.75),rgba(3,30,47,0.45));
    display:block;
    box-shadow:0 25px 70px rgba(0,0,0,0.45);
    line-height:0;
  }
  .sobre-image-frame img{
    display:block;
    width:100%;
    height:auto;
    max-width:100%;
  }
  .sobre-image-tag{
    position:absolute;
    top:28px;left:28px;
    background:var(--bege);color:var(--azul-noturno);
    padding:9px 18px;font-size:.68rem;letter-spacing:2.5px;
    text-transform:uppercase;font-weight:600;z-index:5;
    box-shadow:0 6px 20px rgba(0,0,0,0.35);
    display:inline-flex;align-items:center;gap:10px;
    line-height:1;
  }
  .sobre-image-tag::before{
    content:'';width:18px;height:1px;background:var(--azul-noturno);
  }
  .sobre-image-caption{
    position:absolute;
    bottom:28px;right:28px;
    background:rgba(3,30,47,0.92);
    color:var(--bege);
    padding:10px 16px;
    font-family:'Cormorant Garamond',serif;
    font-style:italic;font-size:.95rem;
    z-index:5;line-height:1.3;
    border-left:2px solid var(--bege);
    backdrop-filter:blur(4px);
  }
  .sobre-text h3{font-size:1.3rem;color:var(--branco);margin-top:30px;margin-bottom:12px;font-weight:600}
  .sobre-text p{color:var(--bege);opacity:.88;margin-bottom:16px;line-height:1.85}
  .sobre-text .quote{
    border-left:2px solid var(--bege);padding-left:24px;margin:30px 0;
    font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-style:italic;
    color:var(--branco);line-height:1.5;
  }
  .credenciais{
    display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:36px;
  }
  .cred-item{
    border:1px solid var(--bege-borda);
    padding:20px;
    background:var(--bege-suave);
  }
  .cred-item i{color:var(--bege);font-size:1.2rem;margin-bottom:10px;display:block}
  .cred-item h4{font-size:1.05rem;color:var(--branco);margin-bottom:6px;font-weight:600;font-family:'Inter',sans-serif;letter-spacing:.5px}
  .cred-item p{font-size:.85rem;color:var(--bege);opacity:.8;margin:0;line-height:1.5}

  /* ========= RECONHECIMENTO / GALERIA DE CONQUISTAS ========= */
  .reconhecimento{background:var(--azul-noturno);position:relative;padding:90px 6%}
  .reconhecimento::before{
    content:'';position:absolute;top:0;left:0;right:0;height:1px;
    background:linear-gradient(90deg,transparent,var(--bege-borda),transparent);
  }
  .reconhecimento .section-header{text-align:center;margin-left:auto;margin-right:auto}
  .reconhecimento .section-pretitle{justify-content:center}
  .reconhecimento .section-pretitle::before{display:none}
  .reconhecimento .section-pretitle::after{content:'';width:40px;height:1px;background:var(--bege);opacity:.5}
  .galeria-honras{
    display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:30px;
  }
  .honra-card{
    background:var(--azul-petroleo);
    transition:all .4s ease;
    display:flex;flex-direction:column;
    position:relative;
    cursor:pointer;
  }
  .honra-card .corner-tl,
  .honra-card .corner-tr,
  .honra-card .corner-bl,
  .honra-card .corner-br{
    content:'';position:absolute;
    width:24px;height:24px;
    pointer-events:none;
    transition:all .5s ease;
    z-index:2;
  }
  .honra-card .corner-tl{top:-1px;left:-1px;border-top:1.5px solid var(--bege);border-left:1.5px solid var(--bege)}
  .honra-card .corner-tr{top:-1px;right:-1px;border-top:1.5px solid var(--bege);border-right:1.5px solid var(--bege)}
  .honra-card .corner-bl{bottom:-1px;left:-1px;border-bottom:1.5px solid var(--bege);border-left:1.5px solid var(--bege)}
  .honra-card .corner-br{bottom:-1px;right:-1px;border-bottom:1.5px solid var(--bege);border-right:1.5px solid var(--bege)}
  .honra-card:hover .corner-tl,.honra-card:hover .corner-tr,
  .honra-card:hover .corner-bl,.honra-card:hover .corner-br{
    width:36px;height:36px;
  }
  .honra-card:hover{transform:translateY(-6px)}
  .honra-img{
    width:100%;
    height:230px;
    background:var(--azul-noturno);
    display:flex;align-items:center;justify-content:center;
    padding:16px;
    position:relative;
    overflow:hidden;
  }
  .honra-img::after{
    content:'\f00e';
    font-family:'Font Awesome 6 Free';font-weight:900;
    position:absolute;
    top:50%;left:50%;
    transform:translate(-50%,-50%) scale(.6);
    font-size:1.8rem;
    color:var(--branco);
    background:var(--azul-noturno);
    width:50px;height:50px;
    border-radius:50%;
    display:flex;align-items:center;justify-content:center;
    opacity:0;
    transition:all .35s ease;
    box-shadow:0 4px 20px rgba(0,0,0,.4);
  }
  .honra-card:hover .honra-img::after{opacity:.95;transform:translate(-50%,-50%) scale(1)}
  .honra-img img{
    max-width:100%;
    max-height:100%;
    width:auto;height:auto;
    object-fit:contain;
    display:block;
    transition:transform .5s ease;
  }
  .honra-card:hover .honra-img img{transform:scale(1.03)}
  .honra-content{padding:22px 22px 26px;flex:1;display:flex;flex-direction:column;border-top:1px solid var(--bege-borda)}
  .honra-tag{
    display:inline-block;
    font-size:.62rem;letter-spacing:2.5px;
    color:var(--bege);opacity:.75;
    text-transform:uppercase;margin-bottom:10px;
  }
  .honra-content h3{font-size:1.1rem;color:var(--branco);margin-bottom:8px;line-height:1.3;font-weight:600}
  .honra-content p{color:var(--bege);opacity:.8;font-size:.82rem;line-height:1.6}

  /* ========= ÁREAS DE ATUAÇÃO ========= */
  .areas{background:var(--azul-petroleo)}
  .areas-grid{
    display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
    background:var(--bege-borda);
    border:1px solid var(--bege-borda);
  }
  .area-card{
    background:var(--azul-petroleo);
    padding:50px 36px;
    transition:all .4s ease;
    position:relative;
  }
  .area-card:hover{background:var(--azul-noturno)}
  .area-card .num{
    font-family:'Cormorant Garamond',serif;font-size:.9rem;
    color:var(--bege);opacity:.6;letter-spacing:3px;margin-bottom:24px;display:block;
  }
  .area-card i{font-size:2rem;color:var(--bege);margin-bottom:24px;display:block}
  .area-card h3{font-size:1.5rem;color:var(--branco);margin-bottom:14px;line-height:1.2}
  .area-card p{color:var(--bege);opacity:.85;font-size:.95rem;line-height:1.75}
  .area-card .area-tag{
    display:inline-block;background:var(--bege);color:var(--azul-noturno);
    font-size:.7rem;letter-spacing:2px;text-transform:uppercase;
    padding:4px 12px;margin-bottom:16px;font-weight:600;
  }

  /* ========= ARTIGOS ========= */
  .artigos{background:var(--azul-noturno)}
  .artigos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:30px}
  .artigo-card{
    background:var(--azul-petroleo);
    border:1px solid var(--bege-borda);
    transition:all .35s ease;
    cursor:pointer;
    display:flex;flex-direction:column;
  }
  .artigo-card:hover{transform:translateY(-6px);border-color:var(--bege)}
  .artigo-thumb{
    height:200px;
    background:linear-gradient(135deg,var(--azul-noturno),var(--azul-petroleo));
    display:flex;align-items:center;justify-content:center;
    border-bottom:1px solid var(--bege-borda);
    position:relative;overflow:hidden;
  }
  .artigo-thumb i{font-size:3rem;color:var(--bege);opacity:.4}
  .artigo-content{padding:30px;flex:1;display:flex;flex-direction:column}
  .artigo-meta{
    font-size:.72rem;letter-spacing:2px;color:var(--bege);opacity:.7;
    text-transform:uppercase;margin-bottom:14px;
  }
  .artigo-card h3{font-size:1.3rem;color:var(--branco);margin-bottom:14px;line-height:1.3;flex:1}
  .artigo-card p{color:var(--bege);opacity:.8;font-size:.9rem;line-height:1.7;margin-bottom:18px}
  .artigo-link{
    color:var(--bege);text-decoration:none;font-size:.8rem;
    letter-spacing:2px;text-transform:uppercase;display:flex;align-items:center;gap:8px;
  }
  .artigo-link:hover{color:var(--branco)}

  /* ========= CONTATO CTA ========= */
  .contato{
    background:var(--azul-noturno);
    padding:100px 6%;
    text-align:center;
    border-top:1px solid var(--bege-borda);
  }
  .contato .container{max-width:900px}
  .contato h2{
    font-size:clamp(2rem,4vw,3rem);
    color:var(--branco);margin-bottom:20px;line-height:1.15;
  }
  .contato p{color:var(--bege);opacity:.85;margin-bottom:36px;font-size:1.05rem;max-width:640px;margin-left:auto;margin-right:auto}
  .contato-buttons{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}

  /* ========= FOOTER ========= */
  footer{
    background:#021724;
    padding:70px 6% 30px;
    border-top:1px solid var(--bege-borda);
  }
  .footer-grid{
    max-width:1400px;margin:0 auto;
    display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:50px;
    margin-bottom:50px;
  }
  .footer-brand{display:flex;flex-direction:column}
  .footer-brand img{height:60px;width:auto;margin-bottom:18px}
  .footer-brand p{color:var(--bege);opacity:.75;font-size:.9rem;line-height:1.7;margin-bottom:20px;max-width:340px}
  .footer-social{display:flex;gap:14px;margin-top:auto}
  .footer-social a{
    width:42px;height:42px;
    border:1px solid var(--bege-borda);
    display:flex;align-items:center;justify-content:center;
    color:var(--bege);text-decoration:none;
    transition:all .3s;
  }
  .footer-social a:hover{background:var(--bege);color:var(--azul-noturno);border-color:var(--bege)}
  .footer-col h4{
    color:var(--branco);font-size:1rem;margin-bottom:22px;
    letter-spacing:2px;text-transform:uppercase;
    font-family:'Inter',sans-serif;font-weight:500;
  }
  .footer-col ul{list-style:none}
  .footer-col li{margin-bottom:12px}
  .footer-col a{
    color:var(--bege);opacity:.8;text-decoration:none;font-size:.9rem;
    transition:opacity .3s;display:flex;align-items:center;gap:10px;
  }
  .footer-col a:hover{opacity:1;color:var(--branco)}
  .footer-col a i{font-size:.85rem;width:18px}
  .footer-bottom{
    max-width:1400px;margin:0 auto;
    padding-top:30px;border-top:1px solid var(--bege-borda);
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;
    color:var(--bege);opacity:.6;font-size:.82rem;
  }

  /* ========= WHATSAPP FLOAT ========= */
  .wa-float{
    position:fixed;bottom:30px;right:30px;
    width:60px;height:60px;border-radius:50%;
    background:#25D366;color:white;
    display:flex;align-items:center;justify-content:center;
    font-size:1.8rem;text-decoration:none;
    box-shadow:0 6px 20px rgba(37,211,102,.4);
    z-index:999;transition:transform .3s;
    animation:pulse 2s infinite;
  }
  .wa-float:hover{transform:scale(1.1)}
  @keyframes pulse{
    0%{box-shadow:0 6px 20px rgba(37,211,102,.4),0 0 0 0 rgba(37,211,102,.7)}
    70%{box-shadow:0 6px 20px rgba(37,211,102,.4),0 0 0 14px rgba(37,211,102,0)}
    100%{box-shadow:0 6px 20px rgba(37,211,102,.4),0 0 0 0 rgba(37,211,102,0)}
  }

  /* ========= RESPONSIVE ========= */
  @media (max-width:1024px){
    .hero-grid,.sobre-grid{grid-template-columns:1fr;gap:60px}
    .hero-image{max-width:560px;margin:0 auto}
    .areas-grid,.artigos-grid{grid-template-columns:repeat(2,1fr)}
    .footer-grid{grid-template-columns:1fr 1fr;gap:40px}
    .galeria-honras{grid-template-columns:repeat(2,1fr)}
    .authority-grid{grid-template-columns:repeat(2,1fr);gap:24px}
    .authority-item{border-right:none;border-bottom:1px solid var(--bege-borda);padding-bottom:24px}
    .authority-item:nth-child(even){border-right:none}
  }
  @media (max-width:768px){
    section{padding:80px 5%}
    .navbar{padding:14px 5%}
    .nav-menu{
      display:none;
      position:absolute;top:100%;left:0;right:0;
      background:var(--azul-noturno);
      flex-direction:column;
      padding:30px 5%;
      gap:22px;
      border-top:1px solid var(--bege-borda);
    }
    .nav-menu.active{display:flex}
    .nav-cta{display:none}
    .menu-toggle{display:block}
    .hero{padding:120px 5% 60px}
    .areas-grid,.artigos-grid{grid-template-columns:1fr}
    .galeria-honras{grid-template-columns:1fr}
    .credenciais{grid-template-columns:1fr}
    .hero-image{max-width:100%;margin:0 auto}
    .sobre-image{max-width:100%;justify-self:center}
    .sobre-image-tag{top:18px;left:18px;padding:7px 14px;font-size:.6rem;letter-spacing:2px}
    .sobre-image-caption{bottom:18px;right:18px;font-size:.85rem;padding:8px 12px}
    .footer-grid{grid-template-columns:1fr;gap:30px}
    .hero-badge{right:0;bottom:-20px}
    .authority-grid{grid-template-columns:1fr}
    .authority-item{border-bottom:1px solid var(--bege-borda)}
    .authority-item:last-child{border-bottom:none}
    .nav-logo .logo-full{display:none}
    .nav-logo .logo-mono{display:block}
    .wa-float{width:54px;height:54px;font-size:1.6rem;bottom:20px;right:20px}
    .hero-watermark{display:none}
  }

  /* Animation on scroll */
  .reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}
  .reveal.visible{opacity:1;transform:translateY(0)}

  /* ========= ARTIGOS — BOTÃO LER MAIS ========= */
  .artigo-ler-mais{
    display:inline-flex;align-items:center;gap:12px;
    color:var(--bege);font-size:.78rem;letter-spacing:2.5px;
    text-transform:uppercase;background:none;border:none;cursor:pointer;
    font-family:'Inter',sans-serif;padding:0;transition:color .3s;margin-top:auto;
  }
  .artigo-ler-mais .lm-icon{
    width:34px;height:34px;
    border:1px solid var(--bege-borda);
    display:flex;align-items:center;justify-content:center;
    font-size:.8rem;transition:all .4s cubic-bezier(.34,1.56,.64,1);
    flex-shrink:0;
  }
  .artigo-ler-mais:hover .lm-icon{
    background:var(--bege);color:var(--azul-noturno);
    border-color:var(--bege);transform:rotate(45deg);
  }
  .artigo-ler-mais:hover{color:var(--branco)}

  /* ========= ARTICLE READER PANEL ========= */
  .ap-overlay{
    position:fixed;inset:0;
    background:rgba(3,30,47,0.72);
    backdrop-filter:blur(6px);
    z-index:8900;
    opacity:0;pointer-events:none;
    transition:opacity .45s ease;
  }
  .ap-overlay.active{opacity:1;pointer-events:auto}

  .ap-panel{
    position:fixed;top:0;right:0;bottom:0;
    width:min(700px,94vw);
    background:var(--azul-noturno);
    border-left:1px solid var(--bege-borda);
    z-index:9000;
    transform:translateX(100%);
    transition:transform .55s cubic-bezier(.16,1,.3,1);
    display:flex;flex-direction:column;overflow:hidden;
  }
  .ap-panel.active{transform:translateX(0)}

  /* cantos decorativos no painel */
  .ap-panel::before{
    content:'';position:absolute;top:0;left:0;
    width:44px;height:44px;
    border-top:1.5px solid var(--bege);
    border-left:1.5px solid var(--bege);
    pointer-events:none;z-index:2;opacity:.7;
  }
  .ap-panel::after{
    content:'';position:absolute;bottom:0;right:0;
    width:44px;height:44px;
    border-bottom:1.5px solid var(--bege);
    border-right:1.5px solid var(--bege);
    pointer-events:none;z-index:2;opacity:.7;
  }

  .ap-header{
    padding:clamp(28px,5vw,44px) clamp(28px,5vw,54px) 28px;
    border-bottom:1px solid var(--bege-borda);
    flex-shrink:0;position:relative;
  }
  .ap-tag{
    font-size:.68rem;letter-spacing:3.5px;color:var(--bege);opacity:.7;
    text-transform:uppercase;display:flex;align-items:center;gap:12px;margin-bottom:16px;
  }
  .ap-tag::before{content:'';width:28px;height:1px;background:var(--bege);opacity:.5;flex-shrink:0}
  .ap-title{
    font-family:'Cormorant Garamond',serif;font-size:clamp(1.4rem,2.8vw,2.1rem);
    color:var(--branco);line-height:1.2;font-weight:500;padding-right:56px;
  }
  .ap-close{
    position:absolute;top:clamp(20px,3vw,28px);right:clamp(20px,3vw,28px);
    width:44px;height:44px;
    background:var(--bege-suave);border:1px solid var(--bege-borda);
    color:var(--bege);cursor:pointer;
    display:flex;align-items:center;justify-content:center;
    font-size:1rem;transition:all .3s;flex-shrink:0;
  }
  .ap-close:hover{background:var(--bege);color:var(--azul-noturno);border-color:var(--bege)}

  .ap-body{
    flex:1;overflow-y:auto;
    padding:clamp(28px,4vw,44px) clamp(28px,5vw,54px);
    scroll-behavior:smooth;
  }
  .ap-body::-webkit-scrollbar{width:3px}
  .ap-body::-webkit-scrollbar-track{background:transparent}
  .ap-body::-webkit-scrollbar-thumb{background:var(--bege-borda);border-radius:2px}

  .ap-body p{
    color:var(--bege);opacity:.88;
    font-size:1rem;line-height:1.95;margin-bottom:22px;
  }
  .ap-body ul{
    list-style:none;margin:24px 0 28px;
    border-left:2px solid var(--bege-borda);
    padding-left:28px;
  }
  .ap-body li{
    color:var(--bege);opacity:.85;
    font-size:.95rem;line-height:1.75;
    margin-bottom:14px;padding-left:8px;position:relative;
  }
  .ap-body li::before{
    content:'—';position:absolute;left:-22px;
    color:var(--bege);opacity:.45;font-size:.8rem;top:2px;
  }
  .ap-body .ap-quote{
    border-left:2px solid var(--bege);padding-left:24px;margin:32px 0;
    font-family:'Cormorant Garamond',serif;font-size:1.35rem;
    font-style:italic;color:var(--branco);line-height:1.5;
  }

  .ap-footer{
    padding:20px clamp(28px,5vw,54px);
    border-top:1px solid var(--bege-borda);
    flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:16px;
    flex-wrap:wrap;
  }
  .ap-footer-note{
    font-size:.75rem;color:var(--bege);opacity:.55;letter-spacing:.5px;
    font-style:italic;
  }
  .ap-footer-cta{
    display:inline-flex;align-items:center;gap:10px;
    padding:12px 24px;
    background:transparent;border:1px solid var(--bege-borda);
    color:var(--bege);font-size:.78rem;letter-spacing:2px;text-transform:uppercase;
    text-decoration:none;transition:all .3s;cursor:pointer;font-family:'Inter',sans-serif;
  }
  .ap-footer-cta:hover{background:var(--bege);color:var(--azul-noturno);border-color:var(--bege)}

  /* progress bar de leitura */
  .ap-progress{
    height:2px;background:var(--bege-borda);
    flex-shrink:0;
  }
  .ap-progress-bar{
    height:100%;background:var(--bege);
    width:0%;transition:width .1s linear;
  }

  @media (max-width:600px){
    .ap-panel{width:100vw;border-left:none}
  }

  /* ========= DIVISOR ORNAMENTAL ========= */
  .section-divider{
    display:flex;align-items:center;justify-content:center;gap:18px;
    padding:0 6%;
    background:var(--azul-petroleo);
    position:relative;
    margin:0;
  }
  .section-divider.dark{background:var(--azul-noturno)}
  .section-divider .line{
    flex:1;max-width:280px;height:1px;
    background:linear-gradient(90deg,transparent,var(--bege-borda),var(--bege),var(--bege-borda),transparent);
    opacity:.6;
  }
  .section-divider .ornament{
    color:var(--bege);
    font-size:.9rem;
    opacity:.7;
    display:flex;align-items:center;gap:10px;
  }
  .section-divider .ornament svg{width:14px;height:14px;fill:var(--bege)}
  .section-divider-wave{
    height:80px;
    background:var(--azul-petroleo);
    position:relative;overflow:hidden;
  }
  .section-divider-wave svg{
    position:absolute;bottom:0;left:0;width:100%;height:100%;
    display:block;
  }

  /* ========= LIGHTBOX ========= */
  .lightbox{
    position:fixed;inset:0;
    background:rgba(3,30,47,0.96);
    backdrop-filter:blur(8px);
    z-index:9999;
    display:flex;align-items:center;justify-content:center;
    opacity:0;pointer-events:none;
    transition:opacity .3s ease;
  }
  .lightbox.active{opacity:1;pointer-events:auto}
  .lightbox-content{
    position:relative;
    max-width:90vw;max-height:90vh;
    display:flex;flex-direction:column;align-items:center;
    animation:lbZoomIn .4s ease;
  }
  @keyframes lbZoomIn{
    from{transform:scale(.9);opacity:0}
    to{transform:scale(1);opacity:1}
  }
  .lightbox-img-wrap{
    position:relative;
    padding:14px;
    background:rgba(0,0,0,.3);
    max-width:90vw;max-height:75vh;
    display:flex;align-items:center;justify-content:center;
  }
  .lightbox-img-wrap::before,.lightbox-img-wrap::after{
    content:'';position:absolute;width:42px;height:42px;
  }
  .lightbox-img-wrap::before{top:-12px;left:-12px;border-top:1.5px solid var(--bege);border-left:1.5px solid var(--bege)}
  .lightbox-img-wrap::after{bottom:-12px;right:-12px;border-bottom:1.5px solid var(--bege);border-right:1.5px solid var(--bege)}
  .lightbox-img{
    max-width:100%;max-height:75vh;
    width:auto;height:auto;
    object-fit:contain;display:block;
  }
  .lightbox-caption{
    margin-top:24px;text-align:center;
    color:var(--bege);
    font-family:'Cormorant Garamond',serif;
    font-size:1.3rem;font-style:italic;
    max-width:600px;
  }
  .lightbox-caption .lb-tag{
    display:block;font-family:'Inter',sans-serif;
    font-size:.7rem;letter-spacing:3px;font-style:normal;
    text-transform:uppercase;opacity:.7;margin-bottom:6px;
  }
  .lightbox-close,.lightbox-prev,.lightbox-next{
    position:absolute;
    background:rgba(235,224,206,0.08);
    border:1px solid var(--bege-borda);
    color:var(--bege);
    width:48px;height:48px;
    display:flex;align-items:center;justify-content:center;
    cursor:pointer;font-size:1.1rem;
    transition:all .3s ease;
    z-index:2;
  }
  .lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{
    background:var(--bege);color:var(--azul-noturno);border-color:var(--bege);
  }
  .lightbox-close{top:30px;right:30px}
  .lightbox-prev{top:50%;left:30px;transform:translateY(-50%)}
  .lightbox-next{top:50%;right:30px;transform:translateY(-50%)}
  .lightbox-counter{
    position:absolute;top:30px;left:30px;
    color:var(--bege);opacity:.7;
    font-size:.85rem;letter-spacing:2px;
  }
  @media (max-width:768px){
    .lightbox-prev{left:14px;width:42px;height:42px}
    .lightbox-next{right:14px;width:42px;height:42px}
    .lightbox-close{top:14px;right:14px;width:42px;height:42px}
    .lightbox-counter{top:20px;left:14px}
    .lightbox-caption{font-size:1.05rem;padding:0 14px}
  }

  /* ===================================================================
     AJUSTES TÉCNICOS (Padrões Google 2026) — sem alteração de design
     =================================================================== */
  /* <picture> transparente: garante que TODAS as regras CSS de <img>
     continuem valendo exatamente como antes (layout 100% preservado) */
  picture{display:contents}

  /* Acessibilidade: link "pular para o conteúdo" (oculto até foco no teclado) */
  .skip-link{
    position:absolute;left:-9999px;top:0;z-index:2000;
    background:var(--azul-noturno);color:var(--bege);
    padding:12px 20px;border:1px solid var(--bege-borda);
    text-decoration:none;border-radius:0 0 4px 0;font-size:.9rem;
  }
  .skip-link:focus{left:0}

  /* Acessibilidade: respeita quem prefere menos movimento (vestibular/foco) */
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto}
    *,*::before,*::after{
      animation-duration:.001ms !important;
      animation-iteration-count:1 !important;
      transition-duration:.001ms !important;
    }
  }
