/* Ditinho AVIVIP 4410 — estilos compartilhados por todas as páginas */
  :root{
    --azul:#21326f;
    --azul-vivo:#21326f;
    --azul-hover:#2c4390;
    --marinho:#21326f;
    --marinho-fundo:#21326f;
    --rosa:#ff0000;
    --rosa-hover:#ff2a2a;
    --rosa-claro:#ffd9d9;
    --ceu:#dbe8ff;
    --hero:#a9c6f0;
    --vermelho:#ff0000;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    font-family:"Montserrat",system-ui,sans-serif;
    color:var(--marinho);
    background:#fff;
  }
  img{max-width:100%;}
  a{text-decoration:none;}
  section{scroll-margin-top:84px;}
  .wrap{max-width:1200px;margin:0 auto;padding:0 32px;}

  .pill{
    display:inline-flex;align-items:center;justify-content:center;
    border-radius:999px;font-weight:700;font-size:14px;color:#fff;
    padding:11px 26px;
    transition:transform .25s cubic-bezier(.22,1,.36,1), box-shadow .25s cubic-bezier(.22,1,.36,1), background-color .25s;
  }
  .pill:hover{transform:translateY(-2px);}
  .pill:focus-visible{outline:3px solid var(--azul-vivo);outline-offset:2px;}

  /* chip "Ditinho | Deputado Federal" */
  .chip{
    display:inline-flex;align-items:center;
    background:#fff;border-radius:999px;padding:4px;
    box-shadow:0 2px 12px rgba(20,27,77,.14);
  }
  .chip .seg1{
    display:inline-flex;align-items:center;gap:7px;
    background:var(--azul);color:#fff;
    font-weight:700;font-size:12.5px;
    border-radius:999px;padding:6px 15px;
  }
  .chip .seg1 .dot{width:9px;height:9px;border-radius:50%;background:var(--vermelho);}
  .chip .seg2{
    color:var(--marinho);font-weight:600;font-size:12.5px;
    padding:6px 16px 6px 11px;white-space:nowrap;
  }
  .chip.rosa{background:var(--rosa-claro);}

  /* ===== 1. HEADER ===== */
  header{
    background:#fff;position:sticky;top:0;z-index:50;
    box-shadow:0 1px 0 rgba(20,27,77,.08);
  }
  .header-in{
    max-width:1200px;margin:0 auto;padding:10px 32px;
    display:flex;align-items:center;justify-content:space-between;gap:24px;
  }
  .logo{height:52px;width:auto;display:block;}
  .header-in nav{display:flex;gap:30px;align-items:center;}
  .header-in nav a{
    color:var(--marinho);font-size:14.5px;font-weight:600;
    transition:color .2s;
  }
  .header-in nav a:hover{color:var(--azul);}
  .btn-zap{background:var(--azul);gap:9px;}
  .btn-zap:hover{background:var(--azul-hover);box-shadow:0 8px 18px rgba(33,50,111,.35);}
  .btn-zap .ico-insta{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
  /* botão hambúrguer (3 traços que viram X) */
  .hamburger{
    display:none;width:46px;height:46px;flex:0 0 46px;
    border:none;border-radius:12px;background:#eef1fb;
    align-items:center;justify-content:center;cursor:pointer;
    position:relative;z-index:70;
  }
  .hamburger span{
    position:absolute;left:13px;width:20px;height:2.5px;border-radius:2px;
    background:var(--marinho);
    transition:transform .3s cubic-bezier(.22,1,.36,1), opacity .2s, top .3s cubic-bezier(.22,1,.36,1);
  }
  .hamburger span:nth-child(1){top:15px;}
  .hamburger span:nth-child(2){top:22px;}
  .hamburger span:nth-child(3){top:29px;}
  .hamburger[aria-expanded="true"] span:nth-child(1){top:22px;transform:rotate(45deg);}
  .hamburger[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(0);}
  .hamburger[aria-expanded="true"] span:nth-child(3){top:22px;transform:rotate(-45deg);}

  /* painel do menu mobile (tela cheia, desliza da direita) */
  .m-nav{
    position:fixed;inset:0;z-index:60;
    display:flex;flex-direction:column;
    padding:96px 28px 32px;
    background:var(--marinho);color:#fff;
    transform:translateX(100%);visibility:hidden;
    transition:transform .38s cubic-bezier(.22,1,.36,1), visibility 0s linear .38s;
  }
  .m-nav.open{transform:none;visibility:visible;transition-delay:0s;}
  .m-nav a{
    color:#fff;font-weight:800;font-size:24px;letter-spacing:.2px;
    padding:16px 0;border-bottom:1px solid rgba(255,255,255,.12);
    display:flex;align-items:center;justify-content:space-between;
    opacity:0;transform:translateX(24px);
    transition:opacity .35s ease, transform .35s cubic-bezier(.22,1,.36,1);
  }
  .m-nav a::after{content:"→";font-weight:700;color:var(--rosa);}
  .m-nav.open a{opacity:1;transform:none;}
  .m-nav.open a:nth-child(1){transition-delay:.08s;}
  .m-nav.open a:nth-child(2){transition-delay:.12s;}
  .m-nav.open a:nth-child(3){transition-delay:.16s;}
  .m-nav.open a:nth-child(4){transition-delay:.20s;}
  .m-nav.open a:nth-child(5){transition-delay:.24s;}
  .m-nav.open a:nth-child(6){transition-delay:.28s;}
  .m-nav .m-insta{
    margin-top:auto;border:none;justify-content:center;gap:10px;
    background:var(--rosa);border-radius:999px;padding:16px;font-size:17px;
  }
  .m-nav .m-insta::after{content:none;}
  .m-nav .m-insta svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
  .m-nav .m-rodape{margin-top:18px;text-align:center;font-size:12.5px;color:#c9cfe6;font-weight:600;}
  body.menu-aberto{overflow:hidden;}
  body.menu-aberto header{box-shadow:none;}

  /* ===== 2. HERO (montado em camadas: fundo + bandeiras + logo) ===== */
  .hero{
    background:#bcd0f8 url("img/bg-minha-historia.png") center / cover no-repeat;
    overflow:hidden;
  }
  .hero-in{
    max-width:1440px;margin:0 auto;padding:0 32px;
    display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
    align-items:end;column-gap:24px;
    min-height:600px;
  }
  .hero-bandeiras{
    display:block;width:100%;max-width:900px;height:auto;
    justify-self:start;align-self:end;
    margin-top:24px;
  }
  .hero-logo{
    display:block;width:min(100%,480px);height:auto;
    justify-self:center;align-self:center;
    margin-bottom:24px;
    filter:drop-shadow(0 12px 28px rgba(20,27,77,.22));
  }

  /* ===== 3. FOTOS ===== */
  .fotos{background:#fff;padding:56px 0 64px;position:relative;overflow:hidden;}
  .fotos::before{
    content:"";position:absolute;top:-150px;left:-12%;
    width:64%;height:300px;background:#edf1f8;border-radius:50%;
  }
  .fotos-head{
    max-width:1200px;margin:0 auto;padding:0 32px 30px;
    display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
    position:relative;
  }
  .fotos-head .chip{justify-self:start;}
  .fotos-title{
    font-size:34px;font-weight:900;letter-spacing:1px;
    color:var(--azul);text-align:center;
  }
  .fotos-strip{display:flex;gap:12px;padding:0 0 36px;position:relative;}
  .fotos-strip img{
    display:block;height:280px;object-fit:cover;
    flex-basis:0;min-width:0;
  }
  .fotos-strip img:nth-child(1){flex-grow:232;}
  .fotos-strip img:nth-child(2){flex-grow:365;}
  .fotos-strip img:nth-child(3){flex-grow:365;}
  .fotos-strip img:nth-child(4){flex-grow:365;}
  .fotos-strip img:nth-child(5){flex-grow:231;}
  .fotos-cta{text-align:center;position:relative;}
  .btn-drive{background:var(--rosa);font-size:13.5px;font-weight:600;}
  .btn-drive:hover{background:var(--rosa-hover);box-shadow:0 8px 18px rgba(255,0,0,.35);}

  /* ===== 4 + 5. BLOCO MINHA HISTÓRIA + CAMINHADA ===== */
  /* O Ditinho é posicionado no bloco inteiro: nasce no topo da história
     e desce até a base da faixa azul-clara, encostando no card de Propostas */
  .historia-bloco{position:relative;overflow-x:clip;}
  .ditinho-historia{
    position:absolute;top:0;bottom:0;
    right:max(-60px, calc(50% - 690px));
    height:100%;width:auto;
    z-index:3;pointer-events:none;
  }
  .meme-historia{
    position:absolute;right:-30px;bottom:14px;
    width:165px;height:auto;z-index:4;
  }

  .historia{
    background:#bcd0f8 url("img/bg-minha-historia.png") center / cover no-repeat;
    position:relative;
  }
  .historia-in{
    max-width:1200px;margin:0 auto;padding:64px 32px 72px;
    display:grid;grid-template-columns:minmax(0,560px) 1fr;
    align-items:start;position:relative;z-index:1;
    min-height:735px;
  }
  .historia-texto{color:#253775;padding-left:12px;}
  .historia-texto .chip{margin-bottom:6px;}
  .historia-texto h2{
    font-size:34px;font-weight:900;letter-spacing:.5px;
    line-height:1.12;margin:18px 0 14px;
  }
  .historia-texto h2 .destaque{color:var(--rosa);}
  .historia-texto p.lead{
    font-size:16px;font-weight:700;line-height:1.5;
    margin-bottom:22px;
  }
  .historia-texto p{
    font-size:14px;line-height:1.65;margin-bottom:14px;
    font-weight:500;color:#253775;text-align:justify;
  }
  .historia-texto p.strong{font-weight:800;}

  .caminhada{background:var(--ceu);position:relative;}
  .caminhada-in{
    max-width:1200px;margin:0 auto;padding:60px 32px 70px;
    display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;
    min-height:307px;position:relative;
  }
  .caminhada h2{
    font-size:clamp(28px,3.3vw,44px);
    font-weight:900;font-style:italic;
    line-height:1.14;letter-spacing:-.5px;
    color:var(--azul-vivo);text-transform:uppercase;
    padding-left:12px;
  }
  .caminhada h2 .rosa{color:var(--rosa);text-transform:none;font-size:.8em;}
  /* lettering fica POR CIMA do Ditinho, sobre a camisa (como no Photoshop) */
  .tocom{
    position:absolute;left:63%;top:16px;
    display:flex;flex-direction:column;
    z-index:4;line-height:1;white-space:nowrap;
    pointer-events:none;
  }
  .tocom .t1{
    font-size:44px;font-weight:800;color:#fff;
    letter-spacing:-.5px;margin-left:34px;
  }
  .tocom .t2{
    font-family:"Permanent Marker","Montserrat",cursive;
    font-size:112px;color:#2f5bff;
    letter-spacing:2px;transform:rotate(-2deg);
    margin-top:-4px;
  }
  .selo-caminhada{
    position:absolute;left:clamp(20px,5vw,88px);bottom:-92px;
    width:190px;height:auto;z-index:6;
    -webkit-touch-callout:none;
    -webkit-user-select:none;user-select:none;
    touch-action:manipulation;
  }

  /* ===== 6. PROPOSTAS ===== */
  .propostas{background:transparent;padding:106px 0 84px;position:relative;z-index:5;}
  .propostas-card{
    max-width:1120px;margin:0 auto;
    background:var(--marinho-fundo);
    border-radius:26px;padding:64px 76px;
    color:#fff;position:relative;overflow:hidden;
  }
  .propostas-card .marca{
    position:absolute;inset:0;
    display:flex;align-items:center;justify-content:center;
    font-size:200px;font-weight:900;font-style:italic;
    color:rgba(255,255,255,.07);
    pointer-events:none;user-select:none;letter-spacing:2px;
    white-space:nowrap;
  }
  .propostas-card h2{
    text-align:center;font-size:32px;font-weight:900;
    letter-spacing:1.5px;color:var(--rosa);
  }
  .propostas-card .citacao{
    text-align:center;font-size:19px;font-weight:800;font-style:italic;
    margin:14px auto 0;max-width:760px;color:#fff;line-height:1.4;
  }
  .propostas-card .sub{
    text-align:center;font-size:14.5px;font-weight:500;
    margin:14px auto 50px;max-width:820px;color:#dfe4f7;line-height:1.6;
  }
  .propostas-card .sub b{font-weight:800;}
  .prop-cols{
    display:grid;grid-template-columns:1fr 1fr;gap:0 68px;
    position:relative;z-index:1;
  }
  .prop-col{display:flex;flex-direction:column;gap:34px;}
  .prop{display:flex;gap:18px;align-items:flex-start;}
  .prop .num{
    font-size:46px;font-weight:900;line-height:.95;
    color:#fff;
    padding-right:16px;border-right:3px solid #fff;
  }
  .prop h3{
    font-size:17.5px;font-weight:800;letter-spacing:.3px;
    line-height:1.25;margin-bottom:10px;
  }
  .prop ul{list-style:none;display:flex;flex-direction:column;gap:8px;}
  .prop li{
    position:relative;padding-left:16px;
    font-size:12.5px;line-height:1.6;font-weight:500;color:#c9cfe6;
  }
  .prop li::before{
    content:"";position:absolute;left:0;top:.6em;
    width:7px;height:7px;border-radius:2px;background:var(--rosa);
  }
  .prop-fecho{
    position:relative;z-index:1;
    margin-top:46px;padding:26px 30px;
    border-radius:16px;background:rgba(255,255,255,.07);
    border:1px solid rgba(255,255,255,.14);
    text-align:center;
  }
  .prop-fecho h3{
    font-size:20px;font-weight:900;letter-spacing:.5px;
    text-transform:uppercase;line-height:1.25;
  }
  .prop-fecho h3 .num4410{color:var(--rosa);}
  .prop-fecho p{
    margin-top:10px;font-size:14px;line-height:1.65;font-weight:600;color:#eef0fa;
  }

  /* ===== 7. TV 4410 ===== */
  .tv{background:#fff;padding:40px 0 0;position:relative;overflow:hidden;}
  .tv-in{
    max-width:1200px;margin:0 auto;padding:24px 32px 0;
    display:grid;grid-template-columns:1.05fr .95fr;gap:40px;
    align-items:start;
  }
  .tv-logo-img{display:block;width:min(430px,90%);height:auto;margin-bottom:18px;}
  .tv-tag{font-size:27px;font-weight:900;color:var(--marinho);margin-bottom:30px;}
  .tv-player-link{
    display:block;margin-bottom:48px;border-radius:6px;overflow:hidden;
    transition:transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s;
  }
  .tv-player-link:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(33,50,111,.22);}
  .tv-player-link:focus-visible{outline:3px solid var(--azul-hover);outline-offset:3px;}
  .tv-player-img{display:block;width:100%;height:auto;}
  .tv-right{display:flex;align-items:flex-end;justify-content:flex-end;}
  .tv-comp{display:block;width:100%;max-width:540px;height:auto;}

  /* ===== elementos comuns das novas seções ===== */
  .kicker{
    font-size:15px;font-weight:900;letter-spacing:3px;
    color:var(--rosa);margin-bottom:12px;text-transform:uppercase;
  }
  .titulo-sec{
    font-size:clamp(26px,3vw,40px);font-weight:900;font-style:italic;
    line-height:1.14;letter-spacing:-.3px;
    color:var(--marinho);text-transform:uppercase;
  }

  /* ===== 8. DITO E FEITO ===== */
  .dito{background:var(--ceu);padding:88px 0 96px;}
  .dito-head{
    max-width:1200px;margin:0 auto;padding:0 32px 44px;
    display:grid;grid-template-columns:minmax(0,760px) 1fr;gap:48px;align-items:end;
  }
  .dito-head p{font-size:16px;line-height:1.65;font-weight:500;color:#253775;}
  .dito-grid{
    max-width:1200px;margin:0 auto;padding:0 32px;
    display:grid;grid-template-columns:repeat(2,1fr);gap:24px;
  }
  .dito-card{
    background:#fff;border-radius:22px;padding:34px 36px;
    box-shadow:0 10px 30px rgba(33,50,111,.08);
    display:flex;flex-direction:column;gap:20px;
  }
  .dito-card h3{font-size:19px;font-weight:900;color:var(--marinho);letter-spacing:.3px;}
  .dito-par{display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:start;}
  .rotulo{
    font-size:12px;font-weight:900;letter-spacing:2px;
    padding:6px 0;border-radius:6px;text-align:center;color:#fff;
  }
  .rotulo.dito-r{background:var(--rosa);}
  .rotulo.feito-r{background:var(--marinho);}
  .dito-par blockquote{
    font-size:16px;font-weight:700;font-style:italic;
    color:var(--rosa);line-height:1.45;margin:0;
  }
  .dito-par p{font-size:14.5px;line-height:1.65;font-weight:500;color:#253775;}

  /* ===== 9. DIGA AÍ ===== */
  .diga{background:#fff;padding:96px 0;}
  .diga-in{
    max-width:1200px;margin:0 auto;padding:0 32px;
    display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;
  }
  .diga-texto p{font-size:16px;line-height:1.65;font-weight:500;color:#253775;margin-top:18px;}
  .diga-texto .destaque-num{
    display:inline-flex;align-items:center;gap:12px;
    margin-top:28px;padding:12px 18px;border-radius:14px;
    background:var(--ceu);color:var(--marinho);font-weight:800;font-size:14px;
  }
  .form-card{
    background:var(--ceu);border-radius:26px;padding:40px;
    box-shadow:0 12px 34px rgba(33,50,111,.08);
  }
  .campo{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;}
  .campo label{font-size:13px;font-weight:800;color:var(--marinho);letter-spacing:.3px;}
  .campo input,.campo textarea{
    font:inherit;font-size:15px;font-weight:500;
    padding:13px 16px;border-radius:12px;
    border:2px solid transparent;background:#fff;color:var(--marinho);
    outline:none;transition:border-color .2s, box-shadow .2s;
  }
  .campo input:focus,.campo textarea:focus{
    border-color:var(--azul-hover);box-shadow:0 0 0 4px rgba(33,50,111,.12);
  }
  .campo textarea{min-height:120px;resize:vertical;}
  .linha-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  .btn-enviar{
    width:100%;background:var(--rosa);color:#fff;border:none;
    font:inherit;font-weight:800;font-size:16px;
    padding:16px;border-radius:999px;cursor:pointer;
    transition:transform .25s cubic-bezier(.22,1,.36,1), box-shadow .25s, background-color .25s;
  }
  .btn-enviar:hover{background:var(--rosa-hover);transform:translateY(-2px);box-shadow:0 8px 18px rgba(255,0,0,.3);}
  .btn-enviar:disabled{opacity:.6;cursor:wait;transform:none;box-shadow:none;}
  .form-msg{margin-top:14px;font-size:14px;font-weight:700;min-height:20px;text-align:center;color:var(--marinho);}
  .form-msg.ok{color:#0f7b3b;}
  .form-msg.erro{color:#c1121f;}
  .hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden;}

  /* ===== 10. REDES (rodapé) ===== */
  .redes{background:var(--marinho);color:#fff;padding:72px 0 28px;}
  .redes-in{
    max-width:1200px;margin:0 auto;padding:0 32px;
    display:grid;grid-template-columns:auto 1fr;gap:48px;align-items:center;
  }
  .redes-logo{background:#fff;border-radius:18px;padding:12px 16px;display:inline-block;}
  .redes-logo img{height:76px;display:block;}
  .redes .kicker{color:#fff;}
  .redes h2{font-size:clamp(22px,2.4vw,30px);font-weight:900;line-height:1.2;margin-bottom:22px;}
  .redes-lista{display:flex;gap:12px;flex-wrap:wrap;}
  .rede{
    display:inline-flex;align-items:center;gap:10px;
    background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);
    border-radius:999px;padding:11px 20px;color:#fff;font-weight:700;font-size:14px;
    transition:background-color .2s, border-color .2s, transform .25s cubic-bezier(.22,1,.36,1);
  }
  .rede:hover{background:var(--rosa);border-color:var(--rosa);transform:translateY(-2px);}
  .rede svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
  .redes-base{
    max-width:1200px;margin:44px auto 0;padding:22px 32px 0;
    border-top:1px solid rgba(255,255,255,.14);
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;
    font-size:12.5px;color:#c9cfe6;
  }
  .redes-base a{color:#fff;font-weight:600;}
  .redes-base a:hover{color:var(--rosa);}

  /* ===== EASTER EGG: digite 4410 e o Ditinho atravessa a tela de bicicleta ===== */
  .ditinho-bicicleta-easter-egg{
    position:fixed;
    left:-350px;
    bottom:12px;
    width:300px;
    height:auto;
    z-index:9999;
    pointer-events:none;
    animation:
      ditinhoPedalando 7s linear forwards,
      ditinhoBalancando .55s ease-in-out infinite alternate;
  }
  @keyframes ditinhoPedalando{
    0%{left:-350px;}
    100%{left:calc(100vw + 350px);}
  }
  @keyframes ditinhoBalancando{
    from{transform:translateY(0);}
    to{transform:translateY(-6px);}
  }
  @media (max-width:600px){
    .ditinho-bicicleta-easter-egg{width:190px;bottom:8px;}
  }

  /* ===== TELAS INTERMEDIÁRIAS: Ditinho ancora embaixo e encolhe ===== */
  @media (max-width:1180px) and (min-width:901px){
    .hero-in{min-height:0;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);}
    .hero-bandeiras{max-width:640px;}
    .hero-logo{width:min(100%,360px);}
    .ditinho-historia{top:auto;bottom:0;height:auto;width:min(48vw,560px);}
    .historia-in{grid-template-columns:minmax(0,50%) 1fr;}
    .meme-historia{width:130px;}
    .tocom{left:54%;top:30px;}
    .tocom .t1{font-size:36px;margin-left:26px;}
    .tocom .t2{font-size:84px;}
    .selo-caminhada{width:150px;bottom:-72px;}
  }

  /* ===== TABLET ===== */
  @media (max-width:1024px){
    .propostas-card{margin:0 24px;padding:48px 40px;}
    .propostas-card .marca{font-size:130px;}
    .prop-cols{gap:0 40px;}
  }

  /* ===== MOBILE ===== */
  @media (max-width:900px){
    .wrap{padding:0 20px;}

    .header-in{padding:10px 20px;gap:12px;}
    .header-in nav{display:none;}
    .hamburger{display:flex;}
    .logo{height:42px;}
    .btn-zap{padding:9px 18px;font-size:13px;}

    /* hero mobile: bandeiras em cima, logo centralizado embaixo, mesmo fundo */
    .hero-in{
      grid-template-columns:minmax(0,1fr);column-gap:0;
      padding:0;min-height:0;
      justify-items:center;
    }
    .hero-bandeiras{
      width:100%;max-width:560px;margin-top:0;
      justify-self:center;
    }
    .hero-logo{
      width:min(300px,72vw);
      margin:-16px 0 34px;
      filter:drop-shadow(0 8px 20px rgba(20,27,77,.25));
    }

    .fotos{padding:40px 0 48px;}
    .fotos::before{top:-180px;width:110%;left:-20%;}
    .fotos-head{
      grid-template-columns:1fr;gap:14px;
      justify-items:center;padding:0 20px 22px;
    }
    .fotos-head .chip{justify-self:center;}
    .fotos-title{font-size:27px;}
    .fotos-strip{
      overflow-x:auto;
      scroll-snap-type:x mandatory;
      -webkit-overflow-scrolling:touch;
      gap:10px;padding:0 20px 26px;
    }
    .fotos .fotos-strip img{
      flex:0 0 72%;height:210px;
      scroll-snap-align:center;
    }

    /* história + caminhada: empilha; Ditinho entra no fluxo entre o texto e a faixa */
    .historia-bloco{
      display:flex;flex-direction:column;
      background:var(--ceu);
    }
    .historia-bloco .historia{order:1;}
    .historia-bloco .ditinho-historia{order:2;}
    .historia-bloco .caminhada{order:3;}
    .historia-in{
      grid-template-columns:1fr;
      padding:36px 20px 40px;gap:0;min-height:0;
    }
    .historia-espaco{display:none;}
    .historia-texto{padding-left:0;}
    .historia-texto h2{font-size:22px;}
    .historia-texto p{font-size:13.5px;}
    .ditinho-historia{
      position:static;height:auto;
      width:min(78vw,420px);
      margin:-28px auto -2px;
    }
    .meme-historia{width:104px;right:8px;top:auto;bottom:-52px;}

    .caminhada-in{
      grid-template-columns:1fr;
      padding:44px 20px 64px;gap:28px;
      text-align:center;min-height:0;
    }
    .caminhada h2{padding-left:0;}
    .tocom{
      position:static;align-items:center;
      margin-top:4px;
    }
    .tocom .t1{font-size:30px;margin-left:0;color:#0e1330;}
    .tocom .t2{font-size:66px;}
    .selo-caminhada{width:110px;left:16px;bottom:-56px;}

    .propostas{padding:28px 0 52px;}
    .propostas-card{
      margin:0 16px;border-radius:18px;
      padding:40px 24px;
    }
    .propostas-card h2{font-size:24px;}
    .propostas-card .citacao{font-size:16px;}
    .propostas-card .sub{font-size:13px;margin-bottom:34px;}
    .prop-fecho{margin-top:32px;padding:20px 18px;}
    .prop-fecho h3{font-size:16px;}
    .prop-fecho p{font-size:13px;}
    .propostas-card .marca{font-size:72px;}
    .prop-cols{grid-template-columns:1fr;gap:28px;}
    .prop-col{gap:28px;}
    .prop .num{font-size:36px;padding-right:13px;}
    .prop h3{font-size:15.5px;}

    .dito{padding:56px 0 64px;}
    .dito-head{grid-template-columns:1fr;gap:16px;padding:0 20px 28px;}
    .dito-grid{grid-template-columns:1fr;padding:0 20px;gap:16px;}
    .dito-card{padding:26px 22px;gap:16px;}
    .dito-par{grid-template-columns:64px 1fr;gap:12px;}

    .diga{padding:56px 0 64px;}
    .diga-in{grid-template-columns:1fr;gap:28px;padding:0 20px;}
    .form-card{padding:26px 20px;}
    .linha-2{grid-template-columns:1fr;gap:0;}

    .redes{padding:52px 0 24px;}
    .redes-in{grid-template-columns:1fr;gap:26px;padding:0 20px;justify-items:start;}
    .redes-logo img{height:60px;}
    .redes-base{margin-top:32px;padding:18px 20px 0;flex-direction:column;}

    .tv{padding:24px 0 0;}
    .tv-in{grid-template-columns:1fr;padding:16px 20px 0;gap:24px;}
    .tv-logo-img{width:72%;}
    .tv-tag{font-size:20px;margin-bottom:20px;}
    .tv-player-img{margin-bottom:12px;}
    .tv-right{margin-top:4px;}
    .tv-comp{max-width:78%;}
  }

  /* ===== MOBILE PEQUENO ===== */
  @media (max-width:400px){
    .header-in .btn-zap{display:none;}
    .logo{height:38px;}
    .fotos .fotos-strip img{flex:0 0 84%;}
  }

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

/* ===== 11. IMPRENSA (imprensa.html) ===== */
.header-in nav a.ativo,.m-nav a.ativo{color:var(--rosa);}
.imprensa{background:#fff;padding:80px 0 96px;}
.imprensa-head{
  max-width:1200px;margin:0 auto;padding:0 32px 40px;
  display:grid;grid-template-columns:minmax(0,720px) 1fr;gap:40px;align-items:end;
}
.imprensa-head p{font-size:16px;line-height:1.65;font-weight:500;color:#253775;}
.imprensa-grid{
  max-width:1200px;margin:0 auto;padding:0 32px;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:26px;
}
.materia{
  background:#fff;border-radius:22px;overflow:hidden;
  box-shadow:0 10px 30px rgba(33,50,111,.10);
  display:flex;flex-direction:column;
  transition:transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s;
}
.materia:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(33,50,111,.16);}
.materia-capa{
  aspect-ratio:16/9;background:var(--ceu) url("img/logo.png") center / 42% no-repeat;
  overflow:hidden;
}
.materia-capa img{width:100%;height:100%;object-fit:cover;display:block;}
.materia-corpo{padding:22px 24px 26px;display:flex;flex-direction:column;gap:12px;flex:1;}
.materia-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;font-weight:700;color:#5c6899;}
.materia-tag{
  background:var(--rosa);color:#fff;border-radius:6px;padding:4px 9px;
  font-size:11px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;
}
.materia-tag.materia-tag-materia{background:var(--marinho);}
.materia h3{font-size:18px;font-weight:900;line-height:1.3;color:var(--marinho);}
.materia p{font-size:14px;line-height:1.6;font-weight:500;color:#253775;flex:1;}
.materia-acoes{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px;}
.btn-materia{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--marinho);color:#fff;border:none;cursor:pointer;
  font:inherit;font-weight:800;font-size:13px;
  padding:10px 18px;border-radius:999px;
  transition:background-color .2s, transform .25s cubic-bezier(.22,1,.36,1);
}
.btn-materia:hover{background:var(--azul-hover);transform:translateY(-2px);}
.btn-materia.sec{background:var(--ceu);color:var(--marinho);}
.btn-materia.sec:hover{background:#c8daff;}
.imprensa-vazio{
  max-width:1200px;margin:0 auto;padding:60px 32px;text-align:center;
  font-size:16px;font-weight:600;color:#5c6899;
}
.imprensa-contato{
  max-width:1200px;margin:56px auto 0;padding:0 32px;
}
.imprensa-contato .box{
  background:var(--marinho);color:#fff;border-radius:22px;padding:34px 40px;
  display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;
}
.imprensa-contato h3{font-size:20px;font-weight:900;margin-bottom:6px;}
.imprensa-contato p{font-size:14px;color:#c9cfe6;font-weight:500;line-height:1.6;}
.imprensa-contato .btn-materia{background:var(--rosa);}
.imprensa-contato .btn-materia:hover{background:var(--rosa-hover);}

/* modal do release completo */
.modal-release{
  position:fixed;inset:0;z-index:80;display:none;
  align-items:center;justify-content:center;padding:24px;
  background:rgba(16,23,64,.72);backdrop-filter:blur(3px);
}
.modal-release.aberto{display:flex;}
.modal-release .caixa{
  background:#fff;border-radius:22px;max-width:820px;width:100%;
  max-height:88vh;overflow:auto;position:relative;
  padding:44px 48px 40px;color:#253775;
  animation:modalEntra .3s cubic-bezier(.22,1,.36,1);
}
@keyframes modalEntra{from{opacity:0;transform:translateY(16px) scale(.98);}to{opacity:1;transform:none;}}
.modal-release .fechar{
  position:absolute;top:14px;right:14px;width:40px;height:40px;
  border:none;border-radius:50%;background:var(--ceu);color:var(--marinho);
  font-size:20px;font-weight:700;cursor:pointer;
}
.modal-release .fechar:hover{background:#c8daff;}
.modal-release .materia-meta{margin-bottom:12px;}
.modal-release h2{font-size:26px;font-weight:900;line-height:1.25;color:var(--marinho);margin-bottom:18px;}
.modal-release .texto p{font-size:15px;line-height:1.75;margin-bottom:14px;font-weight:500;}
.modal-release .texto h3{font-size:17px;font-weight:800;margin:20px 0 8px;color:var(--marinho);}
.modal-release .texto ul{padding-left:20px;margin-bottom:14px;}
.modal-release .texto li{font-size:15px;line-height:1.7;margin-bottom:6px;}
.modal-release .capa{width:100%;border-radius:14px;margin-bottom:22px;display:block;}
body.modal-aberto{overflow:hidden;}

@media (max-width:900px){
  .imprensa{padding:52px 0 64px;}
  .imprensa-head{grid-template-columns:1fr;gap:14px;padding:0 20px 28px;}
  .imprensa-grid{padding:0 20px;gap:18px;grid-template-columns:1fr;}
  .imprensa-contato{padding:0 20px;margin-top:40px;}
  .imprensa-contato .box{grid-template-columns:1fr;padding:26px 22px;}
  .modal-release{padding:12px;}
  .modal-release .caixa{padding:52px 22px 28px;border-radius:16px;}
  .modal-release h2{font-size:21px;}
}
