* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Roboto'; text-decoration: none; transition: all .2s;}

::-webkit-scrollbar-track{background-color:#f1f1f1;}::-webkit-scrollbar{width:1rem;}::-webkit-scrollbar-thumb{background:#a7a7a7; border-radius: 2rem;}

@font-face {
  font-family: 'Material Icons Outlined';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/materialiconsoutlined/v108/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUce.woff2) format('woff2');
}

.material-icons-outlined {
  font-family: 'Material Icons Outlined';
  font-weight: normal; 
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

#full {position: relative; width: 100%; height: 100%; left: 0; right: 0; margin: 0 auto; overflow-x: hidden; background: #f1f1f1;} a,p{font-size: .8rem; color: #3f3f3f;} .titPADR {font-size: 1.2rem; color: #5e5e5e; font-weight: 500; padding: .6rem 0;} .subtitPADR {font-size: 1rem; color: #5e5e5e;} .botPADR {position: relative; padding: .5rem; border: .1rem solid #e0e0e0; background: #fff; border-radius: 2rem;}  .material-icons-outlined {color: #5e5e5e; font-size: 1rem !important; margin: .2rem;} .iconPADR {position: absolute; margin-top: -.56rem; border-left: .1rem solid #e0e0e0; border-right: .1rem solid #e0e0e0; width: 4rem; height: 3.7rem; display: grid; place-items: center; left: 0; background: #fff; text-align: center; z-index: 2;} #topo label {display: none;} input[type=checkbox] {display: none;} .fullFULL {position: absolute; width: 0; height: 0; visibility: hidden; overflow: hidden;} .hide {margin-top: -7rem !important; opacity: 0;} .anime {visibility: hidden; opacity: 0; margin-top: 3rem; transition: all 1.5s !important;} .anime-start {visibility: visible; opacity: 1; margin-top: initial;}

.gifHALL {width: 70%; height: 70%;}

#topo {position: fixed; width: 3rem; height: 100%; top: 0; left:0; margin: 0; background: #3f3f3f; z-index: 10;} #topo:hover {width: 8rem; opacity: 1;background: #f7f7f7; border-right: .1rem solid #c9c9c9;} #topo:hover #idtTOP {background-image: url(../imgs/marca-cda-fulldynamic.webp); filter: brightness(2); width: 5rem; background-size: 100%;} #topo:hover #menu a {visibility: visible; left: 0; } #topo:hover #menu a span {transform: translateX(0); color: #7c7c7c;}
#idtTOP {position: relative; width: 2rem; height: 3rem; margin: 2rem auto; background-repeat: no-repeat; background-size: 70% !important; background-image: url(../imgs/cursos-cda-fulldynamic.webp); display: block; background-position: center; filter: brightness(7);}
#menu {position: relative; width: 100%; height: auto; display: grid;} #menu a {height: 2.3rem; position: relative; left: -10rem; visibility: hidden; transition: all .2s; padding: .5rem .5rem .5rem .7rem; margin: .3rem 0; background: #fff; border-bottom: .1rem solid #e7e7e7; display: flex; align-items: center;} #menu a:nth-child(2) {transition: .3s;} #menu a:nth-child(3) {transition: .6s;} #menu a:nth-child(4) {transition: .9s;} #menu a:nth-child(5) {transition: 1.2s;} #menu a:nth-child(6) {transition: 1.5s;}  #menu a:hover {background: transparent;} #menu a:hover::after {width: 100%; z-index: -1; transition: all .3s; border-radius: 0 !important; left: 0; transform: none;} #menu a::after {content: ''; position: absolute; transition: all .3s; width: 2rem; height: 2.3rem; left: -1.7rem;}   #menu a:nth-child(2)::after {background: #0DA65B; border-radius: 50%;} #menu a:nth-child(3)::after {background: #F25944;} #menu a:nth-child(4)::after {background: #0DA65B; border-radius: 50%;} #menu a:nth-child(5)::after {background: #F2D61F;} #menu a:nth-child(6)::after {background: #2C7BF2; border-radius: 50%;}  #menu a span {color: #c9c9c9; visibility: visible; transform: translateX(10rem); font-size: 1.2rem !important;}

#slid {position: relative; width:calc(100% + 3rem); height: 50rem; background-position: center; background-repeat: no-repeat; background-size: 100%; background-image: url(../imgs/capas/cursos-cda-fulldynamic.webp);} .exttSLID {position: relative; width: 35%; top: 5rem; left: 7rem;} .exttSLID .titPADR {font-size: 1.6rem;} .exttSLID .titPADR span {padding: .3rem; color: #4d6f99; font-size: 1.9rem;} .exttSLID .subtitPADR {font-size: 1.1rem; width: 80%;} .exttSLID1 {margin-top: 5rem;} 
#slid a {padding: .7rem; width: 40%; font-size: .9rem; position: relative; margin-top: 1rem; border-radius: 2rem;  background: #fff; grid-area: botSLID; display: flex; place-items: center; place-content: center} #slid a:hover {box-shadow: 0 0 .3rem #c9c9c9;}

#exttPADR {position: relative; width: 80%; padding-left: 3rem; margin: 0 auto;} #exttPADR .titPADR {padding-left: 5rem; border: .1rem solid #e0e0e0; height: 4rem; line-height: 3rem; background: #fff;} 

#cat {position: relative; width: 100%; margin: 0 auto; padding: 0;} #exttCAT {position: relative; width: 100%; padding: 1rem 0; display: grid; grid-template-areas: "blocCAT blocCAT blocCAT blocCAT blocCAT blocCAT blocCAT";} #cat a {background: #fff; position: relative; width: auto; padding: .5rem .5rem 1rem .5rem; border-radius: .2rem; border-right: .1rem solid #e0e0e0; border-bottom: .1rem solid #e0e0e0; text-align: center; display: grid; grid-template-areas: "spanCAT" "txtCAT"; font-size: .9rem;} #cat a:hover {background: #2C7BF2; color: #fff; border-radius: 0;} #cat a:hover span {color: #fff;} #cat a:hover p {color: #fff;} #cat::-webkit-scrollbar-track{}::-webkit-scrollbar{height: .5rem;} #cat a span { margin: .5rem auto; grid-area: spanCAT; font-size: 1.6rem !important; color: #2C7BF2;}

#hall {position: relative; width: 100%; height: 100%; top: 0; left: 0; right: 0; margin: 0 auto; padding: 4rem 0;} 

#exttHALL {position: relative; width: 100%; display: grid; grid-template-areas: "exttHALL exttHALL exttHALL exttHALL"; margin: 1rem auto; grid-gap: 1rem;}

.categHALL {position: relative; width: auto; margin: 0; padding: 1rem 0 1.5rem 0; border: .1rem solid #e0e0e0; display: grid; grid-template-areas: "titHALL titHALL titHALL"; background: #fff; transition: all .2s; place-content: center; grid-gap: 0 1rem;} .categHALL:hover {box-shadow: 0 0 .3rem #c9c9c9;}

.titHALL {font-size: 1rem; grid-area: titHALL; color: #5e5e5e; margin-bottom: 1rem; display: flex; place-items: center;} .titHALL span {color: #fff; color: #e6cd41; font-size: 1.3rem !important; border-radius: .3rem; padding: .3rem;}

.blocHALL { width: 100%; height: 4.5rem; transition: all .1s !important; position: relative; display: grid; place-content: center;}
.blocHALL:hover {background: #f1f1f1; box-shadow: 0 0 .6em #b1b1b1;} .blocHALL:nth-child(4) .iconSET {right: 0; left: inherit !important;}
.blocHALL:nth-child(4):hover .infCURS {right: 0;}

.blocHALL:hover .imgHALL {}
.imgHALL {position: relative; width: 4rem; height: 4.5rem; margin: 0 auto; border-radius: .5rem; border: .1em solid #c9c9c9; display: block; background-size: cover; background-position: center; background-repeat: no-repeat; cursor: pointer;}

/*Designer Gráfico*/
.imgHALL1 {background-image: url(../imgs/cursos/dsg/curso-design-grafico-cda-01.webp);}
.imgHALL2 {background-image: url(../imgs/cursos/dsg/curso-design-grafico-cda-04.webp);}
.imgHALL3 {background-image: url(../imgs/cursos/dsg/curso-design-grafico-cda-02.webp);}

/*Emagrecimento*/
.imgHALL4 {background-image: url(../imgs/cursos/emg/curso-emagrecimento-cda-04.webp);}
.imgHALL5 {background-image: url(../imgs/cursos/rde/renda-extra-ganhar-dinheiro-cda-cursos-fulldynamic-01.webp);}
.imgHALL6 {background-image: url(../imgs/cursos/emg/curso-emagrecimento-cda-05.webp);}
.imgHALL26 {background-image: url(../imgs/cursos/emg/curso-emagrecimento-cda-02.webp);}

/*Estética*/
.imgHALL7 {background-image: url(../imgs/cursos/est/curso-estetica-cda-03.webp);}
.imgHALL8 {background-image: url(../imgs/cursos/est/curso-estetica-cda-04.webp);}
.imgHALL9 {background-image: url(../imgs/cursos/est/curso-estetica-cda-05.webp);}

/*Finanças*/
.imgHALL10 {background-image: url(../imgs/cursos/fin/curso-financas-cda-02.webp);}
.imgHALL11 {background-image: url(../imgs/cursos/fin/curso-financas-cda-03.webp);}
.imgHALL12 {background-image: url(../imgs/cursos/fin/curso-financas-cda-01.webp);}

/*Idiomas*/
.imgHALL13 {background-image: url(../imgs/cursos/idm/curso-ingles-cda-01.webp);}
.imgHALL14 {background-image: url(../imgs/cursos/idm/curso-ingles-cda-02.webp);}
.imgHALL15 {background-image: url(../imgs/cursos/idm/curso-espanhol-cda-04.webp);}

/*Marketing Digital*/
.imgHALL16 {background-image: url(../imgs/cursos/mkt/curso-marketing-digital-cda-01.webp);}
.imgHALL17 {background-image: url(../imgs/cursos/mkt/curso-marketing-digital-cda-06.webp);}
.imgHALL18 {background-image: url(../imgs/cursos/mkt/curso-marketing-digital-cda-03.webp);}

/*Programação*/
.imgHALL19 {background-image: url(../imgs/cursos/pgm/curso-programacao-cda-01.webp);}
.imgHALL20 {background-image: url(../imgs/cursos/pgm/curso-programacao-cda-03.webp);}
.imgHALL21 {background-image: url(../imgs/cursos/pgm/curso-programacao-cda-04.webp);}
.imgHALL25 {background-image: url(../imgs/cursos/pgm/curso-programacao-cda-02.webp);}

/*Psicologia*/
.imgHALL22 {background-image: url(../imgs/cursos/psc/curso-psicologia-cda-01.webp);}
.imgHALL23 {background-image: url(../imgs/cursos/psc/curso-psicologia-cda-03.webp);}
.imgHALL24 {background-image: url(../imgs/cursos/psc/curso-psicologia-cda-02.webp);}

.blocHALL a {color: #010101; place-content: center;} .iconSET {position: absolute; width: auto; height: auto; top: -1.3rem; left: 0; font-size: 2rem !important; z-index: 20; color: #3f3f3f;}

#hall .infCURS {padding: .3em; place-content: center; opacity: 0; visibility: hidden; transform: scale(0); display: grid; place-items: center; top: 5rem; position: absolute; background: #3f3f3f; width: auto; height: auto; padding: .7rem; border-radius: .3rem; z-index: 10;} .infCURS .titCURS {font-size: .9rem; color: #c9c9c9; margin: .3rem auto 0 auto; text-align: center; font-weight: 500;} .notCURS {margin: .2rem auto;} .notCURS p {color: #c9c9c9;} .infCURS .iconST {color: #F2D61F; font-size: .8rem; padding: 0; transform: translateY(.2rem);} .avalCURS {color: #a7a7a7; font-size: .8rem;} .exttBOT { margin: 1rem auto 0 auto; position: relative; height: auto; display: flex; place-content: center;} .exttBOT a {width: 100%; line-height: 1.8rem; padding: .3rem; background: #c9c9c9; text-align: center; padding: 0 .3rem; margin: 0 .3rem; transition: all .2s; transform: scale(0); border-radius: .2rem; visibility: hidden;} .exttBOT a:hover {transform: scale(1.05) !important; opacity: .9;} .exttBOT a:nth-child(2) {background: #2C7BF2; color: #fff; transition: all .4s;}
.blocHALL:hover .infCURS {visibility: visible !important; opacity: 1 !important; transform: scale(1) !important;}
#hall a {visibility: visible !important; transform: scale(1) !important; width: 5rem;}

.va-carrousel-section {
    position: relative; width: 100%;
    margin: 0 auto; padding-bottom: 4rem;
  } 
  .va-carrousel-section:hover {opacity: 1;} .va-carrousel-section .titPADR {color: #5e5e5e; width: auto; left: 0; position: relative; text-align: left;} 
  .va-carrousel-flexbox { overflow-y: hidden;}
  .va-carrousel-flexbox .va-card { width: 15rem; cursor: pointer; height: 23rem; display: grid; background: #fff;
  flex: 0 0 auto; margin: 0 .5rem; border: .1em solid #e0e0e0; padding: .3rem; border-radius: .3rem;}
  .va-carrousel-flexbox .va-card:hover {height: auto;}
  .va-carrousel-flexbox .va-card:hover .exttBOT a {visibility: visible; transform: scale(1);}
  .va-card .infCURS {width: 95%; padding-bottom: 1rem; margin: 0 auto;} .va-card .titCURS {text-align: left; color: #3f3f3f; margin: .5rem auto .3rem auto; font-size: .9rem;} .va-card .descCURS {font-size: .8rem; color: #a7a7a7; padding: .3rem 0; position: relative; height: 5rem; overflow: hidden;} .va-card .descCURS::before {content: ''; position: absolute; width: 100%; height: 80%; bottom: 0; background: linear-gradient(transparent,#fff);}
  .va-card .notCURS {display: flex; place-items: center;} .va-card .notCURS p {color: #3f3f3f;}
  .va-card .imgCURS {position: relative; width: 100%; height: 10rem; border: .1rem solid #e7e7e7; background-position: top; background-repeat: no-repeat; background-size: cover;}

  .imgPLATCURS {position: relative; width: 3.5rem; height: 3.5rem; background-position: center; background-repeat: no-repeat; background-size: 80%; border: .1rem solid #e7e7e7; border-radius: .2rem; display: block; margin-right: .5rem;} .imgPLATCURSH {background-image: url(../imgs/parceiras/hotmart.webp);} .imgPLATCURSM {background-image: url(../imgs/parceiras/monetizze.webp);} .imgPLATCURSE {background-image: url(../imgs/parceiras/eduzz.webp);}    

  .va-card .exttBOT a:nth-child(1) {background: #fff; border: .1rem solid #e0e0e0;} 
  
  .link-plain,
  .link-plain:hover,
  .link-plain:active,
  .link-plain:visited {
    text-decoration: none;
  }
  
  .link-plain-f,
  .link-plain-f:hover,
  .link-plain-f:active,
  .link-plain-f:focus,
  .link-plain-f:visited {
    color: initial;
    text-decoration: none !important;
  }
  
  .div-center {
    display: inline-block;
    width: 100%;
    text-align: center;
  }
 
  .exttVACONT {
      position: relative;
      width: 100%; 
      margin: 1rem auto;
  }
  
  .va-carrousel-flexbox {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none; 
  }
  
  .va-carrousel-flexbox .va-card:last-child::after {
    content: ' ';
    display: inline-block;
  }
  
  .va-card { 
    user-select: none;
    outline: none;  
  }
  
  .va-carrousel,
  .va-carrousel-flexbox {
    width: 100%;
    -webkit-overflow-scrolling: touch;
  }
  
  .va-carrousel::-webkit-scrollbar,
  .va-carrousel-flexbox::-webkit-scrollbar {
    display: none;
  }
  
  .deals-paddle {
    height: 1rem;
    width: 1rem; 
    margin: auto;
    position: absolute; 
    border: none; margin-left: -2rem; margin-right: -2rem;
    display: flex; place-items: center; 
  cursor:pointer;
  }
  
  .deals-paddle:focus {
    outline: none;
  }
  
  .deals-paddle:active {
    border-style: none;
    outline: none;
    user-select: none;
  }
  
  .deals-paddle svg {color:#3f3f3f;
  }

  .deals-paddle svg:hover {opacity: .7;}
  
  .deals-scroll-left {
    top: 0;
    left: 0; opacity: 0;
    bottom: 0;
  }
  
  .deals-scroll-right {
    top: 0;
    bottom: 0;
    right: 0;
  }

  .va-carrousel-section:hover .deals-scroll-left {opacity: 1;}

  #catALT {position: relative; width: 100%; left: 0; right: 0; margin: 0 auto;}
  #exttCATALT {position: relative; width: 100%;left: 0; right: 0; margin: 1rem auto; display: flex; grid-gap: 1rem;}
  .blocCATALTP {position: relative; width: 50%; height: auto; border: .1rem solid #e0e0e0; background: #fff; display: grid; place-content: center; padding: 1rem;} .blocCATALTP div {display: flex; margin-bottom: .5rem;}
  #exttCATALTP a {visibility: visible !important; transform: scale(1) !important; width: 5rem;}

  #catALT .infCURS {padding: .3em; place-content: center; opacity: 0; visibility: hidden; transform: scale(0); display: grid; place-items: center; top: 5rem; position: absolute; background: #3f3f3f; width: auto; height: auto; padding: .7rem; border-radius: .3rem; z-index: 10;}
  
  #exttCATALTP {display: grid; grid-template-areas: "blocCATALT blocCATALT blocCATALT blocCATALT"; grid-gap: 1rem;} .titCATALTPD {position: relative; font-size: 1.1rem !important; color: #5e5e5e !important; top: .6rem; margin-bottom: 1rem;} .iconPADR2ALTD {font-size: 3rem !important; color: #5e5e5e; margin-top: -.2rem;}
  
  #exttCATALT2 {position: relative; width: 100%; left: 0; right: 0; margin: 0 auto; display: grid; grid-template-areas: "catALT catALT catALT catALT"; grid-gap: 1rem;} .blocCATALT {position: relative; width: 100%; height: auto; background: #fff; border: .1rem solid #e0e0e0; border-radius: .3rem; display: grid; place-content: center; place-items: center;} .blocCATALT:hover {box-shadow: 0 0 .3rem #c9c9c9;} .blocCATALT .iconPADR2 {font-size: 2rem !important; color: #5e5e5e;} .titCATALTP {position: relative; font-size: 1rem; color: #5e5e5e;} 
  
  #roda {position: relative; width: 100%; left: -.5rem; margin: 5rem auto 0 auto; background: #fff; border-bottom: 0 !important; border: .1rem solid #e0e0e0; z-index: 1;} #roda::before {content: ''; position: absolute; width: 100vw; height: 100%; top: 0; left: -10%; margin-left: 3rem; background: #fff;}  #exttRODA {position: relative; width: 100%; display: flex;padding: 2rem 0 1rem 0; margin: 0 auto;} .blocFT {position: relative; width: 100%; left: 0; right: 0; margin: 0 auto; display: grid; place-items: center;} .blocFT span {position: relative; font-size: 2rem; color: #5e5e5e; text-align: center; padding: .7rem;} .blocFT:nth-child(2) {border-left: .1rem solid #e0e0e0; border-right: .1rem solid #e0e0e0;} .blocFT .iconPADR2 {font-size: 1.5rem !important; margin-top: 0;} .titFT {position: relative; width: 90%; font-size: 1.2rem; text-align: center; color: #5e5e5e; display: flex; place-content: center; place-items: center;} .descFT {position: relative; width: 90%; text-align: center; color: #7c7c7c; padding: .5rem;} 
  #platFT {position: relative; width: 91%; margin: 1rem auto 0 auto; border-top: .1rem solid #e7e7e7; display: flex; place-content: center; grid-gap: 1rem; padding: 2rem 1rem;} #platFT section {display: flex; grid-gap: 1rem;} #platFT .titFT {width: auto; margin-right: 1rem; color: #474747;} .imgPLAT {position: relative; width: 4rem; height: 4rem; border-radius: .7rem; background-position: center; filter: saturate(.7); background-repeat: no-repeat; border: .1rem solid #e0e0e0; background-size: 100%; background-color: #fff; display: block; cursor: pointer;} .imgPLAT:hover {filter: saturate(1); border-radius: 50%; box-shadow: 0 0 .2rem #c9c9c9;}  .imgPLAT:nth-child(1) {background-image: url(../imgs/parceiras/hotmart.webp);} .imgPLAT:nth-child(2) {background-image: url(../imgs/parceiras/monetizze.webp);} .imgPLAT:nth-child(3) {background-image: url(../imgs/parceiras/eduzz.webp);} .imgPLAT:nth-child(4) {background-image: url(../imgs/parceiras/udemy.webp);} .imgPLAT:nth-child(5) {background-image: url(../imgs/parceiras/kiwify.webp);} .imgPLAT:nth-child(6) {background-image: url(../imgs/parceiras/braip.webp);} .upFT {font-size: 1.7rem; margin-left: 7rem;}
  .menFT {background: #3f3f3f; position: relative; width: 100%; margin: 0 auto; display: flex; padding: 1rem 6.5%; z-index: 1;} .menFT::before {content: ''; position: absolute; width: 100vw; height: 100%; top: 0; left: -10%; margin-left: 3rem; background: #3f3f3f; z-index: -1;} #idtFT {position: relative; width: 3.5rem; height: 3.5rem; margin-right: 3.5rem; background-position: center; background-repeat: no-repeat; background-size: 100%; background-image: url(../imgs/marca-cda-fulldynamic.webp); filter: brightness(7);} .menFT a {padding: .3rem; margin-right: .5rem; color: #c9c9c9;} #rdsFT {margin-left: 3.5rem;} .menFT a:hover {opacity: .7;} #rdsFT a {padding: .3rem; color: #c9c9c9; font-size: .9rem;} #rdsFT a:hover {background: #fff; border-radius: 50%; color: #010101;}

  #dirFT {position: absolute; height: auto; margin-top: -.3rem; color: #c9c9c9; right: 6.5%; display: flex; place-items: center; font-size: .7rem;} #FULLRDP {position: relative;  margin-right: 0; margin-left: 3.5rem; display: block; width: 2rem; height: 2rem; background-image: url(../imgs/fulldynamic-digital.webp); background-repeat: no-repeat; background-size: 70%; background-position: center;} 


  @media screen and (min-width:990px) and (max-width:1100px) {*{font-size: .7rem;}}

  @media screen and (min-width:1900px) {*{font-size: 1.3rem;}}
  
  @media screen and (min-width:300px) and (max-width:990px) {  
    #topo {width: 100%; height: 3rem; box-shadow: none;} #idtTOP {position: relative; margin-top: .2rem !important; width: 3rem;  height: 3rem; background-repeat: no-repeat; background-size: 45% !important; background-image: url(../imgs/cursos-cda-fulldynamic.webp); display: block; background-position: center; filter: brightness(7);} #menu {background: #f7f7f7; visibility: hidden; opacity: 0; top: -.1rem; transition: all .2s;}  #topo:hover #menu a {visibility: hidden; height: 3.5rem; margin: .5rem 0;} #topo:hover {width: 100%;} #topo:hover #idtTOP {background-size: 100% !important; width: 4rem; left: 1rem;} #topo #menu a span {visibility: hidden;} #topo:hover .line {stroke: #7c7c7c;}
    #topo label {display: block; width: 3rem; height: 3rem; margin-top: .7rem; position: relative; float: right;} #menCELL:checked ~ #menu {visibility: visible !important; opacity: 1; height: 100vh; display: block; padding: 1rem 0;}  #menCELL:checked ~ #menu a{visibility: visible !important;} #menCELL:checked ~ #menu a span {visibility: visible !important;}
  
    .ham {
      cursor: pointer;
      -webkit-tap-highlight-color: transparent; 
      transition: transform 400ms;
      -moz-user-select: none;
      -webkit-user-select: none;
      -ms-user-select: none;width: 2.7rem; position: relative;
      user-select: none;
    }
    .hamRotate.active {
      transform: rotate(45deg);
    }
    .hamRotate180.active {
      transform: rotate(180deg);
    }
    .line { 
      fill:none;
      transition: stroke-dasharray 400ms, stroke-dashoffset 400ms;
      stroke:#e0e0e0;
      stroke-width:5;
      stroke-linecap:round;
    }
    .ham1 .top {
      stroke-dasharray: 40 139;
    }
    .ham1 .bottom {
      stroke-dasharray: 40 180;
    }
    .ham1.active .top {
      stroke-dashoffset: -98px; 
    }
    .ham1.active .bottom {
      stroke-dashoffset: -138px;
    }
  
    #slid {width: 100%; height: 43rem; left: 0; background-size: 150%;} .exttSLID {width: 70%; top: 5rem; left: 1rem;} #slid a {width: 70%; margin-top: 1rem; border-radius: 1rem;}

#exttPADR {width: 100%; left: 0; padding: 0;} #exttPADR .titPADR {padding-left: 5rem; place-items: center; padding-right: 2rem; font-size: 1.1rem;} 

#cat {width: 100%; margin-top: -12rem; padding: 0;} #exttCAT {position: relative; width: 100%; padding: 1rem 0; display: grid; grid-template-areas: "blocCAT blocCAT blocCAT";} #cat a {background: #fff; position: relative; width: 33.3vw; font-size: .75rem;} #cat a:hover {background: #2C7BF2; color: #fff; border-radius: 0;} #cat a:hover span {color: #fff;} #cat a:hover p {color: #fff;} #cat::-webkit-scrollbar-track{}::-webkit-scrollbar{height: .5rem;} #cat a span { margin: .5rem auto; grid-area: spanCAT; font-size: 1.6rem !important; color: #2C7BF2;}

#hall {position: relative; width: 100%; padding: 3rem 0;} 

#exttHALL {position: relative; width: 100%; display: grid; grid-template-areas: "exttHALL"; margin: 1rem auto; grid-gap: .5rem;}

.categHALL {width: 100%; margin: 0; padding: .5rem 0 1.3rem 0; border: .1rem solid #e0e0e0; display: grid; grid-template-areas: "titHALL titHALL titHALL" "blocHALL blocHALL blocHALL"; background: #fff; transition: all .2s; place-content: center; grid-gap: 0 1rem;} .categHALL:hover {box-shadow: 0 0 .3rem #c9c9c9;}

.titHALL {font-size: 1rem; grid-area: titHALL; color: #5e5e5e; margin-bottom: 1rem; display: flex; place-items: center;} .titHALL span {color: #fff; color: #e6cd41; font-size: 1.2rem !important; border-radius: .3rem; padding: .3rem;}

.blocHALL { width: 100%; height: 100%; transition: all .1s !important; position: relative; display: grid; place-content: center;}

.blocHALL:hover {background: #f1f1f1; box-shadow: 0 0 .6em #b1b1b1;}

.blocHALL:hover .imgHALL {background-size: 120%;}
.imgHALL {position: relative; width: 5.7rem; height: 5.7rem; margin: 0 auto; border-radius: .5rem; border: .1em solid #c9c9c9; display: block; background-size: cover; background-position: center; background-repeat: no-repeat;}

#hall .infCURS {top: 6.4rem;}

.va-carrousel-section {padding-bottom: 3rem;}

#catALT {position: relative; width: 100%; left: 0; right: 0; margin: 0 auto;} #catALT .infCURS {top: 6.4rem;}
#exttCATALT {position: relative; width: 100%;left: 0; right: 0; margin: 1rem auto; display: grid; grid-gap: 1rem;}
.blocCATALTP {position: relative; width: 100%; height: auto; padding: 1rem .5rem 1.5rem .5rem; border: .1rem solid #e0e0e0;} .blocCATALTP div {display: flex; place-content: center; margin-bottom: 0;} 

#exttCATALTP {display: flex; grid-gap: 1rem;} #exttCATALTP .blocHALL:nth-child(3):hover .infCURS {right: 0;}  #exttCATALTP .blocHALL:nth-child(3):hover .iconSET{right: 0; left: inherit;} #exttCATALTP .blocHALL:nth-child(4) {display: none;} .titCATALTPD {position: relative; font-size: 1.1rem !important; top: 0; margin-bottom: 1rem;} .iconPADR2ALTD {font-size: 1.7rem !important; color: #5e5e5e; margin-top: -.2rem;}

#exttCATALT2 {position: relative; width: 100%; left: 0; right: 0; margin: 0 auto; grid-gap: 1rem; display: grid; grid-template-areas: "catALT catALT"; place-content: center;}
#exttCATALT2 .blocCATALT {padding: 1.5rem .5rem;}

#roda {position: relative; width: 100%; left: 0; right: 0; margin: 4rem auto 0 auto; background: #fff; border: none; border-top: .1rem solid #e0e0e0;} #exttRODA {position: relative;  width: 100%; display: grid; padding: 1rem 0 .5rem 0; margin: 0 auto;}
.blocFT {position: relative; width: 100%; left: 0; right: 0; margin: 0 auto; display: grid; padding: 1rem 0 1.5rem 0; border-bottom: .1rem solid #e0e0e0;}.blocFT:nth-child(2) {border-left: 0; border-right: 0;} .blocFT .iconPADR2 {font-size: 1.5rem !important; margin-top: 0;} .titFT {position: relative; width: 90%; font-size: 1.2rem; text-align: center; color: #3f3f3f; display: flex;} .descFT {position: relative; width: 90%; text-align: center; color: #474747; padding: .5rem;} 
#platFT {position: relative; width: 100%; margin: 1rem auto 0 auto; border-top: .1rem solid #e7e7e7; display: grid; grid-gap: .5rem; padding: 1rem .5rem;} #platFT .titFT {width: auto; margin-right: 0; margin-bottom: .5rem;} #platFT section {grid-gap: .5rem;} .imgPLAT {position: relative; width: 3rem; height: 3rem; border-radius: .7rem; background-position: center; filter: saturate(.7); background-repeat: no-repeat; border: .1rem solid #e0e0e0; background-size: 100%; background-color: #fff; display: block; cursor: pointer;} .imgPLAT:hover {filter: saturate(1); border-radius: 50%; box-shadow: 0 0 .2rem #c9c9c9;} 
.menFT { position: relative; width: 100%; margin: .5rem auto; display: grid; grid-template-areas: "idtFT dirFT" "linkFT linkFT" "rdsFT rdsFT"; padding: .5rem;} #idtFT {position: relative; width: 3.5rem; height: 3.5rem; left: .5rem; margin: 0; background-position: center; background-repeat: no-repeat; background-size: 100%; grid-area: idtFT; background-image: url(../imgs/marca-cda-fulldynamic.webp);} .linkFT {grid-area: linkFT; display: flex; justify-content: space-between;} .linkFT a { position: relative;  width: auto;  padding: .3rem;  margin: 0 .3rem 0 0;} #rdsFT {margin: 1rem 0; left: 0; right: 0; display: flex; grid-area: rdsFT;} #rdsFT a {padding: .3rem;}

#dirFT {position: relative; height: auto; margin: 0; right: .5rem; display: flex; justify-content: right; grid-area: dirFT;} #FULLRDP {position: absolute; top: 5.7rem; display: block; width: 2rem; height: 2rem; right: .5rem; background-image: url(../imgs/fulldynamic-digital.webp); background-repeat: no-repeat; background-size: 100%; background-position: center;} 
}


@media screen and (min-width:400px) and (max-width:990px) {*{font-size: 1.1rem;}}

@media screen and (min-width:600px) and (max-width:990px) {*{font-size: 1.2rem;} #exttCATALT2 {display: flex; text-align: center;}}

@media screen and (min-width:700px) and (max-width:990px) {*{font-size: 1.6rem;}}


/* =========================================================
   CDA — UI/UX MODERNIZATION
   Apenas apresentação: estrutura/IDs/classes existentes
   foram preservados para não quebrar PHP ou JavaScript.
   ========================================================= */

:root{
    --cda-primary:#2563eb;
    --cda-primary-dark:#1d4ed8;
    --cda-navy:#0f172a;
    --cda-text:#172033;
    --cda-muted:#64748b;
    --cda-soft:#f8fafc;
    --cda-surface:#ffffff;
    --cda-border:#e2e8f0;
    --cda-border-soft:#edf2f7;
    --cda-success:#16a34a;
    --cda-radius:18px;
    --cda-shadow:0 10px 35px rgba(15,23,42,.07);
    --cda-shadow-hover:0 18px 45px rgba(15,23,42,.12);
}

html{
    scroll-behavior:smooth;
}

body{
    background:var(--cda-soft);
    color:var(--cda-text);
    font-family:'Inter','Roboto',Arial,sans-serif;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

#full{
    background:
        radial-gradient(circle at 85% 8%,rgba(37,99,235,.045),transparent 28rem),
        var(--cda-soft);
}

/* ---------- navegação lateral ---------- */
#topo{
    width:4.25rem;
    background:rgba(15,23,42,.97);
    box-shadow:8px 0 30px rgba(15,23,42,.08);
    border:0;
    transition:width .25s ease,background .25s ease,box-shadow .25s ease;
}

#topo:hover{
    width:15rem;
    background:#fff;
    border-right:1px solid var(--cda-border);
    box-shadow:10px 0 35px rgba(15,23,42,.10);
}

#idtTOP{
    width:2.6rem;
    height:3.2rem;
    margin:1.25rem auto 1.5rem;
    background-size:90%;
}

#topo:hover #idtTOP{
    width:8rem;
    background-size:78%;
    filter:none;
}

#menu a{
    height:3rem;
    margin:.35rem .5rem;
    padding:.5rem .75rem;
    border:1px solid transparent;
    border-radius:12px;
    background:transparent;
    box-shadow:none;
    color:var(--cda-muted);
}

#menu a:hover{
    background:#eff6ff;
    border-color:#dbeafe;
    color:var(--cda-primary);
}

#menu a::after{
    display:none;
}

#menu a span{
    color:inherit !important;
}

/* ---------- hero ---------- */
#slid{
    width:calc(100% - 0rem);
    min-height:42rem;
    height:min(720px,72vh);
    margin:0;
    background-color:#eef4fb;
    background-size:cover;
    background-position:center right;
    position:relative;
    isolation:isolate;
}

.exttSLID{
    width:min(42rem,43%);
    top:50%;
    left:7rem;
    transform:translateY(-50%);
}

.exttSLID .titPADR{
    margin:0 0 1rem;
    font-size:clamp(2rem,3.2vw,3.35rem);
    line-height:1.08;
    letter-spacing:-.045em;
    color:var(--cda-navy);
    font-weight:800;
}

.exttSLID .titPADR span{
    display:inline;
    padding:0;
    color:var(--cda-primary);
    font-size:inherit;
}

.exttSLID .subtitPADR{
    width:min(32rem,100%);
    margin:0;
    color:#64748b;
    font-size:1.05rem;
    line-height:1.7;
}

#slid a{
    width:auto;
    min-width:12.5rem;
    display:inline-flex;
    gap:.45rem;
    margin-top:1.75rem;
    padding:.9rem 1.2rem;
    border:1px solid var(--cda-primary);
    border-radius:12px;
    background:var(--cda-primary);
    color:#fff;
    font-size:.9rem;
    font-weight:700;
    box-shadow:0 10px 24px rgba(37,99,235,.20);
}

#slid a:hover{
    background:var(--cda-primary-dark);
    border-color:var(--cda-primary-dark);
    box-shadow:0 14px 30px rgba(37,99,235,.28);
    transform:translateY(-2px);
}

/* ---------- títulos de seção ---------- */
#exttPADR{
    width:min(1180px,calc(100% - 3rem));
    padding-left:0;
    margin:0 auto;
}

#exttPADR .titPADR,
.va-carrousel-section .titPADR,
#catALT > .titPADR{
    min-height:4.25rem;
    margin:0 0 1.25rem;
    padding:0 1.25rem 0 4.8rem;
    display:flex;
    align-items:center;
    position:relative;
    border:1px solid var(--cda-border);
    border-radius:16px;
    background:rgba(255,255,255,.9);
    color:var(--cda-navy);
    font-size:1.1rem;
    font-weight:700;
    box-shadow:0 4px 20px rgba(15,23,42,.035);
}

.iconPADR{
    width:3.6rem;
    height:100%;
    margin:0;
    border:0;
    border-right:1px solid var(--cda-border);
    border-radius:16px 0 0 16px;
    background:#fff;
}

.gifHALL{
    width:45%;
    height:45%;
}

/* ---------- categorias ---------- */
#cat{
    margin:0;
}

#exttCAT{
    gap:.75rem;
    padding:.25rem 0 2rem;
    grid-template-areas:"blocCAT blocCAT blocCAT blocCAT blocCAT blocCAT blocCAT";
}

#cat a{
    min-height:7.2rem;
    padding:1.1rem .8rem;
    border:1px solid var(--cda-border);
    border-radius:14px;
    background:#fff;
    color:var(--cda-text);
    box-shadow:0 3px 14px rgba(15,23,42,.025);
}

#cat a span{
    margin:.1rem auto .65rem;
    font-size:1.7rem !important;
    color:var(--cda-primary);
}

#cat a:hover{
    background:#eff6ff;
    border-color:#bfdbfe;
    color:var(--cda-primary-dark);
    border-radius:14px;
    transform:translateY(-3px);
    box-shadow:var(--cda-shadow);
}

#cat a:hover span{
    color:var(--cda-primary-dark);
}

/* ---------- hall da fama ---------- */
#hall{
    width:min(1180px,calc(100% - 3rem));
    padding:2rem 0 3rem;
}

#exttHALL{
    gap:1rem;
    grid-template-areas:"exttHALL exttHALL exttHALL exttHALL";
}

.categHALL{
    padding:1.1rem .8rem 1.4rem;
    border:1px solid var(--cda-border);
    border-radius:18px;
    background:#fff;
    box-shadow:0 5px 22px rgba(15,23,42,.035);
}

.categHALL:hover{box-shadow:var(--cda-shadow);}

.titHALL{
    margin:0 0 1rem;
    padding:0 .35rem;
    color:var(--cda-navy);
    font-size:.95rem;
    font-weight:700;
}

.titHALL span{
    margin-right:.4rem;
    padding:.35rem;
    border-radius:9px;
    background:#eff6ff;
    color:var(--cda-primary) !important;
}

.blocHALL{
    height:5rem;
    border-radius:12px;
}

.blocHALL:hover{
    background:#f8fafc;
    box-shadow:none;
}

.imgHALL{
    width:4.6rem;
    height:4.6rem;
    border:1px solid var(--cda-border);
    border-radius:12px;
    box-shadow:0 3px 10px rgba(15,23,42,.07);
}

#hall .infCURS{
    top:5.35rem;
    padding:1rem;
    max-width:18rem;
    border:1px solid rgba(255,255,255,.08);
    border-radius:14px;
    background:rgba(15,23,42,.97);
    box-shadow:0 18px 40px rgba(15,23,42,.22);
    backdrop-filter:blur(10px);
}

.infCURS .titCURS{
    color:#f8fafc;
    line-height:1.35;
}

.notCURS p{
    color:#cbd5e1;
}

.avalCURS{
    color:#94a3b8;
}

.infCURS .iconST{
    color:#fbbf24;
}

.exttBOT{
    gap:.4rem;
}

.exttBOT a{
    min-width:5.5rem;
    padding:.45rem .65rem;
    border-radius:9px;
    background:#e2e8f0;
    color:#334155;
    font-weight:600;
}

.exttBOT a:nth-child(2){
    background:var(--cda-primary);
    color:#fff;
}

.exttBOT a:hover{
    transform:translateY(-1px) !important;
}

/* ---------- carrosséis ---------- */
.va-carrousel-section{
    width:min(1180px,calc(100% - 3rem));
    margin:0 auto;
    padding:1rem 0 3rem;
}

.va-carrousel-section .titPADR{
    margin-bottom:1rem;
}

.exttVACONT{
    padding:.25rem 2.2rem;
}

.va-carrousel-flexbox{
    gap:.8rem;
    padding:.25rem .1rem 1rem;
    scroll-snap-type:x proximity;
}

.va-carrousel-flexbox .va-card{
    width:16rem;
    min-width:16rem;
    height:24.5rem;
    margin:0;
    padding:.45rem;
    border:1px solid var(--cda-border);
    border-radius:16px;
    background:#fff;
    box-shadow:0 5px 20px rgba(15,23,42,.04);
    overflow:hidden;
    scroll-snap-align:start;
}

.va-carrousel-flexbox .va-card:hover{
    height:24.5rem;
    border-color:#bfdbfe;
    box-shadow:var(--cda-shadow-hover);
    transform:translateY(-4px);
}

.va-card .imgCURS{
    height:10.5rem;
    border:0;
    border-radius:12px;
    background-position:center;
}

.va-card .infCURS{
    width:100%;
    padding:.35rem .45rem .7rem;
}

.va-card .titCURS{
    min-height:2.6rem;
    color:var(--cda-navy);
    font-size:.92rem;
    line-height:1.4;
    font-weight:700;
}

.va-card .descCURS{
    color:#64748b;
    line-height:1.5;
}

.va-card .notCURS{
    margin:.5rem 0;
}

.va-card .notCURS p{
    color:#475569;
    font-weight:600;
}

.va-card .exttBOT{
    margin-top:.7rem;
}

.va-card .exttBOT a{
    transform:scale(1);
    visibility:visible;
}

.deals-paddle{
    width:2.7rem;
    height:2.7rem;
    margin:0;
    border:1px solid var(--cda-border);
    border-radius:50%;
    background:#fff;
    color:var(--cda-navy);
    box-shadow:0 8px 20px rgba(15,23,42,.10);
    z-index:3;
}

.deals-paddle:hover{
    background:var(--cda-primary);
    color:#fff;
    transform:translateY(-50%) scale(1.04);
}

.deals-scroll-left{
    left:.2rem;
    top:50%;
    bottom:auto;
}

.deals-scroll-right{
    right:.2rem;
    top:50%;
    bottom:auto;
}

.va-carrousel-section:hover .deals-scroll-left{
    opacity:1;
}

/* ---------- categorias em destaque ---------- */
#catALT{
    width:min(1180px,calc(100% - 3rem));
    margin:0 auto;
    padding:1rem 0 3rem;
}

#exttCATALT{
    gap:1rem;
}

.blocCATALTP{
    width:50%;
    padding:1.25rem;
    border:1px solid var(--cda-border);
    border-radius:18px;
    background:#fff;
    box-shadow:0 5px 22px rgba(15,23,42,.035);
}

.blocCATALTP:hover{
    box-shadow:var(--cda-shadow);
}

.titCATALTPD{
    color:var(--cda-navy) !important;
    font-weight:700;
}

.iconPADR2ALTD{
    color:var(--cda-primary);
}

#exttCATALT2{
    gap:1rem;
}

.blocCATALT{
    min-height:8rem;
    padding:1rem;
    border:1px solid var(--cda-border);
    border-radius:16px;
    background:#fff;
    box-shadow:0 5px 18px rgba(15,23,42,.035);
}

.blocCATALT:hover{
    border-color:#bfdbfe;
    background:#eff6ff;
    box-shadow:var(--cda-shadow);
    transform:translateY(-3px);
}

.blocCATALT .iconPADR2{
    color:var(--cda-primary);
}

.titCATALTP{
    color:var(--cda-navy);
    font-weight:600;
}

/* ---------- rodapé ---------- */
#roda{
    width:100%;
    margin:2rem auto 0;
    border:0;
    border-top:1px solid var(--cda-border);
    background:#fff;
}

#roda::before{
    display:none;
}

#exttRODA{
    width:min(1180px,calc(100% - 3rem));
    padding:2rem 0 1rem;
}

.blocFT{
    padding:1rem;
}

.blocFT:nth-child(2){
    border-left:1px solid var(--cda-border);
    border-right:1px solid var(--cda-border);
}

.titFT{
    color:var(--cda-navy);
    font-size:1rem;
    font-weight:700;
}

.descFT{
    color:#64748b;
    line-height:1.6;
}

#platFT{
    width:min(1180px,calc(100% - 3rem));
    padding:1.5rem 0;
    border-top:1px solid var(--cda-border);
}

#platFT .titFT{
    color:var(--cda-muted);
}

.imgPLAT{
    width:3.5rem;
    height:3.5rem;
    border-radius:11px;
    border:1px solid var(--cda-border);
    filter:none;
}

.imgPLAT:hover{
    border-radius:11px;
    box-shadow:0 8px 20px rgba(15,23,42,.10);
    transform:translateY(-2px);
}

.menFT{
    background:var(--cda-navy);
    padding:1rem max(3%,calc((100% - 1180px)/2));
}

.menFT::before{
    display:none;
}

.menFT a{
    color:#cbd5e1;
}

.menFT a:hover{
    color:#fff;
    background:rgba(255,255,255,.08);
}

#dirFT{
    color:#94a3b8;
}

/* ---------- acessibilidade / interação ---------- */
a:focus-visible,
button:focus-visible{
    outline:3px solid rgba(37,99,235,.35);
    outline-offset:3px;
}

@media (prefers-reduced-motion:reduce){
    *,
    *::before,
    *::after{
        scroll-behavior:auto !important;
        transition:none !important;
        animation:none !important;
    }
}

/* ---------- tablet ---------- */
@media screen and (min-width:700px) and (max-width:1100px){
    #exttCAT{
        grid-template-areas:"blocCAT blocCAT blocCAT blocCAT";
    }

    .exttSLID{
        width:50%;
        left:6rem;
    }

    .va-carrousel-section,
    #hall,
    #catALT,
    #exttPADR{
        width:calc(100% - 3rem);
    }
}

/* ---------- mobile ---------- */
@media screen and (max-width:699px){
    #topo{
        width:100%;
        height:4rem;
        background:rgba(15,23,42,.98);
        box-shadow:0 5px 25px rgba(15,23,42,.12);
    }

    #topo:hover{
        width:100%;
    }

    #idtTOP{
        width:3.5rem;
        height:3.5rem;
        margin:0;
        background-size:55%;
    }

    #topo:hover #idtTOP{
        width:3.5rem;
        background-size:55%;
        filter:brightness(7);
    }

    #slid{
        min-height:39rem;
        height:78vh;
        margin-top:0;
        background-size:cover;
        background-position:66% center;
    }

    .exttSLID{
        width:calc(100% - 2rem);
        top:7rem;
        left:1rem;
        transform:none;
    }

    .exttSLID .titPADR{
        font-size:2rem;
        max-width:23rem;
    }

    .exttSLID .subtitPADR{
        width:95%; 
        font-size:.95rem;
        line-height:1.55;
    }

    #slid a{
        min-width:0;
        width:auto;
        margin-top:1.2rem;
    }

    #exttPADR,
    #hall,
    #catALT,
    .va-carrousel-section{
        width:calc(100% - 2rem);
    }

    #exttPADR .titPADR,
    .va-carrousel-section .titPADR,
    #catALT > .titPADR{
        min-height:3.8rem;
        margin-bottom:1rem;
        padding-left:4.25rem;
        font-size:.98rem;
    }

    .iconPADR{
        width:3.2rem;
    }

    #exttCAT{
        grid-template-areas:"blocCAT blocCAT";
        gap:.6rem;
    }

    #cat a{
        min-height:6rem;
        font-size:.78rem;
    }

    #exttHALL{
        grid-template-areas:"exttHALL";
    }

    .categHALL{
        width:100%;
    }

    .exttVACONT{
        padding:.25rem 1.8rem;
    }

    .va-carrousel-flexbox .va-card{
        width:15rem;
        min-width:15rem;
    }

    .deals-paddle{
        width:2.4rem;
        height:2.4rem;
    }

    .deals-scroll-left{left:-.1rem;}
    .deals-scroll-right{right:-.1rem;}

    #exttCATALT{
        display:grid;
    }

    .blocCATALTP{
        width:100%;
    }

    #exttCATALT2{
        grid-template-areas:"catALT catALT";
    }

    #exttRODA{
        width:calc(100% - 2rem);
    }

    .blocFT:nth-child(2){
        border-left:0;
        border-right:0;
        border-top:1px solid var(--cda-border);
        border-bottom:1px solid var(--cda-border);
    }

    #platFT{
        width:calc(100% - 2rem);
        flex-direction:column;
        align-items:center;
    }

    #platFT section{
        justify-content:center;
        flex-wrap:wrap;
    }

    .menFT{
        padding:.8rem 1rem;
    }
}

@media screen and (min-width:700px){
    #exttCATALT2{
        grid-template-areas:"catALT catALT catALT catALT";
    }
}

/* =========================================================
   CORREÇÃO FINAL — HOVER DOS CURSOS
   O .blocHALL inteiro sobe de camada para que o painel
   .infCURS e os botões .exttBOT fiquem acima dos vizinhos.
   ========================================================= */

#exttCATALTP {
    position: relative;
    z-index: 1;
    overflow: visible !important;
}

#exttCATALTP .blocHALL {
    position: relative;
    z-index: 1;
    overflow: visible !important;
}

/* Curso atualmente selecionado */
#exttCATALTP .blocHALL:hover {
    position: relative;
    z-index: 9999 !important;
    overflow: visible !important;
}

/* Painel de informações do curso */
#exttCATALTP .blocHALL:hover .infCURS {
    position: absolute;
    z-index: 10000 !important;
    overflow: visible !important;
}

/* Área dos botões */
#exttCATALTP .blocHALL:hover .exttBOT {
    position: relative;
    z-index: 10001 !important;
    overflow: visible !important;
}

/* Links dos botões */
#exttCATALTP .blocHALL:hover .exttBOT a {
    position: relative;
    z-index: 10002 !important;
}

/* Mantém o conteúdo acima dos demais cursos durante o hover */
#exttCATALTP .blocHALL:hover .cursALLPG {
    position: relative;
    z-index: 10000;
    overflow: visible !important;
}

/* Evita que transformações de hover criem uma camada problemática */
#exttCATALTP .blocHALL:hover .imgHALL {
    position: relative;
    z-index: 1;
}

/* Ajuste específico para o último curso, quando o painel
   precisa abrir para a esquerda */
#exttCATALTP .blocHALL:nth-child(4):hover .infCURS {
    right: 0;
    left: auto;
}

/* =========================================================
   HOVER MOBILE
   No mobile o painel não deve criar sobreposição estranha.
   ========================================================= */

@media screen and (max-width:699px) {
    #exttCATALTP .blocHALL,
    #exttCATALTP .blocHALL:hover,
    #exttCATALTP .blocHALL:hover .cursALLPG,
    #exttCATALTP .blocHALL:hover .infCURS,
    #exttCATALTP .blocHALL:hover .exttBOT {
        overflow: visible !important;
    }

    #exttCATALTP .blocHALL:hover {
        z-index: 9999 !important;
    }

    #exttCATALTP .blocHALL:hover .infCURS {
        z-index: 10000 !important;
    }
}


/* Mantém a abertura correta dos cards nas extremidades */
#exttCATALTP .blocHALL:nth-child(3):hover .infCURS,
#exttCATALTP .blocHALL:nth-child(4):hover .infCURS {
    right: 0;
    left: auto;
}

/* =========================================================
   CORREÇÃO — CARDS DO CARROSSEL CLICÁVEIS
   Usa os links existentes dentro de .exttBOT.
   ========================================================= */

.va-carrousel-flexbox .va-card {
    cursor: pointer;
}

.va-carrousel-flexbox .va-card:focus-visible {
    outline: 3px solid rgba(37,99,235,.35);
    outline-offset: 3px;
}

/* Os links continuam recebendo o clique normalmente */
.va-carrousel-flexbox .va-card .exttBOT,
.va-carrousel-flexbox .va-card .exttBOT a {
    pointer-events: auto;
}

/* Evita que o conteúdo visual do card impeça a interação */
.va-carrousel-flexbox .va-card {
    position: relative;
}


/* Mantém a área de categorias sem corte vertical */
#exttCATALT,
#exttCATALTP,
#exttCATALTP .blocCATALTP,
#exttCATALTP .blocHALL,
#exttCATALTP .cursALLPG {
    overflow: visible !important;
}

/* Corrige a abertura do painel nos cursos próximos à borda direita */
#exttCATALTP .blocCATALTP:has(.blocHALL:nth-child(3):hover) .infCURS,
#exttCATALTP .blocCATALTP:has(.blocHALL:nth-child(4):hover) .infCURS {
    right: 0;
    left: auto;
}

/* =========================================================
   HALL DA FAMA — HOVER
   Correção baseada no CSS original funcional.
   Não altera estrutura nem os cards clicáveis.
   ========================================================= */

/* O elemento pai não cria uma nova camada por transform */
#exttHALL .categHALL {
    position: relative;
    transform: none !important;
    overflow: visible !important;
}

/* Categoria em hover permanece sem transform */
#exttHALL .categHALL:hover {
    transform: none !important;
    overflow: visible !important;
}

/* Curso em hover fica acima dos irmãos */
#exttHALL .blocHALL {
    position: relative;
    z-index: 1;
    overflow: visible !important;
}

#exttHALL .blocHALL:hover {
    position: relative;
    z-index: 100 !important;
    overflow: visible !important;
}

/* Painel original: visível no hover e acima dos demais elementos */
#hall .blocHALL:hover .infCURS {
    visibility: visible !important;
    opacity: 1 !important;
    transform: scale(1) !important;
    position: absolute !important;
    z-index: 1000 !important;
    overflow: visible !important;
}

/* Botões permanecem acima do painel/conteúdo */
#hall .blocHALL:hover .exttBOT {
    position: relative;
    z-index: 1001 !important;
}

#hall .blocHALL:hover .exttBOT a {
    position: relative;
    z-index: 1002 !important;
}

/* Último curso abre para a esquerda, como no código original */
#hall .blocHALL:nth-child(4) .iconSET {
    right: 0;
    left: inherit !important;
}

#hall .blocHALL:nth-child(4):hover .infCURS {
    right: 0;
    left: auto;
}

/* =========================================================
   CDA — AJUSTE FINAL UI/UX
   Topo + Hero #slid + Rodapé
   Estrutura HTML/PHP preservada.
   ========================================================= */

/* ---------- TOP / NAVEGAÇÃO ---------- */

#topo{
    width:4.35rem;
    background:rgba(15,23,42,.97);
    border:0;
    box-shadow:8px 0 28px rgba(15,23,42,.08);
    backdrop-filter:blur(12px);
    transition:
        width .25s ease,
        background .25s ease,
        box-shadow .25s ease;
}

#topo:hover{
    width:15rem;
    background:rgba(255,255,255,.98);
    border-right:1px solid #e2e8f0;
    box-shadow:12px 0 38px rgba(15,23,42,.12);
}

#idtTOP{
    width:2.65rem;
    height:3.15rem;
    margin:1.2rem auto 1.35rem;
    background-position:center;
    background-repeat:no-repeat;
    background-size:90%;
}

#topo:hover #idtTOP{
    width:8rem;
    height:3.5rem;
    background-size:78%;
    filter:none;
}

#menu{
    padding:.35rem .35rem;
}

#menu a{
    height:3rem;
    margin:.3rem 0;
    padding:.45rem .7rem;
    border:1px solid transparent;
    border-radius:12px;
    background:transparent;
    color:#94a3b8;
    box-shadow:none;
    transition:
        background .2s ease,
        color .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

#menu a:hover{
    background:#eff6ff;
    border-color:#dbeafe;
    color:#2563eb;
    transform:translateX(2px);
}

#menu a span{
    color:inherit !important;
}

#menu a::after{
    display:none;
}

/* ---------- HERO PRINCIPAL #slid ---------- */
/*
   A imagem principal passa a usar a arte principal do site
   (imgs/cursos-cda-fulldynamic.webp), com enquadramento moderno
   e área de leitura protegida para o texto.
*/
#slid{
    width:calc(100% - 0rem);
    min-height:39rem;
    height:min(680px,78vh);
    margin:0;
    position:relative;
    isolation:isolate;
    overflow:hidden;

    background-color:#eef4fb;
    background-image:url("../imgs/cursos-cda-fulldynamic.webp");
    background-position:center right;
    background-repeat:no-repeat;
    background-size:cover;
}

.exttSLID{
    width:min(43rem,46%);
    top:50%;
    left:7rem;
    transform:translateY(-50%);
}

.exttSLID .titPADR{
    margin:0 0 1rem;
    color:#0f172a;
    font-size:clamp(2.15rem,3.5vw,3.5rem);
    line-height:1.05;
    letter-spacing:-.045em;
    font-weight:800;
}

.exttSLID .titPADR span{
    display:inline;
    padding:0;
    color:#2563eb;
    font-size:inherit;
}

.exttSLID .subtitPADR{
    width:min(34rem,100%);
    margin:0;
    color:#64748b;
    font-size:1.06rem;
    line-height:1.7;
}

#slid .botPADR,
#slid a{
    width:auto;
    min-width:12.5rem;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.5rem;
    margin-top:1.6rem;
    padding:.9rem 1.2rem;
    border:1px solid #2563eb;
    border-radius:12px;
    background:#2563eb;
    color:#fff;
    font-size:.9rem;
    font-weight:700;
    box-shadow:0 12px 28px rgba(37,99,235,.22);
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

#slid .botPADR:hover,
#slid a:hover{
    background:#1d4ed8;
    border-color:#1d4ed8;
    box-shadow:0 16px 34px rgba(37,99,235,.28);
    transform:translateY(-2px);
}

/* ---------- RODAPÉ ---------- */

#roda{
    width:100%;
    margin:3rem auto 0;
    background:#fff;
    border:0;
    border-top:1px solid #e2e8f0;
    box-shadow:0 -10px 30px rgba(15,23,42,.035);
}

#exttRODA{
    width:min(1180px,calc(100% - 3rem));
    padding:2.5rem 0 1.25rem;
    margin:0 auto;
}

.blocFT{
    padding:1rem 1.25rem;
}

.blocFT:nth-child(2){
    border-left:1px solid #e2e8f0;
    border-right:1px solid #e2e8f0;
}

.titFT{
    margin-bottom:.55rem;
    color:#0f172a;
    font-size:1rem;
    font-weight:700;
}

.descFT{
    color:#64748b;
    line-height:1.65;
}

#platFT{
    width:min(1180px,calc(100% - 3rem));
    padding:1.35rem 0 1.75rem;
    border-top:1px solid #e2e8f0;
}

#platFT .titFT{
    color:#64748b;
    font-weight:600;
}

.imgPLAT{
    width:3.5rem;
    height:3.5rem;
    border:1px solid #e2e8f0;
    border-radius:12px;
    background:#fff;
    filter:none;
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        border-color .2s ease;
}

.imgPLAT:hover{
    border-color:#bfdbfe;
    border-radius:12px;
    box-shadow:0 8px 20px rgba(15,23,42,.10);
    transform:translateY(-2px);
}

.menFT{
    width:100%;
    margin:0;
    padding:1rem max(3%,calc((100% - 1180px)/2));
    background:#0f172a;
    border:0;
}

.menFT::before{
    display:none;
}

.menFT a{
    color:#cbd5e1;
    border-radius:8px;
    transition:
        color .2s ease,
        background .2s ease;
}

.menFT a:hover{
    color:#fff;
    background:rgba(255,255,255,.08);
}

#dirFT{
    color:#94a3b8;
}

/* ---------- RESPONSIVO HERO / TOPO / RODAPÉ ---------- */

@media screen and (max-width:699px){

    #topo{
        width:100%;
        height:4rem;
        background:rgba(15,23,42,.98);
        box-shadow:0 5px 24px rgba(15,23,42,.12);
    }

    #topo:hover{
        width:100%;
    }

    #idtTOP{
        width:3.5rem;
        height:3.5rem;
        margin:0;
        background-size:55%;
    }

    #topo:hover #idtTOP{
        width:3.5rem;
        background-size:55%;
    }

    #slid{
        min-height:39rem;
        height:78vh;
        background-position:68% center;
        background-size:cover;
    }

    #slid::before{
        background:
            linear-gradient(
                180deg,
                rgba(248,250,252,.99) 0%,
                rgba(248,250,252,.96) 34%,
                rgba(248,250,252,.72) 54%,
                rgba(248,250,252,.18) 78%,
                rgba(248,250,252,0) 100%
            );
    }

    .exttSLID{
        width:calc(100% - 2rem);
        left:1rem;
        top:6.5rem;
        transform:none;
    }

    .exttSLID .titPADR{
        max-width:24rem;
        font-size:2rem;
    }

    .exttSLID .subtitPADR{
        width:95%;
        font-size:.95rem;
    }

    #slid .botPADR,
    #slid a{
        min-width:0;
        margin-top:1.2rem;
    }

    #exttRODA,
    #platFT{
        width:calc(100% - 2rem);
    }

    .blocFT:nth-child(2){
        border-left:0;
        border-right:0;
        border-top:1px solid #e2e8f0;
        border-bottom:1px solid #e2e8f0;
    }

    .menFT{
        padding:.8rem 1rem;
    }
}

/* =========================================================
   CDA — AJUSTES SOLICITADOS
   1) Nova imagem online para #slid
   2) Rodapé realmente responsivo
   Estrutura HTML/PHP preservada.
   ========================================================= */

/* ---------------------------------------------------------
   1. HERO #slid
   Foto gratuita do Pexels:
   "Girl studying online at home on a laptop with educational
   materials" — Gustavo Fring / Pexels.
   --------------------------------------------------------- */

#slid{
background-image:url("../imgs/capas/plataforma-cda.png");   
    background-repeat:no-repeat;
    background-size:cover;
}


/* ---------------------------------------------------------
   2. RODAPÉ — RESPONSIVO
   --------------------------------------------------------- */

#roda{
    width:100%;
    left:0;
    margin:3rem 0 0;
    overflow:visible;
    box-sizing:border-box;
}

#roda::before{
    left:0;
    margin-left:0;
    width:100%;
}

#exttRODA{
    width:min(1180px,calc(100% - 2rem));
    max-width:1180px;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    padding:2.25rem 0 1.25rem;
    box-sizing:border-box;
}

#exttRODA .blocFT{
    min-width:0;
    width:100%;
    box-sizing:border-box;
    padding:1rem 1.25rem;
}

#exttRODA .titFT,
#exttRODA .descFT{
    max-width:100%;
    box-sizing:border-box;
}

#platFT{
    width:min(1180px,calc(100% - 2rem));
    max-width:1180px;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:1rem 1.25rem;
    padding:1.5rem 0;
    box-sizing:border-box;
}

#platFT .titFT{
    width:auto;
    margin:0;
    flex:0 0 auto;
}

#platFT section{
    min-width:0;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:.7rem;
}

#platFT .imgPLAT{
    flex:0 0 3.5rem;
    width:3.5rem;
    height:3.5rem;
}

.menFT{
    width:100%;
    min-width:0;
    padding:1rem max(1rem,calc((100% - 1180px)/2));
    box-sizing:border-box;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:.75rem 1.25rem;
}

.menFT::before{
    left:0;
    margin-left:0;
    width:100%;
}

#idtFT{
    flex:0 0 3.5rem;
    margin:0 1rem 0 0;
}

#rdsFT{
    margin:0 0 0 auto;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:.25rem;
}

#rdsFT a{
    margin:0;
}

#dirFT{
    position:static;
    margin:0 0 0 auto;
    display:flex;
    align-items:center;
    max-width:100%;
    text-align:right;
}

#FULLRDP{
    flex:0 0 2rem;
    margin:0 0 0 1rem;
}

/* Tablet */
@media screen and (min-width:700px) and (max-width:990px){

    #exttRODA{
        width:calc(100% - 2rem);
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    #exttRODA .blocFT{
        padding:.9rem .75rem;
    }

    #platFT{
        width:calc(100% - 2rem);
    }

    .menFT{
        padding:1rem;
    }

    #idtFT{
        margin-right:.5rem;
    }

    #dirFT{
        margin-left:auto;
    }
}

/* Mobile */
@media screen and (max-width:699px){

    #slid{
        height:40rem;
        min-height:40rem;
        background-position:68% center;
        background-size:cover;
    }

    #slid .subtitPADR {background: #ffffffb7; color: #172033; padding: .5rem;}

    #exttRODA{
        width:calc(100% - 1.5rem);
        grid-template-columns:1fr;
        padding:1.25rem 0 .75rem;
    }

    #exttRODA .blocFT{
        width:100%;
        padding:1.25rem .75rem;
        border:0 !important;
    }

    #exttRODA .blocFT + .blocFT{
        border-top:1px solid #e2e8f0 !important;
    }

    #exttRODA .titFT{
        width:100%;
        font-size:1rem;
        line-height:1.35;
    }

    #exttRODA .descFT{
        width:100%;
        max-width:31rem;
        padding:.35rem .5rem;
        font-size:.88rem;
        line-height:1.55;
    }

    #platFT{
        width:calc(100% - 1.5rem);
        flex-direction:column;
        align-items:center;
        gap:1rem;
        padding:1.25rem 0;
    }

    #platFT .titFT{
        width:100%;
        margin:0;
        text-align:center;
        font-size:.95rem;
    }

    #platFT section{
        width:100%;
        justify-content:center;
        gap:.55rem;
    }

    #platFT .imgPLAT{
        flex:0 0 3.25rem;
        width:3.25rem;
        height:3.25rem;
    }

    .menFT{
        width:100%;
        padding:1rem .75rem;
        flex-direction:column;
        justify-content:center;
        text-align:center;
        gap:.7rem;
    }

    #idtFT{
        flex:0 0 auto;
        width:3.5rem;
        height:2.5rem;
        margin:0 auto;
    }

    .menFT > a{
        margin:0;
    }

    #rdsFT{
        width:100%;
        margin:0;
        justify-content:center;
        gap:.15rem;
    }

    #rdsFT a{
        margin:0;
        padding:.35rem .45rem;
    }

    #dirFT{
        width:100%;
        margin:0;
        justify-content:center;
        text-align:center;
        font-size:.68rem;
        line-height:1.4;
    }

    #FULLRDP{
        margin:.25rem 0 0 .5rem;
    }
}

/* Extra-small phones */
@media screen and (max-width:420px){

    #platFT section{
        gap:.4rem;
    }

    #platFT .imgPLAT{
        flex-basis:3rem;
        width:3rem;
        height:3rem;
    }

    #rdsFT a{
        font-size:.75rem;
    }
}

/* =========================================================
   BLOCOS MOBILE ORIGINAIS — PRESERVADOS SEM ALTERAÇÃO
   ========================================================= */

@media screen and (max-width:699px){
    #exttRODA,
    #platFT{
        width:calc(100% - 1.5rem) !important;
        max-width:none !important;
    }
}

@media screen and (max-width:699px){
    #roda{
        left:0 !important;
        width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
    }

    #exttRODA,
    #platFT,
    #roda .menFT{
        width:100% !important;
    }
}

@media screen and (max-width:699px){

    #roda{
        position:relative !important;
        left:0 !important;
        width:100vw !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
    }

    #roda::before{
        left:0 !important;
        width:100% !important;
        margin-left:0 !important;
    }

    #exttRODA,
    #platFT,
    #roda .menFT{
        width:100% !important;
        max-width:none !important;
    }
}

@media screen and (max-width:699px){

    /* -----------------------------------------
       CATEGORIA — título realmente centralizado
       ----------------------------------------- */

    #exttPADR .titPADR,
    #catALT > .titPADR{
        width:100% !important;
        padding-left:3.4rem !important;
        padding-right:3.4rem !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        text-align:center !important;
        box-sizing:border-box !important;
    }

    /* Ícone permanece no lado esquerdo,
       sem empurrar o texto para a direita */
    #exttPADR .titPADR .iconPADR,
    #catALT > .titPADR .iconPADR{
        left:0 !important;
        right:auto !important;
    }

    /* -----------------------------------------
       CARDS DE ADMINISTRAÇÃO / ADVOCACIA etc.
       Aproveita melhor a largura do celular
       ----------------------------------------- */

    #catALT{
        width:100% !important;
        max-width:none !important;
        left:0 !important;
        right:0 !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:.65rem !important;
        padding-right:.65rem !important;
        box-sizing:border-box !important;
    }

    #exttCATALT2{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding:0 !important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
        grid-template-areas:none !important;
        gap:.65rem !important;
        box-sizing:border-box !important;
    }

    #exttCATALT2 .blocCATALT{
        width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
        margin:0 !important;
    }

    /* -----------------------------------------
       RODAPÉ — ocupa toda a largura do mobile
       ----------------------------------------- */

    #roda{
        position:relative !important;
        width:100vw !important;
        max-width:none !important;
        left:0 !important;
        right:auto !important;
        margin-left:0 !important;
        margin-right:0 !important;
        transform:none !important;
        box-sizing:border-box !important;
    }

    #exttRODA{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }

    #platFT{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:.5rem !important;
        padding-right:.5rem !important;
        box-sizing:border-box !important;
    }

    .menFT{
        width:100% !important;
        max-width:none !important;
        left:0 !important;
        right:auto !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:1rem !important;
        padding-right:1rem !important;
        box-sizing:border-box !important;
    }

    .menFT::before{
        display:none !important;
    }
}

@media screen and (max-width:699px){

    /* =====================================================
       CATEGORIAS
       Mantém uma pequena margem lateral
       ===================================================== */

    #exttPADR{
        width:calc(100% - 1rem) !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding:0 !important;
        box-sizing:border-box !important;
    }

    #exttPADR .titPADR{
        width:100% !important;
        margin-left:auto !important;
        margin-right:auto !important;

        padding-left:3.5rem !important;
        padding-right:.75rem !important;

        display:flex !important;
        align-items:center !important;
        justify-content:center !important;

        text-align:center !important;

        box-sizing:border-box !important;
    }

    #cat{
        width:calc(100% - 1rem) !important;
        margin-left:auto !important;
        margin-right:auto !important;
        padding:0 !important;
        box-sizing:border-box !important;
    }

    #exttCAT{
        width:100% !important;

        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        grid-template-areas:none !important;

        gap:.7rem !important;

        padding:0 !important;
        margin:0 !important;

        box-sizing:border-box !important;
    }

    #exttCAT a{
        width:100% !important;
        min-width:0 !important;

        min-height:6.5rem !important;

        margin:0 !important;
        padding:1rem .5rem !important;

        display:grid !important;
        place-items:center !important;
        place-content:center !important;

        text-align:center !important;

        box-sizing:border-box !important;
    }


   #roda{
        position:relative !important;

        /* tira o footer do deslocamento do container */
        left:50% !important;
        right:auto !important;

        /* centraliza pela viewport */
        transform:translateX(-50%) !important;

        /* largura total real do celular */
        width:100vw !important;
        max-width:100vw !important;

        margin-left:0 !important;
        margin-right:0 !important;

        padding-left:0 !important;
        padding-right:0 !important;

        box-sizing:border-box !important;
    }

    #roda::before{
        left:0 !important;
        right:auto !important;

        width:100% !important;

        margin-left:0 !important;
        margin-right:0 !important;
    }

    #exttRODA,
    #platFT,
    #roda .menFT{
        width:100% !important;
        max-width:100% !important;

        margin-left:0 !important;
        margin-right:0 !important;

        box-sizing:border-box !important;
    }

}

/* =========================================================
   CDA — AJUSTE DESKTOP FINAL
   ---------------------------------------------------------
   SOMENTE DESKTOP.
   Não altera nenhuma regra dentro de max-width:699px.

   O menu lateral é fixo e ocupa 4.35rem.
   Os blocos principais passam a usar somente a área
   disponível entre o menu e a barra de rolagem.
   ========================================================= */

@media screen and (min-width:991px){

    /* ÁREA DE CATEGORIAS
       #cat fica dentro de #exttPADR, então somente o
       container externo recebe o deslocamento. */
    #exttPADR{
        position:relative !important;
        left:auto !important;
        right:auto !important;
        width:calc(100% - 7.35rem - 2rem) !important;
        max-width:none !important;
        margin-left:calc(7.35rem + -.35rem) !important;
        margin-right:2rem !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }

    #exttPADR .titPADR{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box !important;
    }

    #cat{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }

    #exttCAT{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box !important;
    }

    #exttCAT a{
        width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
    }

    /* HALL DA FAMA */
    #hall{
        position:relative !important;
        left:auto !important;
        right:auto !important;
        width:calc(100% - 4.35rem - 2rem) !important;
        max-width:none !important;
        margin-left:calc(4.35rem + 1rem) !important;
        margin-right:1rem !important;
        box-sizing:border-box !important;
    }

    #exttHALL{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box !important;
    }

    /* CARROSSÉIS */
    .va-carrousel-section{
        position:relative !important;
        left:auto !important;
        right:auto !important;
        width:calc(100% - 4.35rem - 2rem) !important;
        max-width:none !important;
        margin-left:calc(4.35rem + 1rem) !important;
        margin-right:1rem !important;
        box-sizing:border-box !important;
    }

    .exttVACONT{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box !important;
    }

    /* CATEGORIAS ALTERNATIVAS */
    #catALT{
        position:relative !important;
        left:auto !important;
        right:auto !important;
        width:calc(100% - 4.35rem - 2rem) !important;
        max-width:none !important;
        margin-left:calc(4.35rem + 1rem) !important;
        margin-right:1rem !important;
        box-sizing:border-box !important;
    }

    #exttCATALT,
    #exttCATALT2{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box !important;
    }
}


/* =========================================================
   CDA — DESKTOP FINAL v2
   ---------------------------------------------------------
   Corrige os blocos que ainda não ocupavam corretamente a
   área disponível depois do menu lateral.

   CATEGORIAS: preservadas como já estavam corretas.
   HALL: cards preenchidos, alinhados e sem espaços vazios.
   CARROSSÉIS: largura total disponível e conteúdo alinhado.
   CATEGORIAS EM DESTAQUE: largura e distribuição corrigidas.

   MOBILE/TABLET: não altera regras abaixo de 991px.
   ========================================================= */

@media screen and (min-width:991px){

    /* =====================================================
       HALL DA FAMA
       ===================================================== */

    #hall{
        width:calc(100% - 4.35rem - 2rem) !important;
        max-width:none !important;
        margin-left:calc(4.35rem + 1rem) !important;
        margin-right:1rem !important;
        padding:2rem 0 3rem !important;
        box-sizing:border-box !important;
    }

    #hall > .titPADR{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box !important;
    }

    #exttHALL{
        width:100% !important;
        max-width:none !important;
        margin:1rem 0 !important;
        padding:0 !important;
        display:grid !important;
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        grid-template-areas:none !important;
        gap:1rem !important;
        align-items:start !important;
        box-sizing:border-box !important;
    }

    #exttHALL .categHALL{
        width:100% !important;
        min-width:0 !important;
        height:auto !important;
        min-height:0 !important;
        margin:0 !important;
        padding:1.1rem .8rem 1.4rem !important;
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        grid-template-rows:auto auto !important;
        grid-template-areas:
            "titHALL titHALL titHALL"
            "blocHALL blocHALL blocHALL" !important;
        align-content:start !important;
        align-items:center !important;
        justify-content:stretch !important;
        justify-items:stretch !important;
        box-sizing:border-box !important;
    }

    #exttHALL .categHALL .titHALL{
        width:100% !important;
        min-width:0 !important;
        grid-area:titHALL !important;
        margin:0 0 1rem !important;
        padding:0 .35rem !important;
        box-sizing:border-box !important;
    }

    #exttHALL .categHALL .blocHALL{
        width:100% !important;
        min-width:0 !important;
        height:5rem !important;
        margin:0 !important;
        padding:0 !important;
        position:relative !important;
        display:grid !important;
        place-items:center !important;
        place-content:center !important;
        box-sizing:border-box !important;
    }

    #exttHALL .categHALL .imgHALL{
        width:4.6rem !important;
        height:4.6rem !important;
        margin:auto !important;
    }

    /* Garante que os 3 cursos de cada categoria ocupem
       realmente as 3 colunas internas. */
    #exttHALL .categHALL > .blocHALL:nth-child(2){
        grid-column:1 !important;
        grid-row:2 !important;
    }

    #exttHALL .categHALL > .blocHALL:nth-child(3){
        grid-column:2 !important;
        grid-row:2 !important;
    }

    #exttHALL .categHALL > .blocHALL:nth-child(4){
        grid-column:3 !important;
        grid-row:2 !important;
    }

    /* Impede que o conteúdo de cada card seja empurrado
       verticalmente pelo tamanho da linha do grid. */
    #exttHALL .categHALL{
        place-content:start !important;
    }

    /* =====================================================
       CARROSSÉIS
       ===================================================== */

    .va-carrousel-section{
        width:calc(100% - 4.35rem - 2rem) !important;
        max-width:none !important;
        margin-left:calc(4.35rem + 1rem) !important;
        margin-right:1rem !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }

    .va-carrousel-section .va-whitewrap{
        width:100% !important;
        max-width:none !important;
        margin:0 !important;
        box-sizing:border-box !important;
    }

    .va-carrousel-section .titPADR{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box !important;
    }

    .exttVACONT{
        width:100% !important;
        max-width:none !important;
        margin:1rem 0 !important;
        padding:.25rem 2.2rem !important;
        box-sizing:border-box !important;
    }

    .va-carrousel-flexbox{
        width:100% !important;
        max-width:none !important;
        box-sizing:border-box !important;
        justify-content:flex-start !important;
    }

    /* =====================================================
       CATEGORIAS EM DESTAQUE
       ===================================================== */

    #catALT{
        width:calc(100% - 4.35rem - 2rem) !important;
        max-width:none !important;
        margin-left:calc(4.35rem + 1rem) !important;
        margin-right:1rem !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }

    #catALT > .titPADR{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box !important;
    }

    #exttCATALT{
        width:100% !important;
        max-width:none !important;
        margin:1rem 0 !important;
        display:grid !important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
        gap:1rem !important;
        box-sizing:border-box !important;
    }

    #exttCATALT > .blocCATALTP{
        width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
    }

    #exttCATALT2{
        width:100% !important;
        max-width:none !important;
        margin:0 !important;
        display:grid !important;
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        grid-template-areas:none !important;
        gap:1rem !important;
        box-sizing:border-box !important;
    }

    #exttCATALT2 .blocCATALT{
        width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
    }
}

/* =========================================================
   CDA — CORREÇÃO DE CENTRALIZAÇÃO DESKTOP v3
   ---------------------------------------------------------
   #hall, carrosséis e #catALT ficam dentro de #exttPADR.
   Portanto, não devem aplicar novamente o deslocamento do
   menu lateral. O deslocamento já é feito por #exttPADR.

   Resultado: mesma margem esquerda e direita das CATEGORIAS.
   MOBILE/TABLET: nenhuma alteração.
   ========================================================= */

@media screen and (min-width:991px){

    /* Hall da fama: usa exatamente a mesma área interna
       ocupada pela seção de categorias. */
    #exttPADR > #hall{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        left:0 !important;
        right:0 !important;
        box-sizing:border-box !important;
    }

    /* Carrosséis: mesma largura e mesmo alinhamento do Hall. */
    #exttPADR > .va-carrousel-section{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        left:0 !important;
        right:0 !important;
        box-sizing:border-box !important;
    }

    /* Categorias em destaque: mesma largura das categorias. */
    #exttPADR > #catALT{
        width:100% !important;
        max-width:none !important;
        margin-left:0 !important;
        margin-right:0 !important;
        left:0 !important;
        right:0 !important;
        box-sizing:border-box !important;
    }
}


/* =========================================================
   CDA — RODAPÉ DESKTOP FINAL v3
   ---------------------------------------------------------
   Preenche toda a área entre o menu lateral e a barra de
   rolagem, sem alterar absolutamente nada no mobile.
   ========================================================= */

@media screen and (min-width:991px){

    #roda{
        position:relative !important;

        /* expande para os dois lados do container atual */
        width:calc(100% + 5rem) !important;
        max-width:none !important;

        /* 2.5rem = aproximadamente metade dos 5rem
           adicionados na largura */
        left:-2.6rem !important;
        right:auto !important;

        margin-left:0 !important;
        margin-right:0 !important;

        box-sizing:border-box !important;
    }

    #roda::before{
        left:0 !important;
        right:auto !important;
        width:100% !important;
        margin-left:0 !important;
    }

    #exttRODA,
    #platFT,
    #roda .menFT{
        box-sizing:border-box !important;
    }
}
