/* Página Propostas V3 - CSS isolado para não interferir nas demais páginas */
.pv3-container{
    width:min(1360px, calc(100% - 40px));
    margin-inline:auto;
}

.pv3-hero{
    position:relative;
    overflow:hidden;
    padding:42px 0 34px;
    background:
        radial-gradient(circle at 6% 0%, rgba(38,184,121,.18), transparent 28%),
        radial-gradient(circle at 96% 4%, rgba(255,180,39,.12), transparent 24%),
        linear-gradient(180deg,#f8fbff 0%,#eef5fb 100%);
}

.pv3-hero::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background-image:
        linear-gradient(rgba(15,77,138,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(15,77,138,.035) 1px, transparent 1px);
    background-size:42px 42px;
    mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 92%);
}

.pv3-hero-shell{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(390px,.65fr);
    gap:28px;
    align-items:stretch;
    padding:14px;
    border:1px solid rgba(15,77,138,.10);
    border-radius:34px;
    background:rgba(255,255,255,.72);
    box-shadow:0 28px 70px rgba(14,39,68,.10);
    backdrop-filter:blur(10px);
}

.pv3-hero-copy{
    position:relative;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    min-height:540px;
    padding:52px 54px;
    border-radius:26px;
    color:#fff;
    background:
        radial-gradient(circle at 100% 0%, rgba(255,184,44,.20), transparent 26%),
        linear-gradient(135deg,#0d4e8f 0%,#113d69 55%,#0d2137 100%);
}

.pv3-hero-copy::after{
    content:"";
    position:absolute;
    right:-120px;
    bottom:-170px;
    width:380px;
    height:380px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:50%;
    box-shadow:
        0 0 0 55px rgba(255,255,255,.025),
        0 0 0 110px rgba(255,255,255,.018);
}

.pv3-kicker-row{
    position:relative;
    z-index:1;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
    margin-bottom:24px;
}

.pv3-kicker,
.pv3-location{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:0 14px;
    border-radius:999px;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.12em;
}

.pv3-kicker{
    color:#17314b;
    background:#ffd05c;
}

.pv3-location{
    color:#eaf4ff;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.08);
}

.pv3-hero-copy h1{
    position:relative;
    z-index:1;
    max-width:860px;
    margin:0 0 20px;
    color:#fff;
    font-size:clamp(2.5rem,4.5vw,4.9rem);
    line-height:.98;
    letter-spacing:-.045em;
}

.pv3-lead{
    position:relative;
    z-index:1;
    max-width:850px;
    margin:0;
    color:rgba(255,255,255,.88);
    font-size:clamp(1.02rem,1.45vw,1.28rem);
    line-height:1.7;
}

.pv3-editorial{
    position:relative;
    z-index:1;
    max-width:850px;
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.13);
}

.pv3-editorial p{
    margin:0 0 10px;
    color:rgba(255,255,255,.78);
    line-height:1.65;
}

.pv3-stats{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-top:auto;
    padding-top:28px;
}

.pv3-stat{
    padding:16px 17px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:18px;
    background:rgba(255,255,255,.075);
}

.pv3-stat strong{
    display:block;
    margin-bottom:4px;
    color:#fff;
    font-size:1.25rem;
}

.pv3-stat span{
    display:block;
    color:rgba(255,255,255,.66);
    font-size:.8rem;
    font-weight:700;
}

.pv3-primary-action{
    position:relative;
    z-index:1;
    display:inline-flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    width:max-content;
    min-height:50px;
    margin-top:18px;
    padding:0 20px;
    border-radius:14px;
    color:#17314b;
    background:#ffd05c;
    font-weight:900;
    text-decoration:none;
    box-shadow:0 12px 30px rgba(0,0,0,.16);
}

.pv3-primary-action:hover{
    transform:translateY(-2px);
    background:#ffe08d;
}

.pv3-tools{
    display:grid;
    grid-template-rows:auto auto;
    gap:14px;
}

.pv3-download-card,
.pv3-audio-card{
    border:1px solid rgba(15,77,138,.10);
    border-radius:26px;
    background:#fff;
    box-shadow:0 16px 42px rgba(15,42,74,.07);
}

.pv3-download-card{
    padding:24px;
}

.pv3-audio-card{
    padding:22px 24px;
}

.pv3-tool-heading{
    display:flex;
    align-items:center;
    gap:13px;
}

.pv3-tool-icon{
    display:grid;
    place-items:center;
    flex:0 0 44px;
    width:44px;
    height:44px;
    border-radius:14px;
    color:#fff;
    background:#0f4d8a;
    font-size:1.25rem;
    font-weight:900;
}

.pv3-tool-icon-audio{
    background:#1c9362;
}

.pv3-tool-heading strong{
    display:block;
    margin-top:3px;
    color:#17263c;
    font-size:1.08rem;
}

.pv3-tool-eyebrow{
    display:block;
    color:#0f4d8a;
    font-size:.66rem;
    font-weight:900;
    letter-spacing:.12em;
}

.pv3-tool-description{
    margin:14px 0 17px;
    color:#5b6d83;
    font-size:.9rem;
    line-height:1.55;
}

.pv3-download-list{
    display:grid;
    gap:9px;
}

.pv3-download-item{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:14px;
    align-items:center;
    padding:14px;
    border:1px solid #dce6f1;
    border-radius:17px;
    background:linear-gradient(135deg,#f8fbff,#f1f6fb);
}

.pv3-download-item b,
.pv3-download-item small,
.pv3-file-type{
    display:block;
}

.pv3-file-type{
    margin-bottom:2px;
    color:#8a650c;
    font-size:.61rem;
    font-weight:900;
    letter-spacing:.11em;
}

.pv3-download-item b{
    color:#1b2e47;
    font-size:.92rem;
}

.pv3-download-item small{
    margin-top:3px;
    color:#6c7c90;
    font-size:.7rem;
    font-weight:700;
}

.pv3-download-item a,
.pv3-download-disabled{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:0 14px;
    border-radius:11px;
    font-size:.78rem;
    font-weight:900;
    text-decoration:none;
    white-space:nowrap;
}

.pv3-download-item a{
    color:#17314b;
    background:#ffd05c;
}

.pv3-download-item a:hover{
    background:#ffe08d;
    transform:translateY(-1px);
}

.pv3-download-disabled{
    color:#8794a5;
    background:#e8eef5;
}

.pv3-audio-player{
    display:block;
    width:100%;
    height:42px;
}

.pv3-audio-meta{
    display:flex;
    justify-content:space-between;
    gap:12px;
    align-items:center;
    margin-top:10px;
    color:#6a7b90;
    font-size:.72rem;
    font-weight:800;
}

.pv3-audio-meta a{
    color:#0f4d8a;
    font-weight:900;
}

.pv3-audio-empty{
    padding:14px 16px;
    border-radius:14px;
    color:#66768a;
    background:#f2f6fa;
    font-weight:800;
}

.pv3-overview{
    padding:34px 0 22px;
    background:#fff;
}

.pv3-overview-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:32px;
    align-items:end;
    padding:0 4px 24px;
    border-bottom:1px solid #dce6f1;
}

.pv3-section-eyebrow{
    display:block;
    margin-bottom:7px;
    color:#0f4d8a;
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.13em;
}

.pv3-overview-copy h2,
.pv3-section-heading h2{
    margin:0;
    color:#17263c;
    font-size:clamp(1.8rem,3vw,2.9rem);
    letter-spacing:-.03em;
}

.pv3-overview-copy p{
    max-width:820px;
    margin:10px 0 0;
    color:#63748a;
    font-size:1rem;
    line-height:1.7;
}

.pv3-overview-note{
    min-width:250px;
    padding:16px 18px;
    border-radius:18px;
    color:#17314b;
    background:#f2f7fc;
    border:1px solid #dfe9f3;
}

.pv3-overview-note strong,
.pv3-overview-note span{
    display:block;
}

.pv3-overview-note span{
    margin-top:3px;
    color:#6d7d91;
    font-size:.8rem;
}

.pv3-index{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin-top:18px;
}

.pv3-index-link{
    display:flex;
    align-items:center;
    gap:11px;
    min-height:60px;
    padding:10px 14px;
    border:1px solid #dce6f1;
    border-radius:16px;
    color:#1d304a;
    background:#fff;
    text-decoration:none;
    box-shadow:0 8px 24px rgba(15,42,74,.035);
}

.pv3-index-link:hover{
    border-color:#a9c5df;
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(15,42,74,.07);
}

.pv3-index-link span{
    display:grid;
    place-items:center;
    flex:0 0 34px;
    width:34px;
    height:34px;
    border-radius:11px;
    color:#fff;
    background:#0f4d8a;
    font-size:.7rem;
    font-weight:900;
}

.pv3-index-link strong{
    min-width:0;
    font-size:.82rem;
    line-height:1.25;
}

.pv3-proposals{
    padding:36px 0 76px;
    background:linear-gradient(180deg,#f7faff 0%,#eef4fa 100%);
}

.pv3-section-heading{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,420px);
    gap:30px;
    align-items:end;
    margin-bottom:24px;
}

.pv3-section-heading p{
    margin:0;
    color:#67788e;
    line-height:1.65;
}

.pv3-list{
    display:grid;
    gap:22px;
}

.pv3-proposal-card{
    --tone:#23b26d;
    --tone-soft:rgba(35,178,109,.09);
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,440px);
    gap:26px;
    align-items:start;
    padding:28px;
    border:1px solid rgba(15,77,138,.09);
    border-radius:28px;
    background:#fff;
    box-shadow:0 18px 48px rgba(15,42,74,.07);
    scroll-margin-top:100px;
}

.pv3-proposal-card.no-video{
    grid-template-columns:1fr;
}

.pv3-proposal-card.tone-blue{
    --tone:#0f4d8a;
    --tone-soft:rgba(15,77,138,.09);
}

.pv3-proposal-card.tone-amber{
    --tone:#d89b2b;
    --tone-soft:rgba(216,155,43,.11);
}

.pv3-proposal-card.tone-red{
    --tone:#b43b3b;
    --tone-soft:rgba(180,59,59,.09);
}

.pv3-proposal-card.tone-purple{
    --tone:#6c5ce7;
    --tone-soft:rgba(108,92,231,.09);
}

.pv3-proposal-copy{
    position:relative;
    padding:4px 4px 4px 10px;
}

.pv3-proposal-topline{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:13px;
}

.pv3-proposal-number{
    display:grid;
    place-items:center;
    width:48px;
    height:48px;
    border-radius:15px;
    color:#fff;
    background:var(--tone);
    font-size:.92rem;
    font-weight:900;
    box-shadow:0 10px 24px color-mix(in srgb,var(--tone) 25%,transparent);
}

.pv3-proposal-label{
    color:var(--tone);
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.13em;
}

.pv3-proposal-copy h3{
    margin:0 0 14px;
    color:#17263c;
    font-size:clamp(1.55rem,2.4vw,2.35rem);
    line-height:1.08;
    letter-spacing:-.025em;
}

.pv3-proposal-body p{
    margin:0 0 13px;
    color:#465a73;
    font-size:1rem;
    line-height:1.76;
}

.pv3-highlight{
    display:flex;
    gap:10px;
    align-items:flex-start;
    margin-top:18px;
    padding:16px 18px;
    border-radius:18px;
    color:var(--tone);
    background:var(--tone-soft);
    border:1px solid color-mix(in srgb,var(--tone) 18%,transparent);
    line-height:1.55;
}

.pv3-highlight span{
    display:grid;
    place-items:center;
    flex:0 0 24px;
    width:24px;
    height:24px;
    border-radius:50%;
    color:#fff;
    background:var(--tone);
    font-size:.72rem;
}

.pv3-back-top{
    display:inline-flex;
    margin-top:18px;
    color:#718095;
    font-size:.75rem;
    font-weight:800;
}

.pv3-video-card{
    overflow:hidden;
    border:1px solid #dde7f0;
    border-radius:24px;
    background:#f8fbfe;
}

.pv3-video-heading{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:14px;
    padding:15px 17px;
    border-bottom:1px solid #dde7f0;
}

.pv3-video-heading span:first-child{
    display:block;
    margin-bottom:3px;
    color:#0f4d8a;
    font-size:.61rem;
    font-weight:900;
    letter-spacing:.11em;
}

.pv3-video-heading strong{
    display:block;
    color:#1c2e47;
    font-size:.9rem;
}

.pv3-video-format{
    display:inline-flex;
    min-height:28px;
    align-items:center;
    padding:0 10px;
    border-radius:999px;
    color:#0f4d8a;
    background:#e7f0f8;
    font-size:.67rem;
    font-weight:900;
}

.pv3-video-frame{
    display:flex;
    justify-content:center;
    padding:14px;
    background:#081421;
}

.pv3-video-frame video,
.pv3-video-frame iframe{
    display:block;
    width:min(100%,360px);
    aspect-ratio:9/16;
    height:auto;
    border:0;
    border-radius:15px;
    background:#000;
    object-fit:contain;
}

.pv3-video-empty{
    display:grid;
    place-items:center;
    min-height:360px;
    padding:28px;
    text-align:center;
    color:#fff;
    background:linear-gradient(135deg,#0d233b,#081421);
}

.pv3-video-empty strong,
.pv3-video-empty span{
    display:block;
}

.pv3-video-empty span{
    margin-top:6px;
    color:rgba(255,255,255,.68);
    font-size:.85rem;
}

.pv3-video-caption{
    margin:0;
    padding:14px 17px 17px;
    color:#697b90;
    font-size:.82rem;
    line-height:1.55;
}

@media (max-width:1180px){
    .pv3-hero-shell{
        grid-template-columns:1fr;
    }

    .pv3-hero-copy{
        min-height:auto;
    }

    .pv3-tools{
        grid-template-columns:1.15fr .85fr;
        grid-template-rows:auto;
    }

    .pv3-index{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .pv3-proposal-card{
        grid-template-columns:minmax(0,1fr) minmax(300px,380px);
    }
}

@media (max-width:900px){
    .pv3-campaign-panel{
        grid-template-columns:1fr;
        gap:10px;
        padding:18px 18px 0 18px;
    }

    .pv3-campaign-copy{
        padding-bottom:0;
    }

    .pv3-campaign-name{
        max-width:none;
    }

    .pv3-campaign-photo{
        justify-self:center;
    }

    .pv3-container{
        width:min(100% - 28px,1360px);
    }

    .pv3-hero{
        padding-top:24px;
    }

    .pv3-hero-shell{
        padding:10px;
        border-radius:25px;
    }

    .pv3-hero-copy{
        padding:36px 30px;
        border-radius:20px;
    }

    .pv3-hero-copy h1{
        font-size:clamp(2.2rem,10vw,3.8rem);
    }

    .pv3-tools{
        grid-template-columns:1fr;
    }

    .pv3-overview-card,
    .pv3-section-heading{
        grid-template-columns:1fr;
        gap:15px;
        align-items:start;
    }

    .pv3-overview-note{
        min-width:0;
    }

    .pv3-index{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .pv3-proposal-card{
        grid-template-columns:1fr;
        padding:22px;
    }

    .pv3-video-card{
        width:min(100%,430px);
        margin-inline:auto;
    }
}

@media (max-width:620px){
    .pv3-campaign-panel{
        margin-top:18px;
        border-radius:20px;
    }

    .pv3-campaign-number{
        font-size:3.2rem;
    }

    .pv3-campaign-name{
        font-size:.95rem;
    }

    .pv3-campaign-photo img{
        max-width:180px;
    }

    .pv3-container{
        width:min(100% - 20px,1360px);
    }

    .pv3-hero{
        padding:14px 0 24px;
    }

    .pv3-hero-copy{
        padding:28px 22px;
    }

    .pv3-kicker-row{
        margin-bottom:18px;
    }

    .pv3-hero-copy h1{
        font-size:2.55rem;
    }

    .pv3-lead{
        font-size:.98rem;
    }

    .pv3-stats{
        grid-template-columns:1fr;
        gap:8px;
    }

    .pv3-stat{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:14px;
        padding:12px 14px;
    }

    .pv3-stat strong{
        margin:0;
        font-size:1rem;
    }

    .pv3-stat span{
        text-align:right;
    }

    .pv3-primary-action{
        width:100%;
    }

    .pv3-download-card,
    .pv3-audio-card{
        padding:18px;
        border-radius:20px;
    }

    .pv3-download-item{
        grid-template-columns:1fr;
    }

    .pv3-download-item a,
    .pv3-download-disabled{
        width:100%;
    }

    .pv3-audio-meta{
        align-items:flex-start;
        flex-direction:column;
    }

    .pv3-overview{
        padding-top:26px;
    }

    .pv3-index{
        display:flex;
        overflow-x:auto;
        gap:9px;
        margin-right:-10px;
        padding:2px 10px 10px 0;
        scroll-snap-type:x proximity;
    }

    .pv3-index-link{
        flex:0 0 230px;
        scroll-snap-align:start;
    }

    .pv3-proposals{
        padding-top:28px;
    }

    .pv3-proposal-card{
        padding:18px;
        border-radius:22px;
    }

    .pv3-proposal-copy{
        padding-left:2px;
    }

    .pv3-proposal-copy h3{
        font-size:1.6rem;
    }

    .pv3-video-frame{
        padding:10px;
    }

    .pv3-video-frame video,
    .pv3-video-frame iframe{
        width:min(100%,330px);
    }
}


.pv3-campaign-panel{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:20px;
    margin-top:24px;
    padding:22px 24px 0 24px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:24px;
    background:linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
    overflow:hidden;
}

.pv3-campaign-panel::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:8px;
    background:linear-gradient(90deg,#23b26d 0%, #ffd05c 55%, #0f4d8a 100%);
}

.pv3-campaign-copy{
    padding:2px 0 24px;
}

.pv3-campaign-eyebrow{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:0 14px;
    border-radius:999px;
    color:#17314b;
    background:#ffd05c;
    font-size:.78rem;
    font-weight:900;
    letter-spacing:.11em;
}

.pv3-campaign-number{
    display:block;
    margin-top:12px;
    color:#ffd05c;
    font-size:clamp(3rem,7vw,5.7rem);
    line-height:.88;
    letter-spacing:-.06em;
    text-shadow:0 10px 24px rgba(0,0,0,.18);
}

.pv3-campaign-name{
    display:block;
    margin-top:8px;
    color:#ffffff;
    font-size:1.05rem;
    font-weight:800;
    line-height:1.25;
    max-width:320px;
}

.pv3-campaign-photo{
    margin:0;
    align-self:end;
}

.pv3-campaign-photo img{
    display:block;
    width:min(100%, 230px);
    max-width:230px;
    height:auto;
    object-fit:contain;
    filter:drop-shadow(0 22px 34px rgba(0,0,0,.28));
}


/* Correção mobile do bloco DEP. FEDERAL / 5522 */
@media (max-width: 900px){
  .pv3-campaign-panel{
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 18px 18px 0 18px !important;
  }

  .pv3-campaign-copy{
    padding-bottom: 0 !important;
  }

  .pv3-campaign-name{
    max-width: none !important;
  }

  .pv3-campaign-photo{
    justify-self: center !important;
    align-self: end !important;
    margin-top: 6px !important;
  }
}

@media (max-width: 620px){
  .pv3-campaign-panel{
    margin-top: 18px !important;
    border-radius: 20px !important;
    grid-template-columns: 1fr !important;
  }

  .pv3-campaign-copy{
    position: relative !important;
    z-index: 2 !important;
  }

  .pv3-campaign-eyebrow{
    min-height: 32px !important;
    font-size: .74rem !important;
  }

  .pv3-campaign-number{
    font-size: 3.2rem !important;
    max-width: 100% !important;
  }

  .pv3-campaign-name{
    font-size: .95rem !important;
    max-width: 170px !important;
  }

  .pv3-campaign-photo{
    justify-self: end !important;
    align-self: end !important;
    margin-top: -72px !important;
  }

  .pv3-campaign-photo img{
    width: 170px !important;
    max-width: 170px !important;
  }
}


/* =========================================================
   CORREÇÃO MOBILE V2 - BLOCO DEP. FEDERAL / 5522
   Texto e número ficam em cima; foto fica abaixo.
   Sem sobreposição e sem margem negativa.
   ========================================================= */
@media (max-width: 620px){

  .pv3-campaign-panel{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:14px !important;
    margin-top:18px !important;
    padding:18px 18px 0 18px !important;
    min-height:0 !important;
    overflow:hidden !important;
  }

  .pv3-campaign-copy{
    position:relative !important;
    z-index:3 !important;
    order:1 !important;
    width:100% !important;
    padding:0 !important;
  }

  .pv3-campaign-eyebrow{
    display:inline-flex !important;
    position:relative !important;
    z-index:4 !important;
    min-height:32px !important;
    padding:0 13px !important;
    font-size:.72rem !important;
    line-height:1 !important;
  }

  .pv3-campaign-number{
    display:block !important;
    position:relative !important;
    z-index:4 !important;
    width:100% !important;
    max-width:none !important;
    margin:12px 0 0 0 !important;
    font-size:clamp(3.4rem,19vw,5rem) !important;
    line-height:.88 !important;
    white-space:nowrap !important;
  }

  .pv3-campaign-name{
    display:block !important;
    position:relative !important;
    z-index:4 !important;
    width:100% !important;
    max-width:none !important;
    margin:10px 0 0 0 !important;
    padding:0 !important;
    font-size:1rem !important;
    line-height:1.25 !important;
  }

  .pv3-campaign-photo{
    position:relative !important;
    z-index:2 !important;
    order:2 !important;
    align-self:center !important;
    justify-self:center !important;
    width:100% !important;
    margin:4px 0 0 0 !important;
    padding:0 !important;
    text-align:center !important;
    transform:none !important;
  }

  .pv3-campaign-photo img{
    display:block !important;
    position:relative !important;
    width:auto !important;
    max-width:min(78vw, 245px) !important;
    height:auto !important;
    margin:0 auto !important;
    transform:none !important;
  }

  .pv3-campaign-panel::after{
    z-index:5 !important;
  }
}


/* =========================================================
   MOBILE FINAL - NOVO ARQUIVO SEM CACHE
   ========================================================= */
@media (max-width: 820px){

  .pv3-campaign-panel{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:18px !important;
    width:100% !important;
    min-height:auto !important;
    padding:20px 20px 0 !important;
    overflow:hidden !important;
  }

  .pv3-campaign-copy{
    display:block !important;
    position:relative !important;
    inset:auto !important;
    order:1 !important;
    z-index:10 !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
  }

  .pv3-campaign-eyebrow{
    display:inline-flex !important;
    position:relative !important;
    inset:auto !important;
    margin:0 !important;
    transform:none !important;
  }

  .pv3-campaign-number{
    display:block !important;
    position:relative !important;
    inset:auto !important;
    width:100% !important;
    max-width:100% !important;
    margin:14px 0 0 !important;
    padding:0 !important;
    font-size:clamp(3.5rem, 16vw, 5.2rem) !important;
    line-height:.9 !important;
    white-space:nowrap !important;
    transform:none !important;
  }

  .pv3-campaign-name{
    display:block !important;
    position:relative !important;
    inset:auto !important;
    width:100% !important;
    max-width:100% !important;
    margin:12px 0 0 !important;
    padding:0 !important;
    font-size:1rem !important;
    line-height:1.3 !important;
    transform:none !important;
  }

  .pv3-campaign-photo{
    display:block !important;
    position:relative !important;
    inset:auto !important;
    order:2 !important;
    z-index:1 !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    align-self:center !important;
    justify-self:center !important;
    text-align:center !important;
    transform:none !important;
  }

  .pv3-campaign-photo img{
    display:block !important;
    position:relative !important;
    inset:auto !important;
    width:auto !important;
    max-width:min(68vw, 260px) !important;
    height:auto !important;
    margin:0 auto !important;
    padding:0 !important;
    transform:none !important;
  }
}

@media (max-width: 480px){
  .pv3-campaign-panel{
    padding:18px 16px 0 !important;
  }

  .pv3-campaign-number{
    font-size:3.6rem !important;
  }

  .pv3-campaign-photo img{
    max-width:220px !important;
  }
}
