/* Padrão visual compartilhado para páginas de consultorias, produtos e serviços. */
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) :is(h1,h2){
    max-width:18ch;
    text-transform:none!important;
    text-wrap:balance;
    letter-spacing:-.042em!important;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) h1{
    font-size:clamp(2.55rem,4.45vw,4.65rem)!important;
    line-height:1.025!important;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) h2{
    max-width:21ch;
    font-size:clamp(1.85rem,2.75vw,2.9rem)!important;
    line-height:1.1!important;
    letter-spacing:-.034em!important;
    text-shadow:0 0 22px rgba(68,210,112,.07);
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) h3{
    font-size:clamp(1.03rem,1.35vw,1.28rem);
    line-height:1.3;
    letter-spacing:-.018em;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) :is(.cp-kicker,.cv-kicker,.co-kicker,.visit-kicker,.meta-kicker,.pn-kicker,.foliar-kicker,.mp-kicker,.eyebrow){
    width:fit-content;
    max-width:100%;
    padding:7px 12px;
    color:#126a3d!important;
    background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(228,246,220,.86));
    border:1px solid rgba(19,112,62,.16);
    border-radius:999px;
    box-shadow:0 9px 24px rgba(8,75,40,.08),0 0 16px rgba(156,255,99,.10);
    font-size:.69rem!important;
    font-weight:850;
    line-height:1.25;
    letter-spacing:.045em!important;
    text-transform:none!important;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) :is(.cp-kicker,.cv-kicker,.co-kicker,.visit-kicker,.meta-kicker,.pn-kicker,.foliar-kicker,.mp-kicker,.eyebrow):before{
    width:20px!important;
    height:2px!important;
    flex:0 0 20px;
    background:linear-gradient(90deg,#d9a935,#f3ce69)!important;
    box-shadow:0 0 9px rgba(229,183,68,.68);
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) :is(p,li,small){
    text-wrap:pretty;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) p{
    font-size:clamp(.92rem,1.05vw,1.03rem);
    line-height:1.72;
}

/* Hierarquia objetiva: fora do hero, a ideia curta lidera e a explicação apoia. */
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:not(:first-of-type) :is(.cp-kicker,.cv-kicker,.co-kicker,.visit-kicker,.meta-kicker,.pn-kicker,.foliar-kicker,.mp-kicker,.eyebrow){
    position:relative;
    isolation:isolate;
    display:flex;
    align-items:flex-start;
    width:min(100%,22ch);
    margin:0 0 14px;
    padding:0 0 10px;
    color:#d7a83d!important;
    background:none;
    border:0;
    border-radius:0;
    box-shadow:none;
    font-size:clamp(1.85rem,3.1vw,3.15rem)!important;
    font-weight:880;
    line-height:1.05;
    letter-spacing:-.035em!important;
    text-align:left;
    text-justify:auto;
    text-shadow:0 0 8px rgba(225,176,58,.22),0 0 24px rgba(225,176,58,.14);
}

/* Hero: título limpo, branco, com reflexo dourado interno e atmosfera verde. */
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:first-of-type :is(.cp-kicker,.cv-kicker,.co-kicker,.visit-kicker,.meta-kicker,.pn-kicker,.foliar-kicker,.mp-kicker,.eyebrow){
    position:relative;
    isolation:isolate;
    width:fit-content;
    max-width:min(100%,22ch);
    padding:0 0 8px!important;
    color:transparent!important;
    background:linear-gradient(105deg,#fff 0%,#fff 34%,#f2c85b 47%,#fff4c7 52%,#fff 66%,#fff 100%)!important;
    background-size:250% 100%!important;
    -webkit-background-clip:text!important;
    background-clip:text!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    filter:drop-shadow(0 0 7px rgba(117,255,94,.28)) drop-shadow(0 0 20px rgba(69,221,91,.16));
    animation:detailHeroGoldSweep 4.8s ease-in-out infinite;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:first-of-type :is(.cp-kicker,.cv-kicker,.co-kicker,.visit-kicker,.meta-kicker,.pn-kicker,.foliar-kicker,.mp-kicker,.eyebrow):after{
    content:"";
    position:absolute;
    z-index:-1;
    inset:-30px -54px -24px -42px;
    pointer-events:none;
    background:
        radial-gradient(circle at 10% 28%,rgba(135,255,94,.95) 0 1.5px,transparent 3px),
        radial-gradient(circle at 78% 8%,rgba(184,255,113,.82) 0 1px,transparent 3px),
        radial-gradient(circle at 92% 72%,rgba(92,255,101,.72) 0 2px,transparent 4px),
        radial-gradient(ellipse at center,rgba(73,231,91,.12),transparent 66%);
    background-size:170px 96px,220px 120px,250px 145px,100% 100%;
    filter:drop-shadow(0 0 8px rgba(99,255,105,.56));
    animation:detailHeroLights 6.5s ease-in-out infinite alternate;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:first-of-type{
    box-shadow:inset 0 -2px 0 rgba(104,246,90,.24),inset 0 -20px 42px rgba(45,200,79,.045);
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:not(:first-of-type) :is(.cp-kicker,.cv-kicker,.co-kicker,.visit-kicker,.meta-kicker,.pn-kicker,.foliar-kicker,.mp-kicker,.eyebrow):before{
    width:24px!important;
    margin-top:.52em;
    flex:0 0 24px;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:not(:first-of-type) :is(.cp-kicker,.cv-kicker,.co-kicker,.visit-kicker,.meta-kicker,.pn-kicker,.foliar-kicker,.mp-kicker,.eyebrow):after{
    content:"";
    position:absolute;
    z-index:0;
    left:0;
    bottom:1px;
    width:38%;
    height:3px;
    border-radius:999px;
    background:linear-gradient(90deg,transparent,#f1c861,#8cff65,transparent);
    box-shadow:0 0 9px rgba(241,200,97,.85),0 0 22px rgba(120,255,102,.42);
    animation:detailTitleGlow 3.8s ease-in-out infinite alternate;
    pointer-events:none;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:not(:first-of-type) h2{
    max-width:34ch;
    margin-top:0!important;
    font-size:clamp(1.22rem,1.75vw,1.72rem)!important;
    font-weight:790;
    line-height:1.28!important;
    letter-spacing:-.018em!important;
    text-shadow:none;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) figure img,
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) [class*="image"] img,
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) [class*="photo"] img{
    display:block;
    width:100%;
    max-width:100%;
    height:100%;
    object-fit:cover;
}
:is(.cp-hero-photo,.cv-hero-photo,.co-hero-photo,.visit-hero-photo,.meta-hero-photo,.pn-hero-photo,.foliar-hero-photo,.mp-hero-photo,.detail-media) img{
    object-position:center 28%!important;
}

/* O segundo bloco recebe contraste claro e leitura própria. */
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2){
    position:relative;
    isolation:isolate;
    overflow:hidden;
    color:#102a1d!important;
    background:
        radial-gradient(circle at 10% 18%,rgba(143,255,88,.18) 0 2px,transparent 3px),
        radial-gradient(circle at 82% 24%,rgba(222,172,51,.26) 0 2px,transparent 3px),
        radial-gradient(circle at 66% 78%,rgba(247,89,82,.10) 0 3px,transparent 4px),
        linear-gradient(135deg,#f3f0dc 0%,#edf4d9 48%,#f7efda 100%)!important;
    background-size:260px 220px,330px 280px,400px 340px,auto!important;
    border-top:1px solid rgba(185,223,132,.55);
    border-bottom:1px solid rgba(22,115,61,.10);
    box-shadow:inset 0 18px 45px rgba(255,255,255,.36),inset 0 -18px 48px rgba(63,143,72,.04);
    animation:detailLightDrift 16s ease-in-out infinite alternate;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2) :is(h2,h3,strong,span,b){
    color:#123b28!important;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2) h2{
    color:#173b28!important;
    text-shadow:none;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2) p,
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2) small{
    color:#4d6858!important;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2) :is(.cp-fit-item,.co-evaluation-item,.visit-fit-item,.meta-warning-points span,.foliar-tech-card,.process-list li){
    color:#173e2a!important;
    background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(225,242,218,.72))!important;
    border-color:rgba(24,121,65,.14)!important;
    box-shadow:0 12px 28px rgba(8,70,36,.06),inset 0 1px rgba(255,255,255,.72);
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2) :is(.detail-negative-icon,.detail-negative-icon .icon,.detail-negative-icon svg){
    color:#f04a50!important;
    stroke:#f04a50!important;
    filter:drop-shadow(0 0 5px rgba(255,49,63,.78)) drop-shadow(0 0 13px rgba(255,49,63,.42));
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2) .detail-negative-icon{
    border-color:rgba(240,74,80,.30)!important;
    background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,224,213,.78))!important;
    box-shadow:0 0 0 1px rgba(255,68,76,.08),0 0 18px rgba(255,55,67,.16)!important;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2) .process-list li::marker{
    color:#f04a50;
    font-weight:900;
    text-shadow:0 0 6px rgba(255,49,63,.75),0 0 14px rgba(255,49,63,.42);
}
.detail-topic-icon{
    transform-origin:center;
    animation:detailIconFloat 3.4s ease-in-out var(--detail-icon-delay,0s) infinite;
}
.detail-topic-icon:not(.detail-negative-icon),.detail-topic-icon:not(.detail-negative-icon) svg{
    filter:drop-shadow(0 0 5px rgba(93,227,91,.38)) drop-shadow(0 0 11px rgba(226,182,65,.22));
}
.detail-neon-active .detail-negative-icon{
    animation:detailNegativePulse 2.7s ease-in-out var(--detail-icon-delay,0s) infinite;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2):before{
    content:"";
    position:absolute;
    z-index:-1;
    width:360px;
    height:360px;
    right:-130px;
    top:-170px;
    border:1px solid rgba(105,232,120,.24);
    border-radius:50%;
    box-shadow:0 0 45px rgba(105,232,120,.12);
    pointer-events:none;
}
:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2):after{
    content:"";
    position:absolute;
    left:8%;right:8%;top:0;height:2px;
    background:linear-gradient(90deg,transparent,#dda93a,#84f365,transparent);
    box-shadow:0 0 14px rgba(99,232,91,.58);
}

/* O bloco de critério entra logo após a apresentação. */
:is(.cp-fit-section,.co-fit-section,.visit-fit-section,.meta-warning-section,.foliar-dark-section,.detail-process-section){
    position:relative;
    isolation:isolate;
    overflow:hidden;
}
@keyframes detailLightDrift{to{background-position:30px 18px,-24px 12px,18px -22px,0 0}}
@keyframes detailTitleGlow{0%{transform:translateX(0);opacity:.58;width:24%}100%{transform:translateX(170%);opacity:1;width:38%}}
@keyframes detailIconFloat{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(2deg)}}
@keyframes detailNegativePulse{0%,100%{transform:translateY(0) scale(1);filter:drop-shadow(0 0 5px rgba(255,49,63,.55))}50%{transform:translateY(-3px) scale(1.045);filter:drop-shadow(0 0 13px rgba(255,49,63,.92))}}
@keyframes detailHeroGoldSweep{0%,18%{background-position:100% 50%}62%,100%{background-position:-120% 50%}}
@keyframes detailHeroLights{0%{opacity:.42;transform:translate3d(-5px,2px,0) scale(.98)}100%{opacity:1;transform:translate3d(8px,-4px,0) scale(1.03)}}

@media(max-width:700px){
    :is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) h1{font-size:clamp(2.2rem,10vw,3.15rem)!important}
    :is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) h2{font-size:clamp(1.72rem,7.7vw,2.35rem)!important}
    :is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:not(:first-of-type) :is(.cp-kicker,.cv-kicker,.co-kicker,.visit-kicker,.meta-kicker,.pn-kicker,.foliar-kicker,.mp-kicker,.eyebrow){font-size:clamp(1.62rem,8.3vw,2.28rem)!important;width:min(100%,18ch)}
    :is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:not(:first-of-type) h2{font-size:clamp(1.12rem,5.3vw,1.48rem)!important;line-height:1.32!important}
    :is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page) p{font-size:.94rem}
    :is(.cp-hero-photo,.cv-hero-photo,.co-hero-photo,.visit-hero-photo,.meta-hero-photo,.pn-hero-photo,.foliar-hero-photo,.mp-hero-photo,.detail-media) img{object-position:center 22%!important}
}
@media(prefers-reduced-motion:reduce){:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:nth-of-type(2),:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:not(:first-of-type) :is(.cp-kicker,.cv-kicker,.co-kicker,.visit-kicker,.meta-kicker,.pn-kicker,.foliar-kicker,.mp-kicker,.eyebrow):after,:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:first-of-type :is(.cp-kicker,.cv-kicker,.co-kicker,.visit-kicker,.meta-kicker,.pn-kicker,.foliar-kicker,.mp-kicker,.eyebrow),:is(.cp-page,.cv-page,.co-page,.visit-page,.meta-page,.pn-page,.foliar-page,.mp-page,.detail-page)>section:first-of-type :is(.cp-kicker,.cv-kicker,.co-kicker,.visit-kicker,.meta-kicker,.pn-kicker,.foliar-kicker,.mp-kicker,.eyebrow):after,.detail-topic-icon,.detail-neon-active .detail-negative-icon{animation:none}}
