.elementor-kit-1872{--e-global-color-primary:#4C83D5;--e-global-color-secondary:#FE9102;--e-global-color-text:#002144;--e-global-color-accent:#3BC670;--e-global-color-pap_orange:#FE9102;--e-global-color-pap_blue:#4C83D5;--e-global-color-pap_green:#3BC670;--e-global-color-pap_coral:#FF5B5C;--e-global-color-pap_navy:#002144;--e-global-color-pap_yellow:#FAE03C;--e-global-color-pap_surface:#F2F5F4;--e-global-color-pap_white:#FFFFFF;--e-global-color-pap_pastel_blue:#EEF5FF;--e-global-color-pap_pastel_green:#ECFFF5;--e-global-color-pap_pastel_orange:#FFF6E7;--e-global-color-pap_pastel_coral:#FFF1F1;--e-global-color-pap_pastel_yellow:#FFFBE3;--e-global-color-pap_hero_soft:#EEF5FF;--e-global-typography-primary-font-family:"Outfit";--e-global-typography-primary-font-size:16px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:1.7em;--e-global-typography-primary-letter-spacing:0em;--e-global-typography-secondary-font-family:"Outfit";--e-global-typography-secondary-font-size:16px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:1.7em;--e-global-typography-text-font-family:"Outfit";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-family:"Outfit";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-line-height:1.2em;--e-global-typography-pap_h1-font-family:"Outfit";--e-global-typography-pap_h1-font-weight:700;--e-global-typography-pap_h1-line-height:1.16em;--e-global-typography-pap_h1-letter-spacing:-0.015em;--e-global-typography-pap_h2-font-family:"Outfit";--e-global-typography-pap_h2-font-weight:700;--e-global-typography-pap_h2-line-height:1.18em;--e-global-typography-pap_h2-letter-spacing:-0.015em;--e-global-typography-pap_h3-font-family:"Outfit";--e-global-typography-pap_h3-font-weight:700;--e-global-typography-pap_h3-line-height:1.22em;--e-global-typography-pap_h3-letter-spacing:-0.012em;--e-global-typography-pap_h4-font-family:"Outfit";--e-global-typography-pap_h4-font-weight:700;--e-global-typography-pap_h4-line-height:1.28em;--e-global-typography-pap_h4-letter-spacing:-0.005em;--e-global-typography-pap_h5-font-family:"Outfit";--e-global-typography-pap_h5-font-weight:700;--e-global-typography-pap_h5-line-height:1.45em;--e-global-typography-pap_h6-font-family:"Outfit";--e-global-typography-pap_h6-font-weight:700;--e-global-typography-pap_h6-line-height:1.45em;--e-global-typography-pap_body-font-family:"Outfit";--e-global-typography-pap_body-font-weight:400;--e-global-typography-pap_body-line-height:1.7em;--e-global-typography-pap_small-font-family:"Outfit";--e-global-typography-pap_small-font-weight:500;--e-global-typography-pap_small-line-height:1.55em;--e-global-typography-pap_button-font-family:"Outfit";--e-global-typography-pap_button-font-weight:700;--e-global-typography-pap_button-line-height:1.2em;--e-global-typography-pap_button-letter-spacing:0.02em;--e-global-typography-pap_field-font-family:"Outfit";--e-global-typography-pap_field-font-weight:400;--e-global-typography-pap_field-line-height:1.35em;--e-global-typography-pap_h1-font-size:48px;--e-global-typography-pap_h2-font-size:34px;--e-global-typography-pap_h3-font-size:24px;--e-global-typography-pap_h4-font-size:20px;--e-global-typography-pap_h5-font-size:18px;--e-global-typography-pap_h5-letter-spacing:0em;--e-global-typography-pap_h6-font-size:16px;--e-global-typography-pap_h6-letter-spacing:0em;--e-global-typography-pap_body-font-size:18px;--e-global-typography-pap_body-letter-spacing:0em;--e-global-typography-pap_small-font-size:15px;--e-global-typography-pap_small-letter-spacing:0em;--e-global-typography-pap_button-font-size:16px;--e-global-typography-pap_field-font-size:16px;--e-global-typography-pap_field-letter-spacing:0em;color:var( --e-global-color-text );font-family:var( --e-global-typography-pap_body-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_body-font-size );font-weight:var( --e-global-typography-pap_body-font-weight );line-height:var( --e-global-typography-pap_body-line-height );letter-spacing:var( --e-global-typography-pap_body-letter-spacing );word-spacing:var( --e-global-typography-pap_body-word-spacing );background-color:var( --e-global-color-pap_surface );}.elementor-kit-1872 a{color:var( --e-global-color-text );font-family:var( --e-global-typography-pap_button-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_button-font-size );font-weight:var( --e-global-typography-pap_button-font-weight );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );}.elementor-kit-1872 a:hover{color:var( --e-global-color-accent );font-family:var( --e-global-typography-pap_button-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_button-font-size );font-weight:var( --e-global-typography-pap_button-font-weight );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );}.elementor-kit-1872 h1{color:var( --e-global-color-text );font-family:var( --e-global-typography-pap_h1-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_h1-font-size );font-weight:var( --e-global-typography-pap_h1-font-weight );line-height:var( --e-global-typography-pap_h1-line-height );letter-spacing:var( --e-global-typography-pap_h1-letter-spacing );word-spacing:var( --e-global-typography-pap_h1-word-spacing );}.elementor-kit-1872 h2{color:var( --e-global-color-text );font-family:var( --e-global-typography-pap_h2-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_h2-font-size );font-weight:var( --e-global-typography-pap_h2-font-weight );line-height:var( --e-global-typography-pap_h2-line-height );letter-spacing:var( --e-global-typography-pap_h2-letter-spacing );word-spacing:var( --e-global-typography-pap_h2-word-spacing );}.elementor-kit-1872 h3{color:var( --e-global-color-text );font-family:var( --e-global-typography-pap_h3-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_h3-font-size );font-weight:var( --e-global-typography-pap_h3-font-weight );line-height:var( --e-global-typography-pap_h3-line-height );letter-spacing:var( --e-global-typography-pap_h3-letter-spacing );word-spacing:var( --e-global-typography-pap_h3-word-spacing );}.elementor-kit-1872 h4{color:var( --e-global-color-text );font-family:var( --e-global-typography-pap_h4-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_h4-font-size );font-weight:var( --e-global-typography-pap_h4-font-weight );line-height:var( --e-global-typography-pap_h4-line-height );letter-spacing:var( --e-global-typography-pap_h4-letter-spacing );word-spacing:var( --e-global-typography-pap_h4-word-spacing );}.elementor-kit-1872 h5{color:var( --e-global-color-text );font-family:var( --e-global-typography-pap_h5-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_h5-font-size );font-weight:var( --e-global-typography-pap_h5-font-weight );line-height:var( --e-global-typography-pap_h5-line-height );letter-spacing:var( --e-global-typography-pap_h5-letter-spacing );word-spacing:var( --e-global-typography-pap_h5-word-spacing );}.elementor-kit-1872 h6{color:var( --e-global-color-text );font-family:var( --e-global-typography-pap_h6-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_h6-font-size );font-weight:var( --e-global-typography-pap_h6-font-weight );line-height:var( --e-global-typography-pap_h6-line-height );letter-spacing:var( --e-global-typography-pap_h6-letter-spacing );word-spacing:var( --e-global-typography-pap_h6-word-spacing );}.elementor-kit-1872 button,.elementor-kit-1872 input[type="button"],.elementor-kit-1872 input[type="submit"],.elementor-kit-1872 .elementor-button{font-family:var( --e-global-typography-pap_button-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_button-font-size );font-weight:var( --e-global-typography-pap_button-font-weight );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );color:var( --e-global-color-text );background-color:var( --e-global-color-secondary );}.elementor-kit-1872 button:hover,.elementor-kit-1872 button:focus,.elementor-kit-1872 input[type="button"]:hover,.elementor-kit-1872 input[type="button"]:focus,.elementor-kit-1872 input[type="submit"]:hover,.elementor-kit-1872 input[type="submit"]:focus,.elementor-kit-1872 .elementor-button:hover,.elementor-kit-1872 .elementor-button:focus{color:var( --e-global-color-text );background-color:var( --e-global-color-pap_yellow );}.elementor-kit-1872 label{color:var( --e-global-color-text );font-family:var( --e-global-typography-pap_button-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_button-font-size );font-weight:var( --e-global-typography-pap_button-font-weight );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );}.elementor-kit-1872 input:not([type="button"]):not([type="submit"]),.elementor-kit-1872 textarea,.elementor-kit-1872 .elementor-field-textual{font-family:var( --e-global-typography-pap_field-font-family ), Outfit, Arial, sans-serif;font-size:var( --e-global-typography-pap_field-font-size );font-weight:var( --e-global-typography-pap_field-font-weight );line-height:var( --e-global-typography-pap_field-line-height );letter-spacing:var( --e-global-typography-pap_field-letter-spacing );word-spacing:var( --e-global-typography-pap_field-word-spacing );color:var( --e-global-color-text );background-color:var( --e-global-color-pap_white );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-kit-1872 e-page-transition{background-color:#FFBC7D;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-1872{--e-global-typography-pap_h1-font-size:42px;--e-global-typography-pap_h2-font-size:31px;--e-global-typography-pap_h3-font-size:23px;--e-global-typography-pap_h4-font-size:20px;--e-global-typography-pap_h5-font-size:18px;--e-global-typography-pap_h6-font-size:16px;--e-global-typography-pap_body-font-size:17px;--e-global-typography-pap_small-font-size:15px;--e-global-typography-pap_button-font-size:16px;--e-global-typography-pap_field-font-size:16px;font-size:var( --e-global-typography-pap_body-font-size );line-height:var( --e-global-typography-pap_body-line-height );letter-spacing:var( --e-global-typography-pap_body-letter-spacing );word-spacing:var( --e-global-typography-pap_body-word-spacing );}.elementor-kit-1872 a{font-size:var( --e-global-typography-pap_button-font-size );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );}.elementor-kit-1872 a:hover{font-size:var( --e-global-typography-pap_button-font-size );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );}.elementor-kit-1872 h1{font-size:var( --e-global-typography-pap_h1-font-size );line-height:var( --e-global-typography-pap_h1-line-height );letter-spacing:var( --e-global-typography-pap_h1-letter-spacing );word-spacing:var( --e-global-typography-pap_h1-word-spacing );}.elementor-kit-1872 h2{font-size:var( --e-global-typography-pap_h2-font-size );line-height:var( --e-global-typography-pap_h2-line-height );letter-spacing:var( --e-global-typography-pap_h2-letter-spacing );word-spacing:var( --e-global-typography-pap_h2-word-spacing );}.elementor-kit-1872 h3{font-size:var( --e-global-typography-pap_h3-font-size );line-height:var( --e-global-typography-pap_h3-line-height );letter-spacing:var( --e-global-typography-pap_h3-letter-spacing );word-spacing:var( --e-global-typography-pap_h3-word-spacing );}.elementor-kit-1872 h4{font-size:var( --e-global-typography-pap_h4-font-size );line-height:var( --e-global-typography-pap_h4-line-height );letter-spacing:var( --e-global-typography-pap_h4-letter-spacing );word-spacing:var( --e-global-typography-pap_h4-word-spacing );}.elementor-kit-1872 h5{font-size:var( --e-global-typography-pap_h5-font-size );line-height:var( --e-global-typography-pap_h5-line-height );letter-spacing:var( --e-global-typography-pap_h5-letter-spacing );word-spacing:var( --e-global-typography-pap_h5-word-spacing );}.elementor-kit-1872 h6{font-size:var( --e-global-typography-pap_h6-font-size );line-height:var( --e-global-typography-pap_h6-line-height );letter-spacing:var( --e-global-typography-pap_h6-letter-spacing );word-spacing:var( --e-global-typography-pap_h6-word-spacing );}.elementor-kit-1872 button,.elementor-kit-1872 input[type="button"],.elementor-kit-1872 input[type="submit"],.elementor-kit-1872 .elementor-button{font-size:var( --e-global-typography-pap_button-font-size );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );}.elementor-kit-1872 label{font-size:var( --e-global-typography-pap_button-font-size );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );}.elementor-kit-1872 input:not([type="button"]):not([type="submit"]),.elementor-kit-1872 textarea,.elementor-kit-1872 .elementor-field-textual{font-size:var( --e-global-typography-pap_field-font-size );line-height:var( --e-global-typography-pap_field-line-height );letter-spacing:var( --e-global-typography-pap_field-letter-spacing );word-spacing:var( --e-global-typography-pap_field-word-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-1872{--e-global-typography-pap_h1-font-size:36px;--e-global-typography-pap_h2-font-size:28px;--e-global-typography-pap_h3-font-size:22px;--e-global-typography-pap_h4-font-size:19px;--e-global-typography-pap_h5-font-size:18px;--e-global-typography-pap_h6-font-size:16px;--e-global-typography-pap_body-font-size:16px;--e-global-typography-pap_small-font-size:14px;--e-global-typography-pap_button-font-size:16px;--e-global-typography-pap_field-font-size:16px;font-size:var( --e-global-typography-pap_body-font-size );line-height:var( --e-global-typography-pap_body-line-height );letter-spacing:var( --e-global-typography-pap_body-letter-spacing );word-spacing:var( --e-global-typography-pap_body-word-spacing );}.elementor-kit-1872 a{font-size:var( --e-global-typography-pap_button-font-size );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );}.elementor-kit-1872 a:hover{font-size:var( --e-global-typography-pap_button-font-size );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );}.elementor-kit-1872 h1{font-size:var( --e-global-typography-pap_h1-font-size );line-height:var( --e-global-typography-pap_h1-line-height );letter-spacing:var( --e-global-typography-pap_h1-letter-spacing );word-spacing:var( --e-global-typography-pap_h1-word-spacing );}.elementor-kit-1872 h2{font-size:var( --e-global-typography-pap_h2-font-size );line-height:var( --e-global-typography-pap_h2-line-height );letter-spacing:var( --e-global-typography-pap_h2-letter-spacing );word-spacing:var( --e-global-typography-pap_h2-word-spacing );}.elementor-kit-1872 h3{font-size:var( --e-global-typography-pap_h3-font-size );line-height:var( --e-global-typography-pap_h3-line-height );letter-spacing:var( --e-global-typography-pap_h3-letter-spacing );word-spacing:var( --e-global-typography-pap_h3-word-spacing );}.elementor-kit-1872 h4{font-size:var( --e-global-typography-pap_h4-font-size );line-height:var( --e-global-typography-pap_h4-line-height );letter-spacing:var( --e-global-typography-pap_h4-letter-spacing );word-spacing:var( --e-global-typography-pap_h4-word-spacing );}.elementor-kit-1872 h5{font-size:var( --e-global-typography-pap_h5-font-size );line-height:var( --e-global-typography-pap_h5-line-height );letter-spacing:var( --e-global-typography-pap_h5-letter-spacing );word-spacing:var( --e-global-typography-pap_h5-word-spacing );}.elementor-kit-1872 h6{font-size:var( --e-global-typography-pap_h6-font-size );line-height:var( --e-global-typography-pap_h6-line-height );letter-spacing:var( --e-global-typography-pap_h6-letter-spacing );word-spacing:var( --e-global-typography-pap_h6-word-spacing );}.elementor-kit-1872 button,.elementor-kit-1872 input[type="button"],.elementor-kit-1872 input[type="submit"],.elementor-kit-1872 .elementor-button{font-size:var( --e-global-typography-pap_button-font-size );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );}.elementor-kit-1872 label{font-size:var( --e-global-typography-pap_button-font-size );line-height:var( --e-global-typography-pap_button-line-height );letter-spacing:var( --e-global-typography-pap_button-letter-spacing );word-spacing:var( --e-global-typography-pap_button-word-spacing );}.elementor-kit-1872 input:not([type="button"]):not([type="submit"]),.elementor-kit-1872 textarea,.elementor-kit-1872 .elementor-field-textual{font-size:var( --e-global-typography-pap_field-font-size );line-height:var( --e-global-typography-pap_field-line-height );letter-spacing:var( --e-global-typography-pap_field-letter-spacing );word-spacing:var( --e-global-typography-pap_field-word-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Passo a Passo — Home v31.5.9.7
   CSS consolidado: seção Avaliações das famílias ajustada para usar widget Depoimento nativo do Elementor. */

:root{
  --pap-color-orange: var(--e-global-color-pap_orange, #FE9102);
  --pap-color-blue: var(--e-global-color-pap_blue, #4C83D5);
  --pap-color-green: var(--e-global-color-pap_green, #3BC670);
  --pap-color-coral: var(--e-global-color-pap_coral, #FF5B5C);
  --pap-color-yellow: var(--e-global-color-pap_yellow, #FAE03C);
  --pap-color-navy: var(--e-global-color-pap_navy, #002144);
  --pap-color-surface: var(--e-global-color-pap_surface, #F2F5F4);
  --pap-color-white: var(--e-global-color-pap_white, #FFFFFF);
  --pap-color-pastel-blue: var(--e-global-color-pap_pastel_blue, #EEF5FF);
  --pap-color-pastel-green: var(--e-global-color-pap_pastel_green, #ECFFF5);
  --pap-color-pastel-orange: var(--e-global-color-pap_pastel_orange, #FFF6E7);
  --pap-color-pastel-coral: var(--e-global-color-pap_pastel_coral, #FFF1F1);
  --pap-color-pastel-yellow: var(--e-global-color-pap_pastel_yellow, #FFFBE3);
  --pap-font-base: var(--e-global-typography-pap_body-font-family, Outfit, Arial, sans-serif);

  --pap-readable: 980px;
  --pap-radius-sm: clamp(14px, 1.2vw, 20px);
  --pap-radius-md: clamp(20px, 1.8vw, 28px);
  --pap-radius-lg: clamp(26px, 2.4vw, 40px);
  --pap-space-xs: clamp(.65rem, .45rem + .35vw, .95rem);
  --pap-space-sm: clamp(1rem, .75rem + .55vw, 1.45rem);
  --pap-space-md: clamp(1.45rem, 1rem + .95vw, 2.25rem);
  --pap-space-lg: clamp(2.1rem, 1.45rem + 1.85vw, 3.6rem);
  --pap-space-xl: clamp(3.8rem, 2.35rem + 4.2vw, 7rem);
  --pap-shadow-soft: 0 12px 32px rgba(0,33,68,.06);
  --pap-shadow-hover: 0 20px 46px rgba(0,33,68,.10);
  --pap-shadow-hero: 0 24px 58px rgba(0,33,68,.14);
  --pap-border-soft: rgba(0,33,68,.10);
}

.pap-tab-kicker{
  margin:0;
  color:var(--pap-color-blue);
  font-size:.82rem;
  font-weight:700;
  letter-spacing:.09em;
}

.pap-tab-note{
  padding:1rem 1.1rem;
  border-left:4px solid var(--pap-color-yellow);
  border-radius:0 var(--pap-radius-sm) var(--pap-radius-sm) 0;
  background:var(--pap-color-pastel-yellow);
}

.pap-activity-blue .elementor-icon{background:var(--pap-color-pastel-blue)}
.pap-activity-green .elementor-icon{background:var(--pap-color-pastel-green)}
.pap-activity-coral .elementor-icon{background:var(--pap-color-pastel-coral)}
.pap-activity-orange .elementor-icon{background:var(--pap-color-pastel-orange)}
.pap-activity-yellow .elementor-icon{background:var(--pap-color-pastel-yellow)}

@keyframes pap-float-soft{
  0%{transform:translateY(0) rotate(0deg)}
  50%{transform:translateY(-8px) rotate(1.2deg)}
  100%{transform:translateY(0) rotate(0deg)}
}

@keyframes pap-soft-pulse{
  0%,100%{box-shadow:0 10px 26px rgba(59,198,112,.18)}
  50%{box-shadow:0 14px 38px rgba(59,198,112,.30)}
}

html{scroll-behavior:smooth;overflow-x:hidden}
body{
  margin:0;
  overflow-x:hidden;
  color:var(--pap-color-navy);
  font-family:var(--pap-font-base);
  line-height:1.65;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4,h5,h6,
.pap-h1 .elementor-heading-title,
.pap-h2 .elementor-heading-title,
.pap-h3 .elementor-heading-title,
.pap-section-title .elementor-heading-title{
  color:var(--pap-color-navy);
  font-family:var(--pap-font-base);
  font-weight:700;
  letter-spacing:-.015em;
  line-height:1.16;
  overflow-wrap:anywhere;
}

p,
.elementor-widget-text-editor,
.pap-text,
.pap-section-text,
.pap-native-card-text,
.pap-card p{
  line-height:1.68;
  overflow-wrap:anywhere;
}

a{color:inherit}
a:focus-visible,
button:focus-visible,
.elementor-button:focus-visible,
.elementor-tab-title:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:3px solid rgba(76,131,213,.45);
  outline-offset:3px;
}

.pap-section{
  position:relative;
  overflow:visible;
  padding-block:var(--pap-space-xl);
}

.pap-section > .e-con-inner,
.pap-section-inner,
.pap-container{
  width:min(calc(100% - clamp(2rem, 5vw, 5rem)), var(--container-max-width, 1440px));
  margin-inline:auto;
}

.pap-bg-hero-soft{
  background:
    radial-gradient(circle at 12% 12%, rgba(250,224,60,.34), transparent 30%),
    radial-gradient(circle at 88% 18%, rgba(76,131,213,.20), transparent 32%),
    radial-gradient(circle at 78% 82%, rgba(59,198,112,.18), transparent 28%),
    linear-gradient(180deg, #EEF5FF 0%, #FFFFFF 88%);
}
.pap-bg-white{background:var(--pap-color-white)}
.pap-bg-surface{background:var(--pap-color-surface)}
.pap-bg-blue-light{background:var(--pap-color-pastel-blue)}
.pap-bg-green-light{background:var(--pap-color-pastel-green)}
.pap-bg-orange-light{background:var(--pap-color-pastel-orange)}
.pap-bg-coral-light{background:var(--pap-color-pastel-coral)}
.pap-bg-yellow-light{background:var(--pap-color-pastel-yellow)}

/* Padrões lúdicos restaurados como camada leve de fundo */
.pap-pattern-stars-soft,
.pap-pattern-dots-soft,
.pap-pattern-steps-soft{
  position:relative;
  isolation:isolate;
  overflow:visible;
}
.pap-pattern-stars-soft::before,
.pap-pattern-dots-soft::before,
.pap-pattern-steps-soft::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  opacity:.26;
}
.pap-pattern-dots-soft::before{
  background:
    radial-gradient(circle, rgba(0,33,68,.10) 0 2px, transparent 3px),
    radial-gradient(circle, rgba(76,131,213,.10) 0 2px, transparent 3px);
  background-position:0 0, 17px 17px;
  background-size:34px 34px;
}
.pap-pattern-stars-soft::before{
  background:
    radial-gradient(circle at 20% 20%, rgba(250,224,60,.48) 0 3px, transparent 4px),
    radial-gradient(circle at 72% 35%, rgba(255,91,92,.26) 0 3px, transparent 4px),
    radial-gradient(circle at 40% 78%, rgba(76,131,213,.26) 0 4px, transparent 5px),
    radial-gradient(circle at 88% 84%, rgba(59,198,112,.22) 0 3px, transparent 4px);
  background-size:180px 180px;
}
.pap-pattern-steps-soft::before{
  background:
    radial-gradient(ellipse at 18% 34%, rgba(254,145,2,.20) 0 5px, transparent 6px),
    radial-gradient(ellipse at 21% 38%, rgba(254,145,2,.16) 0 4px, transparent 5px),
    radial-gradient(ellipse at 78% 76%, rgba(59,198,112,.18) 0 5px, transparent 6px),
    radial-gradient(ellipse at 81% 80%, rgba(59,198,112,.14) 0 4px, transparent 5px);
  background-size:220px 180px;
}
.pap-section > .e-con-inner,
.pap-section .pap-container,
.pap-section > .elementor-element:not(.elementor-shape),
.pap-section .elementor-widget-wrap,
.pap-section .e-con{
  position:relative;
  z-index:2;
}

/* Nuvens nativas do Elementor como transição visível */
.pap-section .elementor-shape{
  display:block;
  pointer-events:none;
  z-index:1;
}
.pap-section .elementor-shape-top{
  top:-1px;
}
.pap-section .elementor-shape-top svg{
  display:block;
  width:calc(100% + 2px);
  height:clamp(52px, 7vw, 110px);
}
.pap-section .elementor-shape-top .elementor-shape-fill{
  opacity:1;
}
.pap-cloud-visible{
  position:relative;
  padding-top:calc(var(--pap-space-xl) + 1rem);
}
.pap-cloud-visible > .elementor-shape-top{
  z-index:1;
}
.pap-cloud-visible > .e-con-inner,
.pap-cloud-visible .pap-container{
  position:relative;
  z-index:2;
}

/* Estratégia de mídia responsiva nativa e política global de imagens */
.pap-media-desktop,
.pap-media-tablet,
.pap-media-mobile{
  width:100%;
  max-width:100%;
}
.pap-media-desktop{display:block}
.pap-media-tablet,
.pap-media-mobile{display:none}

.elementor-widget-image,
.elementor-widget-image .elementor-widget-container{
  max-width:100%;
}
.elementor-widget-image img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
  object-position:center;
  box-shadow:none;
}

/* Limites por contexto: imagens não devem ocupar tamanho real ilimitado */
.pap-hero-main-image{
  width:100%;
  max-width:680px;
  margin-inline:auto;
}
.pap-hero-main-image img{
  max-width:680px;
  max-height:640px;
  aspect-ratio:4/3;
  object-fit:cover;
  object-position:center;
  border-radius:32px;
  box-shadow:var(--pap-shadow-hero);
}

.pap-native-card-image,
.pap-vivencia-image{
  width:100%;
  max-width:100%;
}
.pap-native-card-image img,
.pap-vivencia-image img{
  max-height:260px;
  aspect-ratio:4/3;
  object-fit:cover;
  object-position:center;
  border-radius:24px;
}

.pap-image-stage,
.pap-hero-reference-visual{
  position:relative;
  isolation:isolate;
  min-width:0;
}
.pap-image-playful,
.pap-image-playful .elementor-widget-container,
.pap-feature-image,
.pap-feature-image .elementor-widget-container,
.pap-native-card-image,
.pap-native-card-image .elementor-widget-container{
  overflow:hidden;
  border-radius:24px;
}
.pap-map,
.pap-map .elementor-widget-container,
.pap-map iframe{
  border-radius:24px;
  overflow:hidden;
}

/* Hero emocional */
.pap-hero-world-section{
  padding-block:clamp(4.5rem, 7vw, 8.5rem);
}
.pap-hero-reference-layout{
  display:flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:space-between;
  gap:clamp(2rem, 4vw, 5rem);
}
.pap-hero-reference-copy{
  flex:0 1 50%;
  max-width:700px;
}
.pap-hero-reference-visual{
  flex:0 1 50%;
  max-width:720px;
}
.pap-hero-story-card{
  padding:clamp(1.25rem, 2vw, 2rem);
  border-radius:28px;
  background:rgba(255,255,255,.68);
  box-shadow:0 16px 40px rgba(0,33,68,.07);
  backdrop-filter:blur(8px);
}
.pap-hero-title .elementor-heading-title{
  font-size:clamp(2.75rem, 2rem + 3.4vw, 5.35rem);
  line-height:1.04;
  max-width:11.5em;
}
.pap-hero-subtitle,
.pap-lead{
  max-width:62ch;
  color:rgba(0,33,68,.86);
  font-size:clamp(1.05rem, .95rem + .45vw, 1.28rem);
}
.pap-eyebrow,
.pap-eyebrow .elementor-heading-title{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  width:max-content;
  max-width:100%;
  padding:.45rem .82rem;
  border-radius:999px;
  background:rgba(254,145,2,.12);
  color:var(--pap-color-orange);
  font-weight:700;
  letter-spacing:.01em;
  line-height:1.25;
}

.pap-button-row{
  display:flex;
  flex-wrap:wrap;
  gap:.85rem;
  align-items:center;
  margin-top:clamp(.9rem, 1.5vw, 1.35rem);
}
.pap-button .elementor-button,
.cta-whatsapp-hero .elementor-button,
.cta-whatsapp-contact .elementor-button,
.cta-whatsapp-final .elementor-button,
.pap-primary-conversion .elementor-button{
  min-height:54px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  border-radius:999px;
  box-shadow:0 10px 26px rgba(59,198,112,.18);
  transition:transform .3s cubic-bezier(.175,.885,.32,1.275), box-shadow .35s ease, filter .3s ease;
  letter-spacing:.02em;
  text-align:center;
}
.cta-whatsapp-final .elementor-button{animation:pap-soft-pulse 5s ease-in-out infinite}
.pap-button-secondary .elementor-button{
  border:2px solid var(--e-global-color-pap_blue,var(--pap-color-blue));
  background:var(--e-global-color-pap_white,var(--pap-color-white));
  color:var(--pap-color-navy);
  box-shadow:0 8px 20px rgba(0,33,68,.12);
}
.pap-button-secondary .elementor-button:hover,
.pap-button-secondary .elementor-button:focus-visible{
  border-color:var(--e-global-color-pap_navy,var(--pap-color-navy));
  background:var(--e-global-color-pap_pastel_blue,var(--pap-color-pastel-blue));
  box-shadow:0 12px 26px rgba(0,33,68,.18);
}

.pap-hero-trust-grid,
.pap-card-grid,
.pap-info-grid,
.pap-school-grid,
.pap-school-impact-grid,
.pap-vivencias-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:clamp(1rem, 2vw, 2rem);
}
.pap-hero-trust-grid,
.pap-school-grid,
.pap-school-impact-grid,
.pap-vivencias-grid{
  align-items:stretch;
}
.pap-info-grid{
  align-items:flex-start;
}
.pap-feature-grid{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:clamp(1.25rem, 3vw, 3rem);
}
.pap-hero-trust-grid{
  justify-content:flex-start;
  margin-top:clamp(1rem, 1.8vw, 1.6rem);
}
.pap-hero-trust-grid > *,
.pap-card-grid > *,
.pap-info-grid > *,
.pap-school-grid > *,
.pap-school-impact-grid > *,
.pap-vivencias-grid > *{
  flex:1 1 min(100%, 280px);
  min-width:0;
  max-width:390px;
}
.pap-feature-grid > *{
  flex:1 1 320px;
  min-width:0;
  max-width:620px;
}
.pap-info-grid > *{
  align-self:flex-start;
}
.pap-mini-seal .elementor-widget-container,
.pap-trust-icon-box .elementor-widget-container{
  height:100%;
  padding:clamp(.9rem, 1.2vw, 1.2rem);
  border-radius:22px;
  background:var(--pap-color-white);
  box-shadow:var(--pap-shadow-soft);
}
.pap-trust-icon-box .elementor-icon-box-wrapper{
  display:flex;
  align-items:center;
  gap:.85rem;
  text-align:left;
}
.pap-trust-icon-box .elementor-icon-box-icon{
  flex:0 0 auto;
  margin:0;
}
.pap-trust-icon-box .elementor-icon-box-title{
  margin:0 0 .16rem;
  color:var(--pap-color-navy);
  font-size:clamp(.98rem, .94rem + .16vw, 1.1rem);
  line-height:1.2;
}
.pap-trust-icon-box .elementor-icon-box-description{
  margin:0;
  color:rgba(0,33,68,.78);
  font-size:clamp(.88rem, .84rem + .12vw, .96rem);
  line-height:1.45;
}

.pap-overlay-card{
  position:absolute;
  left:clamp(1rem, 2vw, 1.5rem);
  bottom:clamp(1rem, 2vw, 1.5rem);
  max-width:min(88%, 360px);
  padding:clamp(1rem, 1.5vw, 1.35rem);
  border-radius:24px;
  background:rgba(255,255,255,.92);
  box-shadow:var(--pap-shadow-soft);
}
.pap-hero-reference-overlay-chips{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin-top:.65rem;
}
.pap-hero-reference-overlay-chips .pap-native-card-text{
  width:auto;
  display:inline-flex;
  padding:.34rem .68rem;
  border-radius:999px;
  background:rgba(250,224,60,.35);
  font-weight:700;
  font-size:.9rem;
}

.pap-hero-since-card{
  position:absolute;
  top:clamp(.85rem, 1.5vw, 1.25rem);
  right:clamp(.85rem, 1.5vw, 1.25rem);
  padding:.7rem .95rem;
  border-radius:999px;
  background:var(--pap-color-white);
  box-shadow:var(--pap-shadow-soft);
  z-index:4;
}
.pap-sticker-chip-text .elementor-heading-title{
  color:var(--pap-color-navy);
  font-size:clamp(.9rem, .84rem + .18vw, 1rem);
  line-height:1.2;
}

.pap-floating-element,
.pap-sticker,
.pap-decor-icon{
  position:absolute;
  pointer-events:none;
  z-index:4;
  opacity:.82;
  animation:pap-float-soft 7s ease-in-out infinite;
}
.pap-sticker-hero-home{top:8%;left:-3%}
.pap-sticker-hero-steps{right:-4%;bottom:15%}
.pap-sticker-hero-star{right:8%;top:-4%}
.pap-decor-star{right:4%;top:12%}
.pap-decor-heart{left:3%;bottom:16%}
.pap-decor-cloud{right:10%;bottom:4%}

/* Cards e blocos editoriais */
.pap-native-card,
.pap-card,
.pap-info-card,
.pap-school-card,
.pap-proof-card,
.pap-vivencia-card{
  position:relative;
  min-width:0;
  min-height:auto;
  height:auto;
  border-radius:var(--pap-radius-md);
  background:var(--pap-color-white);
  box-shadow:var(--pap-shadow-soft);
  transition:transform .32s ease, box-shadow .32s ease, filter .32s ease;
}
.pap-info-card,
.pap-proof-card{
  padding:clamp(1.25rem, 1.8vw, 1.9rem);
}
.pap-info-card .elementor-widget-container,
.pap-proof-card .elementor-widget-container,
.pap-info-grid .pap-native-card,
.pap-info-grid .pap-card{
  min-height:auto;
  height:auto;
}
.pap-school-card,
.pap-vivencia-card{
  min-height:auto;
}
.pap-native-card-body,
.pap-school-card-body,
.pap-vivencia-panel{
  padding:clamp(1rem, 1.6vw, 1.55rem);
}
.pap-native-card-title .elementor-heading-title,
.pap-card .elementor-heading-title{
  margin:0;
  color:var(--pap-color-navy);
}
.pap-card-chip-text,
.pap-card-footer-chip{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  align-items:center;
  border-radius:999px;
  padding:.38rem .72rem;
  background:rgba(76,131,213,.12);
  color:var(--pap-color-navy);
  font-size:clamp(.86rem, .82rem + .12vw, .94rem);
  font-weight:700;
  line-height:1.25;
}
.pap-impact-badge{
  display:flex;
  align-items:center;
  gap:.85rem;
  padding:clamp(.85rem, 1.2vw, 1.1rem);
  border-radius:var(--pap-radius-md);
  background:rgba(255,255,255,.90);
  box-shadow:var(--pap-shadow-soft);
}
.pap-native-card-icon .elementor-icon,
.pap-impact-badge-icon .elementor-icon,
.pap-magic-icon .elementor-icon{
  width:clamp(44px, 4vw, 56px);
  height:clamp(44px, 4vw, 56px);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
}

@media (hover:hover) and (pointer:fine){

  .pap-card:hover,
  .pap-info-card:hover,
  .pap-school-card:hover,
  .pap-proof-card:hover,
  .pap-vivencia-card:hover{
    transform:translateY(-3px);
    box-shadow:var(--pap-shadow-hover);
    filter:saturate(1.03);
  }
  .pap-vivencias-grid > :nth-child(even){
    transform:translateY(22px) rotate(.45deg);
  }
  .pap-vivencias-grid > :nth-child(odd){
    transform:rotate(-.3deg);
  }

}

/* Formulário, contato e FAQ */
.pap-contact-form,
.pap-contact-form .elementor-form{width:100%}
.pap-contact-form .elementor-form-fields-wrapper{width:100%;align-items:flex-start}
.pap-contact-form .elementor-field-group{min-width:0}
.pap-contact-form .elementor-field-label{
  margin-bottom:.5rem;
  color:var(--pap-color-navy);
  font-weight:700;
  line-height:1.35;
}
.pap-contact-form .elementor-field,
.pap-contact-form input,
.pap-contact-form textarea,
.pap-contact-form select{
  min-height:54px;
  border-radius:16px;
  border:1px solid #E2E8F0;
  box-shadow:inset 0 2px 6px rgba(0,33,68,.03), 0 8px 18px rgba(0,33,68,.04);
  background:var(--pap-color-white);
  color:var(--pap-color-navy);
  line-height:1.35;
}
.pap-contact-form textarea{min-height:96px;resize:vertical}
.pap-contact-form .elementor-field-type-acceptance{
  display:flex;
  align-items:flex-start;
  gap:.65rem;
}
.pap-contact-form .elementor-field-type-acceptance input{
  width:20px;
  height:20px;
  min-height:auto;
  flex:0 0 20px;
  margin-top:.15rem;
}
.pap-contact-form .elementor-button{
  min-height:54px;
  border-radius:999px;
}
.pap-security-microcopy{
  max-width:min(100%,720px);
  color:rgba(0,33,68,.78);
  font-size:clamp(.88rem,.84rem + .12vw,.96rem);
  line-height:1.55;
}
.pap-contact-list-comfy .elementor-icon-list-items{
  display:flex;
  flex-direction:column;
  gap:1rem;
}
.pap-contact-list-comfy .elementor-icon-list-item{
  align-items:flex-start;
  line-height:1.45;
}

.pap-faq.elementor-widget-accordion .elementor-accordion{border:0}
.pap-faq.elementor-widget-accordion .elementor-accordion-item{
  margin-bottom:clamp(.85rem,1.1vw,1.2rem);
  border:0;
  border-radius:16px;
  background:var(--pap-color-white);
  box-shadow:0 8px 24px rgba(0,33,68,.04);
  overflow:hidden;
}
.pap-faq.elementor-widget-accordion .elementor-tab-title{
  padding:1rem 1.15rem;
  color:var(--pap-color-navy);
  font-weight:700;
  line-height:1.35;
}
.pap-faq.elementor-widget-accordion .elementor-tab-title.elementor-active{
  background:rgba(250,224,60,.28);
  color:var(--pap-color-navy);
}
.pap-faq.elementor-widget-accordion .elementor-tab-content{
  padding:0 1.15rem 1.1rem;
  color:var(--pap-color-navy);
  line-height:1.7;
  background:var(--pap-color-white);
}

@media (min-width:1440px){

  .pap-hero-main-image{max-width:700px}
  .pap-hero-main-image img{
    max-width:700px;
    max-height:660px;
  }

}

@media (max-width:1199px){

  .pap-hero-reference-layout{gap:clamp(1.5rem,3vw,3rem)}
  .pap-hero-title .elementor-heading-title{font-size:clamp(2.35rem,1.55rem + 3vw,4.3rem)}

}

@media (min-width:768px) and (max-width:1024px){

  .pap-media-desktop{display:none}
  .pap-media-tablet{display:block}
  .pap-media-mobile{display:none}

  .pap-hero-reference-layout{
    flex-direction:column;
    align-items:stretch;
  }
  .pap-hero-reference-copy,
  .pap-hero-reference-visual{
    max-width:100%;
    flex-basis:auto;
  }
  .pap-hero-main-image{
    max-width:760px;
  }
  .pap-hero-main-image img{
    max-width:760px;
    max-height:480px;
  }
  .pap-native-card-image img,
  .pap-vivencia-image img{
    max-height:240px;
  }

  .pap-card-grid > *,
  .pap-info-grid > *,
  .pap-school-grid > *,
  .pap-school-impact-grid > *,
  .pap-vivencias-grid > *,
  .pap-feature-grid > *{
    max-width:100%;
    transform:none;
  }
  .pap-floating-element{
    transform:scale(.86);
    opacity:.72;
    animation-duration:9s;
  }
  .pap-pattern-stars-soft::before,
  .pap-pattern-dots-soft::before,
  .pap-pattern-steps-soft::before{
    opacity:.22;
  }

}

@media (max-width:767px){

  .pap-section{padding-block:clamp(3rem,12vw,4.75rem)}
  .pap-cloud-visible{padding-top:calc(clamp(3rem,12vw,4.75rem) + .65rem)}
  .pap-section > .e-con-inner,
  .pap-section-inner,
  .pap-container{
    width:min(calc(100% - 1.5rem), var(--container-max-width, 1440px));
  }
  .pap-section .elementor-shape-top svg{
    height:clamp(52px, 15vw, 68px);
  }

  .pap-pattern-stars-soft::before,
  .pap-pattern-dots-soft::before,
  .pap-pattern-steps-soft::before{
    opacity:.18;
  }
  .pap-pattern-dots-soft::before{background-size:40px 40px}
  .pap-pattern-stars-soft::before{background-size:160px 160px}
  .pap-pattern-steps-soft::before{background-size:190px 160px}

  .pap-media-desktop,
  .pap-media-tablet{display:none}
  .pap-media-mobile{display:block}

  .pap-button-row{
    flex-direction:column;
    align-items:stretch;
  }
  .pap-button .elementor-button,
  .cta-whatsapp-hero .elementor-button,
  .cta-whatsapp-contact .elementor-button,
  .cta-whatsapp-final .elementor-button,
  .pap-primary-conversion .elementor-button{
    width:100%;
    min-height:52px;
    white-space:normal;
    text-align:center;
  }

  .pap-hero-story-card{
    padding:1rem;
    border-radius:22px;
  }
  .pap-hero-title .elementor-heading-title{
    font-size:clamp(2.15rem, 12vw, 3.35rem);
    max-width:100%;
  }
  .pap-hero-main-image{
    max-width:100%;
  }
  .pap-hero-main-image img{
    max-width:100%;
    max-height:390px;
    border-radius:24px;
  }
  .pap-overlay-card{
    position:relative;
    left:auto;
    bottom:auto;
    max-width:100%;
    margin-top:.85rem;
  }
  .pap-hero-since-card{
    top:.65rem;
    right:.65rem;
    transform:scale(.86);
  }
  .pap-native-card-image img,
  .pap-vivencia-image img{
    max-height:230px;
  }

  .pap-info-card,
  .pap-proof-card,
  .pap-card-restored{
    padding:1.15rem;
  }

  .pap-floating-element{
    opacity:.48;
    animation:none;
    transform:scale(.68);
  }
  .pap-decor-cloud,
  .pap-decor-heart{
    display:none;
  }
  .pap-sticker-hero-home{top:2%;left:2%}
  .pap-sticker-hero-star{right:4%;top:2%}
  .pap-sticker-hero-steps{right:2%;bottom:6%}

  h1,h2,h3,
  .pap-h1 .elementor-heading-title,
  .pap-h2 .elementor-heading-title,
  .pap-h3 .elementor-heading-title{
    line-height:1.2;
  }

}

/* v31.5.9.5 — Painel ambiente institucional acolhedor em Flexbox nativo */
.pap-school-flex-panel {
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 2.2vw, 2.25rem);
  padding: clamp(1.5rem, 3vw, 3rem);
  border-radius: 34px;
  background: var(--pap-color-white);
  box-shadow: var(--pap-shadow-soft);
  overflow: hidden;
}

.pap-school-flex-toprow {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1.75rem, 3vw, 3.5rem);
  width: 100%;
}

.pap-school-flex-copy {
  flex: 1 1 420px;
  max-width: 680px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: clamp(0.85rem, 1.4vw, 1.25rem);
}

.pap-school-flex-visual {
  flex: 1 1 460px;
  min-width: 0;
  max-width: 720px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  position: relative;
  isolation: isolate;
}

/* v31.5.9.5 — Imagem editorial flexível */
.pap-school-flex-visual .pap-school-flex-image,
.pap-school-flex-visual .pap-school-flex-image .elementor-widget-container {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  border-radius: 30px;
}

.pap-school-flex-visual .pap-school-flex-image img {
  display: block;
  width: 100%;
  max-width: 100%;
  min-height: 420px;
  max-height: 560px;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
  border-radius: 30px;
}

/* v31.5.9.5 — Badges em Flexbox estável */
.pap-school-flex-badges {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  gap: clamp(0.85rem, 1.4vw, 1.25rem);
  width: 100%;
}

.pap-school-flex-badge {
  flex: 1 1 260px;
  min-width: 0;
  max-width: 420px;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-areas:
    "icon title"
    "icon text";
  align-items: start;
  gap: 0.35rem 0.75rem;
  height: auto;
  padding: clamp(0.95rem, 1.3vw, 1.15rem);
  border-radius: 20px;
  background: rgba(255, 246, 231, 0.78);
  border: 1px solid rgba(0, 33, 68, 0.08);
  box-shadow: 0 8px 22px rgba(0, 33, 68, 0.045);
}

.pap-school-flex-badge .pap-school-badge-icon,
.pap-school-flex-badge .elementor-widget-icon {
  grid-area: icon;
  width: 40px;
  min-width: 40px;
}

.pap-school-flex-badge .pap-school-badge-title {
  grid-area: title;
  min-width: 0;
  font-weight: 700;
  line-height: 1.2;
  color: var(--pap-color-navy);
}

.pap-school-flex-badge .pap-school-badge-text {
  grid-area: text;
  min-width: 0;
  font-size: clamp(0.86rem, 0.82rem + 0.12vw, 0.96rem);
  line-height: 1.38;
  color: rgba(0, 33, 68, 0.82);
  overflow-wrap: anywhere;
}

/* v31.5.9.5 — Cards da Nossa escola alinhados */
.pap-school-impact-grid > *,
.pap-school-impact-grid > :nth-child(even),
.pap-school-impact-grid > :nth-child(odd) {
  transform: none;
}

/* v31.5.9.5 — Instagram preservado com 3 widgets HTML autorizados */
.pap-instagram-html-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 2rem);
  align-items: start;
}

.pap-instagram-item {
  width: 100%;
  max-width: 540px;
  min-width: 0;
  margin-inline: auto;
  padding: clamp(0.75rem, 1.2vw, 1rem);
  border-radius: 28px;
  background: var(--pap-color-white);
  box-shadow: var(--pap-shadow-soft);
  overflow: hidden;
}

.pap-instagram-html-widget,
.pap-instagram-html-widget .elementor-widget-container {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}

.pap-instagram-html-widget .instagram-media {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}

@media (min-width: 1025px) and (max-width: 1199px) {

  .pap-school-flex-toprow {
    flex-direction: column;
    align-items: stretch;
  }

  .pap-school-flex-copy,
  .pap-school-flex-visual {
    width: 100%;
    max-width: 820px;
    align-self: center;
  }

  .pap-school-flex-visual .pap-school-flex-image img {
    min-height: 360px;
    max-height: 500px;
  }

  .pap-school-flex-badge {
    flex-basis: 260px;
  }

}

@media (min-width: 768px) and (max-width: 1024px) {

  .pap-school-flex-panel {
    gap: 1.5rem;
  }

  .pap-school-flex-toprow {
    flex-direction: column;
    align-items: stretch;
  }

  .pap-school-flex-copy,
  .pap-school-flex-visual {
    width: 100%;
    max-width: 760px;
    align-self: center;
  }

  .pap-school-flex-badge {
    flex: 1 1 calc(50% - 1rem);
    max-width: none;
  }

  .pap-school-flex-visual .pap-school-flex-image img {
    min-height: 320px;
    max-height: 460px;
  }

  .pap-instagram-html-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

}

@media (max-width: 767px) {

  .pap-school-flex-panel {
    gap: 1.25rem;
    padding: 1rem;
    border-radius: 26px;
  }

  .pap-school-flex-toprow {
    flex-direction: column;
    align-items: stretch;
    gap: 1.25rem;
  }

  .pap-school-flex-copy,
  .pap-school-flex-visual {
    width: 100%;
    max-width: 100%;
    flex: 1 1 auto;
  }

  .pap-school-flex-badges {
    flex-direction: column;
    align-items: stretch;
  }

  .pap-school-flex-badge {
    width: 100%;
    max-width: 100%;
    flex: 1 1 auto;
  }

  .pap-school-flex-visual .pap-school-flex-image img {
    min-height: 240px;
    max-height: 340px;
    border-radius: 22px;
  }

  .pap-instagram-html-grid {
    grid-template-columns: 1fr;
  }

  .pap-instagram-item {
    max-width: 100%;
    padding: 0.75rem;
    border-radius: 22px;
  }

}

/* v31.5.9.7 — Depoimentos Google com widget Depoimento nativo */
.pap-testimonials-section {
  position: relative;
}

.pap-testimonials-container {
  position: relative;
  z-index: 1;
}

.pap-testimonials-native-grid,
.pap-testimonials-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: clamp(1rem, 2vw, 2rem);
  width: 100%;
}

.pap-testimonial-native,
.pap-testimonial-card {
  flex: 1 1 280px;
  max-width: 420px;
  min-width: 0;
}

.pap-testimonial-native .elementor-widget-container,
.pap-testimonial-card .elementor-widget-container {
  height: 100%;
  min-height: 100%;
  display: flex;
}

.pap-testimonial-native .elementor-testimonial-wrapper,
.pap-testimonial-card .elementor-testimonial-wrapper {
  width: 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: clamp(.75rem, 1.1vw, 1rem);
  padding: clamp(1.25rem, 2vw, 2rem);
  border-radius: 28px;
  background: var(--pap-color-white);
  border: 1px solid rgba(0, 33, 68, 0.08);
  box-shadow: var(--pap-shadow-soft);
  height: auto;
}

.pap-testimonial-native .elementor-testimonial-content,
.pap-testimonial-card .elementor-testimonial-content {
  color: rgba(0, 33, 68, .86);
  line-height: 1.68;
  overflow-wrap: anywhere;
  margin: 0;
}

.pap-testimonial-native .elementor-testimonial-content p,
.pap-testimonial-card .elementor-testimonial-content p {
  margin: 0 0 .75rem;
}

.pap-testimonial-native .elementor-testimonial-content p:last-child,
.pap-testimonial-card .elementor-testimonial-content p:last-child {
  margin-bottom: 0;
}

.pap-testimonial-native .elementor-testimonial-name,
.pap-testimonial-card .elementor-testimonial-name {
  margin-top: auto;
  color: var(--pap-color-navy);
  font-weight: 700;
  line-height: 1.35;
}

.pap-testimonial-native .elementor-testimonial-job,
.pap-testimonial-card .elementor-testimonial-job {
  color: rgba(0, 33, 68, .72);
  font-weight: 700;
  line-height: 1.35;
}

.pap-testimonial-native a,
.pap-testimonial-card a {
  text-decoration: none;
}

@media (min-width: 768px) and (max-width: 1024px) {

  .pap-testimonial-native,
  .pap-testimonial-card {
    flex: 1 1 calc(50% - 1rem);
    max-width: none;
  }

}

@media (max-width: 767px) {

  .pap-testimonials-native-grid,
  .pap-testimonials-grid {
    flex-direction: column;
    align-items: stretch;
  }

  .pap-testimonial-native,
  .pap-testimonial-card {
    width: 100%;
    max-width: 100%;
    flex: 1 1 auto;
  }

  .pap-testimonial-native .elementor-testimonial-wrapper,
  .pap-testimonial-card .elementor-testimonial-wrapper {
    padding: 1.15rem;
    border-radius: 22px;
  }

}

/* =========================================================
   Passo a Passo — Rodapé Global v1.2
   Escopo: footer reutilizável para Elementor Theme Builder.
   Base: v1.1 preservada com classes duplicadas em _css_classes e css_classes.
   Direção v1.2: rodapé leve, editorial, infantil e sem cards pesados no grid principal.
   ========================================================= */
.e-con.pap-footer-section,
.pap-footer-section{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  color:var(--e-global-color-pap_navy, var(--pap-color-navy));
  background:
    radial-gradient(circle at 8% 10%, color-mix(in srgb, var(--e-global-color-pap_pastel_yellow, var(--pap-color-pastel-yellow)) 74%, transparent), transparent 28%),
    radial-gradient(circle at 90% 18%, color-mix(in srgb, var(--e-global-color-pap_pastel_blue, var(--pap-color-pastel-blue)) 78%, transparent), transparent 30%),
    radial-gradient(circle at 78% 92%, color-mix(in srgb, var(--e-global-color-pap_pastel_green, var(--pap-color-pastel-green)) 62%, transparent), transparent 25%),
    linear-gradient(180deg, var(--e-global-color-pap_pastel_blue, var(--pap-color-pastel-blue)) 0%, var(--e-global-color-pap_surface, var(--pap-color-surface)) 52%, var(--e-global-color-pap_pastel_yellow, var(--pap-color-pastel-yellow)) 100%);
  padding-block:clamp(3rem, 4.6vw, 5.5rem) clamp(1.35rem, 2.1vw, 2.25rem);
}

.e-con.pap-footer-section::before,
.pap-footer-section::before,
.e-con.pap-footer-section::after,
.pap-footer-section::after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
}

.e-con.pap-footer-section::before,
.pap-footer-section::before{
  width:clamp(130px, 17vw, 250px);
  height:clamp(130px, 17vw, 250px);
  right:clamp(-90px, -5vw, -34px);
  top:clamp(1rem, 3vw, 3.1rem);
  border-radius:42% 58% 47% 53%;
  background:color-mix(in srgb, var(--e-global-color-pap_pastel_coral, var(--pap-color-pastel-coral)) 76%, transparent);
  opacity:.46;
}

.e-con.pap-footer-section::after,
.pap-footer-section::after{
  width:clamp(160px, 20vw, 300px);
  height:clamp(95px, 12vw, 170px);
  left:clamp(-100px, -6vw, -38px);
  bottom:clamp(1.35rem, 2.8vw, 2.8rem);
  border-radius:999px 999px 56px 56px;
  background:color-mix(in srgb, var(--e-global-color-pap_pastel_orange, var(--pap-color-pastel-orange)) 82%, transparent);
  opacity:.42;
}

.e-con.pap-footer-shell,
.pap-footer-shell{
  position:relative;
  z-index:1;
  width:min(calc(100% - clamp(2rem, 5vw, 5rem)), var(--container-max-width, 1440px));
  margin-inline:auto;
  display:flex;
  flex-direction:column;
  gap:clamp(1.35rem, 2.2vw, 2.2rem);
  min-width:0;
}

.e-con.pap-footer-invite,
.pap-footer-invite{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:clamp(1rem, 2vw, 2rem);
  padding:clamp(1.2rem, 2.2vw, 2rem);
  border-radius:var(--pap-radius-lg);
  background:color-mix(in srgb, var(--e-global-color-pap_white, var(--pap-color-white)) 88%, var(--e-global-color-pap_pastel_yellow, var(--pap-color-pastel-yellow)));
  border:1px solid color-mix(in srgb, var(--e-global-color-pap_white, var(--pap-color-white)) 68%, var(--e-global-color-pap_blue, var(--pap-color-blue)));
  box-shadow:0 14px 34px color-mix(in srgb, var(--e-global-color-pap_navy, var(--pap-color-navy)) 6%, transparent);
}

.e-con.pap-footer-invite-copy,
.pap-footer-invite-copy{
  flex:1 1 420px;
  min-width:0;
  max-width:760px;
  display:flex;
  flex-direction:column;
  gap:.55rem;
}

.e-con.pap-footer-actions,
.pap-footer-actions{
  flex:0 1 auto;
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:.72rem;
}

.pap-footer-invite-title .elementor-heading-title,
.pap-footer-title .elementor-heading-title,
.pap-footer-brand-name .elementor-heading-title{
  color:var(--e-global-color-pap_navy, var(--pap-color-navy));
  margin:0;
  overflow-wrap:anywhere;
}

.pap-footer-title .elementor-heading-title{
  position:relative;
  display:inline-block;
  padding-bottom:.72rem;
}

.pap-footer-title .elementor-heading-title::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:42px;
  height:3px;
  border-radius:999px;
  background:var(--e-global-color-pap_orange, var(--pap-color-orange));
}

.e-con.pap-footer-nav .pap-footer-title .elementor-heading-title::after,
.pap-footer-nav .pap-footer-title .elementor-heading-title::after{
  background:var(--e-global-color-pap_blue, var(--pap-color-blue));
}

.e-con.pap-footer-contact .pap-footer-title .elementor-heading-title::after,
.pap-footer-contact .pap-footer-title .elementor-heading-title::after{
  background:var(--e-global-color-pap_green, var(--pap-color-green));
}

.e-con.pap-footer-social .pap-footer-title .elementor-heading-title::after,
.pap-footer-social .pap-footer-title .elementor-heading-title::after{
  background:var(--e-global-color-pap_coral, var(--pap-color-coral));
}

.pap-footer-invite-text,
.pap-footer-text,
.pap-footer-meta,
.pap-footer-bottom-text{
  color:color-mix(in srgb, var(--e-global-color-pap_navy, var(--pap-color-navy)) 84%, transparent);
  line-height:1.68;
  overflow-wrap:anywhere;
}

.pap-footer-button-primary .elementor-button,
.pap-footer-button-secondary .elementor-button,
.pap-footer-button-soft .elementor-button{
  min-height:52px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
  border-radius:999px;
  text-align:center;
  white-space:normal;
  overflow-wrap:anywhere;
  transition:transform .25s ease, box-shadow .25s ease, background-color .25s ease, color .25s ease;
}

.pap-footer-button-primary .elementor-button{
  background:var(--e-global-color-pap_orange, var(--pap-color-orange));
  color:var(--e-global-color-pap_white, var(--pap-color-white));
  box-shadow:0 10px 24px color-mix(in srgb, var(--e-global-color-pap_orange, var(--pap-color-orange)) 22%, transparent);
}

.pap-footer-button-secondary .elementor-button{
  background:color-mix(in srgb, var(--e-global-color-pap_blue, var(--pap-color-blue)) 11%, var(--e-global-color-pap_white, var(--pap-color-white)));
  color:var(--e-global-color-pap_navy, var(--pap-color-navy));
  box-shadow:none;
}

.pap-footer-button-soft .elementor-button{
  background:color-mix(in srgb, var(--e-global-color-pap_green, var(--pap-color-green)) 12%, var(--e-global-color-pap_white, var(--pap-color-white)));
  color:var(--e-global-color-pap_navy, var(--pap-color-navy));
  box-shadow:none;
}

.pap-footer-button-primary .elementor-button:focus-visible,
.pap-footer-button-secondary .elementor-button:focus-visible,
.pap-footer-button-soft .elementor-button:focus-visible,
.pap-footer-link:focus-visible,
.pap-footer-contact-item a:focus-visible,
.pap-footer-legal a:focus-visible{
  outline:3px solid color-mix(in srgb, var(--e-global-color-pap_blue, var(--pap-color-blue)) 45%, transparent);
  outline-offset:3px;
}

@media (hover:hover) and (pointer:fine){

  .pap-footer-button-primary .elementor-button:hover,
  .pap-footer-button-secondary .elementor-button:hover,
  .pap-footer-button-soft .elementor-button:hover,
  .pap-footer-link:hover,
  .pap-footer-contact-item a:hover{
    transform:translateY(-2px);
  }

}

.e-con.pap-footer-main-grid,
.pap-footer-main-grid{
  display:grid;
  grid-template-columns:minmax(0,1.16fr) repeat(3,minmax(0,1fr));
  gap:clamp(1.4rem, 3.2vw, 3.5rem);
  align-items:start;
  min-width:0;
  padding-block:clamp(.25rem, .7vw, .7rem);
}

.e-con.pap-footer-card,
.pap-footer-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:clamp(.75rem, 1.05vw, 1.08rem);
  height:100%;
  background:transparent;
  border:0;
  box-shadow:none;
  border-radius:0;
  padding:0;
}

.e-con.pap-footer-brand,
.pap-footer-brand,
.e-con.pap-footer-nav,
.pap-footer-nav,
.e-con.pap-footer-contact,
.pap-footer-contact,
.e-con.pap-footer-social,
.pap-footer-social{
  background:transparent;
  border:0;
  box-shadow:none;
}

.e-con.pap-footer-column,
.pap-footer-column{
  position:relative;
}

.e-con.pap-footer-column::before,
.pap-footer-column::before{
  content:"";
  width:.58rem;
  height:.58rem;
  border-radius:999px;
  background:var(--e-global-color-pap_yellow, var(--pap-color-yellow));
  position:absolute;
  left:0;
  top:-.75rem;
  opacity:.82;
}

.e-con.pap-footer-nav::before,
.pap-footer-nav::before{background:var(--e-global-color-pap_blue, var(--pap-color-blue));}
.e-con.pap-footer-contact::before,
.pap-footer-contact::before{background:var(--e-global-color-pap_green, var(--pap-color-green));}
.e-con.pap-footer-social::before,
.pap-footer-social::before{background:var(--e-global-color-pap_coral, var(--pap-color-coral));}

.pap-footer-logo-wrap,
.pap-footer-logo-wrap .elementor-widget-container{
  width:min(100%, 210px);
  max-width:210px;
}

.pap-footer-logo-wrap img{
  display:block;
  max-width:100%;
  height:auto;
}

.pap-footer-brand-name .elementor-heading-title{
  font-size:clamp(1.08rem, 1rem + .28vw, 1.26rem);
  line-height:1.2;
}

.pap-footer-seal{
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  gap:.42rem;
  padding:.38rem .72rem;
  border-radius:999px;
  background:color-mix(in srgb, var(--e-global-color-pap_yellow, var(--pap-color-yellow)) 48%, var(--e-global-color-pap_white, var(--pap-color-white)));
  color:var(--e-global-color-pap_navy, var(--pap-color-navy));
  font-weight:700;
  line-height:1.25;
}

.e-con.pap-footer-link-list,
.pap-footer-link-list{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.58rem;
  min-width:0;
}

.pap-footer-link,
.pap-footer-link .elementor-heading-title,
.pap-footer-contact-item a,
.pap-footer-contact-item .elementor-heading-title,
.pap-footer-legal a,
.pap-footer-bottom-links .elementor-heading-title{
  color:var(--e-global-color-pap_navy, var(--pap-color-navy));
  text-decoration:none;
  line-height:1.45;
  overflow-wrap:anywhere;
  word-break:normal;
  white-space:normal;
}

.pap-footer-highlight-link .elementor-heading-title,
.pap-footer-highlight-link{
  color:var(--e-global-color-pap_blue, var(--pap-color-blue));
  font-weight:700;
}

.pap-footer-highlight-link::after{
  content:"";
  display:block;
  width:2.6rem;
  height:3px;
  margin-top:.28rem;
  border-radius:999px;
  background:var(--e-global-color-pap_green, var(--pap-color-green));
}

.e-con.pap-footer-contact-list,
.pap-footer-contact-list{
  display:flex;
  flex-direction:column;
  gap:.74rem;
  min-width:0;
}

.e-con.pap-footer-contact-item,
.pap-footer-contact-item{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:.62rem;
  min-width:0;
}

.pap-footer-contact-icon{
  width:1.72rem;
  min-width:1.72rem;
  min-height:1.72rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:color-mix(in srgb, var(--e-global-color-pap_white, var(--pap-color-white)) 66%, var(--e-global-color-pap_pastel_blue, var(--pap-color-pastel-blue)));
  color:var(--e-global-color-pap_blue, var(--pap-color-blue));
  box-shadow:none;
}

.pap-footer-contact-icon .elementor-icon{
  font-size:.88rem;
  color:inherit;
}

.e-con.pap-footer-social-row,
.pap-footer-social-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.68rem;
  min-width:0;
}

.pap-footer-social-row .elementor-button{
  min-height:48px;
}

.e-con.pap-footer-legal,
.pap-footer-legal{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:.9rem 1.2rem;
  padding:clamp(.9rem, 1.4vw, 1.15rem) 0 0;
  border-radius:0;
  background:transparent;
  border:0;
  border-top:1px solid color-mix(in srgb, var(--e-global-color-pap_navy, var(--pap-color-navy)) 14%, transparent);
  box-shadow:none;
}

.e-con.pap-footer-bottom,
.pap-footer-bottom{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  gap:.5rem 1rem;
  min-width:0;
}

.e-con.pap-footer-bottom-links,
.pap-footer-bottom-links{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:.55rem 1rem;
  min-width:0;
}

.pap-footer-bottom-links .elementor-heading-title{
  font-size:clamp(.86rem, .82rem + .12vw, .96rem);
}

@media (min-width:1025px) and (max-width:1199px){

  .e-con.pap-footer-main-grid,
  .pap-footer-main-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:clamp(1.55rem, 3vw, 2.35rem);
  }

}

@media (min-width:768px) and (max-width:1024px){

  .e-con.pap-footer-invite,
  .pap-footer-invite{
    align-items:flex-start;
  }

  .e-con.pap-footer-actions,
  .pap-footer-actions{
    justify-content:flex-start;
  }

  .e-con.pap-footer-main-grid,
  .pap-footer-main-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:clamp(1.4rem, 3vw, 2rem);
  }

}

@media (max-width:767px){

  .e-con.pap-footer-section,
  .pap-footer-section{
    padding-block:clamp(2.5rem, 10vw, 4rem) 1.15rem;
  }

  .e-con.pap-footer-shell,
  .pap-footer-shell{
    width:min(calc(100% - 2rem), var(--container-max-width, 1440px));
    gap:1.1rem;
  }

  .e-con.pap-footer-invite,
  .pap-footer-invite{
    border-radius:24px;
  }

  .e-con.pap-footer-invite,
  .pap-footer-invite,
  .e-con.pap-footer-actions,
  .pap-footer-actions,
  .e-con.pap-footer-main-grid,
  .pap-footer-main-grid,
  .e-con.pap-footer-legal,
  .pap-footer-legal,
  .e-con.pap-footer-bottom,
  .pap-footer-bottom,
  .e-con.pap-footer-bottom-links,
  .pap-footer-bottom-links{
    align-items:stretch;
    justify-content:flex-start;
  }

  .e-con.pap-footer-actions,
  .pap-footer-actions,
  .e-con.pap-footer-bottom,
  .pap-footer-bottom,
  .e-con.pap-footer-bottom-links,
  .pap-footer-bottom-links{
    width:100%;
    flex-direction:column;
  }

  .e-con.pap-footer-main-grid,
  .pap-footer-main-grid{
    grid-template-columns:1fr;
    gap:1.45rem;
  }

  .e-con.pap-footer-column::before,
  .pap-footer-column::before{
    top:-.45rem;
  }

  .pap-footer-button-primary,
  .pap-footer-button-secondary,
  .pap-footer-button-soft,
  .pap-footer-button-primary .elementor-button,
  .pap-footer-button-secondary .elementor-button,
  .pap-footer-button-soft .elementor-button{
    width:100%;
  }

  .e-con.pap-footer-link-list,
  .pap-footer-link-list,
  .e-con.pap-footer-social-row,
  .pap-footer-social-row{
    align-items:stretch;
  }

  .e-con.pap-footer-social-row,
  .pap-footer-social-row{
    flex-direction:column;
  }

  .e-con.pap-footer-contact-item,
  .pap-footer-contact-item{
    gap:.56rem;
  }

}

/* =========================================================
   Passo a Passo — Cabeçalho Global v2.0.3
   Correção cirúrgica pós-v2.0.1:
   - separa cabeçalho ativo do spacer sticky;
   - controla estado aberto/fechado do dropdown mobile por .elementor-active/aria-expanded;
   - neutraliza --menu-height:0 do Elementor no painel mobile aberto;
   - elimina sobreposição/embolamento por submenus mobile visíveis fora do estado ativo;
   - mantém submenu desktop opaco, acessível e independente do dropdown mobile.
   Escopo: .pap-site-header / #cabecalho-global-passo-a-passo
   ========================================================= */
#cabecalho-global-passo-a-passo,
.pap-site-header{
  --pap-color-orange:var(--e-global-color-pap_orange, #FE9102);
  --pap-color-yellow:var(--e-global-color-pap_yellow, #FAE03C);
  --pap-color-coral:var(--e-global-color-pap_coral, #FF5B5C);
  --pap-color-green:var(--e-global-color-pap_green, #3BC670);
  --pap-color-blue:var(--e-global-color-pap_blue, #4C83D5);
  --pap-color-navy:var(--e-global-color-pap_navy, #002144);
  --pap-color-white:var(--e-global-color-pap_white, #FFFFFF);
  --pap-color-pastel-blue:var(--e-global-color-pap_pastel_blue, #EEF5FF);
  --pap-color-pastel-yellow: var(--e-global-color-pap_pastel_yellow, #FFFBE3);
  --pap-font-base:var(--e-global-typography-pap_body-font-family, Outfit, Arial, sans-serif);

  --pap-radius-sm:16px;
  --pap-shadow-soft:0 12px 32px rgba(0,33,68,.06);
  --pap-shadow-hover:0 20px 46px rgba(0,33,68,.10);
  --pap-shadow-hero:0 24px 58px rgba(0,33,68,.14);
  --pap-border-soft:rgba(0,33,68,.10);
  --pap-header-height-desktop:64px;
  --pap-header-height-tablet:56px;
  --pap-header-height-mobile:54px;
  --pap-header-logo-desktop:150px;
  --pap-header-logo-tablet:112px;
  --pap-header-logo-mobile:104px;
  --pap-header-logo-padding:.25rem .68rem;
  --pap-header-logo-padding-compact:.2rem .5rem;
  --pap-header-logo-max-height:34px;
  --pap-header-logo-max-height-tablet:30px;
  --pap-header-logo-max-height-mobile:28px;
  --pap-header-toggle-size:42px;
  --pap-header-bg-start:var(--pap-color-blue, #4C83D5);
  --pap-header-bg-end:var(--pap-color-green, #3BC670);
  --pap-header-text:var(--pap-color-white, #FFFFFF);
  --pap-header-text-strong:var(--pap-color-navy, #002144);
  --pap-header-surface:var(--pap-color-white, #FFFFFF);
  --pap-header-accent:var(--pap-color-yellow, #FAE03C);
  --pap-header-panel:var(--pap-color-pastel-blue, #EEF5FF);
  --pap-header-panel-alt:var(--pap-color-pastel-yellow, #FFF9C8);
  --pap-header-border:var(--pap-border-soft, rgba(0,33,68,.10));
  --pap-header-border-light:rgba(255,255,255,.72);
  --pap-header-focus:var(--pap-color-yellow, #FAE03C);
  --pap-header-dropdown-shadow:var(--pap-shadow-hero, 0 24px 58px rgba(0,33,68,.14));
  position:relative !important;
  width:100%;
  max-width:100%;
  z-index:99999 !important;
  overflow:visible !important;
  clip-path:none !important;
  isolation:isolate;
}

/* Proteção contra cópia criada pelo sticky do Elementor.
   O spacer deve reservar altura, mas não pode receber clique nem disputar menu/dropdown. */
#cabecalho-global-passo-a-passo.elementor-sticky__spacer,
.pap-site-header.elementor-sticky__spacer{
  visibility:hidden !important;
  pointer-events:none !important;
  z-index:0 !important;
  overflow:hidden !important;
  clip-path:none !important;
}
#cabecalho-global-passo-a-passo.elementor-sticky__spacer *,
.pap-site-header.elementor-sticky__spacer *{
  pointer-events:none !important;
}
#cabecalho-global-passo-a-passo.elementor-sticky--active,
#cabecalho-global-passo-a-passo.elementor-sticky--effects,
.pap-site-header.elementor-sticky--active,
.pap-site-header.elementor-sticky--effects{
  z-index:99999 !important;
  overflow:visible !important;
  clip-path:none !important;
}

#cabecalho-global-passo-a-passo .pap-header-main,
.pap-site-header .pap-header-main{
  position:relative;
  overflow:visible !important;
  clip-path:none !important;
  min-height:var(--pap-header-height-desktop);
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(90deg, var(--pap-header-bg-start), var(--pap-header-bg-end));
  box-shadow:var(--pap-shadow-soft);
  z-index:99999 !important;
}
#cabecalho-global-passo-a-passo .pap-header-main::after,
.pap-site-header .pap-header-main::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:3px;
  background:linear-gradient(90deg, var(--pap-color-yellow), var(--pap-color-orange), var(--pap-color-coral), var(--pap-color-green));
  pointer-events:none;
}
#cabecalho-global-passo-a-passo.elementor-sticky--effects .pap-header-main,
.pap-site-header.elementor-sticky--effects .pap-header-main{
  box-shadow:var(--pap-shadow-hover);
}
#cabecalho-global-passo-a-passo .pap-header-inner,
.pap-site-header .pap-header-inner{
  position:relative;
  z-index:99999 !important;
  overflow:visible !important;
  clip-path:none !important;
  width:min(calc(100% - clamp(1.5rem, 4vw, 3.5rem)), var(--container-max-width, 1440px));
  min-height:var(--pap-header-height-desktop);
  margin-inline:auto;
  display:flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:space-between;
  gap:clamp(.75rem, 2vw, 1.4rem);
}
#pap-logo-cabecalho,
.pap-header-logo{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  width:var(--pap-header-logo-desktop);
  max-width:var(--pap-header-logo-desktop);
  min-width:0;
  padding:var(--pap-header-logo-padding);
  border-radius:999px;
  background:var(--pap-header-surface);
  box-shadow:var(--pap-shadow-soft);
  overflow:visible;
  clip-path:none;
}
#pap-logo-cabecalho img,
.pap-header-logo img{
  display:block;
  width:100%;
  height:auto;
  max-height:var(--pap-header-logo-max-height);
  object-fit:contain;
  object-position:left center;
}
@media (hover:hover) and (pointer:fine){

  #pap-logo-cabecalho{transition:transform .3s cubic-bezier(.175,.885,.32,1.275), box-shadow .3s ease}
  #pap-logo-cabecalho:hover{transform:translateY(-2px) rotate(-1deg);box-shadow:var(--pap-shadow-hover)}

}
#pap-header-nav,
.pap-header-nav{
  position:relative;
  z-index:99999 !important;
  flex:1 1 auto;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  overflow:visible !important;
  clip-path:none !important;
}
#menu-principal-passo-a-passo,
.pap-header-menu{
  position:relative !important;
  z-index:99999 !important;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-width:0;
  max-width:100%;
  font-family:var(--pap-font-base);
  overflow:visible !important;
  clip-path:none !important;
}
#menu-principal-passo-a-passo > .elementor-widget-container,
.pap-header-menu > .elementor-widget-container{
  position:relative;
  z-index:99999 !important;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  width:100%;
  overflow:visible !important;
  clip-path:none !important;
}
#menu-principal-passo-a-passo .elementor-screen-only,
.pap-header-menu .elementor-screen-only{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0, 0, 0, 0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

/* Menu desktop principal. */
#menu-principal-passo-a-passo .elementor-nav-menu--main,
.pap-header-menu .elementor-nav-menu--main{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  max-width:100%;
  overflow:visible !important;
  clip-path:none !important;
}
#menu-principal-passo-a-passo .elementor-nav-menu--main .elementor-nav-menu,
.pap-header-menu .elementor-nav-menu--main .elementor-nav-menu{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:nowrap;
  gap:.38rem;
  margin:0;
  padding:0;
  list-style:none;
  overflow:visible !important;
}
#menu-principal-passo-a-passo .elementor-nav-menu--main .menu-item,
.pap-header-menu .elementor-nav-menu--main .menu-item{
  position:relative;
  overflow:visible !important;
}
#menu-principal-passo-a-passo .elementor-nav-menu--main .elementor-item,
.pap-header-menu .elementor-nav-menu--main .elementor-item{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:.68rem .9rem;
  border-radius:999px;
  color:var(--pap-header-text) !important;
  background:transparent;
  font-family:var(--pap-font-base);
  font-size:clamp(.93rem, .86rem + .24vw, 1.03rem);
  font-weight:700;
  line-height:1.1;
  text-decoration:none;
  white-space:nowrap;
  transition:background .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease;
}
#menu-principal-passo-a-passo .elementor-nav-menu--main .elementor-item:hover,
#menu-principal-passo-a-passo .elementor-nav-menu--main .elementor-item:focus-visible,
#menu-principal-passo-a-passo .elementor-nav-menu--main .menu-item-has-children:hover > .elementor-item,
#menu-principal-passo-a-passo .elementor-nav-menu--main .menu-item-has-children:focus-within > .elementor-item,
.pap-header-menu .elementor-nav-menu--main .elementor-item:hover,
.pap-header-menu .elementor-nav-menu--main .elementor-item:focus-visible,
.pap-header-menu .elementor-nav-menu--main .menu-item-has-children:hover > .elementor-item,
.pap-header-menu .elementor-nav-menu--main .menu-item-has-children:focus-within > .elementor-item{
  color:var(--pap-header-text-strong) !important;
  background:var(--pap-header-accent) !important;
  box-shadow:var(--pap-shadow-soft);
  outline:3px solid var(--pap-header-focus);
  outline-offset:3px;
}
#menu-principal-passo-a-passo .elementor-nav-menu--main .elementor-item.elementor-item-active,
#menu-principal-passo-a-passo .elementor-nav-menu--main .current-menu-item > .elementor-item,
.pap-header-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
.pap-header-menu .elementor-nav-menu--main .current-menu-item > .elementor-item{
  color:var(--pap-header-text-strong) !important;
  background:var(--pap-header-surface) !important;
}

@media (min-width:1025px){

  #cabecalho-global-passo-a-passo:not(.elementor-sticky__spacer),
  #cabecalho-global-passo-a-passo:not(.elementor-sticky__spacer) .pap-header-main,
  #cabecalho-global-passo-a-passo:not(.elementor-sticky__spacer) .pap-header-inner,
  #cabecalho-global-passo-a-passo:not(.elementor-sticky__spacer) #pap-header-nav,
  #cabecalho-global-passo-a-passo:not(.elementor-sticky__spacer) #menu-principal-passo-a-passo,
  .pap-site-header:not(.elementor-sticky__spacer),
  .pap-site-header:not(.elementor-sticky__spacer) .pap-header-main,
  .pap-site-header:not(.elementor-sticky__spacer) .pap-header-inner,
  .pap-site-header:not(.elementor-sticky__spacer) .pap-header-nav,
  .pap-site-header:not(.elementor-sticky__spacer) .pap-header-menu{
    overflow:visible !important;
    clip-path:none !important;
  }
  #menu-principal-passo-a-passo .elementor-menu-toggle,
  .pap-header-menu .elementor-menu-toggle{
    display:none !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }
  #menu-principal-passo-a-passo .elementor-nav-menu--main,
  .pap-header-menu .elementor-nav-menu--main{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
  }
  /* Oculta somente o painel mobile/tablet no desktop, não os UL.sub-menu. */
  #menu-principal-passo-a-passo > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
  #menu-principal-passo-a-passo > .elementor-widget-container > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
  #menu-principal-passo-a-passo .elementor-menu-toggle + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
  .pap-header-menu > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
  .pap-header-menu > .elementor-widget-container > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
  .pap-header-menu .elementor-menu-toggle + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  /* Submenu desktop confiável, opaco e fechado por padrão. */
  #menu-principal-passo-a-passo .elementor-nav-menu--main .sub-menu.elementor-nav-menu--dropdown,
  .pap-header-menu .elementor-nav-menu--main .sub-menu.elementor-nav-menu--dropdown{
    box-sizing:border-box;
    display:none !important;
    position:absolute !important;
    top:calc(100% + .45rem) !important;
    left:0 !important;
    right:auto !important;
    width:max-content !important;
    min-width:220px !important;
    max-width:min(320px, calc(100vw - 2rem)) !important;
    margin:0 !important;
    padding:.58rem !important;
    list-style:none !important;
    border:1px solid var(--pap-header-border) !important;
    border-top:4px solid var(--pap-color-orange) !important;
    border-radius:var(--pap-radius-sm) !important;
    background:var(--pap-color-white) !important;
    background-color:var(--pap-color-white) !important;
    box-shadow:var(--pap-header-dropdown-shadow) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    overflow:visible !important;
    clip-path:none !important;
    z-index:99999 !important;
    transform:none !important;
  }
  #menu-principal-passo-a-passo .elementor-nav-menu--main .menu-item:last-child > .sub-menu.elementor-nav-menu--dropdown,
  #menu-principal-passo-a-passo .elementor-nav-menu--main .menu-item:nth-last-child(2) > .sub-menu.elementor-nav-menu--dropdown,
  .pap-header-menu .elementor-nav-menu--main .menu-item:last-child > .sub-menu.elementor-nav-menu--dropdown,
  .pap-header-menu .elementor-nav-menu--main .menu-item:nth-last-child(2) > .sub-menu.elementor-nav-menu--dropdown{
    left:auto !important;
    right:0 !important;
  }
  #menu-principal-passo-a-passo .elementor-nav-menu--main .menu-item-has-children:hover > .sub-menu.elementor-nav-menu--dropdown,
  #menu-principal-passo-a-passo .elementor-nav-menu--main .menu-item-has-children:focus-within > .sub-menu.elementor-nav-menu--dropdown,
  #menu-principal-passo-a-passo .elementor-nav-menu--main .elementor-item.has-submenu.highlighted + .sub-menu.elementor-nav-menu--dropdown,
  #menu-principal-passo-a-passo .elementor-nav-menu--main .elementor-item.has-submenu[aria-expanded="true"] + .sub-menu.elementor-nav-menu--dropdown,
  .pap-header-menu .elementor-nav-menu--main .menu-item-has-children:hover > .sub-menu.elementor-nav-menu--dropdown,
  .pap-header-menu .elementor-nav-menu--main .menu-item-has-children:focus-within > .sub-menu.elementor-nav-menu--dropdown,
  .pap-header-menu .elementor-nav-menu--main .elementor-item.has-submenu.highlighted + .sub-menu.elementor-nav-menu--dropdown,
  .pap-header-menu .elementor-nav-menu--main .elementor-item.has-submenu[aria-expanded="true"] + .sub-menu.elementor-nav-menu--dropdown{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
  #menu-principal-passo-a-passo .elementor-nav-menu--main .sub-menu.elementor-nav-menu--dropdown .menu-item,
  .pap-header-menu .elementor-nav-menu--main .sub-menu.elementor-nav-menu--dropdown .menu-item{
    display:block !important;
    position:relative;
    width:100%;
    margin:0;
    padding:0;
    overflow:visible !important;
  }
  #menu-principal-passo-a-passo .elementor-nav-menu--main .sub-menu.elementor-nav-menu--dropdown .elementor-sub-item,
  .pap-header-menu .elementor-nav-menu--main .sub-menu.elementor-nav-menu--dropdown .elementor-sub-item{
    min-height:44px;
    width:100%;
    display:flex !important;
    align-items:center;
    justify-content:flex-start;
    gap:.45rem;
    padding:.72rem .9rem !important;
    border-radius:12px !important;
    color:var(--pap-color-navy) !important;
    background:var(--pap-color-white) !important;
    opacity:1 !important;
    font-family:var(--pap-font-base);
    font-size:clamp(.92rem, .88rem + .16vw, 1rem);
    font-weight:700;
    line-height:1.22;
    text-decoration:none;
    white-space:normal !important;
    overflow-wrap:anywhere;
  }
  #menu-principal-passo-a-passo .elementor-nav-menu--main .sub-menu.elementor-nav-menu--dropdown .elementor-sub-item:hover,
  #menu-principal-passo-a-passo .elementor-nav-menu--main .sub-menu.elementor-nav-menu--dropdown .elementor-sub-item:focus-visible,
  .pap-header-menu .elementor-nav-menu--main .sub-menu.elementor-nav-menu--dropdown .elementor-sub-item:hover,
  .pap-header-menu .elementor-nav-menu--main .sub-menu.elementor-nav-menu--dropdown .elementor-sub-item:focus-visible{
    color:var(--pap-color-navy) !important;
    background:var(--pap-color-pastel-yellow) !important;
    outline:3px solid var(--pap-header-focus) !important;
    outline-offset:2px !important;
  }

}

/* Toggle mobile/tablet. */
#menu-principal-passo-a-passo .elementor-menu-toggle,
.pap-header-menu .elementor-menu-toggle{
  width:var(--pap-header-toggle-size) !important;
  height:var(--pap-header-toggle-size) !important;
  min-width:var(--pap-header-toggle-size) !important;
  min-height:var(--pap-header-toggle-size) !important;
  align-items:center;
  justify-content:center;
  padding:0 !important;
  margin:0 !important;
  border-radius:999px;
  color:var(--pap-header-text-strong) !important;
  background:var(--pap-header-surface) !important;
  border:1px solid var(--pap-header-border-light);
  box-shadow:var(--pap-shadow-soft);
}
@media (hover:hover) and (pointer:fine){

  #menu-principal-passo-a-passo .elementor-menu-toggle:hover,
  #menu-principal-passo-a-passo .elementor-menu-toggle:focus-visible,
  .pap-header-menu .elementor-menu-toggle:hover,
  .pap-header-menu .elementor-menu-toggle:focus-visible{
    background:var(--pap-header-accent) !important;
    outline:3px solid var(--pap-header-focus);
    outline-offset:3px;
  }

}
#menu-principal-passo-a-passo .elementor-menu-toggle__icon--open,
#menu-principal-passo-a-passo .elementor-menu-toggle__icon--close,
.pap-header-menu .elementor-menu-toggle__icon--open,
.pap-header-menu .elementor-menu-toggle__icon--close{
  font-size:1em;
  line-height:1;
}

/* Painel mobile/tablet: fechado por padrão e aberto somente pelo estado real do Elementor. */
#menu-principal-passo-a-passo > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
#menu-principal-passo-a-passo > .elementor-widget-container > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
#menu-principal-passo-a-passo .elementor-menu-toggle + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
.pap-header-menu > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
.pap-header-menu > .elementor-widget-container > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
.pap-header-menu .elementor-menu-toggle + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container{
  box-sizing:border-box;
  position:absolute !important;
  top:calc(100% + .5rem) !important;
  right:0 !important;
  left:auto !important;
  width:min(calc(100vw - 1rem), 360px) !important;
  min-width:min(calc(100vw - 1rem), 320px) !important;
  max-width:min(calc(100vw - 1rem), 360px) !important;
  margin:0 !important;
  padding:.45rem !important;
  border:1px solid var(--pap-header-border) !important;
  border-radius:20px !important;
  background:var(--pap-color-white) !important;
  background-color:var(--pap-color-white) !important;
  box-shadow:var(--pap-header-dropdown-shadow) !important;
  z-index:99999 !important;
  --menu-height:min(72vh, 620px) !important;
  max-height:0 !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  overflow:hidden !important;
  transform:scaleY(.98) !important;
  transform-origin:top right !important;
  clip-path:none !important;
}
#menu-principal-passo-a-passo .elementor-menu-toggle.elementor-active + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
#menu-principal-passo-a-passo .elementor-menu-toggle[aria-expanded="true"] + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
#menu-principal-passo-a-passo > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"],
#menu-principal-passo-a-passo > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container[style*="display: block"],
#menu-principal-passo-a-passo > .elementor-widget-container > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"],
#menu-principal-passo-a-passo > .elementor-widget-container > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container[style*="display: block"],
.pap-header-menu .elementor-menu-toggle.elementor-active + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
.pap-header-menu .elementor-menu-toggle[aria-expanded="true"] + nav.elementor-nav-menu--dropdown.elementor-nav-menu__container,
.pap-header-menu > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"],
.pap-header-menu > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container[style*="display: block"],
.pap-header-menu > .elementor-widget-container > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"],
.pap-header-menu > .elementor-widget-container > nav.elementor-nav-menu--dropdown.elementor-nav-menu__container[style*="display: block"]{
  display:block !important;
  max-height:min(72vh, 620px) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  overflow-y:auto !important;
  overflow-x:visible !important;
  transform:none !important;
}
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-nav-menu{
  display:flex !important;
  flex-direction:column;
  align-items:stretch;
  gap:.28rem;
  margin:0;
  padding:0;
  list-style:none;
  background:var(--pap-color-white) !important;
}
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .menu-item,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .menu-item{
  position:relative;
  width:100%;
  margin:0;
  padding:0;
}
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item,
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-sub-item,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-sub-item{
  min-height:44px;
  display:flex !important;
  align-items:center;
  justify-content:flex-start;
  width:100%;
  border-radius:14px;
  padding:.72rem .86rem !important;
  color:var(--pap-header-text-strong) !important;
  background:var(--pap-header-surface) !important;
  font-family:var(--pap-font-base);
  font-size:clamp(.94rem, .9rem + .18vw, 1rem);
  font-weight:700;
  line-height:1.2;
  text-decoration:none;
  white-space:normal !important;
  overflow-wrap:anywhere;
}
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item:hover,
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item:focus-visible,
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-sub-item:hover,
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-sub-item:focus-visible,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item:hover,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item:focus-visible,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-sub-item:hover,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-sub-item:focus-visible{
  background:var(--pap-header-accent) !important;
  color:var(--pap-header-text-strong) !important;
  outline:3px solid var(--pap-color-blue) !important;
  outline-offset:2px !important;
}
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item.elementor-item-active,
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .current-menu-item > .elementor-item,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item.elementor-item-active,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .current-menu-item > .elementor-item{
  background:var(--pap-header-accent) !important;
  color:var(--pap-header-text-strong) !important;
  box-shadow:inset 4px 0 0 var(--pap-color-orange);
}
/* Submenu mobile/tablet: fechado por padrão para evitar textos embolados. */
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu.elementor-nav-menu--dropdown,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu.elementor-nav-menu--dropdown{
  position:static !important;
  display:none !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  max-height:0 !important;
  margin:.28rem 0 0 !important;
  padding:.28rem !important;
  border:0 !important;
  border-radius:14px !important;
  background:var(--pap-color-pastel-blue) !important;
  background-color:var(--pap-color-pastel-blue) !important;
  box-shadow:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  overflow:hidden !important;
  z-index:auto !important;
  transform:none !important;
}
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .menu-item-has-children:focus-within > .sub-menu.elementor-nav-menu--dropdown,
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item.has-submenu.highlighted + .sub-menu.elementor-nav-menu--dropdown,
#menu-principal-passo-a-passo nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item.has-submenu[aria-expanded="true"] + .sub-menu.elementor-nav-menu--dropdown,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .menu-item-has-children:focus-within > .sub-menu.elementor-nav-menu--dropdown,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item.has-submenu.highlighted + .sub-menu.elementor-nav-menu--dropdown,
.pap-header-menu nav.elementor-nav-menu--dropdown.elementor-nav-menu__container .elementor-item.has-submenu[aria-expanded="true"] + .sub-menu.elementor-nav-menu--dropdown{
  display:block !important;
  max-height:60vh !important;
  opacity:1 !important;
  visibility:visible !important;
  overflow:visible !important;
}

@media (max-width:1024px){

  #cabecalho-global-passo-a-passo:not(.elementor-sticky__spacer),
  .pap-site-header:not(.elementor-sticky__spacer){
    position:relative !important;
    z-index:99999 !important;
    overflow:visible !important;
    clip-path:none !important;
  }
  #cabecalho-global-passo-a-passo .pap-header-main,
  .pap-site-header .pap-header-main{
    min-height:var(--pap-header-height-tablet);
    overflow:visible !important;
  }
  #cabecalho-global-passo-a-passo .pap-header-inner,
  .pap-site-header .pap-header-inner{
    min-height:var(--pap-header-height-tablet);
    width:min(calc(100% - 1rem), var(--container-max-width, 1440px));
    gap:.55rem;
    overflow:visible !important;
  }
  #pap-logo-cabecalho,
  .pap-header-logo{
    width:var(--pap-header-logo-tablet);
    max-width:var(--pap-header-logo-tablet);
    padding:var(--pap-header-logo-padding-compact);
  }
  #pap-logo-cabecalho img,
  .pap-header-logo img{max-height:var(--pap-header-logo-max-height-tablet)}
  #pap-header-nav,
  .pap-header-nav{
    flex:0 0 auto;
    width:var(--pap-header-toggle-size);
    min-width:var(--pap-header-toggle-size);
    display:flex;
    align-items:center;
    justify-content:flex-end;
    overflow:visible !important;
  }
  #menu-principal-passo-a-passo,
  .pap-header-menu{
    width:var(--pap-header-toggle-size) !important;
    min-width:var(--pap-header-toggle-size) !important;
    display:flex !important;
    justify-content:flex-end !important;
    overflow:visible !important;
  }
  #menu-principal-passo-a-passo .elementor-menu-toggle,
  .pap-header-menu .elementor-menu-toggle{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
  #menu-principal-passo-a-passo .elementor-nav-menu--main,
  .pap-header-menu .elementor-nav-menu--main{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    pointer-events:none !important;
  }

}
@media (max-width:767px){

  #cabecalho-global-passo-a-passo .pap-header-main,
  .pap-site-header .pap-header-main{min-height:var(--pap-header-height-mobile)}
  #cabecalho-global-passo-a-passo .pap-header-inner,
  .pap-site-header .pap-header-inner{
    min-height:var(--pap-header-height-mobile);
    width:min(calc(100% - .75rem), var(--container-max-width, 1440px));
    gap:.45rem;
  }
  #pap-logo-cabecalho,
  .pap-header-logo{
    width:var(--pap-header-logo-mobile);
    max-width:var(--pap-header-logo-mobile);
  }
  #pap-logo-cabecalho img,
  .pap-header-logo img{max-height:var(--pap-header-logo-max-height-mobile)}

}



/* =========================================================
   Passo a Passo — Cabeçalho Global v2.0.3
   Patch anti-duplicação do menu no carregamento inicial
   Causa-raiz corrigida:
   - o Elementor cria uma cópia .elementor-sticky__spacer para reservar altura;
   - regras posteriores do menu definiam visibility:visible/opacity:1 nos filhos;
   - como visibility pode ser reativada em descendentes, o menu do spacer aparecia
     como uma segunda camada até o sticky recalcular após scroll.
   Correção:
   - o spacer continua ocupando altura, mas fica visualmente neutro;
   - nenhum filho do spacer pode reativar texto, nav, dropdown, toggle, fundo ou borda.
   ========================================================= */

/* Trava visual forte do spacer do Sticky — não usar display:none para não perder reserva de altura. */
#cabecalho-global-passo-a-passo.elementor-sticky__spacer,
.pap-site-header.elementor-sticky__spacer,
.elementor-sticky__spacer #cabecalho-global-passo-a-passo,
.elementor-sticky__spacer .pap-site-header{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  z-index:0 !important;
  overflow:hidden !important;
  background:transparent !important;
  box-shadow:none !important;
  clip-path:none !important;
}

#cabecalho-global-passo-a-passo.elementor-sticky__spacer *,
.pap-site-header.elementor-sticky__spacer *,
.elementor-sticky__spacer #cabecalho-global-passo-a-passo *,
.elementor-sticky__spacer .pap-site-header *{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  text-shadow:none !important;
  box-shadow:none !important;
}

/* Neutraliza especificamente as regras anteriores que reativavam o menu principal do spacer. */
#cabecalho-global-passo-a-passo.elementor-sticky__spacer #menu-principal-passo-a-passo,
#cabecalho-global-passo-a-passo.elementor-sticky__spacer #menu-principal-passo-a-passo *,
#cabecalho-global-passo-a-passo.elementor-sticky__spacer .pap-header-menu,
#cabecalho-global-passo-a-passo.elementor-sticky__spacer .pap-header-menu *,
.pap-site-header.elementor-sticky__spacer #menu-principal-passo-a-passo,
.pap-site-header.elementor-sticky__spacer #menu-principal-passo-a-passo *,
.pap-site-header.elementor-sticky__spacer .pap-header-menu,
.pap-site-header.elementor-sticky__spacer .pap-header-menu *,
.elementor-sticky__spacer #cabecalho-global-passo-a-passo #menu-principal-passo-a-passo,
.elementor-sticky__spacer #cabecalho-global-passo-a-passo #menu-principal-passo-a-passo *,
.elementor-sticky__spacer .pap-site-header #menu-principal-passo-a-passo,
.elementor-sticky__spacer .pap-site-header #menu-principal-passo-a-passo *{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  color:transparent !important;
  background:transparent !important;
  border-color:transparent !important;
  outline-color:transparent !important;
  box-shadow:none !important;
}

/* Remove também a faixa decorativa do spacer, evitando linha/borda duplicada sob o cabeçalho ativo. */
#cabecalho-global-passo-a-passo.elementor-sticky__spacer .pap-header-main::after,
.pap-site-header.elementor-sticky__spacer .pap-header-main::after,
.elementor-sticky__spacer #cabecalho-global-passo-a-passo .pap-header-main::after,
.elementor-sticky__spacer .pap-site-header .pap-header-main::after{
  opacity:0 !important;
  visibility:hidden !important;
  background:transparent !important;
}

/* Mantém o cabeçalho real acima do conteúdo sem afetar o spacer. */
#cabecalho-global-passo-a-passo:not(.elementor-sticky__spacer),
.pap-site-header:not(.elementor-sticky__spacer){
  opacity:1 !important;
  visibility:visible !important;
}

/* =========================================================
   Passo a Passo — Página Sobre nós v1.4
   Base: passoapasso.css + módulo escopado da página.
   Foco v1.4: estrutura nativa Elementor + CSS defensivo sem depender de patches amplos.
   ========================================================= */

.pap-about-page{
  --pap-about-section-pad: clamp(4rem, 2.8rem + 4.2vw, 7.5rem);
  --pap-about-card-pad: clamp(1.1rem, .9rem + 1vw, 1.85rem);
  --pap-about-card-gap: clamp(.85rem, .65rem + .8vw, 1.35rem);
  --pap-about-grid-gap: clamp(1rem, .8rem + 1vw, 1.75rem);
  --pap-about-card-min: min(100%, 260px);
  --pap-about-stat-min: min(100%, 150px);
  color: var(--pap-color-navy);
}

.pap-about-page,
.pap-about-page *{
  box-sizing: border-box;
}

.pap-about-page .elementor-heading-title,
.pap-about-page .elementor-widget-text-editor,
.pap-about-page .elementor-widget-text-editor p,
.pap-about-page .elementor-widget-text-editor li{
  overflow-wrap: anywhere;
  hyphens: auto;
}

.pap-about-hero,
.pap-about-intro,
.pap-about-mvv,
.pap-about-founders,
.pap-about-final-cta{
  padding-block: var(--pap-about-section-pad);
  padding-inline: 0;
}

.pap-about-hero > .e-con-inner,
.pap-about-intro > .e-con-inner,
.pap-about-mvv > .e-con-inner,
.pap-about-founders > .e-con-inner,
.pap-about-final-cta > .e-con-inner{
  width: min(calc(100% - clamp(2rem, 5vw, 5rem)), var(--container-max-width, 1440px));
  margin-inline: auto;
  display: flex;
  min-width: 0;
}

.pap-about-hero > .e-con-inner{
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: clamp(2rem, 4vw, 5rem);
}

.pap-about-hero-copy,
.pap-about-hero-visual{
  min-width: 0;
  flex: 1 1 420px;
}

.pap-about-hero-copy{
  max-width: 720px;
}

.pap-about-h1 .elementor-heading-title{
  max-width: 12.5em;
  font-size: clamp(2.45rem, 1.72rem + 3.15vw, 5rem);
  line-height: 1.05;
}

.pap-about-hero-lead,
.pap-about-hero-subtitle,
.pap-about-section-lead,
.pap-about-cta-text{
  max-width: 68ch;
  color: rgba(0,33,68,.84);
  font-size: clamp(1.02rem, .95rem + .32vw, 1.22rem);
  line-height: 1.68;
}

.pap-about-story-card,
.pap-about-text-card,
.pap-about-mvv-card,
.pap-about-value-card,
.pap-about-founder-card,
.pap-about-cta-panel{
  position: relative;
  min-width: 0;
  height: 100%;
  padding: var(--pap-about-card-pad);
  border-radius: var(--pap-radius-md);
  background: var(--pap-color-white);
  box-shadow: var(--pap-shadow-soft);
  overflow: hidden;
}

.pap-about-story-card{
  border-radius: var(--pap-radius-lg);
  background: rgba(255,255,255,.82);
  backdrop-filter: blur(10px);
  box-shadow: var(--pap-shadow-hero);
}

.pap-about-story-card::before{
  content: "";
  position: absolute;
  inset: auto -10% -34% auto;
  width: clamp(160px, 22vw, 340px);
  height: clamp(160px, 22vw, 340px);
  border-radius: 999px;
  background: radial-gradient(circle, rgba(254,145,2,.20), transparent 68%);
  pointer-events: none;
}

.pap-about-story-icon,
.pap-about-card-icon,
.pap-about-mvv-icon,
.pap-about-value-icon,
.pap-decor-icon-native{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: clamp(44px, 4.2vw, 60px);
  min-height: clamp(44px, 4.2vw, 60px);
  line-height: 1;
}

.pap-about-story-icon .elementor-icon,
.pap-about-card-icon .elementor-icon,
.pap-about-mvv-icon .elementor-icon,
.pap-about-value-icon .elementor-icon,
.pap-decor-icon-native .elementor-icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(44px, 4.2vw, 60px);
  height: clamp(44px, 4.2vw, 60px);
  border-radius: 999px;
  background: rgba(255,255,255,.76);
  color: currentColor;
  fill: currentColor;
  line-height: 1;
}

.pap-about-story-icon .elementor-icon i,
.pap-about-card-icon .elementor-icon i,
.pap-about-mvv-icon .elementor-icon i,
.pap-about-value-icon .elementor-icon i,
.pap-decor-icon-native .elementor-icon i{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1em;
  height: 1em;
  line-height: 1;
}

.pap-about-story-icon .elementor-icon svg,
.pap-about-card-icon .elementor-icon svg,
.pap-about-mvv-icon .elementor-icon svg,
.pap-about-value-icon .elementor-icon svg,
.pap-decor-icon-native .elementor-icon svg{
  width: 1em;
  height: 1em;
  display: block;
}

.pap-about-story-title .elementor-heading-title,
.pap-about-card-title .elementor-heading-title,
.pap-about-mvv-title .elementor-heading-title,
.pap-about-value-title .elementor-heading-title,
.pap-about-founder-name .elementor-heading-title{
  font-size: clamp(1.2rem, 1.02rem + .75vw, 1.62rem);
  line-height: 1.18;
}

.pap-about-story-text,
.pap-about-card-text,
.pap-about-mvv-text,
.pap-about-value-text,
.pap-about-founder-text,
.pap-about-card-list{
  color: rgba(0,33,68,.82);
  font-size: clamp(.96rem, .91rem + .18vw, 1.06rem);
  line-height: 1.66;
}

/* Fluxos de cards — a estrutura nativa do Elementor usa flex/wrap; esta camada só estabiliza filhos. */
.pap-about-card-flow,
.pap-about-card-flow > .e-con-inner{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: var(--pap-about-grid-gap);
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.pap-about-stat-grid,
.pap-about-stat-grid > .e-con-inner{
  gap: clamp(.7rem, 1.2vw, 1rem);
}

.pap-about-stat-grid > .elementor-element,
.pap-about-stat-grid > .e-con-inner > .elementor-element,
.pap-about-stat-card{
  flex: 1 1 var(--pap-about-stat-min);
  min-width: 0;
  max-width: none;
}

.pap-about-content-split > .elementor-element,
.pap-about-content-split > .e-con-inner > .elementor-element,
.pap-about-mvv-grid > .elementor-element,
.pap-about-mvv-grid > .e-con-inner > .elementor-element,
.pap-about-founder-grid > .elementor-element,
.pap-about-founder-grid > .e-con-inner > .elementor-element{
  flex: 1 1 min(100%, 360px);
  min-width: 0;
  max-width: 680px;
}

.pap-about-values-grid > .elementor-element,
.pap-about-values-grid > .e-con-inner > .elementor-element{
  flex: 1 1 var(--pap-about-card-min);
  min-width: 0;
  max-width: 420px;
}

.pap-about-stat-card{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  min-height: 116px;
  padding: clamp(.85rem, 1.45vw, 1.2rem);
  border-radius: 20px;
  box-shadow: 0 10px 24px rgba(0,33,68,.05);
}

.pap-about-stat-orange{background:var(--pap-color-pastel-orange)}
.pap-about-stat-blue{background:var(--pap-color-pastel-blue)}
.pap-about-stat-green{background:var(--pap-color-pastel-green)}

.pap-about-stat-number .elementor-heading-title{
  font-size: clamp(1.15rem, 1.02rem + .58vw, 1.55rem);
  line-height: 1.1;
  color: var(--pap-color-navy);
}

.pap-about-stat-label{
  color: rgba(0,33,68,.72);
  font-size: clamp(.86rem, .8rem + .18vw, .96rem);
  line-height: 1.35;
}

.pap-about-section-heading{
  width: min(100%, 980px);
  margin-inline: auto;
  text-align: center;
}

.pap-about-section-title .elementor-heading-title{
  font-size: clamp(2rem, 1.45rem + 2.15vw, 3.8rem);
  line-height: 1.08;
}

.pap-about-text-card-main{
  background: linear-gradient(180deg, var(--pap-color-white), var(--pap-color-surface));
}

.pap-about-text-card-accent{
  background: linear-gradient(180deg, var(--pap-color-pastel-green), var(--pap-color-white));
}

.pap-about-card-list ul{
  margin: 0;
  padding-left: 1.15rem;
}

.pap-about-card-list li + li{
  margin-top: .45rem;
}

.pap-about-mvv-card{
  border-top: 6px solid var(--pap-color-orange);
}

.pap-about-card-visao{
  border-top-color: var(--pap-color-blue);
}

.pap-about-value-card{
  border: 1px solid rgba(0,33,68,.08);
}

.pap-about-founder-role .elementor-heading-title,
.pap-about-founder-badge .elementor-heading-title{
  display: inline-flex;
  align-items: center;
  width: max-content;
  max-width: 100%;
  border-radius: 999px;
  padding: .42rem .72rem;
  background: var(--pap-color-pastel-coral);
  color: var(--pap-color-navy);
  font-size: clamp(.88rem, .82rem + .16vw, .98rem);
  font-weight: 700;
  line-height: 1.2;
}

.pap-about-founders{
  background:
    radial-gradient(circle at 8% 18%, rgba(250,224,60,.28), transparent 30%),
    radial-gradient(circle at 90% 20%, rgba(255,91,92,.16), transparent 32%),
    radial-gradient(circle at 82% 82%, rgba(59,198,112,.14), transparent 34%),
    var(--pap-color-white);
  overflow: hidden;
}

.pap-about-founders::before,
.pap-about-founders::after{
  content:"";
  position:absolute;
  pointer-events:none;
  border-radius:999px;
  z-index:0;
}

.pap-about-founders::before{
  width:clamp(140px, 18vw, 280px);
  height:clamp(140px, 18vw, 280px);
  left:clamp(-120px, -7vw, -70px);
  top:clamp(3rem, 8vw, 7rem);
  background:radial-gradient(circle, rgba(254,145,2,.18), transparent 68%);
}

.pap-about-founders::after{
  width:clamp(160px, 20vw, 320px);
  height:clamp(160px, 20vw, 320px);
  right:clamp(-130px, -8vw, -80px);
  bottom:clamp(2rem, 6vw, 5rem);
  background:radial-gradient(circle, rgba(76,131,213,.16), transparent 68%);
}

.pap-about-founders > .e-con-inner,
.pap-about-founders .pap-about-section-heading,
.pap-about-founders .pap-about-founder-grid{
  position:relative;
  z-index:2;
}

.pap-about-founders .pap-about-section-heading{
  width:min(100%, 1060px);
  padding:clamp(1rem, 2vw, 1.6rem);
  border-radius:var(--pap-radius-lg);
  background:rgba(255,255,255,.75);
  box-shadow:0 18px 44px rgba(0,33,68,.06);
  backdrop-filter:blur(8px);
}

.pap-about-founder-highlight{
  width:min(100%, 840px);
  margin:clamp(.35rem, .8vw, .75rem) auto 0;
  padding:clamp(.95rem, 1.8vw, 1.4rem);
  border-radius:var(--pap-radius-md);
  background:
    radial-gradient(circle at 10% 20%, rgba(250,224,60,.35), transparent 32%),
    linear-gradient(135deg, var(--pap-color-pastel-orange), var(--pap-color-pastel-coral));
  box-shadow:0 14px 34px rgba(0,33,68,.07);
}

.pap-about-founder-highlight-title .elementor-heading-title{
  margin:0;
  color:var(--pap-color-navy);
  font-size:clamp(1.12rem, 1rem + .55vw, 1.45rem);
  line-height:1.25;
  letter-spacing:-.01em;
}

.pap-about-founder-badges,
.pap-about-founder-badges > .e-con-inner{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:clamp(.5rem, 1vw, .75rem);
  width:100%;
  margin-top:clamp(.15rem, .5vw, .35rem);
}

.pap-about-founder-badge-orange .elementor-heading-title{background:var(--pap-color-pastel-orange)}
.pap-about-founder-badge-coral .elementor-heading-title{background:var(--pap-color-pastel-coral)}
.pap-about-founder-badge-green .elementor-heading-title{background:var(--pap-color-pastel-green)}

.pap-about-founder-card{
  border:1px solid rgba(0,33,68,.08);
  background:
    radial-gradient(circle at 18% 8%, rgba(250,224,60,.25), transparent 24%),
    linear-gradient(180deg, var(--pap-color-white) 0%, var(--pap-color-surface) 100%);
}

.pap-about-founder-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:7px;
  background:linear-gradient(90deg, var(--pap-color-orange), var(--pap-color-coral), var(--pap-color-yellow), var(--pap-color-green), var(--pap-color-blue));
  pointer-events:none;
}

.pap-about-founder-photo,
.pap-about-founder-photo .elementor-widget-container{
  width:100%;
  max-width:100%;
}

.pap-about-founder-photo img{
  width:100%;
  max-width:100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center;
  border-radius: 22px;
  background: var(--pap-color-pastel-blue);
  box-shadow: 0 12px 28px rgba(0,33,68,.07);
}

.pap-about-founder-name .elementor-heading-title{
  font-size:clamp(1.28rem, 1.06rem + .72vw, 1.72rem);
}

.pap-about-cta-panel{
  width:min(100%, 980px);
  margin-inline:auto;
  text-align:center;
  background:
    radial-gradient(circle at 12% 20%, rgba(255,91,92,.15), transparent 34%),
    radial-gradient(circle at 88% 80%, rgba(76,131,213,.15), transparent 34%),
    var(--pap-color-white);
}

.pap-about-cta-title .elementor-heading-title{
  font-size:clamp(2rem, 1.45rem + 2.15vw, 3.7rem);
}

.pap-about-button-row{
  align-items:center;
}

@media (hover:hover) and (pointer:fine){

  .pap-about-text-card:hover,
  .pap-about-mvv-card:hover,
  .pap-about-value-card:hover,
  .pap-about-founder-card:hover{
    transform: translateY(-3px);
    box-shadow: var(--pap-shadow-hover);
  }

}

@media (max-width:1199px){

  .pap-about-values-grid > .elementor-element,
  .pap-about-values-grid > .e-con-inner > .elementor-element{
    flex-basis: min(100%, 300px);
  }

}

@media (max-width:1024px){

  .pap-about-hero > .e-con-inner{
    flex-direction: column;
    align-items: stretch;
  }
  .pap-about-hero-copy,
  .pap-about-hero-visual{
    max-width:100%;
    flex-basis:auto;
  }

}

@media (max-width:767px){

  .pap-about-page{
    --pap-about-section-pad: clamp(3rem, 12vw, 4.4rem);
  }
  .pap-about-hero > .e-con-inner,
  .pap-about-intro > .e-con-inner,
  .pap-about-mvv > .e-con-inner,
  .pap-about-founders > .e-con-inner,
  .pap-about-final-cta > .e-con-inner{
    width:min(calc(100% - 2rem), var(--container-max-width, 1440px));
  }
  .pap-about-card-flow,
  .pap-about-card-flow > .e-con-inner{
    gap: clamp(.85rem, 4vw, 1.1rem);
  }
  .pap-about-content-split > .elementor-element,
  .pap-about-content-split > .e-con-inner > .elementor-element,
  .pap-about-mvv-grid > .elementor-element,
  .pap-about-mvv-grid > .e-con-inner > .elementor-element,
  .pap-about-values-grid > .elementor-element,
  .pap-about-values-grid > .e-con-inner > .elementor-element,
  .pap-about-founder-grid > .elementor-element,
  .pap-about-founder-grid > .e-con-inner > .elementor-element{
    flex-basis: 100%;
    max-width: 100%;
  }
  .pap-about-stat-grid > .elementor-element,
  .pap-about-stat-grid > .e-con-inner > .elementor-element,
  .pap-about-stat-card{
    flex-basis:min(100%, 132px);
  }
  .pap-about-founder-badges > .elementor-element,
  .pap-about-founder-badges > .e-con-inner > .elementor-element{
    flex:1 1 min(100%, 160px);
  }
  .pap-about-founder-badge .elementor-heading-title{
    width:100%;
    min-height:42px;
    justify-content:center;
  }
  .pap-floating-element{
    display:none;
  }

}

@media (max-width:360px){

  .pap-about-stat-grid > .elementor-element,
  .pap-about-stat-grid > .e-con-inner > .elementor-element,
  .pap-about-stat-card{
    flex-basis:100%;
  }

}

/* =========================================================
   Passo a Passo — Página Contato v1.0
   Base: portal.css enviado + módulo escopado da página de contato.
   Objetivo: formulário, FAQ, mapa, contatos, redes sociais e CTAs rastreáveis.
   ========================================================= */

.pap-contact-page{
  --pap-contact-section-pad: clamp(4rem, 2.8rem + 4.2vw, 7.5rem);
  --pap-contact-card-pad: clamp(1.15rem, .95rem + 1vw, 1.9rem);
  --pap-contact-grid-gap: clamp(1rem, .8rem + 1vw, 1.75rem);
  color: var(--pap-color-navy);
}

.pap-contact-page,
.pap-contact-page *{
  box-sizing:border-box;
}

.pap-contact-page .elementor-heading-title,
.pap-contact-page .elementor-widget-text-editor,
.pap-contact-page .elementor-widget-text-editor p,
.pap-contact-page .elementor-icon-box-title,
.pap-contact-page .elementor-icon-box-description,
.pap-contact-page .elementor-button-text,
.pap-contact-page .elementor-field-label{
  overflow-wrap:anywhere;
  hyphens:auto;
}

.pap-contact-hero,
.pap-contact-form-section,
.pap-contact-info-section,
.pap-contact-map-section,
.pap-contact-faq-section,
.pap-contact-final-cta{
  padding-block:var(--pap-contact-section-pad);
}

.pap-contact-hero > .e-con-inner,
.pap-contact-form-section > .e-con-inner,
.pap-contact-info-section > .e-con-inner,
.pap-contact-map-section > .e-con-inner,
.pap-contact-faq-section > .e-con-inner,
.pap-contact-final-cta > .e-con-inner{
  width:min(calc(100% - clamp(2rem, 5vw, 5rem)), var(--container-max-width, 1440px));
  margin-inline:auto;
  min-width:0;
}

.pap-contact-hero-grid,
.pap-contact-hero-grid > .e-con-inner,
.pap-contact-form-grid,
.pap-contact-form-grid > .e-con-inner,
.pap-contact-info-grid,
.pap-contact-info-grid > .e-con-inner,
.pap-contact-map-grid,
.pap-contact-map-grid > .e-con-inner{
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  justify-content:center;
  gap:var(--pap-contact-grid-gap);
  width:100%;
  min-width:0;
}

.pap-contact-hero-copy,
.pap-contact-hero-card,
.pap-contact-form-card,
.pap-contact-support-card,
.pap-contact-map-copy,
.pap-contact-map-card{
  flex:1 1 min(100%, 420px);
  min-width:0;
}

.pap-contact-hero-copy,
.pap-contact-map-copy{
  max-width:720px;
}

.pap-contact-hero-card,
.pap-contact-form-card,
.pap-contact-support-card,
.pap-contact-map-card,
.pap-contact-info-card,
.pap-contact-cta-panel{
  position:relative;
  min-width:0;
  height:100%;
  padding:var(--pap-contact-card-pad);
  border-radius:var(--pap-radius-md);
  background:var(--pap-color-white);
  box-shadow:var(--pap-shadow-soft);
  border:1px solid rgba(0,33,68,.08);
  overflow:hidden;
}

.pap-contact-hero-card::before,
.pap-contact-form-card::before,
.pap-contact-support-card::before,
.pap-contact-cta-panel::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:7px;
  background:linear-gradient(90deg, var(--pap-color-orange), var(--pap-color-coral), var(--pap-color-yellow), var(--pap-color-green), var(--pap-color-blue));
  pointer-events:none;
}

.pap-contact-h1 .elementor-heading-title{
  max-width:11.5em;
  font-size:clamp(2.45rem, 1.72rem + 3.15vw, 5rem);
  line-height:1.05;
}

.pap-contact-hero-subtitle,
.pap-contact-section-lead,
.pap-contact-cta-text{
  max-width:70ch;
  color:rgba(0,33,68,.84);
  font-size:clamp(1.02rem, .95rem + .32vw, 1.22rem);
  line-height:1.68;
}

.pap-contact-section-heading{
  width:min(100%, 980px);
  margin-inline:auto;
  text-align:center;
}

.pap-contact-section-title .elementor-heading-title,
.pap-contact-cta-title .elementor-heading-title{
  font-size:clamp(2rem, 1.45rem + 2.15vw, 3.7rem);
  line-height:1.08;
}

.pap-contact-anchor-row,
.pap-contact-anchor-row > .e-con-inner,
.pap-contact-button-row,
.pap-contact-button-row > .e-con-inner{
  display:flex;
  flex-wrap:wrap;
  gap:.85rem;
  align-items:center;
}

.pap-contact-anchor-row .elementor-button,
.pap-contact-card-link .elementor-button{
  min-height:44px;
  box-shadow:none;
}

.pap-contact-info-grid > .elementor-element,
.pap-contact-info-grid > .e-con-inner > .elementor-element{
  flex:1 1 min(100%, 300px);
  min-width:0;
  max-width:430px;
}

.pap-contact-info-card{
  transition:transform .32s ease, box-shadow .32s ease, filter .32s ease;
}

.pap-contact-icon-box .elementor-icon-box-wrapper,
.pap-contact-mini-item .elementor-icon-box-wrapper,
.pap-contact-step-item .elementor-icon-box-wrapper,
.pap-contact-map-address .elementor-icon-box-wrapper{
  display:flex;
  align-items:flex-start;
  gap:.85rem;
  text-align:left;
}

.pap-contact-icon-box .elementor-icon-box-icon,
.pap-contact-mini-item .elementor-icon-box-icon,
.pap-contact-step-item .elementor-icon-box-icon,
.pap-contact-map-address .elementor-icon-box-icon{
  flex:0 0 auto;
  margin:0;
}

.pap-contact-icon-box .elementor-icon,
.pap-contact-mini-item .elementor-icon,
.pap-contact-step-item .elementor-icon,
.pap-contact-map-address .elementor-icon{
  width:clamp(44px, 4vw, 56px);
  height:clamp(44px, 4vw, 56px);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(76,131,213,.10);
  line-height:1;
}

.pap-contact-icon-box .elementor-icon i,
.pap-contact-mini-item .elementor-icon i,
.pap-contact-step-item .elementor-icon i,
.pap-contact-map-address .elementor-icon i,
.pap-contact-icon-box .elementor-icon svg,
.pap-contact-mini-item .elementor-icon svg,
.pap-contact-step-item .elementor-icon svg,
.pap-contact-map-address .elementor-icon svg{
  width:1em;
  height:1em;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}

.pap-contact-icon-box .elementor-icon-box-title,
.pap-contact-mini-item .elementor-icon-box-title,
.pap-contact-step-item .elementor-icon-box-title,
.pap-contact-map-address .elementor-icon-box-title{
  margin:0 0 .2rem;
  color:var(--pap-color-navy);
  font-size:clamp(1rem, .94rem + .24vw, 1.16rem);
  line-height:1.25;
}

.pap-contact-icon-box .elementor-icon-box-description,
.pap-contact-mini-item .elementor-icon-box-description,
.pap-contact-step-item .elementor-icon-box-description,
.pap-contact-map-address .elementor-icon-box-description{
  color:rgba(0,33,68,.78);
  line-height:1.55;
}

.pap-contact-form-card{
  background:linear-gradient(180deg, var(--pap-color-white), var(--pap-color-surface));
}

.pap-contact-form .elementor-field-group-lead_page,
.pap-contact-form .elementor-field-group-lead_offer{
  display:none;
}

.pap-contact-form .elementor-field-type-acceptance label,
.pap-contact-form .elementor-field-type-acceptance .elementor-field-option{
  color:rgba(0,33,68,.82);
  font-size:clamp(.88rem, .84rem + .12vw, .96rem);
  line-height:1.45;
}

.pap-contact-form .elementor-button{
  width:100%;
}

.pap-contact-map-card{
  padding:clamp(.65rem, 1vw, .95rem);
  background:var(--pap-color-white);
}

.pap-contact-map-widget,
.pap-contact-map-widget .elementor-widget-container,
.pap-contact-map-widget iframe{
  width:100%;
  min-height:clamp(320px, 34vw, 430px);
  border-radius:24px;
  overflow:hidden;
}

.pap-contact-faq-wrap{
  width:min(100%, 980px);
  margin-inline:auto;
}

.pap-contact-faq.elementor-widget-accordion .elementor-tab-title,
.sr-faq.elementor-widget-accordion .elementor-tab-title{
  font-size:clamp(1rem, .95rem + .35vw, 1.2rem);
  line-height:1.35;
}

.pap-contact-faq.elementor-widget-accordion .elementor-tab-content,
.sr-faq.elementor-widget-accordion .elementor-tab-content{
  font-size:clamp(.94rem, .9rem + .16vw, 1.02rem);
}

.pap-contact-cta-panel{
  width:min(100%, 980px);
  margin-inline:auto;
  text-align:center;
  background:
    radial-gradient(circle at 12% 20%, rgba(255,91,92,.15), transparent 34%),
    radial-gradient(circle at 88% 80%, rgba(76,131,213,.15), transparent 34%),
    var(--pap-color-white);
}

@media (hover:hover) and (pointer:fine){

  .pap-contact-info-card:hover,
  .pap-contact-hero-card:hover,
  .pap-contact-form-card:hover,
  .pap-contact-support-card:hover{
    transform:translateY(-3px);
    box-shadow:var(--pap-shadow-hover);
    filter:saturate(1.03);
  }

}

@media (max-width:1199px){

  .pap-contact-info-grid > .elementor-element,
  .pap-contact-info-grid > .e-con-inner > .elementor-element{
    flex-basis:min(100%, 280px);
  }

}

@media (max-width:1024px){

  .pap-contact-hero-grid,
  .pap-contact-hero-grid > .e-con-inner,
  .pap-contact-form-grid,
  .pap-contact-form-grid > .e-con-inner,
  .pap-contact-map-grid,
  .pap-contact-map-grid > .e-con-inner{
    align-items:stretch;
  }
  .pap-contact-hero-copy,
  .pap-contact-hero-card,
  .pap-contact-form-card,
  .pap-contact-support-card,
  .pap-contact-map-copy,
  .pap-contact-map-card{
    flex-basis:100%;
    max-width:100%;
  }

}

@media (max-width:767px){

  .pap-contact-page{
    --pap-contact-section-pad:clamp(3rem, 12vw, 4.4rem);
  }
  .pap-contact-hero > .e-con-inner,
  .pap-contact-form-section > .e-con-inner,
  .pap-contact-info-section > .e-con-inner,
  .pap-contact-map-section > .e-con-inner,
  .pap-contact-faq-section > .e-con-inner,
  .pap-contact-final-cta > .e-con-inner{
    width:min(calc(100% - 2rem), var(--container-max-width, 1440px));
  }
  .pap-contact-h1 .elementor-heading-title{
    font-size:clamp(2.18rem, 10vw, 3.1rem);
  }
  .pap-contact-button-row,
  .pap-contact-button-row > .e-con-inner,
  .pap-contact-anchor-row,
  .pap-contact-anchor-row > .e-con-inner{
    width:100%;
  }
  .pap-contact-button-row > .elementor-element,
  .pap-contact-button-row > .e-con-inner > .elementor-element,
  .pap-contact-anchor-row > .elementor-element,
  .pap-contact-anchor-row > .e-con-inner > .elementor-element,
  .pap-contact-button-row .elementor-widget-container,
  .pap-contact-anchor-row .elementor-widget-container,
  .pap-contact-button-row .elementor-button,
  .pap-contact-anchor-row .elementor-button{
    width:100%;
  }
  .pap-contact-info-grid > .elementor-element,
  .pap-contact-info-grid > .e-con-inner > .elementor-element{
    flex-basis:100%;
    max-width:100%;
  }
  .pap-contact-form .elementor-field-group,
  .pap-contact-form .elementor-column{
    width:100%;
  }

}

/* Cobertura explícita de classes visuais/semânticas usadas no JSON de Contato v1.0 */
.pap-contact-eyebrow .elementor-heading-title{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
}

.pap-contact-card-title .elementor-heading-title{
  font-size:clamp(1.18rem, 1.02rem + .55vw, 1.52rem);
  line-height:1.18;
  color:var(--pap-color-navy);
}

.pap-contact-card-text,
.pap-contact-card-text p,
.pap-section-lead,
.pap-section-lead p{
  color:rgba(0,33,68,.82);
  line-height:1.65;
}

.pap-card-light{
  color:var(--pap-color-navy);
  background:var(--pap-color-white);
}

.pap-contact-whatsapp-card,
.pap-contact-phone-card,
.pap-contact-email-card,
.pap-contact-instagram-card,
.pap-contact-site-card,
.pap-contact-address-card{
  color:var(--pap-color-navy);
}

.pap-contact-whatsapp-card{background:linear-gradient(180deg,var(--pap-color-white),var(--pap-color-pastel-green))}
.pap-contact-phone-card{background:linear-gradient(180deg,var(--pap-color-white),var(--pap-color-pastel-blue))}
.pap-contact-email-card{background:linear-gradient(180deg,var(--pap-color-white),var(--pap-color-pastel-coral))}
.pap-contact-instagram-card{background:linear-gradient(180deg,var(--pap-color-white),var(--pap-color-pastel-orange))}
.pap-contact-site-card{background:linear-gradient(180deg,var(--pap-color-white),var(--pap-color-pastel-blue))}
.pap-contact-address-card{background:linear-gradient(180deg,var(--pap-color-white),var(--pap-color-pastel-green))}

/* =========================================================
   Passo a Passo — Página Contato v1.1
   Ajustes: botões duplicados removidos; ícones alinhados; canais clicáveis pelas caixas de ícone.
   ========================================================= */

.pap-contact-page .pap-button-has-icon .elementor-button,
.pap-contact-page .pap-form-button-has-icon .elementor-button,
.pap-contact-page .elementor-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
}

.pap-contact-page .elementor-button .elementor-button-icon,
.pap-contact-page .elementor-button .elementor-button-icon i,
.pap-contact-page .elementor-button .elementor-button-icon svg{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
}

.pap-contact-page .elementor-button .elementor-button-icon svg{
  width:1em;
  height:1em;
}

.pap-contact-anchor-row,
.pap-contact-anchor-row > .e-con-inner,
.pap-contact-button-row,
.pap-contact-button-row > .e-con-inner{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:.85rem;
}

.pap-contact-hero-copy .pap-contact-button-row,
.pap-contact-hero-copy .pap-contact-button-row > .e-con-inner{
  justify-content:flex-start;
}

.pap-contact-info-grid,
.pap-contact-info-grid > .e-con-inner{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:stretch;
  justify-content:center;
  gap:var(--pap-contact-grid-gap);
}

.pap-contact-info-grid > .elementor-element,
.pap-contact-info-grid > .e-con-inner > .elementor-element{
  flex:1 1 min(100%, 300px);
  min-width:min(100%, 260px);
  max-width:430px;
}

.pap-contact-info-card{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.pap-contact-info-card > .elementor-element,
.pap-contact-info-card > .e-con-inner > .elementor-element{
  width:100%;
}

.pap-contact-icon-box,
.pap-contact-mini-item,
.pap-contact-step-item,
.pap-contact-map-address{
  width:100%;
}

.pap-contact-icon-box .elementor-icon-box-wrapper,
.pap-contact-mini-item .elementor-icon-box-wrapper,
.pap-contact-step-item .elementor-icon-box-wrapper,
.pap-contact-map-address .elementor-icon-box-wrapper,
.pap-icon-box-horizontal .elementor-icon-box-wrapper{
  display:flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:flex-start;
  gap:.85rem;
  text-align:left;
  width:100%;
}

.pap-contact-icon-box .elementor-icon-box-icon,
.pap-contact-mini-item .elementor-icon-box-icon,
.pap-contact-step-item .elementor-icon-box-icon,
.pap-contact-map-address .elementor-icon-box-icon,
.pap-icon-box-horizontal .elementor-icon-box-icon{
  flex:0 0 auto;
  margin:0;
}

.pap-contact-icon-box .elementor-icon-box-content,
.pap-contact-mini-item .elementor-icon-box-content,
.pap-contact-step-item .elementor-icon-box-content,
.pap-contact-map-address .elementor-icon-box-content,
.pap-icon-box-horizontal .elementor-icon-box-content{
  flex:1 1 auto;
  min-width:0;
}

.pap-contact-icon-box a,
.pap-contact-mini-item a,
.pap-contact-map-address a{
  text-decoration:none;
}

.pap-contact-icon-box .elementor-icon-box-wrapper:hover .elementor-icon,
.pap-contact-mini-item .elementor-icon-box-wrapper:hover .elementor-icon,
.pap-contact-map-address .elementor-icon-box-wrapper:hover .elementor-icon{
  filter:saturate(1.08);
  transform:translateY(-1px);
}

.pap-contact-icon-box .elementor-icon,
.pap-contact-mini-item .elementor-icon,
.pap-contact-step-item .elementor-icon,
.pap-contact-map-address .elementor-icon{
  transition:transform .25s ease, filter .25s ease, background .25s ease;
}

@media (max-width:1199px){

  .pap-contact-info-grid > .elementor-element,
  .pap-contact-info-grid > .e-con-inner > .elementor-element{
    flex-basis:min(100%, 280px);
  }

}

@media (max-width:767px){

  .pap-contact-anchor-row,
  .pap-contact-anchor-row > .e-con-inner{
    justify-content:stretch;
  }
  .pap-contact-anchor-row > .elementor-element,
  .pap-contact-anchor-row > .e-con-inner > .elementor-element,
  .pap-contact-anchor-row .elementor-widget-container,
  .pap-contact-anchor-row .elementor-button,
  .pap-contact-button-row > .elementor-element,
  .pap-contact-button-row > .e-con-inner > .elementor-element,
  .pap-contact-button-row .elementor-widget-container,
  .pap-contact-button-row .elementor-button{
    width:100%;
  }
  .pap-contact-info-grid > .elementor-element,
  .pap-contact-info-grid > .e-con-inner > .elementor-element{
    flex-basis:100%;
    min-width:0;
    max-width:100%;
  }
  .pap-contact-icon-box .elementor-icon-box-wrapper,
  .pap-contact-mini-item .elementor-icon-box-wrapper,
  .pap-contact-step-item .elementor-icon-box-wrapper,
  .pap-contact-map-address .elementor-icon-box-wrapper,
  .pap-icon-box-horizontal .elementor-icon-box-wrapper{
    align-items:flex-start;
  }

}


/* =========================================================
   Passo a Passo — Página Contato v1.2
   Ajuste sistêmico: layout premium para telas grandes, icon boxes horizontais
   e reforço de estrutura nativa Elementor sem prioridade forçada no módulo novo.
   ========================================================= */

.pap-contact-page{
  --pap-contact-wide-container:min(calc(100% - clamp(3rem, 6vw, 8rem)), 1560px);
  --pap-contact-wide-container-soft:min(calc(100% - clamp(2rem, 5vw, 7rem)), 1480px);
  --pap-contact-wide-card-pad:clamp(1.35rem, .95rem + 1.25vw, 2.25rem);
  --pap-contact-wide-gap:clamp(1.2rem, .95rem + 1.2vw, 2.25rem);
  --pap-contact-channel-min:min(100%, 300px);
}

.pap-contact-page > .e-con-inner{
  width:var(--pap-contact-wide-container);
  max-width:var(--pap-contact-wide-container);
}

.pap-contact-wide-split,
.pap-contact-wide-split > .e-con-inner,
.pap-contact-wide-form-split,
.pap-contact-wide-form-split > .e-con-inner,
.pap-contact-wide-map-split,
.pap-contact-wide-map-split > .e-con-inner{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:stretch;
  justify-content:space-between;
  gap:var(--pap-contact-wide-gap);
  width:100%;
  min-width:0;
}

.pap-contact-wide-split{
  align-items:center;
}

.pap-contact-hero-copy{
  flex:1 1 min(100%, 680px);
  max-width:860px;
}

.pap-contact-hero-card{
  flex:1 1 min(100%, 440px);
  max-width:560px;
  align-self:stretch;
}

.pap-contact-form-card{
  flex:1 1 min(100%, 760px);
  max-width:980px;
}

.pap-contact-support-card{
  flex:1 1 min(100%, 360px);
  max-width:520px;
}

.pap-contact-map-copy{
  flex:1 1 min(100%, 460px);
  max-width:620px;
}

.pap-contact-map-card{
  flex:1 1 min(100%, 740px);
  max-width:920px;
}

.pap-contact-form-card,
.pap-contact-support-card,
.pap-contact-info-card,
.pap-contact-map-card,
.pap-contact-hero-card,
.pap-contact-cta-panel{
  padding:var(--pap-contact-wide-card-pad);
}

.pap-contact-wide-channel-grid,
.pap-contact-wide-channel-grid > .e-con-inner{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  align-items:stretch;
  justify-content:center;
  gap:clamp(1rem, 1.15vw, 1.45rem);
  width:100%;
  min-width:0;
}

.pap-contact-wide-channel-grid > .elementor-element,
.pap-contact-wide-channel-grid > .e-con-inner > .elementor-element,
.pap-contact-info-card{
  flex:1 1 calc(33.333% - 1rem);
  min-width:var(--pap-contact-channel-min);
  max-width:none;
}

.pap-contact-info-card{
  min-height:clamp(138px, 8.5vw, 172px);
  display:flex;
  justify-content:center;
  border:1px solid rgba(0,33,68,.07);
}

.pap-contact-icon-box .elementor-icon-box-wrapper,
.pap-contact-mini-item .elementor-icon-box-wrapper,
.pap-contact-step-item .elementor-icon-box-wrapper,
.pap-contact-map-address .elementor-icon-box-wrapper,
.pap-icon-box-horizontal .elementor-icon-box-wrapper{
  display:flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:flex-start;
  gap:clamp(.75rem, .65rem + .45vw, 1.1rem);
  text-align:left;
  width:100%;
}

.pap-contact-icon-box .elementor-icon-box-icon,
.pap-contact-mini-item .elementor-icon-box-icon,
.pap-contact-step-item .elementor-icon-box-icon,
.pap-contact-map-address .elementor-icon-box-icon,
.pap-icon-box-horizontal .elementor-icon-box-icon{
  flex:0 0 auto;
  margin:0;
  align-self:center;
}

.pap-contact-icon-box .elementor-icon-box-content,
.pap-contact-mini-item .elementor-icon-box-content,
.pap-contact-step-item .elementor-icon-box-content,
.pap-contact-map-address .elementor-icon-box-content,
.pap-icon-box-horizontal .elementor-icon-box-content{
  flex:1 1 auto;
  min-width:0;
}

.pap-contact-icon-box a,
.pap-contact-mini-item a,
.pap-contact-map-address a{
  display:block;
  width:100%;
  min-height:100%;
  text-decoration:none;
  color:inherit;
}

.pap-contact-icon-box .elementor-icon,
.pap-contact-mini-item .elementor-icon,
.pap-contact-step-item .elementor-icon,
.pap-contact-map-address .elementor-icon{
  width:clamp(48px, 3.5vw, 58px);
  height:clamp(48px, 3.5vw, 58px);
}

.pap-contact-info-card .elementor-icon-box-title,
.pap-contact-info-card .elementor-icon-box-description{
  max-width:100%;
  overflow-wrap:anywhere;
}

.pap-contact-faq-wrap,
.pap-contact-wide-faq{
  width:min(100%, 1120px);
  margin-inline:auto;
}

.pap-contact-cta-panel,
.pap-contact-wide-cta{
  width:min(100%, 1240px);
  margin-inline:auto;
}

.pap-contact-map-widget,
.pap-contact-map-widget .elementor-widget-container,
.pap-contact-map-widget iframe{
  min-height:clamp(360px, 34vw, 560px);
}

.pap-contact-form textarea{
  min-height:7.5rem;
  max-height:9rem;
  resize:vertical;
}

@media (min-width:1440px){

  .pap-contact-page > .e-con-inner{
    width:var(--pap-contact-wide-container);
    max-width:1560px;
  }
  .pap-contact-h1 .elementor-heading-title{
    max-width:13.5em;
  }
  .pap-contact-hero-subtitle{
    max-width:72ch;
  }
  .pap-contact-form-section .pap-contact-section-heading,
  .pap-contact-info-section .pap-contact-section-heading,
  .pap-contact-faq-section .pap-contact-section-heading{
    width:min(100%, 1120px);
  }
  .pap-contact-map-widget,
  .pap-contact-map-widget .elementor-widget-container,
  .pap-contact-map-widget iframe{
    min-height:560px;
  }

}

@media (min-width:1200px) and (max-width:1439px){

  .pap-contact-page > .e-con-inner{
    width:var(--pap-contact-wide-container-soft);
  }
  .pap-contact-wide-channel-grid > .elementor-element,
  .pap-contact-wide-channel-grid > .e-con-inner > .elementor-element,
  .pap-contact-info-card{
    flex-basis:calc(33.333% - 1rem);
  }

}

@media (min-width:768px) and (max-width:1199px){

  .pap-contact-wide-channel-grid > .elementor-element,
  .pap-contact-wide-channel-grid > .e-con-inner > .elementor-element,
  .pap-contact-info-card{
    flex-basis:calc(50% - .75rem);
    min-width:min(100%, 300px);
  }
  .pap-contact-wide-split,
  .pap-contact-wide-split > .e-con-inner,
  .pap-contact-wide-form-split,
  .pap-contact-wide-form-split > .e-con-inner,
  .pap-contact-wide-map-split,
  .pap-contact-wide-map-split > .e-con-inner{
    align-items:stretch;
  }
  .pap-contact-hero-copy,
  .pap-contact-hero-card,
  .pap-contact-form-card,
  .pap-contact-support-card,
  .pap-contact-map-copy,
  .pap-contact-map-card{
    flex-basis:100%;
    max-width:100%;
  }

}

@media (max-width:767px){

  .pap-contact-page > .e-con-inner{
    width:min(calc(100% - 2rem), var(--container-max-width, 1440px));
  }
  .pap-contact-wide-channel-grid > .elementor-element,
  .pap-contact-wide-channel-grid > .e-con-inner > .elementor-element,
  .pap-contact-info-card{
    flex-basis:100%;
    min-width:0;
    max-width:100%;
  }
  .pap-contact-icon-box .elementor-icon-box-wrapper,
  .pap-contact-mini-item .elementor-icon-box-wrapper,
  .pap-contact-step-item .elementor-icon-box-wrapper,
  .pap-contact-map-address .elementor-icon-box-wrapper,
  .pap-icon-box-horizontal .elementor-icon-box-wrapper{
    align-items:flex-start;
  }

}

/* Ensino e níveis escolares — contrato responsivo consolidado */
.pap-education-section{position:relative;isolation:isolate;overflow:hidden}
.pap-education-behavior{display:none}
.pap-education-section>.e-con-inner{position:relative;z-index:1}
.pap-education-section[id],.pap-education-section [id]{scroll-margin-top:clamp(5.5rem,8vw,7.5rem)}
.pap-education-readable{max-width:72ch}

.pap-education-tabs{overflow:hidden;border:1px solid var(--pap-border-soft);border-radius:var(--pap-radius-lg,24px);background:var(--pap-color-white);box-shadow:var(--pap-shadow-soft)}
.pap-education-tabs .e-n-tabs-heading{display:flex;flex-flow:row nowrap;gap:.5rem;margin:0;padding:.5rem;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.pap-education-tabs .e-n-tab-title{flex:1 0 max(10rem,22%);min-width:10rem;min-height:3rem;justify-content:center;padding:.8rem 1rem;border:1px solid transparent;border-radius:var(--pap-radius-sm);background:transparent;color:var(--pap-color-navy);white-space:normal;text-align:center;scroll-snap-align:start}
.pap-education-tabs .e-n-tab-title:hover{color:var(--pap-color-blue);background:var(--pap-color-pastel-blue)}
.pap-education-tabs .e-n-tab-title[aria-selected="true"]{color:var(--pap-color-white);background:var(--pap-color-blue);border-color:var(--pap-color-blue)}
.pap-education-tabs .e-n-tabs-content{min-width:0}
.pap-education-tab-panel,.pap-education-tab-panel>.e-con-inner{min-width:0}
.pap-education-tab-media,.pap-education-tab-copy{min-width:0}
.pap-education-tab-image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}

.pap-education-grid>.e-con-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(1rem,2vw,1.75rem)}
.pap-education-grid>.e-con-inner>.pap-education-card{grid-column:auto;flex:none;flex-basis:auto;width:100%;max-width:none;min-width:0;height:100%}
.pap-education-card,.pap-education-card .elementor-widget-container,.pap-education-card .elementor-icon-box-wrapper,.pap-education-card .elementor-icon-box-content{min-width:0;width:100%;max-width:100%}
.pap-education-card *{writing-mode:horizontal-tb;text-orientation:mixed}
.pap-education-card .elementor-widget-container{height:100%}
.pap-education-card .elementor-icon-box-wrapper{display:flex;flex-flow:row nowrap;align-items:flex-start;gap:clamp(.8rem,1.2vw,1.15rem);height:100%;text-align:left}
.pap-education-card .elementor-icon-box-icon{flex:0 0 auto;margin:0}
.pap-education-card .elementor-icon-box-content{display:block;flex:1 1 0}
.pap-education-card .elementor-icon-box-title,.pap-education-card .elementor-icon-box-description{display:block;width:100%;white-space:normal;word-break:normal;overflow-wrap:break-word;hyphens:none}
.pap-education-card .elementor-icon-box-title{margin:0 0 .35rem;color:var(--pap-color-blue)}
.pap-education-card .elementor-icon-box-description{margin:0;color:var(--pap-color-navy)}

.pap-education-activities .pap-education-activity-card{padding:clamp(1.1rem,1.5vw,1.5rem);border:1px solid var(--pap-border-soft);border-radius:var(--pap-radius-md,18px);box-shadow:var(--pap-shadow-soft);transform:none}
.pap-education-activities .pap-education-activity-card:nth-child(5n+1){background:var(--pap-color-pastel-blue)}
.pap-education-activities .pap-education-activity-card:nth-child(5n+2){background:var(--pap-color-pastel-green)}
.pap-education-activities .pap-education-activity-card:nth-child(5n+3){background:var(--pap-color-pastel-coral)}
.pap-education-activities .pap-education-activity-card:nth-child(5n+4){background:var(--pap-color-pastel-orange)}
.pap-education-activities .pap-education-activity-card:nth-child(5n+5){background:var(--pap-color-pastel-yellow)}
.pap-education-activities .pap-education-activity-card:hover{transform:none;box-shadow:var(--pap-shadow-soft)}
.pap-education-section .pap-education-feature-card,.pap-education-section .pap-education-pillar-card{padding:clamp(1.1rem,1.5vw,1.5rem);border:1px solid var(--pap-border-soft);border-radius:var(--pap-radius-md,18px);background:var(--pap-color-white);box-shadow:var(--pap-shadow-soft)}
.pap-education-experiences .pap-education-mini-card{
  padding:clamp(1.25rem,1.05rem + .7vw,1.75rem);
  border:1px solid var(--pap-border-soft);
  border-radius:var(--pap-radius-md,18px);
  box-shadow:var(--pap-shadow-soft);
}
.pap-education-experiences .pap-education-mini-card .elementor-widget-container{
  padding:0;
}
.pap-education-experiences .pap-education-mini-card:nth-child(odd){background:var(--pap-color-pastel-blue)}
.pap-education-experiences .pap-education-mini-card:nth-child(even){background:var(--pap-color-pastel-green)}

.pap-education-section a:focus-visible,.pap-education-section button:focus-visible,.pap-education-section [role="tab"]:focus-visible,.pap-education-section .elementor-button:focus-visible,.pap-education-section .elementor-accordion-title:focus-visible{outline:3px solid var(--pap-color-orange);outline-offset:3px}

@media (max-width:1024px){
  .pap-education-grid>.e-con-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
  .pap-education-grid>.e-con-inner{grid-template-columns:minmax(0,1fr)}
  .pap-education-section .pap-button-row,.pap-education-section .pap-button-row>.e-con-inner{display:flex;flex-direction:column;align-items:stretch;gap:1rem;width:100%}
  .pap-education-section .pap-button-row .elementor-widget-button,.pap-education-section .pap-button-row .elementor-button-wrapper,.pap-education-section .pap-button-row .elementor-button{width:100%;max-width:none}
  .pap-education-tabs .e-n-tab-title{flex-basis:min(82vw,18rem);justify-content:flex-start;text-align:left}
}
@media (prefers-reduced-motion:reduce){
  .pap-education-section *{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}
}

/* Ensino e níveis escolares — fotos e escala de ícones por contexto */
.pap-education-activities .pap-education-activity-card .elementor-icon,
.pap-education-experiences .pap-education-mini-card .elementor-icon{
  font-size:clamp(1.35rem,1.2rem + .35vw,1.625rem);
}
.pap-education-proposal .pap-education-feature-card .elementor-icon,
.pap-education-pillars .pap-education-pillar-card .elementor-icon,
.pap-education-split .pap-education-split-card .elementor-icon{
  font-size:clamp(1.5rem,1.3rem + .45vw,1.875rem);
}
.pap-education-card .elementor-icon-box-icon{
  display:flex;
  flex:0 0 clamp(2.75rem,2.55rem + .5vw,3.25rem);
  width:clamp(2.75rem,2.55rem + .5vw,3.25rem);
  min-width:clamp(2.75rem,2.55rem + .5vw,3.25rem);
  min-height:clamp(2.75rem,2.55rem + .5vw,3.25rem);
  align-items:flex-start;
  justify-content:center;
  margin:0;
}
.pap-education-card .elementor-icon{
  display:inline-flex;
  width:clamp(2.75rem,2.55rem + .5vw,3.25rem);
  height:clamp(2.75rem,2.55rem + .5vw,3.25rem);
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  border-radius:999px;
  background:var(--pap-color-white);
  line-height:1;
}
.pap-education-card .elementor-icon i,
.pap-education-card .elementor-icon i::before,
.pap-education-card .elementor-icon svg{
  display:block;
  flex:0 0 auto;
  line-height:1;
  color:inherit;
  fill:currentColor;
}
.pap-education-card .elementor-icon i::before{
  margin:0;
}
.pap-education-feature .elementor-icon{
  font-size:clamp(1.625rem,1.4rem + .5vw,2rem);
}
.pap-education-section .elementor-widget-icon-box .elementor-icon svg{
  width:1em;
  height:1em;
}
.pap-education-section .elementor-widget-icon-box .elementor-icon-box-icon{
  line-height:1;
}
.pap-education-photo,
.pap-education-photo .elementor-widget-container{
  width:100%;
  min-width:0;
}
.pap-education-photo img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
  border:1px solid var(--pap-border-soft);
  border-radius:var(--pap-radius-lg,24px);
  box-shadow:var(--pap-shadow-soft);
}
.pap-education-photo-hero img{aspect-ratio:4/3}
.pap-education-photo-wide{max-width:960px;margin-inline:auto}
.pap-education-photo-wide img{aspect-ratio:16/9}
.pap-education-photo-split{width:48%;min-width:0}
.pap-education-photo-split img{aspect-ratio:4/3}
.pap-education-split-content{width:52%;min-width:0}

@media (max-width:1024px){
  .pap-education-photo-split,
  .pap-education-split-content{width:100%;max-width:760px}
}
@media (max-width:767px){
  .pap-education-activities .pap-education-activity-card .elementor-icon,
  .pap-education-experiences .pap-education-mini-card .elementor-icon{font-size:1.375rem}
  .pap-education-proposal .pap-education-feature-card .elementor-icon,
  .pap-education-pillars .pap-education-pillar-card .elementor-icon,
  .pap-education-split .pap-education-split-card .elementor-icon{font-size:1.5rem}
  .pap-education-card .elementor-icon-box-icon,
  .pap-education-card .elementor-icon{
    flex-basis:2.75rem;
    width:2.75rem;
    min-width:2.75rem;
    height:2.75rem;
    min-height:2.75rem;
  }
  .pap-education-photo img{border-radius:var(--pap-radius-md,18px)}
}


/* Ensino e níveis escolares — elementos afetivos flutuantes */
.pap-education-with-floats{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.pap-education-with-floats>.e-con-inner{
  position:relative;
  z-index:2;
}
.pap-education-float{
  position:absolute;
  z-index:1;
  width:clamp(2.25rem,1.7rem + 1.7vw,4rem);
  height:clamp(2.25rem,1.7rem + 1.7vw,4rem);
  margin:0;
  opacity:.62;
  pointer-events:none;
  user-select:none;
  animation:pap-education-float-soft 7.5s ease-in-out infinite;
  will-change:transform;
}
.pap-education-float .elementor-widget-container,
.pap-education-float .elementor-icon-wrapper,
.pap-education-float .elementor-icon{
  display:flex;
  width:100%;
  height:100%;
  align-items:center;
  justify-content:center;
  line-height:1;
}
.pap-education-float .elementor-icon{
  font-size:clamp(1.35rem,1rem + 1vw,2.4rem);
  color:inherit;
  fill:currentColor;
  filter:drop-shadow(0 .35rem .55rem rgba(0,33,68,.10));
}
.pap-education-float .elementor-icon i,
.pap-education-float .elementor-icon i::before,
.pap-education-float .elementor-icon svg{
  display:block;
  width:1em;
  height:1em;
  margin:0;
  color:inherit;
  fill:currentColor;
  line-height:1;
}
.pap-education-float--heart{color:var(--pap-color-coral)}
.pap-education-float--star{color:var(--pap-color-yellow)}
.pap-education-float--sparkle{color:var(--pap-color-blue)}
.pap-education-float--cloud{color:var(--pap-color-white);opacity:.78}
.pap-education-float--top-left{top:clamp(1rem,3vw,3rem);left:clamp(.5rem,2.2vw,2.5rem);transform:rotate(-12deg)}
.pap-education-float--top-right{top:clamp(1rem,3vw,3rem);right:clamp(.5rem,2.2vw,2.5rem);transform:rotate(10deg);animation-delay:-2.4s}
.pap-education-float--mid-left{top:46%;left:clamp(.4rem,1.6vw,1.75rem);transform:rotate(-8deg);animation-delay:-4.2s}
.pap-education-float--bottom-left{bottom:clamp(1rem,3vw,3rem);left:clamp(.5rem,2.2vw,2.5rem);transform:rotate(9deg);animation-delay:-5.1s}
.pap-education-float--bottom-right{right:clamp(.5rem,2.2vw,2.5rem);bottom:clamp(1rem,3vw,3rem);transform:rotate(-10deg);animation-delay:-3.3s}
@keyframes pap-education-float-soft{
  0%,100%{translate:0 0}
  50%{translate:0 -.65rem}
}
@media (max-width:1024px){
  .pap-education-float{opacity:.48}
}
@media (max-width:767px){
  .pap-education-float{
    width:2.25rem;
    height:2.25rem;
    opacity:.38;
    animation-duration:9s;
  }
  .pap-education-float--desktop{display:none}
  .pap-education-float--top-left,
  .pap-education-float--mid-left,
  .pap-education-float--bottom-left{left:.35rem}
  .pap-education-float--top-right,
  .pap-education-float--bottom-right{right:.35rem}
}
@media (prefers-reduced-motion:reduce){
  .pap-education-float{
    animation:none;
    will-change:auto;
  }
}

/* Página Estrutura — tour visual da escola */
.pap-structure-page{
  --pap-structure-photo-height:clamp(16rem,28vw,30rem);
}
.pap-structure-section{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}
.pap-structure-section>.e-con-inner{
  position:relative;
  z-index:2;
}
.pap-structure-readable{
  width:min(100%,72ch);
}
.pap-structure-hero{
  min-height:min(820px,88vh);
}
.pap-structure-hero-copy{
  flex:1 1 520px;
  min-width:0;
}
.pap-structure-hero-media{
  flex:1 1 500px;
  min-width:0;
}
.pap-structure-photo,
.pap-structure-photo .elementor-widget-container{
  width:100%;
  min-width:0;
}
.pap-structure-photo img{
  display:block;
  width:100%;
  height:var(--pap-structure-photo-height);
  object-fit:cover;
  object-position:center;
  border:1px solid var(--pap-border-soft);
  border-radius:var(--pap-radius-lg,24px);
  box-shadow:var(--pap-shadow-soft);
}
.pap-structure-photo--hero img{
  aspect-ratio:4/3;
  height:auto;
  max-height:640px;
}
.pap-structure-photo--wide img{
  aspect-ratio:16/9;
  height:auto;
}
.pap-structure-photo--card img{
  aspect-ratio:4/3;
  height:auto;
}
.pap-structure-media-carousel{
  --pap-carousel-height:440px;
  overflow:hidden;
  height:var(--pap-carousel-height);
  aspect-ratio:4/5;
  border:1px solid var(--pap-border-soft);
  border-radius:var(--pap-radius-lg,24px);
  box-shadow:var(--pap-shadow-soft);
}
.pap-structure-photo--hero.pap-structure-media-carousel{
  --pap-carousel-height:625px;
}
.pap-structure-photo--wide.pap-structure-media-carousel{
  --pap-carousel-height:600px;
}
.pap-structure-media-carousel .elementor-widget-container,
.pap-structure-media-carousel .elementor-swiper,
.pap-structure-media-carousel .swiper,
.pap-structure-media-carousel .swiper-wrapper,
.pap-structure-media-carousel .swiper-slide{
  width:100%;
  height:100%;
  min-width:0;
}
.pap-structure-media-carousel .elementor-carousel-image,
.pap-structure-media-carousel .swiper-slide-bg{
  width:100%;
  height:100%;
  min-height:0;
  aspect-ratio:4/5;
  background-position:center;
  background-repeat:no-repeat;
  background-size:cover;
}
.pap-structure-photo--hero .elementor-carousel-image,
.pap-structure-photo--hero .swiper-slide-bg,
.pap-structure-photo--card .elementor-carousel-image,
.pap-structure-photo--card .swiper-slide-bg{
  aspect-ratio:4/5;
  height:auto;
}
.pap-structure-photo--wide .elementor-carousel-image,
.pap-structure-photo--wide .swiper-slide-bg{
  aspect-ratio:4/5;
  height:auto;
}
.pap-structure-media-carousel .elementor-swiper-button{
  width:2.75rem;
  height:2.75rem;
  border-radius:999px;
  background:var(--e-global-color-pap_navy);
  color:var(--e-global-color-pap_white);
  box-shadow:var(--pap-shadow-soft);
}
.pap-structure-media-carousel .elementor-swiper-button:focus-visible{
  outline:3px solid var(--e-global-color-pap_green);
  outline-offset:3px;
}
.pap-structure-media-carousel .swiper-pagination{
  padding:.35rem .6rem;
}
.pap-structure-quick-nav>.e-con-inner,
.pap-structure-grid>.e-con-inner,
.pap-structure-feature-grid>.e-con-inner{
  display:grid;
  gap:clamp(1rem,2vw,1.75rem);
  align-items:stretch;
}
.pap-structure-quick-nav>.e-con-inner{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));
}
.pap-structure-grid>.e-con-inner{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.pap-structure-feature-grid>.e-con-inner{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));
}
.pap-structure-nav-card,
.pap-structure-space-card,
.pap-structure-feature-card{
  min-width:0;
  height:100%;
  border:1px solid var(--pap-border-soft);
  border-radius:var(--pap-radius-md,20px);
  background:var(--pap-color-white);
  box-shadow:var(--pap-shadow-soft);
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.pap-structure-nav-card .elementor-widget-container,
.pap-structure-feature-card .elementor-widget-container{
  height:100%;
  padding:clamp(1rem,1.7vw,1.5rem);
}
.pap-structure-space-card{
  overflow:hidden;
}
.pap-structure-space-card>.e-con-inner{
  height:100%;
}
.pap-structure-card-copy{
  padding:clamp(1rem,1.8vw,1.5rem);
}
.pap-structure-nav-card .elementor-icon-box-wrapper,
.pap-structure-feature-card .elementor-icon-box-wrapper{
  height:100%;
}
.pap-structure-nav-card .elementor-icon-box-icon,
.pap-structure-feature-card .elementor-icon-box-icon{
  margin-bottom:.75rem;
}
.pap-structure-nav-card .elementor-icon,
.pap-structure-feature-card .elementor-icon{
  display:inline-flex;
  width:3.25rem;
  height:3.25rem;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:var(--pap-color-pastel-blue);
}
.pap-structure-nav-card .elementor-icon svg,
.pap-structure-feature-card .elementor-icon svg{
  width:1.35rem;
  height:1.35rem;
}
.pap-structure-nav-card a{
  text-decoration:none;
}
.pap-structure-nav-card:hover,
.pap-structure-space-card:hover,
.pap-structure-feature-card:hover{
  transform:translateY(-4px);
  border-color:rgba(76,131,213,.32);
  box-shadow:var(--pap-shadow-hover);
}
.pap-structure-nav-card:focus-within,
.pap-structure-space-card:focus-within,
.pap-structure-feature-card:focus-within{
  outline:3px solid rgba(254,145,2,.55);
  outline-offset:3px;
}
.pap-structure-gallery{
  overflow:hidden;
  border-radius:var(--pap-radius-lg,24px);
}
.pap-structure-gallery .swiper,
.pap-structure-gallery .swiper-container{
  overflow:visible;
}
.pap-structure-gallery .swiper-slide{
  height:auto;
}
.pap-structure-gallery img{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:var(--pap-radius-md,20px);
}
.pap-structure-gallery .elementor-swiper-button{
  width:3rem;
  height:3rem;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:var(--pap-color-white);
  color:var(--pap-color-navy);
  box-shadow:var(--pap-shadow-soft);
}
.pap-structure-gallery .swiper-pagination-bullet{
  width:.75rem;
  height:.75rem;
  background:var(--pap-color-blue);
}
.pap-structure-safety-list .elementor-icon-list-item{
  align-items:flex-start;
  gap:.45rem;
}
.pap-structure-safety-list .elementor-icon-list-icon{
  margin-top:.2rem;
}
.pap-structure-quote{
  border-left:5px solid var(--pap-color-yellow);
  border-radius:0 var(--pap-radius-md,20px) var(--pap-radius-md,20px) 0;
  background:var(--pap-color-pastel-yellow);
  padding:clamp(1rem,2vw,1.75rem);
}
.pap-structure-faq .elementor-accordion-item{
  margin-bottom:.75rem;
  overflow:hidden;
  border:1px solid var(--pap-border-soft);
  border-radius:var(--pap-radius-sm,14px);
  background:var(--pap-color-white);
}
.pap-structure-faq .elementor-tab-title{
  min-height:3.5rem;
  display:flex;
  align-items:center;
}
.pap-structure-faq .elementor-tab-content{
  border-top:1px solid var(--pap-border-soft);
}

@media (min-width:768px) and (max-width:1199px){
  .pap-structure-media-carousel{
    --pap-carousel-height:430px;
  }
  .pap-structure-photo--hero.pap-structure-media-carousel{
    --pap-carousel-height:700px;
  }
  .pap-structure-photo--wide.pap-structure-media-carousel{
    --pap-carousel-height:650px;
  }
  .pap-structure-grid>.e-con-inner{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:1024px){
  .pap-structure-hero{
    min-height:0;
  }
}
@media (max-width:767px){
  .pap-structure-page{
    --pap-structure-photo-height:auto;
  }
  .pap-structure-grid>.e-con-inner,
  .pap-structure-feature-grid>.e-con-inner{
    grid-template-columns:minmax(0,1fr);
  }
  .pap-structure-photo img,
  .pap-structure-photo--hero img,
  .pap-structure-photo--wide img,
  .pap-structure-photo--card img{
    height:auto;
    aspect-ratio:4/3;
    border-radius:var(--pap-radius-md,20px);
  }
  .pap-structure-media-carousel{
    --pap-carousel-height:auto;
    width:100%;
    height:auto;
    aspect-ratio:4/5;
    border-radius:var(--pap-radius-md,20px);
  }
  .pap-structure-photo--hero.pap-structure-media-carousel,
  .pap-structure-photo--wide.pap-structure-media-carousel{
    --pap-carousel-height:auto;
  }
  .pap-structure-media-carousel .elementor-carousel-image,
  .pap-structure-media-carousel .swiper-slide-bg,
  .pap-structure-photo--hero .elementor-carousel-image,
  .pap-structure-photo--hero .swiper-slide-bg,
  .pap-structure-photo--wide .elementor-carousel-image,
  .pap-structure-photo--wide .swiper-slide-bg,
  .pap-structure-photo--card .elementor-carousel-image,
  .pap-structure-photo--card .swiper-slide-bg{
    height:100%;
    min-height:0;
    aspect-ratio:4/5;
  }
  .pap-structure-media-carousel .elementor-swiper-button{
    width:2.75rem;
    height:2.75rem;
  }
  .pap-structure-gallery .elementor-swiper-button{
    width:2.75rem;
    height:2.75rem;
  }
  .pap-structure-nav-card:hover,
  .pap-structure-space-card:hover,
  .pap-structure-feature-card:hover{
    transform:none;
  }
}
@media (prefers-reduced-motion:reduce){
  .pap-structure-nav-card,
  .pap-structure-space-card,
  .pap-structure-feature-card,
  .pap-structure-media-carousel .swiper-wrapper{
    transition:none;
  }
  .pap-structure-nav-card:hover,
  .pap-structure-space-card:hover,
  .pap-structure-feature-card:hover{
    transform:none;
  }
}/* End custom CSS */