/* ==============================================================================
   BLUESKY - CSS UNIFICADO (homepage + páginas interiores)
   Substitui TODOS os <link> do FO: assets (fontawesome, tiny-slider, custom-select),
              variables*.css, fonts.css, estilos_b/c.css, hp/hp_c.css, hp/template.css, hp/hp.css, hp/hp_faqs.css, estilos.css, normalize.css,
              template.css, template-modules.css, listings.css
   Templates B/C: já não são ficheiros à parte. As regras estão no fim deste ficheiro presas
              a classes no <html>:  vars_b / vars_c  (fonte)  e  tpl-b / tpl-c  (estilos).
              -> <html lang="pt" class="vars<%=TemplatesVariables%> tpl-<%=lcase(template_micro & "")%>">

   Ordem (preserva a cascata que cada contexto já tinha):
     0. VENDORS + VARIÁVEIS + FONTES
     1. BLOCOS HP        (hp/hp.css)
     2. BASE             (estilos.css)
     3. NORMALIZE        (normalize.css - já era carregado depois do estilos.css)
     4. TIPOGRAFIA       (template.css)
     5. BLOCOS TEMPLATE  (template-modules.css)
     6. LISTAGENS        (listings.css)
     7. AJUSTES NOVOS    (regras que não existiam; só espaçamentos de contexto)
     8. TEMPLATE B / 9. TEMPLATE C

   Convenções usadas para os blocos ficarem iguais nos dois contextos:
     :is(.template, .index :where(main))
         = "zona de módulos": div.template nas interiores, <main> na homepage.
           Tem a mesma especificidade de ".template".
     :not(:where(section:not(.content,.related-section)) *)
         = "fora dos blocos ex-homepage" (que são sempre <section>). Impede a tipografia
           e as regras genéricas do template de entrarem nos banners, passos, testemunhos...
     :where(section:not(.content,.related-section))
         = "dentro de um bloco ex-homepage".
   ============================================================================== */

/* ==============================================================================
   0.1 VENDOR - Font Awesome
   origem: assets/fontawesome/css/all.min.css (urls das fontes passados a absolutos)
   ============================================================================== */

/*!
 * Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 * Copyright 2024 Fonticons, Inc.
 */
.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-regular,.fa-solid,.fab,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-brands:before,.fa-regular:before,.fa-solid:before,.fa:before,.fab:before,.far:before,.fas:before{content:var(--fa)}.fa-classic,.fa-regular,.fa-solid,.far,.fas{font-family:"Font Awesome 6 Free"}.fa-brands,.fab{font-family:"Font Awesome 6 Brands"}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0deg)}}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}

.fa-0{--fa:"\30"}.fa-1{--fa:"\31"}.fa-2{--fa:"\32"}.fa-3{--fa:"\33"}.fa-4{--fa:"\34"}.fa-5{--fa:"\35"}.fa-6{--fa:"\36"}.fa-7{--fa:"\37"}.fa-8{--fa:"\38"}.fa-9{--fa:"\39"}.fa-fill-drip{--fa:"\f576"}.fa-arrows-to-circle{--fa:"\e4bd"}.fa-chevron-circle-right,.fa-circle-chevron-right{--fa:"\f138"}.fa-at{--fa:"\40"}.fa-trash-alt,.fa-trash-can{--fa:"\f2ed"}.fa-text-height{--fa:"\f034"}.fa-user-times,.fa-user-xmark{--fa:"\f235"}.fa-stethoscope{--fa:"\f0f1"}.fa-comment-alt,.fa-message{--fa:"\f27a"}.fa-info{--fa:"\f129"}.fa-compress-alt,.fa-down-left-and-up-right-to-center{--fa:"\f422"}.fa-explosion{--fa:"\e4e9"}.fa-file-alt,.fa-file-lines,.fa-file-text{--fa:"\f15c"}.fa-wave-square{--fa:"\f83e"}.fa-ring{--fa:"\f70b"}.fa-building-un{--fa:"\e4d9"}.fa-dice-three{--fa:"\f527"}.fa-calendar-alt,.fa-calendar-days{--fa:"\f073"}.fa-anchor-circle-check{--fa:"\e4aa"}.fa-building-circle-arrow-right{--fa:"\e4d1"}.fa-volleyball,.fa-volleyball-ball{--fa:"\f45f"}.fa-arrows-up-to-line{--fa:"\e4c2"}.fa-sort-desc,.fa-sort-down{--fa:"\f0dd"}.fa-circle-minus,.fa-minus-circle{--fa:"\f056"}.fa-door-open{--fa:"\f52b"}.fa-right-from-bracket,.fa-sign-out-alt{--fa:"\f2f5"}.fa-atom{--fa:"\f5d2"}.fa-soap{--fa:"\e06e"}.fa-heart-music-camera-bolt,.fa-icons{--fa:"\f86d"}.fa-microphone-alt-slash,.fa-microphone-lines-slash{--fa:"\f539"}.fa-bridge-circle-check{--fa:"\e4c9"}.fa-pump-medical{--fa:"\e06a"}.fa-fingerprint{--fa:"\f577"}.fa-hand-point-right{--fa:"\f0a4"}.fa-magnifying-glass-location,.fa-search-location{--fa:"\f689"}.fa-forward-step,.fa-step-forward{--fa:"\f051"}.fa-face-smile-beam,.fa-smile-beam{--fa:"\f5b8"}.fa-flag-checkered{--fa:"\f11e"}.fa-football,.fa-football-ball{--fa:"\f44e"}.fa-school-circle-exclamation{--fa:"\e56c"}.fa-crop{--fa:"\f125"}.fa-angle-double-down,.fa-angles-down{--fa:"\f103"}.fa-users-rectangle{--fa:"\e594"}.fa-people-roof{--fa:"\e537"}.fa-people-line{--fa:"\e534"}.fa-beer,.fa-beer-mug-empty{--fa:"\f0fc"}.fa-diagram-predecessor{--fa:"\e477"}.fa-arrow-up-long,.fa-long-arrow-up{--fa:"\f176"}.fa-burn,.fa-fire-flame-simple{--fa:"\f46a"}.fa-male,.fa-person{--fa:"\f183"}.fa-laptop{--fa:"\f109"}.fa-file-csv{--fa:"\f6dd"}.fa-menorah{--fa:"\f676"}.fa-truck-plane{--fa:"\e58f"}.fa-record-vinyl{--fa:"\f8d9"}.fa-face-grin-stars,.fa-grin-stars{--fa:"\f587"}.fa-bong{--fa:"\f55c"}.fa-pastafarianism,.fa-spaghetti-monster-flying{--fa:"\f67b"}.fa-arrow-down-up-across-line{--fa:"\e4af"}.fa-spoon,.fa-utensil-spoon{--fa:"\f2e5"}.fa-jar-wheat{--fa:"\e517"}.fa-envelopes-bulk,.fa-mail-bulk{--fa:"\f674"}.fa-file-circle-exclamation{--fa:"\e4eb"}.fa-circle-h,.fa-hospital-symbol{--fa:"\f47e"}.fa-pager{--fa:"\f815"}.fa-address-book,.fa-contact-book{--fa:"\f2b9"}.fa-strikethrough{--fa:"\f0cc"}.fa-k{--fa:"\4b"}.fa-landmark-flag{--fa:"\e51c"}.fa-pencil,.fa-pencil-alt{--fa:"\f303"}.fa-backward{--fa:"\f04a"}.fa-caret-right{--fa:"\f0da"}.fa-comments{--fa:"\f086"}.fa-file-clipboard,.fa-paste{--fa:"\f0ea"}.fa-code-pull-request{--fa:"\e13c"}.fa-clipboard-list{--fa:"\f46d"}.fa-truck-loading,.fa-truck-ramp-box{--fa:"\f4de"}.fa-user-check{--fa:"\f4fc"}.fa-vial-virus{--fa:"\e597"}.fa-sheet-plastic{--fa:"\e571"}.fa-blog{--fa:"\f781"}.fa-user-ninja{--fa:"\f504"}.fa-person-arrow-up-from-line{--fa:"\e539"}.fa-scroll-torah,.fa-torah{--fa:"\f6a0"}.fa-broom-ball,.fa-quidditch,.fa-quidditch-broom-ball{--fa:"\f458"}.fa-toggle-off{--fa:"\f204"}.fa-archive,.fa-box-archive{--fa:"\f187"}.fa-person-drowning{--fa:"\e545"}.fa-arrow-down-9-1,.fa-sort-numeric-desc,.fa-sort-numeric-down-alt{--fa:"\f886"}.fa-face-grin-tongue-squint,.fa-grin-tongue-squint{--fa:"\f58a"}.fa-spray-can{--fa:"\f5bd"}.fa-truck-monster{--fa:"\f63b"}.fa-w{--fa:"\57"}.fa-earth-africa,.fa-globe-africa{--fa:"\f57c"}.fa-rainbow{--fa:"\f75b"}.fa-circle-notch{--fa:"\f1ce"}.fa-tablet-alt,.fa-tablet-screen-button{--fa:"\f3fa"}.fa-paw{--fa:"\f1b0"}.fa-cloud{--fa:"\f0c2"}.fa-trowel-bricks{--fa:"\e58a"}.fa-face-flushed,.fa-flushed{--fa:"\f579"}.fa-hospital-user{--fa:"\f80d"}.fa-tent-arrow-left-right{--fa:"\e57f"}.fa-gavel,.fa-legal{--fa:"\f0e3"}.fa-binoculars{--fa:"\f1e5"}.fa-microphone-slash{--fa:"\f131"}.fa-box-tissue{--fa:"\e05b"}.fa-motorcycle{--fa:"\f21c"}.fa-bell-concierge,.fa-concierge-bell{--fa:"\f562"}.fa-pen-ruler,.fa-pencil-ruler{--fa:"\f5ae"}.fa-people-arrows,.fa-people-arrows-left-right{--fa:"\e068"}.fa-mars-and-venus-burst{--fa:"\e523"}.fa-caret-square-right,.fa-square-caret-right{--fa:"\f152"}.fa-cut,.fa-scissors{--fa:"\f0c4"}.fa-sun-plant-wilt{--fa:"\e57a"}.fa-toilets-portable{--fa:"\e584"}.fa-hockey-puck{--fa:"\f453"}.fa-table{--fa:"\f0ce"}.fa-magnifying-glass-arrow-right{--fa:"\e521"}.fa-digital-tachograph,.fa-tachograph-digital{--fa:"\f566"}.fa-users-slash{--fa:"\e073"}.fa-clover{--fa:"\e139"}.fa-mail-reply,.fa-reply{--fa:"\f3e5"}.fa-star-and-crescent{--fa:"\f699"}.fa-house-fire{--fa:"\e50c"}.fa-minus-square,.fa-square-minus{--fa:"\f146"}.fa-helicopter{--fa:"\f533"}.fa-compass{--fa:"\f14e"}.fa-caret-square-down,.fa-square-caret-down{--fa:"\f150"}.fa-file-circle-question{--fa:"\e4ef"}.fa-laptop-code{--fa:"\f5fc"}.fa-swatchbook{--fa:"\f5c3"}.fa-prescription-bottle{--fa:"\f485"}.fa-bars,.fa-navicon{--fa:"\f0c9"}.fa-people-group{--fa:"\e533"}.fa-hourglass-3,.fa-hourglass-end{--fa:"\f253"}.fa-heart-broken,.fa-heart-crack{--fa:"\f7a9"}.fa-external-link-square-alt,.fa-square-up-right{--fa:"\f360"}.fa-face-kiss-beam,.fa-kiss-beam{--fa:"\f597"}.fa-film{--fa:"\f008"}.fa-ruler-horizontal{--fa:"\f547"}.fa-people-robbery{--fa:"\e536"}.fa-lightbulb{--fa:"\f0eb"}.fa-caret-left{--fa:"\f0d9"}.fa-circle-exclamation,.fa-exclamation-circle{--fa:"\f06a"}.fa-school-circle-xmark{--fa:"\e56d"}.fa-arrow-right-from-bracket,.fa-sign-out{--fa:"\f08b"}.fa-chevron-circle-down,.fa-circle-chevron-down{--fa:"\f13a"}.fa-unlock-alt,.fa-unlock-keyhole{--fa:"\f13e"}.fa-cloud-showers-heavy{--fa:"\f740"}.fa-headphones-alt,.fa-headphones-simple{--fa:"\f58f"}.fa-sitemap{--fa:"\f0e8"}.fa-circle-dollar-to-slot,.fa-donate{--fa:"\f4b9"}.fa-memory{--fa:"\f538"}.fa-road-spikes{--fa:"\e568"}.fa-fire-burner{--fa:"\e4f1"}.fa-flag{--fa:"\f024"}.fa-hanukiah{--fa:"\f6e6"}.fa-feather{--fa:"\f52d"}.fa-volume-down,.fa-volume-low{--fa:"\f027"}.fa-comment-slash{--fa:"\f4b3"}.fa-cloud-sun-rain{--fa:"\f743"}.fa-compress{--fa:"\f066"}.fa-wheat-alt,.fa-wheat-awn{--fa:"\e2cd"}.fa-ankh{--fa:"\f644"}.fa-hands-holding-child{--fa:"\e4fa"}.fa-asterisk{--fa:"\2a"}.fa-check-square,.fa-square-check{--fa:"\f14a"}.fa-peseta-sign{--fa:"\e221"}.fa-header,.fa-heading{--fa:"\f1dc"}.fa-ghost{--fa:"\f6e2"}.fa-list,.fa-list-squares{--fa:"\f03a"}.fa-phone-square-alt,.fa-square-phone-flip{--fa:"\f87b"}.fa-cart-plus{--fa:"\f217"}.fa-gamepad{--fa:"\f11b"}.fa-circle-dot,.fa-dot-circle{--fa:"\f192"}.fa-dizzy,.fa-face-dizzy{--fa:"\f567"}.fa-egg{--fa:"\f7fb"}.fa-house-medical-circle-xmark{--fa:"\e513"}.fa-campground{--fa:"\f6bb"}.fa-folder-plus{--fa:"\f65e"}.fa-futbol,.fa-futbol-ball,.fa-soccer-ball{--fa:"\f1e3"}.fa-paint-brush,.fa-paintbrush{--fa:"\f1fc"}.fa-lock{--fa:"\f023"}.fa-gas-pump{--fa:"\f52f"}.fa-hot-tub,.fa-hot-tub-person{--fa:"\f593"}.fa-map-location,.fa-map-marked{--fa:"\f59f"}.fa-house-flood-water{--fa:"\e50e"}.fa-tree{--fa:"\f1bb"}.fa-bridge-lock{--fa:"\e4cc"}.fa-sack-dollar{--fa:"\f81d"}.fa-edit,.fa-pen-to-square{--fa:"\f044"}.fa-car-side{--fa:"\f5e4"}.fa-share-alt,.fa-share-nodes{--fa:"\f1e0"}.fa-heart-circle-minus{--fa:"\e4ff"}.fa-hourglass-2,.fa-hourglass-half{--fa:"\f252"}.fa-microscope{--fa:"\f610"}.fa-sink{--fa:"\e06d"}.fa-bag-shopping,.fa-shopping-bag{--fa:"\f290"}.fa-arrow-down-z-a,.fa-sort-alpha-desc,.fa-sort-alpha-down-alt{--fa:"\f881"}.fa-mitten{--fa:"\f7b5"}.fa-person-rays{--fa:"\e54d"}.fa-users{--fa:"\f0c0"}.fa-eye-slash{--fa:"\f070"}.fa-flask-vial{--fa:"\e4f3"}.fa-hand,.fa-hand-paper{--fa:"\f256"}.fa-om{--fa:"\f679"}.fa-worm{--fa:"\e599"}.fa-house-circle-xmark{--fa:"\e50b"}.fa-plug{--fa:"\f1e6"}.fa-chevron-up{--fa:"\f077"}.fa-hand-spock{--fa:"\f259"}.fa-stopwatch{--fa:"\f2f2"}.fa-face-kiss,.fa-kiss{--fa:"\f596"}.fa-bridge-circle-xmark{--fa:"\e4cb"}.fa-face-grin-tongue,.fa-grin-tongue{--fa:"\f589"}.fa-chess-bishop{--fa:"\f43a"}.fa-face-grin-wink,.fa-grin-wink{--fa:"\f58c"}.fa-deaf,.fa-deafness,.fa-ear-deaf,.fa-hard-of-hearing{--fa:"\f2a4"}.fa-road-circle-check{--fa:"\e564"}.fa-dice-five{--fa:"\f523"}.fa-rss-square,.fa-square-rss{--fa:"\f143"}.fa-land-mine-on{--fa:"\e51b"}.fa-i-cursor{--fa:"\f246"}.fa-stamp{--fa:"\f5bf"}.fa-stairs{--fa:"\e289"}.fa-i{--fa:"\49"}.fa-hryvnia,.fa-hryvnia-sign{--fa:"\f6f2"}.fa-pills{--fa:"\f484"}.fa-face-grin-wide,.fa-grin-alt{--fa:"\f581"}.fa-tooth{--fa:"\f5c9"}.fa-v{--fa:"\56"}.fa-bangladeshi-taka-sign{--fa:"\e2e6"}.fa-bicycle{--fa:"\f206"}.fa-rod-asclepius,.fa-rod-snake,.fa-staff-aesculapius,.fa-staff-snake{--fa:"\e579"}.fa-head-side-cough-slash{--fa:"\e062"}.fa-ambulance,.fa-truck-medical{--fa:"\f0f9"}.fa-wheat-awn-circle-exclamation{--fa:"\e598"}.fa-snowman{--fa:"\f7d0"}.fa-mortar-pestle{--fa:"\f5a7"}.fa-road-barrier{--fa:"\e562"}.fa-school{--fa:"\f549"}.fa-igloo{--fa:"\f7ae"}.fa-joint{--fa:"\f595"}.fa-angle-right{--fa:"\f105"}.fa-horse{--fa:"\f6f0"}.fa-q{--fa:"\51"}.fa-g{--fa:"\47"}.fa-notes-medical{--fa:"\f481"}.fa-temperature-2,.fa-temperature-half,.fa-thermometer-2,.fa-thermometer-half{--fa:"\f2c9"}.fa-dong-sign{--fa:"\e169"}.fa-capsules{--fa:"\f46b"}.fa-poo-bolt,.fa-poo-storm{--fa:"\f75a"}.fa-face-frown-open,.fa-frown-open{--fa:"\f57a"}.fa-hand-point-up{--fa:"\f0a6"}.fa-money-bill{--fa:"\f0d6"}.fa-bookmark{--fa:"\f02e"}.fa-align-justify{--fa:"\f039"}.fa-umbrella-beach{--fa:"\f5ca"}.fa-helmet-un{--fa:"\e503"}.fa-bullseye{--fa:"\f140"}.fa-bacon{--fa:"\f7e5"}.fa-hand-point-down{--fa:"\f0a7"}.fa-arrow-up-from-bracket{--fa:"\e09a"}.fa-folder,.fa-folder-blank{--fa:"\f07b"}.fa-file-medical-alt,.fa-file-waveform{--fa:"\f478"}.fa-radiation{--fa:"\f7b9"}.fa-chart-simple{--fa:"\e473"}.fa-mars-stroke{--fa:"\f229"}.fa-vial{--fa:"\f492"}.fa-dashboard,.fa-gauge,.fa-gauge-med,.fa-tachometer-alt-average{--fa:"\f624"}.fa-magic-wand-sparkles,.fa-wand-magic-sparkles{--fa:"\e2ca"}.fa-e{--fa:"\45"}.fa-pen-alt,.fa-pen-clip{--fa:"\f305"}.fa-bridge-circle-exclamation{--fa:"\e4ca"}.fa-user{--fa:"\f007"}.fa-school-circle-check{--fa:"\e56b"}.fa-dumpster{--fa:"\f793"}.fa-shuttle-van,.fa-van-shuttle{--fa:"\f5b6"}.fa-building-user{--fa:"\e4da"}.fa-caret-square-left,.fa-square-caret-left{--fa:"\f191"}.fa-highlighter{--fa:"\f591"}.fa-key{--fa:"\f084"}.fa-bullhorn{--fa:"\f0a1"}.fa-globe{--fa:"\f0ac"}.fa-synagogue{--fa:"\f69b"}.fa-person-half-dress{--fa:"\e548"}.fa-road-bridge{--fa:"\e563"}.fa-location-arrow{--fa:"\f124"}.fa-c{--fa:"\43"}.fa-tablet-button{--fa:"\f10a"}.fa-building-lock{--fa:"\e4d6"}.fa-pizza-slice{--fa:"\f818"}.fa-money-bill-wave{--fa:"\f53a"}.fa-area-chart,.fa-chart-area{--fa:"\f1fe"}.fa-house-flag{--fa:"\e50d"}.fa-person-circle-minus{--fa:"\e540"}.fa-ban,.fa-cancel{--fa:"\f05e"}.fa-camera-rotate{--fa:"\e0d8"}.fa-air-freshener,.fa-spray-can-sparkles{--fa:"\f5d0"}.fa-star{--fa:"\f005"}.fa-repeat{--fa:"\f363"}.fa-cross{--fa:"\f654"}.fa-box{--fa:"\f466"}.fa-venus-mars{--fa:"\f228"}.fa-arrow-pointer,.fa-mouse-pointer{--fa:"\f245"}.fa-expand-arrows-alt,.fa-maximize{--fa:"\f31e"}.fa-charging-station{--fa:"\f5e7"}.fa-shapes,.fa-triangle-circle-square{--fa:"\f61f"}.fa-random,.fa-shuffle{--fa:"\f074"}.fa-person-running,.fa-running{--fa:"\f70c"}.fa-mobile-retro{--fa:"\e527"}.fa-grip-lines-vertical{--fa:"\f7a5"}.fa-spider{--fa:"\f717"}.fa-hands-bound{--fa:"\e4f9"}.fa-file-invoice-dollar{--fa:"\f571"}.fa-plane-circle-exclamation{--fa:"\e556"}.fa-x-ray{--fa:"\f497"}.fa-spell-check{--fa:"\f891"}.fa-slash{--fa:"\f715"}.fa-computer-mouse,.fa-mouse{--fa:"\f8cc"}.fa-arrow-right-to-bracket,.fa-sign-in{--fa:"\f090"}.fa-shop-slash,.fa-store-alt-slash{--fa:"\e070"}.fa-server{--fa:"\f233"}.fa-virus-covid-slash{--fa:"\e4a9"}.fa-shop-lock{--fa:"\e4a5"}.fa-hourglass-1,.fa-hourglass-start{--fa:"\f251"}.fa-blender-phone{--fa:"\f6b6"}.fa-building-wheat{--fa:"\e4db"}.fa-person-breastfeeding{--fa:"\e53a"}.fa-right-to-bracket,.fa-sign-in-alt{--fa:"\f2f6"}.fa-venus{--fa:"\f221"}.fa-passport{--fa:"\f5ab"}.fa-thumb-tack-slash,.fa-thumbtack-slash{--fa:"\e68f"}.fa-heart-pulse,.fa-heartbeat{--fa:"\f21e"}.fa-people-carry,.fa-people-carry-box{--fa:"\f4ce"}.fa-temperature-high{--fa:"\f769"}.fa-microchip{--fa:"\f2db"}.fa-crown{--fa:"\f521"}.fa-weight-hanging{--fa:"\f5cd"}.fa-xmarks-lines{--fa:"\e59a"}.fa-file-prescription{--fa:"\f572"}.fa-weight,.fa-weight-scale{--fa:"\f496"}.fa-user-friends,.fa-user-group{--fa:"\f500"}.fa-arrow-up-a-z,.fa-sort-alpha-up{--fa:"\f15e"}.fa-chess-knight{--fa:"\f441"}.fa-face-laugh-squint,.fa-laugh-squint{--fa:"\f59b"}.fa-wheelchair{--fa:"\f193"}.fa-arrow-circle-up,.fa-circle-arrow-up{--fa:"\f0aa"}.fa-toggle-on{--fa:"\f205"}.fa-person-walking,.fa-walking{--fa:"\f554"}.fa-l{--fa:"\4c"}.fa-fire{--fa:"\f06d"}.fa-bed-pulse,.fa-procedures{--fa:"\f487"}.fa-shuttle-space,.fa-space-shuttle{--fa:"\f197"}.fa-face-laugh,.fa-laugh{--fa:"\f599"}.fa-folder-open{--fa:"\f07c"}.fa-heart-circle-plus{--fa:"\e500"}.fa-code-fork{--fa:"\e13b"}.fa-city{--fa:"\f64f"}.fa-microphone-alt,.fa-microphone-lines{--fa:"\f3c9"}.fa-pepper-hot{--fa:"\f816"}.fa-unlock{--fa:"\f09c"}.fa-colon-sign{--fa:"\e140"}.fa-headset{--fa:"\f590"}.fa-store-slash{--fa:"\e071"}.fa-road-circle-xmark{--fa:"\e566"}.fa-user-minus{--fa:"\f503"}.fa-mars-stroke-up,.fa-mars-stroke-v{--fa:"\f22a"}.fa-champagne-glasses,.fa-glass-cheers{--fa:"\f79f"}.fa-clipboard{--fa:"\f328"}.fa-house-circle-exclamation{--fa:"\e50a"}.fa-file-arrow-up,.fa-file-upload{--fa:"\f574"}.fa-wifi,.fa-wifi-3,.fa-wifi-strong{--fa:"\f1eb"}.fa-bath,.fa-bathtub{--fa:"\f2cd"}.fa-underline{--fa:"\f0cd"}.fa-user-edit,.fa-user-pen{--fa:"\f4ff"}.fa-signature{--fa:"\f5b7"}.fa-stroopwafel{--fa:"\f551"}.fa-bold{--fa:"\f032"}.fa-anchor-lock{--fa:"\e4ad"}.fa-building-ngo{--fa:"\e4d7"}.fa-manat-sign{--fa:"\e1d5"}.fa-not-equal{--fa:"\f53e"}.fa-border-style,.fa-border-top-left{--fa:"\f853"}.fa-map-location-dot,.fa-map-marked-alt{--fa:"\f5a0"}.fa-jedi{--fa:"\f669"}.fa-poll,.fa-square-poll-vertical{--fa:"\f681"}.fa-mug-hot{--fa:"\f7b6"}.fa-battery-car,.fa-car-battery{--fa:"\f5df"}.fa-gift{--fa:"\f06b"}.fa-dice-two{--fa:"\f528"}.fa-chess-queen{--fa:"\f445"}.fa-glasses{--fa:"\f530"}.fa-chess-board{--fa:"\f43c"}.fa-building-circle-check{--fa:"\e4d2"}.fa-person-chalkboard{--fa:"\e53d"}.fa-mars-stroke-h,.fa-mars-stroke-right{--fa:"\f22b"}.fa-hand-back-fist,.fa-hand-rock{--fa:"\f255"}.fa-caret-square-up,.fa-square-caret-up{--fa:"\f151"}.fa-cloud-showers-water{--fa:"\e4e4"}.fa-bar-chart,.fa-chart-bar{--fa:"\f080"}.fa-hands-bubbles,.fa-hands-wash{--fa:"\e05e"}.fa-less-than-equal{--fa:"\f537"}.fa-train{--fa:"\f238"}.fa-eye-low-vision,.fa-low-vision{--fa:"\f2a8"}.fa-crow{--fa:"\f520"}.fa-sailboat{--fa:"\e445"}.fa-window-restore{--fa:"\f2d2"}.fa-plus-square,.fa-square-plus{--fa:"\f0fe"}.fa-torii-gate{--fa:"\f6a1"}.fa-frog{--fa:"\f52e"}.fa-bucket{--fa:"\e4cf"}.fa-image{--fa:"\f03e"}.fa-microphone{--fa:"\f130"}.fa-cow{--fa:"\f6c8"}.fa-caret-up{--fa:"\f0d8"}.fa-screwdriver{--fa:"\f54a"}.fa-folder-closed{--fa:"\e185"}.fa-house-tsunami{--fa:"\e515"}.fa-square-nfi{--fa:"\e576"}.fa-arrow-up-from-ground-water{--fa:"\e4b5"}.fa-glass-martini-alt,.fa-martini-glass{--fa:"\f57b"}.fa-square-binary{--fa:"\e69b"}.fa-rotate-back,.fa-rotate-backward,.fa-rotate-left,.fa-undo-alt{--fa:"\f2ea"}.fa-columns,.fa-table-columns{--fa:"\f0db"}.fa-lemon{--fa:"\f094"}.fa-head-side-mask{--fa:"\e063"}.fa-handshake{--fa:"\f2b5"}.fa-gem{--fa:"\f3a5"}.fa-dolly,.fa-dolly-box{--fa:"\f472"}.fa-smoking{--fa:"\f48d"}.fa-compress-arrows-alt,.fa-minimize{--fa:"\f78c"}.fa-monument{--fa:"\f5a6"}.fa-snowplow{--fa:"\f7d2"}.fa-angle-double-right,.fa-angles-right{--fa:"\f101"}.fa-cannabis{--fa:"\f55f"}.fa-circle-play,.fa-play-circle{--fa:"\f144"}.fa-tablets{--fa:"\f490"}.fa-ethernet{--fa:"\f796"}.fa-eur,.fa-euro,.fa-euro-sign{--fa:"\f153"}.fa-chair{--fa:"\f6c0"}.fa-check-circle,.fa-circle-check{--fa:"\f058"}.fa-circle-stop,.fa-stop-circle{--fa:"\f28d"}.fa-compass-drafting,.fa-drafting-compass{--fa:"\f568"}.fa-plate-wheat{--fa:"\e55a"}.fa-icicles{--fa:"\f7ad"}.fa-person-shelter{--fa:"\e54f"}.fa-neuter{--fa:"\f22c"}.fa-id-badge{--fa:"\f2c1"}.fa-marker{--fa:"\f5a1"}.fa-face-laugh-beam,.fa-laugh-beam{--fa:"\f59a"}.fa-helicopter-symbol{--fa:"\e502"}.fa-universal-access{--fa:"\f29a"}.fa-chevron-circle-up,.fa-circle-chevron-up{--fa:"\f139"}.fa-lari-sign{--fa:"\e1c8"}.fa-volcano{--fa:"\f770"}.fa-person-walking-dashed-line-arrow-right{--fa:"\e553"}.fa-gbp,.fa-pound-sign,.fa-sterling-sign{--fa:"\f154"}.fa-viruses{--fa:"\e076"}.fa-square-person-confined{--fa:"\e577"}.fa-user-tie{--fa:"\f508"}.fa-arrow-down-long,.fa-long-arrow-down{--fa:"\f175"}.fa-tent-arrow-down-to-line{--fa:"\e57e"}.fa-certificate{--fa:"\f0a3"}.fa-mail-reply-all,.fa-reply-all{--fa:"\f122"}.fa-suitcase{--fa:"\f0f2"}.fa-person-skating,.fa-skating{--fa:"\f7c5"}.fa-filter-circle-dollar,.fa-funnel-dollar{--fa:"\f662"}.fa-camera-retro{--fa:"\f083"}.fa-arrow-circle-down,.fa-circle-arrow-down{--fa:"\f0ab"}.fa-arrow-right-to-file,.fa-file-import{--fa:"\f56f"}.fa-external-link-square,.fa-square-arrow-up-right{--fa:"\f14c"}.fa-box-open{--fa:"\f49e"}.fa-scroll{--fa:"\f70e"}.fa-spa{--fa:"\f5bb"}.fa-location-pin-lock{--fa:"\e51f"}.fa-pause{--fa:"\f04c"}.fa-hill-avalanche{--fa:"\e507"}.fa-temperature-0,.fa-temperature-empty,.fa-thermometer-0,.fa-thermometer-empty{--fa:"\f2cb"}.fa-bomb{--fa:"\f1e2"}.fa-registered{--fa:"\f25d"}.fa-address-card,.fa-contact-card,.fa-vcard{--fa:"\f2bb"}.fa-balance-scale-right,.fa-scale-unbalanced-flip{--fa:"\f516"}.fa-subscript{--fa:"\f12c"}.fa-diamond-turn-right,.fa-directions{--fa:"\f5eb"}.fa-burst{--fa:"\e4dc"}.fa-house-laptop,.fa-laptop-house{--fa:"\e066"}.fa-face-tired,.fa-tired{--fa:"\f5c8"}.fa-money-bills{--fa:"\e1f3"}.fa-smog{--fa:"\f75f"}.fa-crutch{--fa:"\f7f7"}.fa-cloud-arrow-up,.fa-cloud-upload,.fa-cloud-upload-alt{--fa:"\f0ee"}.fa-palette{--fa:"\f53f"}.fa-arrows-turn-right{--fa:"\e4c0"}.fa-vest{--fa:"\e085"}.fa-ferry{--fa:"\e4ea"}.fa-arrows-down-to-people{--fa:"\e4b9"}.fa-seedling,.fa-sprout{--fa:"\f4d8"}.fa-arrows-alt-h,.fa-left-right{--fa:"\f337"}.fa-boxes-packing{--fa:"\e4c7"}.fa-arrow-circle-left,.fa-circle-arrow-left{--fa:"\f0a8"}.fa-group-arrows-rotate{--fa:"\e4f6"}.fa-bowl-food{--fa:"\e4c6"}.fa-candy-cane{--fa:"\f786"}.fa-arrow-down-wide-short,.fa-sort-amount-asc,.fa-sort-amount-down{--fa:"\f160"}.fa-cloud-bolt,.fa-thunderstorm{--fa:"\f76c"}.fa-remove-format,.fa-text-slash{--fa:"\f87d"}.fa-face-smile-wink,.fa-smile-wink{--fa:"\f4da"}.fa-file-word{--fa:"\f1c2"}.fa-file-powerpoint{--fa:"\f1c4"}.fa-arrows-h,.fa-arrows-left-right{--fa:"\f07e"}.fa-house-lock{--fa:"\e510"}.fa-cloud-arrow-down,.fa-cloud-download,.fa-cloud-download-alt{--fa:"\f0ed"}.fa-children{--fa:"\e4e1"}.fa-blackboard,.fa-chalkboard{--fa:"\f51b"}.fa-user-alt-slash,.fa-user-large-slash{--fa:"\f4fa"}.fa-envelope-open{--fa:"\f2b6"}.fa-handshake-alt-slash,.fa-handshake-simple-slash{--fa:"\e05f"}.fa-mattress-pillow{--fa:"\e525"}.fa-guarani-sign{--fa:"\e19a"}.fa-arrows-rotate,.fa-refresh,.fa-sync{--fa:"\f021"}.fa-fire-extinguisher{--fa:"\f134"}.fa-cruzeiro-sign{--fa:"\e152"}.fa-greater-than-equal{--fa:"\f532"}.fa-shield-alt,.fa-shield-halved{--fa:"\f3ed"}.fa-atlas,.fa-book-atlas{--fa:"\f558"}.fa-virus{--fa:"\e074"}.fa-envelope-circle-check{--fa:"\e4e8"}.fa-layer-group{--fa:"\f5fd"}.fa-arrows-to-dot{--fa:"\e4be"}.fa-archway{--fa:"\f557"}.fa-heart-circle-check{--fa:"\e4fd"}.fa-house-chimney-crack,.fa-house-damage{--fa:"\f6f1"}.fa-file-archive,.fa-file-zipper{--fa:"\f1c6"}.fa-square{--fa:"\f0c8"}.fa-glass-martini,.fa-martini-glass-empty{--fa:"\f000"}.fa-couch{--fa:"\f4b8"}.fa-cedi-sign{--fa:"\e0df"}.fa-italic{--fa:"\f033"}.fa-table-cells-column-lock{--fa:"\e678"}.fa-church{--fa:"\f51d"}.fa-comments-dollar{--fa:"\f653"}.fa-democrat{--fa:"\f747"}.fa-z{--fa:"\5a"}.fa-person-skiing,.fa-skiing{--fa:"\f7c9"}.fa-road-lock{--fa:"\e567"}.fa-a{--fa:"\41"}.fa-temperature-arrow-down,.fa-temperature-down{--fa:"\e03f"}.fa-feather-alt,.fa-feather-pointed{--fa:"\f56b"}.fa-p{--fa:"\50"}.fa-snowflake{--fa:"\f2dc"}.fa-newspaper{--fa:"\f1ea"}.fa-ad,.fa-rectangle-ad{--fa:"\f641"}.fa-arrow-circle-right,.fa-circle-arrow-right{--fa:"\f0a9"}.fa-filter-circle-xmark{--fa:"\e17b"}.fa-locust{--fa:"\e520"}.fa-sort,.fa-unsorted{--fa:"\f0dc"}.fa-list-1-2,.fa-list-numeric,.fa-list-ol{--fa:"\f0cb"}.fa-person-dress-burst{--fa:"\e544"}.fa-money-check-alt,.fa-money-check-dollar{--fa:"\f53d"}.fa-vector-square{--fa:"\f5cb"}.fa-bread-slice{--fa:"\f7ec"}.fa-language{--fa:"\f1ab"}.fa-face-kiss-wink-heart,.fa-kiss-wink-heart{--fa:"\f598"}.fa-filter{--fa:"\f0b0"}.fa-question{--fa:"\3f"}.fa-file-signature{--fa:"\f573"}.fa-arrows-alt,.fa-up-down-left-right{--fa:"\f0b2"}.fa-house-chimney-user{--fa:"\e065"}.fa-hand-holding-heart{--fa:"\f4be"}.fa-puzzle-piece{--fa:"\f12e"}.fa-money-check{--fa:"\f53c"}.fa-star-half-alt,.fa-star-half-stroke{--fa:"\f5c0"}.fa-code{--fa:"\f121"}.fa-glass-whiskey,.fa-whiskey-glass{--fa:"\f7a0"}.fa-building-circle-exclamation{--fa:"\e4d3"}.fa-magnifying-glass-chart{--fa:"\e522"}.fa-arrow-up-right-from-square,.fa-external-link{--fa:"\f08e"}.fa-cubes-stacked{--fa:"\e4e6"}.fa-krw,.fa-won,.fa-won-sign{--fa:"\f159"}.fa-virus-covid{--fa:"\e4a8"}.fa-austral-sign{--fa:"\e0a9"}.fa-f{--fa:"\46"}.fa-leaf{--fa:"\f06c"}.fa-road{--fa:"\f018"}.fa-cab,.fa-taxi{--fa:"\f1ba"}.fa-person-circle-plus{--fa:"\e541"}.fa-chart-pie,.fa-pie-chart{--fa:"\f200"}.fa-bolt-lightning{--fa:"\e0b7"}.fa-sack-xmark{--fa:"\e56a"}.fa-file-excel{--fa:"\f1c3"}.fa-file-contract{--fa:"\f56c"}.fa-fish-fins{--fa:"\e4f2"}.fa-building-flag{--fa:"\e4d5"}.fa-face-grin-beam,.fa-grin-beam{--fa:"\f582"}.fa-object-ungroup{--fa:"\f248"}.fa-poop{--fa:"\f619"}.fa-location-pin,.fa-map-marker{--fa:"\f041"}.fa-kaaba{--fa:"\f66b"}.fa-toilet-paper{--fa:"\f71e"}.fa-hard-hat,.fa-hat-hard,.fa-helmet-safety{--fa:"\f807"}.fa-eject{--fa:"\f052"}.fa-arrow-alt-circle-right,.fa-circle-right{--fa:"\f35a"}.fa-plane-circle-check{--fa:"\e555"}.fa-face-rolling-eyes,.fa-meh-rolling-eyes{--fa:"\f5a5"}.fa-object-group{--fa:"\f247"}.fa-chart-line,.fa-line-chart{--fa:"\f201"}.fa-mask-ventilator{--fa:"\e524"}.fa-arrow-right{--fa:"\f061"}.fa-map-signs,.fa-signs-post{--fa:"\f277"}.fa-cash-register{--fa:"\f788"}.fa-person-circle-question{--fa:"\e542"}.fa-h{--fa:"\48"}.fa-tarp{--fa:"\e57b"}.fa-screwdriver-wrench,.fa-tools{--fa:"\f7d9"}.fa-arrows-to-eye{--fa:"\e4bf"}.fa-plug-circle-bolt{--fa:"\e55b"}.fa-heart{--fa:"\f004"}.fa-mars-and-venus{--fa:"\f224"}.fa-home-user,.fa-house-user{--fa:"\e1b0"}.fa-dumpster-fire{--fa:"\f794"}.fa-house-crack{--fa:"\e3b1"}.fa-cocktail,.fa-martini-glass-citrus{--fa:"\f561"}.fa-face-surprise,.fa-surprise{--fa:"\f5c2"}.fa-bottle-water{--fa:"\e4c5"}.fa-circle-pause,.fa-pause-circle{--fa:"\f28b"}.fa-toilet-paper-slash{--fa:"\e072"}.fa-apple-alt,.fa-apple-whole{--fa:"\f5d1"}.fa-kitchen-set{--fa:"\e51a"}.fa-r{--fa:"\52"}.fa-temperature-1,.fa-temperature-quarter,.fa-thermometer-1,.fa-thermometer-quarter{--fa:"\f2ca"}.fa-cube{--fa:"\f1b2"}.fa-bitcoin-sign{--fa:"\e0b4"}.fa-shield-dog{--fa:"\e573"}.fa-solar-panel{--fa:"\f5ba"}.fa-lock-open{--fa:"\f3c1"}.fa-elevator{--fa:"\e16d"}.fa-money-bill-transfer{--fa:"\e528"}.fa-money-bill-trend-up{--fa:"\e529"}.fa-house-flood-water-circle-arrow-right{--fa:"\e50f"}.fa-poll-h,.fa-square-poll-horizontal{--fa:"\f682"}.fa-circle{--fa:"\f111"}.fa-backward-fast,.fa-fast-backward{--fa:"\f049"}.fa-recycle{--fa:"\f1b8"}.fa-user-astronaut{--fa:"\f4fb"}.fa-plane-slash{--fa:"\e069"}.fa-trademark{--fa:"\f25c"}.fa-basketball,.fa-basketball-ball{--fa:"\f434"}.fa-satellite-dish{--fa:"\f7c0"}.fa-arrow-alt-circle-up,.fa-circle-up{--fa:"\f35b"}.fa-mobile-alt,.fa-mobile-screen-button{--fa:"\f3cd"}.fa-volume-high,.fa-volume-up{--fa:"\f028"}.fa-users-rays{--fa:"\e593"}.fa-wallet{--fa:"\f555"}.fa-clipboard-check{--fa:"\f46c"}.fa-file-audio{--fa:"\f1c7"}.fa-burger,.fa-hamburger{--fa:"\f805"}.fa-wrench{--fa:"\f0ad"}.fa-bugs{--fa:"\e4d0"}.fa-rupee,.fa-rupee-sign{--fa:"\f156"}.fa-file-image{--fa:"\f1c5"}.fa-circle-question,.fa-question-circle{--fa:"\f059"}.fa-plane-departure{--fa:"\f5b0"}.fa-handshake-slash{--fa:"\e060"}.fa-book-bookmark{--fa:"\e0bb"}.fa-code-branch{--fa:"\f126"}.fa-hat-cowboy{--fa:"\f8c0"}.fa-bridge{--fa:"\e4c8"}.fa-phone-alt,.fa-phone-flip{--fa:"\f879"}.fa-truck-front{--fa:"\e2b7"}.fa-cat{--fa:"\f6be"}.fa-anchor-circle-exclamation{--fa:"\e4ab"}.fa-truck-field{--fa:"\e58d"}.fa-route{--fa:"\f4d7"}.fa-clipboard-question{--fa:"\e4e3"}.fa-panorama{--fa:"\e209"}.fa-comment-medical{--fa:"\f7f5"}.fa-teeth-open{--fa:"\f62f"}.fa-file-circle-minus{--fa:"\e4ed"}.fa-tags{--fa:"\f02c"}.fa-wine-glass{--fa:"\f4e3"}.fa-fast-forward,.fa-forward-fast{--fa:"\f050"}.fa-face-meh-blank,.fa-meh-blank{--fa:"\f5a4"}.fa-parking,.fa-square-parking{--fa:"\f540"}.fa-house-signal{--fa:"\e012"}.fa-bars-progress,.fa-tasks-alt{--fa:"\f828"}.fa-faucet-drip{--fa:"\e006"}.fa-cart-flatbed,.fa-dolly-flatbed{--fa:"\f474"}.fa-ban-smoking,.fa-smoking-ban{--fa:"\f54d"}.fa-terminal{--fa:"\f120"}.fa-mobile-button{--fa:"\f10b"}.fa-house-medical-flag{--fa:"\e514"}.fa-basket-shopping,.fa-shopping-basket{--fa:"\f291"}.fa-tape{--fa:"\f4db"}.fa-bus-alt,.fa-bus-simple{--fa:"\f55e"}.fa-eye{--fa:"\f06e"}.fa-face-sad-cry,.fa-sad-cry{--fa:"\f5b3"}.fa-audio-description{--fa:"\f29e"}.fa-person-military-to-person{--fa:"\e54c"}.fa-file-shield{--fa:"\e4f0"}.fa-user-slash{--fa:"\f506"}.fa-pen{--fa:"\f304"}.fa-tower-observation{--fa:"\e586"}.fa-file-code{--fa:"\f1c9"}.fa-signal,.fa-signal-5,.fa-signal-perfect{--fa:"\f012"}.fa-bus{--fa:"\f207"}.fa-heart-circle-xmark{--fa:"\e501"}.fa-home-lg,.fa-house-chimney{--fa:"\e3af"}.fa-window-maximize{--fa:"\f2d0"}.fa-face-frown,.fa-frown{--fa:"\f119"}.fa-prescription{--fa:"\f5b1"}.fa-shop,.fa-store-alt{--fa:"\f54f"}.fa-floppy-disk,.fa-save{--fa:"\f0c7"}.fa-vihara{--fa:"\f6a7"}.fa-balance-scale-left,.fa-scale-unbalanced{--fa:"\f515"}.fa-sort-asc,.fa-sort-up{--fa:"\f0de"}.fa-comment-dots,.fa-commenting{--fa:"\f4ad"}.fa-plant-wilt{--fa:"\e5aa"}.fa-diamond{--fa:"\f219"}.fa-face-grin-squint,.fa-grin-squint{--fa:"\f585"}.fa-hand-holding-dollar,.fa-hand-holding-usd{--fa:"\f4c0"}.fa-chart-diagram{--fa:"\e695"}.fa-bacterium{--fa:"\e05a"}.fa-hand-pointer{--fa:"\f25a"}.fa-drum-steelpan{--fa:"\f56a"}.fa-hand-scissors{--fa:"\f257"}.fa-hands-praying,.fa-praying-hands{--fa:"\f684"}.fa-arrow-right-rotate,.fa-arrow-rotate-forward,.fa-arrow-rotate-right,.fa-redo{--fa:"\f01e"}.fa-biohazard{--fa:"\f780"}.fa-location,.fa-location-crosshairs{--fa:"\f601"}.fa-mars-double{--fa:"\f227"}.fa-child-dress{--fa:"\e59c"}.fa-users-between-lines{--fa:"\e591"}.fa-lungs-virus{--fa:"\e067"}.fa-face-grin-tears,.fa-grin-tears{--fa:"\f588"}.fa-phone{--fa:"\f095"}.fa-calendar-times,.fa-calendar-xmark{--fa:"\f273"}.fa-child-reaching{--fa:"\e59d"}.fa-head-side-virus{--fa:"\e064"}.fa-user-cog,.fa-user-gear{--fa:"\f4fe"}.fa-arrow-up-1-9,.fa-sort-numeric-up{--fa:"\f163"}.fa-door-closed{--fa:"\f52a"}.fa-shield-virus{--fa:"\e06c"}.fa-dice-six{--fa:"\f526"}.fa-mosquito-net{--fa:"\e52c"}.fa-file-fragment{--fa:"\e697"}.fa-bridge-water{--fa:"\e4ce"}.fa-person-booth{--fa:"\f756"}.fa-text-width{--fa:"\f035"}.fa-hat-wizard{--fa:"\f6e8"}.fa-pen-fancy{--fa:"\f5ac"}.fa-digging,.fa-person-digging{--fa:"\f85e"}.fa-trash{--fa:"\f1f8"}.fa-gauge-simple,.fa-gauge-simple-med,.fa-tachometer-average{--fa:"\f629"}.fa-book-medical{--fa:"\f7e6"}.fa-poo{--fa:"\f2fe"}.fa-quote-right,.fa-quote-right-alt{--fa:"\f10e"}.fa-shirt,.fa-t-shirt,.fa-tshirt{--fa:"\f553"}.fa-cubes{--fa:"\f1b3"}.fa-divide{--fa:"\f529"}.fa-tenge,.fa-tenge-sign{--fa:"\f7d7"}.fa-headphones{--fa:"\f025"}.fa-hands-holding{--fa:"\f4c2"}.fa-hands-clapping{--fa:"\e1a8"}.fa-republican{--fa:"\f75e"}.fa-arrow-left{--fa:"\f060"}.fa-person-circle-xmark{--fa:"\e543"}.fa-ruler{--fa:"\f545"}.fa-align-left{--fa:"\f036"}.fa-dice-d6{--fa:"\f6d1"}.fa-restroom{--fa:"\f7bd"}.fa-j{--fa:"\4a"}.fa-users-viewfinder{--fa:"\e595"}.fa-file-video{--fa:"\f1c8"}.fa-external-link-alt,.fa-up-right-from-square{--fa:"\f35d"}.fa-table-cells,.fa-th{--fa:"\f00a"}.fa-file-pdf{--fa:"\f1c1"}.fa-bible,.fa-book-bible{--fa:"\f647"}.fa-o{--fa:"\4f"}.fa-medkit,.fa-suitcase-medical{--fa:"\f0fa"}.fa-user-secret{--fa:"\f21b"}.fa-otter{--fa:"\f700"}.fa-female,.fa-person-dress{--fa:"\f182"}.fa-comment-dollar{--fa:"\f651"}.fa-briefcase-clock,.fa-business-time{--fa:"\f64a"}.fa-table-cells-large,.fa-th-large{--fa:"\f009"}.fa-book-tanakh,.fa-tanakh{--fa:"\f827"}.fa-phone-volume,.fa-volume-control-phone{--fa:"\f2a0"}.fa-hat-cowboy-side{--fa:"\f8c1"}.fa-clipboard-user{--fa:"\f7f3"}.fa-child{--fa:"\f1ae"}.fa-lira-sign{--fa:"\f195"}.fa-satellite{--fa:"\f7bf"}.fa-plane-lock{--fa:"\e558"}.fa-tag{--fa:"\f02b"}.fa-comment{--fa:"\f075"}.fa-birthday-cake,.fa-cake,.fa-cake-candles{--fa:"\f1fd"}.fa-envelope{--fa:"\f0e0"}.fa-angle-double-up,.fa-angles-up{--fa:"\f102"}.fa-paperclip{--fa:"\f0c6"}.fa-arrow-right-to-city{--fa:"\e4b3"}.fa-ribbon{--fa:"\f4d6"}.fa-lungs{--fa:"\f604"}.fa-arrow-up-9-1,.fa-sort-numeric-up-alt{--fa:"\f887"}.fa-litecoin-sign{--fa:"\e1d3"}.fa-border-none{--fa:"\f850"}.fa-circle-nodes{--fa:"\e4e2"}.fa-parachute-box{--fa:"\f4cd"}.fa-indent{--fa:"\f03c"}.fa-truck-field-un{--fa:"\e58e"}.fa-hourglass,.fa-hourglass-empty{--fa:"\f254"}.fa-mountain{--fa:"\f6fc"}.fa-user-doctor,.fa-user-md{--fa:"\f0f0"}.fa-circle-info,.fa-info-circle{--fa:"\f05a"}.fa-cloud-meatball{--fa:"\f73b"}.fa-camera,.fa-camera-alt{--fa:"\f030"}.fa-square-virus{--fa:"\e578"}.fa-meteor{--fa:"\f753"}.fa-car-on{--fa:"\e4dd"}.fa-sleigh{--fa:"\f7cc"}.fa-arrow-down-1-9,.fa-sort-numeric-asc,.fa-sort-numeric-down{--fa:"\f162"}.fa-hand-holding-droplet,.fa-hand-holding-water{--fa:"\f4c1"}.fa-water{--fa:"\f773"}.fa-calendar-check{--fa:"\f274"}.fa-braille{--fa:"\f2a1"}.fa-prescription-bottle-alt,.fa-prescription-bottle-medical{--fa:"\f486"}.fa-landmark{--fa:"\f66f"}.fa-truck{--fa:"\f0d1"}.fa-crosshairs{--fa:"\f05b"}.fa-person-cane{--fa:"\e53c"}.fa-tent{--fa:"\e57d"}.fa-vest-patches{--fa:"\e086"}.fa-check-double{--fa:"\f560"}.fa-arrow-down-a-z,.fa-sort-alpha-asc,.fa-sort-alpha-down{--fa:"\f15d"}.fa-money-bill-wheat{--fa:"\e52a"}.fa-cookie{--fa:"\f563"}.fa-arrow-left-rotate,.fa-arrow-rotate-back,.fa-arrow-rotate-backward,.fa-arrow-rotate-left,.fa-undo{--fa:"\f0e2"}.fa-hard-drive,.fa-hdd{--fa:"\f0a0"}.fa-face-grin-squint-tears,.fa-grin-squint-tears{--fa:"\f586"}.fa-dumbbell{--fa:"\f44b"}.fa-list-alt,.fa-rectangle-list{--fa:"\f022"}.fa-tarp-droplet{--fa:"\e57c"}.fa-house-medical-circle-check{--fa:"\e511"}.fa-person-skiing-nordic,.fa-skiing-nordic{--fa:"\f7ca"}.fa-calendar-plus{--fa:"\f271"}.fa-plane-arrival{--fa:"\f5af"}.fa-arrow-alt-circle-left,.fa-circle-left{--fa:"\f359"}.fa-subway,.fa-train-subway{--fa:"\f239"}.fa-chart-gantt{--fa:"\e0e4"}.fa-indian-rupee,.fa-indian-rupee-sign,.fa-inr{--fa:"\e1bc"}.fa-crop-alt,.fa-crop-simple{--fa:"\f565"}.fa-money-bill-1,.fa-money-bill-alt{--fa:"\f3d1"}.fa-left-long,.fa-long-arrow-alt-left{--fa:"\f30a"}.fa-dna{--fa:"\f471"}.fa-virus-slash{--fa:"\e075"}.fa-minus,.fa-subtract{--fa:"\f068"}.fa-chess{--fa:"\f439"}.fa-arrow-left-long,.fa-long-arrow-left{--fa:"\f177"}.fa-plug-circle-check{--fa:"\e55c"}.fa-street-view{--fa:"\f21d"}.fa-franc-sign{--fa:"\e18f"}.fa-volume-off{--fa:"\f026"}.fa-american-sign-language-interpreting,.fa-asl-interpreting,.fa-hands-american-sign-language-interpreting,.fa-hands-asl-interpreting{--fa:"\f2a3"}.fa-cog,.fa-gear{--fa:"\f013"}.fa-droplet-slash,.fa-tint-slash{--fa:"\f5c7"}.fa-mosque{--fa:"\f678"}.fa-mosquito{--fa:"\e52b"}.fa-star-of-david{--fa:"\f69a"}.fa-person-military-rifle{--fa:"\e54b"}.fa-cart-shopping,.fa-shopping-cart{--fa:"\f07a"}.fa-vials{--fa:"\f493"}.fa-plug-circle-plus{--fa:"\e55f"}.fa-place-of-worship{--fa:"\f67f"}.fa-grip-vertical{--fa:"\f58e"}.fa-hexagon-nodes{--fa:"\e699"}.fa-arrow-turn-up,.fa-level-up{--fa:"\f148"}.fa-u{--fa:"\55"}.fa-square-root-alt,.fa-square-root-variable{--fa:"\f698"}.fa-clock,.fa-clock-four{--fa:"\f017"}.fa-backward-step,.fa-step-backward{--fa:"\f048"}.fa-pallet{--fa:"\f482"}.fa-faucet{--fa:"\e005"}.fa-baseball-bat-ball{--fa:"\f432"}.fa-s{--fa:"\53"}.fa-timeline{--fa:"\e29c"}.fa-keyboard{--fa:"\f11c"}.fa-caret-down{--fa:"\f0d7"}.fa-clinic-medical,.fa-house-chimney-medical{--fa:"\f7f2"}.fa-temperature-3,.fa-temperature-three-quarters,.fa-thermometer-3,.fa-thermometer-three-quarters{--fa:"\f2c8"}.fa-mobile-android-alt,.fa-mobile-screen{--fa:"\f3cf"}.fa-plane-up{--fa:"\e22d"}.fa-piggy-bank{--fa:"\f4d3"}.fa-battery-3,.fa-battery-half{--fa:"\f242"}.fa-mountain-city{--fa:"\e52e"}.fa-coins{--fa:"\f51e"}.fa-khanda{--fa:"\f66d"}.fa-sliders,.fa-sliders-h{--fa:"\f1de"}.fa-folder-tree{--fa:"\f802"}.fa-network-wired{--fa:"\f6ff"}.fa-map-pin{--fa:"\f276"}.fa-hamsa{--fa:"\f665"}.fa-cent-sign{--fa:"\e3f5"}.fa-flask{--fa:"\f0c3"}.fa-person-pregnant{--fa:"\e31e"}.fa-wand-sparkles{--fa:"\f72b"}.fa-ellipsis-v,.fa-ellipsis-vertical{--fa:"\f142"}.fa-ticket{--fa:"\f145"}.fa-power-off{--fa:"\f011"}.fa-long-arrow-alt-right,.fa-right-long{--fa:"\f30b"}.fa-flag-usa{--fa:"\f74d"}.fa-laptop-file{--fa:"\e51d"}.fa-teletype,.fa-tty{--fa:"\f1e4"}.fa-diagram-next{--fa:"\e476"}.fa-person-rifle{--fa:"\e54e"}.fa-house-medical-circle-exclamation{--fa:"\e512"}.fa-closed-captioning{--fa:"\f20a"}.fa-hiking,.fa-person-hiking{--fa:"\f6ec"}.fa-venus-double{--fa:"\f226"}.fa-images{--fa:"\f302"}.fa-calculator{--fa:"\f1ec"}.fa-people-pulling{--fa:"\e535"}.fa-n{--fa:"\4e"}.fa-cable-car,.fa-tram{--fa:"\f7da"}.fa-cloud-rain{--fa:"\f73d"}.fa-building-circle-xmark{--fa:"\e4d4"}.fa-ship{--fa:"\f21a"}.fa-arrows-down-to-line{--fa:"\e4b8"}.fa-download{--fa:"\f019"}.fa-face-grin,.fa-grin{--fa:"\f580"}.fa-backspace,.fa-delete-left{--fa:"\f55a"}.fa-eye-dropper,.fa-eye-dropper-empty,.fa-eyedropper{--fa:"\f1fb"}.fa-file-circle-check{--fa:"\e5a0"}.fa-forward{--fa:"\f04e"}.fa-mobile,.fa-mobile-android,.fa-mobile-phone{--fa:"\f3ce"}.fa-face-meh,.fa-meh{--fa:"\f11a"}.fa-align-center{--fa:"\f037"}.fa-book-dead,.fa-book-skull{--fa:"\f6b7"}.fa-drivers-license,.fa-id-card{--fa:"\f2c2"}.fa-dedent,.fa-outdent{--fa:"\f03b"}.fa-heart-circle-exclamation{--fa:"\e4fe"}.fa-home,.fa-home-alt,.fa-home-lg-alt,.fa-house{--fa:"\f015"}.fa-calendar-week{--fa:"\f784"}.fa-laptop-medical{--fa:"\f812"}.fa-b{--fa:"\42"}.fa-file-medical{--fa:"\f477"}.fa-dice-one{--fa:"\f525"}.fa-kiwi-bird{--fa:"\f535"}.fa-arrow-right-arrow-left,.fa-exchange{--fa:"\f0ec"}.fa-redo-alt,.fa-rotate-forward,.fa-rotate-right{--fa:"\f2f9"}.fa-cutlery,.fa-utensils{--fa:"\f2e7"}.fa-arrow-up-wide-short,.fa-sort-amount-up{--fa:"\f161"}.fa-mill-sign{--fa:"\e1ed"}.fa-bowl-rice{--fa:"\e2eb"}.fa-skull{--fa:"\f54c"}.fa-broadcast-tower,.fa-tower-broadcast{--fa:"\f519"}.fa-truck-pickup{--fa:"\f63c"}.fa-long-arrow-alt-up,.fa-up-long{--fa:"\f30c"}.fa-stop{--fa:"\f04d"}.fa-code-merge{--fa:"\f387"}.fa-upload{--fa:"\f093"}.fa-hurricane{--fa:"\f751"}.fa-mound{--fa:"\e52d"}.fa-toilet-portable{--fa:"\e583"}.fa-compact-disc{--fa:"\f51f"}.fa-file-arrow-down,.fa-file-download{--fa:"\f56d"}.fa-caravan{--fa:"\f8ff"}.fa-shield-cat{--fa:"\e572"}.fa-bolt,.fa-zap{--fa:"\f0e7"}.fa-glass-water{--fa:"\e4f4"}.fa-oil-well{--fa:"\e532"}.fa-vault{--fa:"\e2c5"}.fa-mars{--fa:"\f222"}.fa-toilet{--fa:"\f7d8"}.fa-plane-circle-xmark{--fa:"\e557"}.fa-cny,.fa-jpy,.fa-rmb,.fa-yen,.fa-yen-sign{--fa:"\f157"}.fa-rouble,.fa-rub,.fa-ruble,.fa-ruble-sign{--fa:"\f158"}.fa-sun{--fa:"\f185"}.fa-guitar{--fa:"\f7a6"}.fa-face-laugh-wink,.fa-laugh-wink{--fa:"\f59c"}.fa-horse-head{--fa:"\f7ab"}.fa-bore-hole{--fa:"\e4c3"}.fa-industry{--fa:"\f275"}.fa-arrow-alt-circle-down,.fa-circle-down{--fa:"\f358"}.fa-arrows-turn-to-dots{--fa:"\e4c1"}.fa-florin-sign{--fa:"\e184"}.fa-arrow-down-short-wide,.fa-sort-amount-desc,.fa-sort-amount-down-alt{--fa:"\f884"}.fa-less-than{--fa:"\3c"}.fa-angle-down{--fa:"\f107"}.fa-car-tunnel{--fa:"\e4de"}.fa-head-side-cough{--fa:"\e061"}.fa-grip-lines{--fa:"\f7a4"}.fa-thumbs-down{--fa:"\f165"}.fa-user-lock{--fa:"\f502"}.fa-arrow-right-long,.fa-long-arrow-right{--fa:"\f178"}.fa-anchor-circle-xmark{--fa:"\e4ac"}.fa-ellipsis,.fa-ellipsis-h{--fa:"\f141"}.fa-chess-pawn{--fa:"\f443"}.fa-first-aid,.fa-kit-medical{--fa:"\f479"}.fa-person-through-window{--fa:"\e5a9"}.fa-toolbox{--fa:"\f552"}.fa-hands-holding-circle{--fa:"\e4fb"}.fa-bug{--fa:"\f188"}.fa-credit-card,.fa-credit-card-alt{--fa:"\f09d"}.fa-automobile,.fa-car{--fa:"\f1b9"}.fa-hand-holding-hand{--fa:"\e4f7"}.fa-book-open-reader,.fa-book-reader{--fa:"\f5da"}.fa-mountain-sun{--fa:"\e52f"}.fa-arrows-left-right-to-line{--fa:"\e4ba"}.fa-dice-d20{--fa:"\f6cf"}.fa-truck-droplet{--fa:"\e58c"}.fa-file-circle-xmark{--fa:"\e5a1"}.fa-temperature-arrow-up,.fa-temperature-up{--fa:"\e040"}.fa-medal{--fa:"\f5a2"}.fa-bed{--fa:"\f236"}.fa-h-square,.fa-square-h{--fa:"\f0fd"}.fa-podcast{--fa:"\f2ce"}.fa-temperature-4,.fa-temperature-full,.fa-thermometer-4,.fa-thermometer-full{--fa:"\f2c7"}.fa-bell{--fa:"\f0f3"}.fa-superscript{--fa:"\f12b"}.fa-plug-circle-xmark{--fa:"\e560"}.fa-star-of-life{--fa:"\f621"}.fa-phone-slash{--fa:"\f3dd"}.fa-paint-roller{--fa:"\f5aa"}.fa-hands-helping,.fa-handshake-angle{--fa:"\f4c4"}.fa-location-dot,.fa-map-marker-alt{--fa:"\f3c5"}.fa-file{--fa:"\f15b"}.fa-greater-than{--fa:"\3e"}.fa-person-swimming,.fa-swimmer{--fa:"\f5c4"}.fa-arrow-down{--fa:"\f063"}.fa-droplet,.fa-tint{--fa:"\f043"}.fa-eraser{--fa:"\f12d"}.fa-earth,.fa-earth-america,.fa-earth-americas,.fa-globe-americas{--fa:"\f57d"}.fa-person-burst{--fa:"\e53b"}.fa-dove{--fa:"\f4ba"}.fa-battery-0,.fa-battery-empty{--fa:"\f244"}.fa-socks{--fa:"\f696"}.fa-inbox{--fa:"\f01c"}.fa-section{--fa:"\e447"}.fa-gauge-high,.fa-tachometer-alt,.fa-tachometer-alt-fast{--fa:"\f625"}.fa-envelope-open-text{--fa:"\f658"}.fa-hospital,.fa-hospital-alt,.fa-hospital-wide{--fa:"\f0f8"}.fa-wine-bottle{--fa:"\f72f"}.fa-chess-rook{--fa:"\f447"}.fa-bars-staggered,.fa-reorder,.fa-stream{--fa:"\f550"}.fa-dharmachakra{--fa:"\f655"}.fa-hotdog{--fa:"\f80f"}.fa-blind,.fa-person-walking-with-cane{--fa:"\f29d"}.fa-drum{--fa:"\f569"}.fa-ice-cream{--fa:"\f810"}.fa-heart-circle-bolt{--fa:"\e4fc"}.fa-fax{--fa:"\f1ac"}.fa-paragraph{--fa:"\f1dd"}.fa-check-to-slot,.fa-vote-yea{--fa:"\f772"}.fa-star-half{--fa:"\f089"}.fa-boxes,.fa-boxes-alt,.fa-boxes-stacked{--fa:"\f468"}.fa-chain,.fa-link{--fa:"\f0c1"}.fa-assistive-listening-systems,.fa-ear-listen{--fa:"\f2a2"}.fa-tree-city{--fa:"\e587"}.fa-play{--fa:"\f04b"}.fa-font{--fa:"\f031"}.fa-table-cells-row-lock{--fa:"\e67a"}.fa-rupiah-sign{--fa:"\e23d"}.fa-magnifying-glass,.fa-search{--fa:"\f002"}.fa-ping-pong-paddle-ball,.fa-table-tennis,.fa-table-tennis-paddle-ball{--fa:"\f45d"}.fa-diagnoses,.fa-person-dots-from-line{--fa:"\f470"}.fa-trash-can-arrow-up,.fa-trash-restore-alt{--fa:"\f82a"}.fa-naira-sign{--fa:"\e1f6"}.fa-cart-arrow-down{--fa:"\f218"}.fa-walkie-talkie{--fa:"\f8ef"}.fa-file-edit,.fa-file-pen{--fa:"\f31c"}.fa-receipt{--fa:"\f543"}.fa-pen-square,.fa-pencil-square,.fa-square-pen{--fa:"\f14b"}.fa-suitcase-rolling{--fa:"\f5c1"}.fa-person-circle-exclamation{--fa:"\e53f"}.fa-chevron-down{--fa:"\f078"}.fa-battery,.fa-battery-5,.fa-battery-full{--fa:"\f240"}.fa-skull-crossbones{--fa:"\f714"}.fa-code-compare{--fa:"\e13a"}.fa-list-dots,.fa-list-ul{--fa:"\f0ca"}.fa-school-lock{--fa:"\e56f"}.fa-tower-cell{--fa:"\e585"}.fa-down-long,.fa-long-arrow-alt-down{--fa:"\f309"}.fa-ranking-star{--fa:"\e561"}.fa-chess-king{--fa:"\f43f"}.fa-person-harassing{--fa:"\e549"}.fa-brazilian-real-sign{--fa:"\e46c"}.fa-landmark-alt,.fa-landmark-dome{--fa:"\f752"}.fa-arrow-up{--fa:"\f062"}.fa-television,.fa-tv,.fa-tv-alt{--fa:"\f26c"}.fa-shrimp{--fa:"\e448"}.fa-list-check,.fa-tasks{--fa:"\f0ae"}.fa-jug-detergent{--fa:"\e519"}.fa-circle-user,.fa-user-circle{--fa:"\f2bd"}.fa-user-shield{--fa:"\f505"}.fa-wind{--fa:"\f72e"}.fa-car-burst,.fa-car-crash{--fa:"\f5e1"}.fa-y{--fa:"\59"}.fa-person-snowboarding,.fa-snowboarding{--fa:"\f7ce"}.fa-shipping-fast,.fa-truck-fast{--fa:"\f48b"}.fa-fish{--fa:"\f578"}.fa-user-graduate{--fa:"\f501"}.fa-adjust,.fa-circle-half-stroke{--fa:"\f042"}.fa-clapperboard{--fa:"\e131"}.fa-circle-radiation,.fa-radiation-alt{--fa:"\f7ba"}.fa-baseball,.fa-baseball-ball{--fa:"\f433"}.fa-jet-fighter-up{--fa:"\e518"}.fa-diagram-project,.fa-project-diagram{--fa:"\f542"}.fa-copy{--fa:"\f0c5"}.fa-volume-mute,.fa-volume-times,.fa-volume-xmark{--fa:"\f6a9"}.fa-hand-sparkles{--fa:"\e05d"}.fa-grip,.fa-grip-horizontal{--fa:"\f58d"}.fa-share-from-square,.fa-share-square{--fa:"\f14d"}.fa-child-combatant,.fa-child-rifle{--fa:"\e4e0"}.fa-gun{--fa:"\e19b"}.fa-phone-square,.fa-square-phone{--fa:"\f098"}.fa-add,.fa-plus{--fa:"\2b"}.fa-expand{--fa:"\f065"}.fa-computer{--fa:"\e4e5"}.fa-close,.fa-multiply,.fa-remove,.fa-times,.fa-xmark{--fa:"\f00d"}.fa-arrows,.fa-arrows-up-down-left-right{--fa:"\f047"}.fa-chalkboard-teacher,.fa-chalkboard-user{--fa:"\f51c"}.fa-peso-sign{--fa:"\e222"}.fa-building-shield{--fa:"\e4d8"}.fa-baby{--fa:"\f77c"}.fa-users-line{--fa:"\e592"}.fa-quote-left,.fa-quote-left-alt{--fa:"\f10d"}.fa-tractor{--fa:"\f722"}.fa-trash-arrow-up,.fa-trash-restore{--fa:"\f829"}.fa-arrow-down-up-lock{--fa:"\e4b0"}.fa-lines-leaning{--fa:"\e51e"}.fa-ruler-combined{--fa:"\f546"}.fa-copyright{--fa:"\f1f9"}.fa-equals{--fa:"\3d"}.fa-blender{--fa:"\f517"}.fa-teeth{--fa:"\f62e"}.fa-ils,.fa-shekel,.fa-shekel-sign,.fa-sheqel,.fa-sheqel-sign{--fa:"\f20b"}.fa-map{--fa:"\f279"}.fa-rocket{--fa:"\f135"}.fa-photo-film,.fa-photo-video{--fa:"\f87c"}.fa-folder-minus{--fa:"\f65d"}.fa-hexagon-nodes-bolt{--fa:"\e69a"}.fa-store{--fa:"\f54e"}.fa-arrow-trend-up{--fa:"\e098"}.fa-plug-circle-minus{--fa:"\e55e"}.fa-sign,.fa-sign-hanging{--fa:"\f4d9"}.fa-bezier-curve{--fa:"\f55b"}.fa-bell-slash{--fa:"\f1f6"}.fa-tablet,.fa-tablet-android{--fa:"\f3fb"}.fa-school-flag{--fa:"\e56e"}.fa-fill{--fa:"\f575"}.fa-angle-up{--fa:"\f106"}.fa-drumstick-bite{--fa:"\f6d7"}.fa-holly-berry{--fa:"\f7aa"}.fa-chevron-left{--fa:"\f053"}.fa-bacteria{--fa:"\e059"}.fa-hand-lizard{--fa:"\f258"}.fa-notdef{--fa:"\e1fe"}.fa-disease{--fa:"\f7fa"}.fa-briefcase-medical{--fa:"\f469"}.fa-genderless{--fa:"\f22d"}.fa-chevron-right{--fa:"\f054"}.fa-retweet{--fa:"\f079"}.fa-car-alt,.fa-car-rear{--fa:"\f5de"}.fa-pump-soap{--fa:"\e06b"}.fa-video-slash{--fa:"\f4e2"}.fa-battery-2,.fa-battery-quarter{--fa:"\f243"}.fa-radio{--fa:"\f8d7"}.fa-baby-carriage,.fa-carriage-baby{--fa:"\f77d"}.fa-traffic-light{--fa:"\f637"}.fa-thermometer{--fa:"\f491"}.fa-vr-cardboard{--fa:"\f729"}.fa-hand-middle-finger{--fa:"\f806"}.fa-percent,.fa-percentage{--fa:"\25"}.fa-truck-moving{--fa:"\f4df"}.fa-glass-water-droplet{--fa:"\e4f5"}.fa-display{--fa:"\e163"}.fa-face-smile,.fa-smile{--fa:"\f118"}.fa-thumb-tack,.fa-thumbtack{--fa:"\f08d"}.fa-trophy{--fa:"\f091"}.fa-person-praying,.fa-pray{--fa:"\f683"}.fa-hammer{--fa:"\f6e3"}.fa-hand-peace{--fa:"\f25b"}.fa-rotate,.fa-sync-alt{--fa:"\f2f1"}.fa-spinner{--fa:"\f110"}.fa-robot{--fa:"\f544"}.fa-peace{--fa:"\f67c"}.fa-cogs,.fa-gears{--fa:"\f085"}.fa-warehouse{--fa:"\f494"}.fa-arrow-up-right-dots{--fa:"\e4b7"}.fa-splotch{--fa:"\f5bc"}.fa-face-grin-hearts,.fa-grin-hearts{--fa:"\f584"}.fa-dice-four{--fa:"\f524"}.fa-sim-card{--fa:"\f7c4"}.fa-transgender,.fa-transgender-alt{--fa:"\f225"}.fa-mercury{--fa:"\f223"}.fa-arrow-turn-down,.fa-level-down{--fa:"\f149"}.fa-person-falling-burst{--fa:"\e547"}.fa-award{--fa:"\f559"}.fa-ticket-alt,.fa-ticket-simple{--fa:"\f3ff"}.fa-building{--fa:"\f1ad"}.fa-angle-double-left,.fa-angles-left{--fa:"\f100"}.fa-qrcode{--fa:"\f029"}.fa-clock-rotate-left,.fa-history{--fa:"\f1da"}.fa-face-grin-beam-sweat,.fa-grin-beam-sweat{--fa:"\f583"}.fa-arrow-right-from-file,.fa-file-export{--fa:"\f56e"}.fa-shield,.fa-shield-blank{--fa:"\f132"}.fa-arrow-up-short-wide,.fa-sort-amount-up-alt{--fa:"\f885"}.fa-comment-nodes{--fa:"\e696"}.fa-house-medical{--fa:"\e3b2"}.fa-golf-ball,.fa-golf-ball-tee{--fa:"\f450"}.fa-chevron-circle-left,.fa-circle-chevron-left{--fa:"\f137"}.fa-house-chimney-window{--fa:"\e00d"}.fa-pen-nib{--fa:"\f5ad"}.fa-tent-arrow-turn-left{--fa:"\e580"}.fa-tents{--fa:"\e582"}.fa-magic,.fa-wand-magic{--fa:"\f0d0"}.fa-dog{--fa:"\f6d3"}.fa-carrot{--fa:"\f787"}.fa-moon{--fa:"\f186"}.fa-wine-glass-alt,.fa-wine-glass-empty{--fa:"\f5ce"}.fa-cheese{--fa:"\f7ef"}.fa-yin-yang{--fa:"\f6ad"}.fa-music{--fa:"\f001"}.fa-code-commit{--fa:"\f386"}.fa-temperature-low{--fa:"\f76b"}.fa-biking,.fa-person-biking{--fa:"\f84a"}.fa-broom{--fa:"\f51a"}.fa-shield-heart{--fa:"\e574"}.fa-gopuram{--fa:"\f664"}.fa-earth-oceania,.fa-globe-oceania{--fa:"\e47b"}.fa-square-xmark,.fa-times-square,.fa-xmark-square{--fa:"\f2d3"}.fa-hashtag{--fa:"\23"}.fa-expand-alt,.fa-up-right-and-down-left-from-center{--fa:"\f424"}.fa-oil-can{--fa:"\f613"}.fa-t{--fa:"\54"}.fa-hippo{--fa:"\f6ed"}.fa-chart-column{--fa:"\e0e3"}.fa-infinity{--fa:"\f534"}.fa-vial-circle-check{--fa:"\e596"}.fa-person-arrow-down-to-line{--fa:"\e538"}.fa-voicemail{--fa:"\f897"}.fa-fan{--fa:"\f863"}.fa-person-walking-luggage{--fa:"\e554"}.fa-arrows-alt-v,.fa-up-down{--fa:"\f338"}.fa-cloud-moon-rain{--fa:"\f73c"}.fa-calendar{--fa:"\f133"}.fa-trailer{--fa:"\e041"}.fa-bahai,.fa-haykal{--fa:"\f666"}.fa-sd-card{--fa:"\f7c2"}.fa-dragon{--fa:"\f6d5"}.fa-shoe-prints{--fa:"\f54b"}.fa-circle-plus,.fa-plus-circle{--fa:"\f055"}.fa-face-grin-tongue-wink,.fa-grin-tongue-wink{--fa:"\f58b"}.fa-hand-holding{--fa:"\f4bd"}.fa-plug-circle-exclamation{--fa:"\e55d"}.fa-chain-broken,.fa-chain-slash,.fa-link-slash,.fa-unlink{--fa:"\f127"}.fa-clone{--fa:"\f24d"}.fa-person-walking-arrow-loop-left{--fa:"\e551"}.fa-arrow-up-z-a,.fa-sort-alpha-up-alt{--fa:"\f882"}.fa-fire-alt,.fa-fire-flame-curved{--fa:"\f7e4"}.fa-tornado{--fa:"\f76f"}.fa-file-circle-plus{--fa:"\e494"}.fa-book-quran,.fa-quran{--fa:"\f687"}.fa-anchor{--fa:"\f13d"}.fa-border-all{--fa:"\f84c"}.fa-angry,.fa-face-angry{--fa:"\f556"}.fa-cookie-bite{--fa:"\f564"}.fa-arrow-trend-down{--fa:"\e097"}.fa-feed,.fa-rss{--fa:"\f09e"}.fa-draw-polygon{--fa:"\f5ee"}.fa-balance-scale,.fa-scale-balanced{--fa:"\f24e"}.fa-gauge-simple-high,.fa-tachometer,.fa-tachometer-fast{--fa:"\f62a"}.fa-shower{--fa:"\f2cc"}.fa-desktop,.fa-desktop-alt{--fa:"\f390"}.fa-m{--fa:"\4d"}.fa-table-list,.fa-th-list{--fa:"\f00b"}.fa-comment-sms,.fa-sms{--fa:"\f7cd"}.fa-book{--fa:"\f02d"}.fa-user-plus{--fa:"\f234"}.fa-check{--fa:"\f00c"}.fa-battery-4,.fa-battery-three-quarters{--fa:"\f241"}.fa-house-circle-check{--fa:"\e509"}.fa-angle-left{--fa:"\f104"}.fa-diagram-successor{--fa:"\e47a"}.fa-truck-arrow-right{--fa:"\e58b"}.fa-arrows-split-up-and-left{--fa:"\e4bc"}.fa-fist-raised,.fa-hand-fist{--fa:"\f6de"}.fa-cloud-moon{--fa:"\f6c3"}.fa-briefcase{--fa:"\f0b1"}.fa-person-falling{--fa:"\e546"}.fa-image-portrait,.fa-portrait{--fa:"\f3e0"}.fa-user-tag{--fa:"\f507"}.fa-rug{--fa:"\e569"}.fa-earth-europe,.fa-globe-europe{--fa:"\f7a2"}.fa-cart-flatbed-suitcase,.fa-luggage-cart{--fa:"\f59d"}.fa-rectangle-times,.fa-rectangle-xmark,.fa-times-rectangle,.fa-window-close{--fa:"\f410"}.fa-baht-sign{--fa:"\e0ac"}.fa-book-open{--fa:"\f518"}.fa-book-journal-whills,.fa-journal-whills{--fa:"\f66a"}.fa-handcuffs{--fa:"\e4f8"}.fa-exclamation-triangle,.fa-triangle-exclamation,.fa-warning{--fa:"\f071"}.fa-database{--fa:"\f1c0"}.fa-mail-forward,.fa-share{--fa:"\f064"}.fa-bottle-droplet{--fa:"\e4c4"}.fa-mask-face{--fa:"\e1d7"}.fa-hill-rockslide{--fa:"\e508"}.fa-exchange-alt,.fa-right-left{--fa:"\f362"}.fa-paper-plane{--fa:"\f1d8"}.fa-road-circle-exclamation{--fa:"\e565"}.fa-dungeon{--fa:"\f6d9"}.fa-align-right{--fa:"\f038"}.fa-money-bill-1-wave,.fa-money-bill-wave-alt{--fa:"\f53b"}.fa-life-ring{--fa:"\f1cd"}.fa-hands,.fa-sign-language,.fa-signing{--fa:"\f2a7"}.fa-calendar-day{--fa:"\f783"}.fa-ladder-water,.fa-swimming-pool,.fa-water-ladder{--fa:"\f5c5"}.fa-arrows-up-down,.fa-arrows-v{--fa:"\f07d"}.fa-face-grimace,.fa-grimace{--fa:"\f57f"}.fa-wheelchair-alt,.fa-wheelchair-move{--fa:"\e2ce"}.fa-level-down-alt,.fa-turn-down{--fa:"\f3be"}.fa-person-walking-arrow-right{--fa:"\e552"}.fa-envelope-square,.fa-square-envelope{--fa:"\f199"}.fa-dice{--fa:"\f522"}.fa-bowling-ball{--fa:"\f436"}.fa-brain{--fa:"\f5dc"}.fa-band-aid,.fa-bandage{--fa:"\f462"}.fa-calendar-minus{--fa:"\f272"}.fa-circle-xmark,.fa-times-circle,.fa-xmark-circle{--fa:"\f057"}.fa-gifts{--fa:"\f79c"}.fa-hotel{--fa:"\f594"}.fa-earth-asia,.fa-globe-asia{--fa:"\f57e"}.fa-id-card-alt,.fa-id-card-clip{--fa:"\f47f"}.fa-magnifying-glass-plus,.fa-search-plus{--fa:"\f00e"}.fa-thumbs-up{--fa:"\f164"}.fa-user-clock{--fa:"\f4fd"}.fa-allergies,.fa-hand-dots{--fa:"\f461"}.fa-file-invoice{--fa:"\f570"}.fa-window-minimize{--fa:"\f2d1"}.fa-coffee,.fa-mug-saucer{--fa:"\f0f4"}.fa-brush{--fa:"\f55d"}.fa-file-half-dashed{--fa:"\e698"}.fa-mask{--fa:"\f6fa"}.fa-magnifying-glass-minus,.fa-search-minus{--fa:"\f010"}.fa-ruler-vertical{--fa:"\f548"}.fa-user-alt,.fa-user-large{--fa:"\f406"}.fa-train-tram{--fa:"\e5b4"}.fa-user-nurse{--fa:"\f82f"}.fa-syringe{--fa:"\f48e"}.fa-cloud-sun{--fa:"\f6c4"}.fa-stopwatch-20{--fa:"\e06f"}.fa-square-full{--fa:"\f45c"}.fa-magnet{--fa:"\f076"}.fa-jar{--fa:"\e516"}.fa-note-sticky,.fa-sticky-note{--fa:"\f249"}.fa-bug-slash{--fa:"\e490"}.fa-arrow-up-from-water-pump{--fa:"\e4b6"}.fa-bone{--fa:"\f5d7"}.fa-table-cells-row-unlock{--fa:"\e691"}.fa-user-injured{--fa:"\f728"}.fa-face-sad-tear,.fa-sad-tear{--fa:"\f5b4"}.fa-plane{--fa:"\f072"}.fa-tent-arrows-down{--fa:"\e581"}.fa-exclamation{--fa:"\21"}.fa-arrows-spin{--fa:"\e4bb"}.fa-print{--fa:"\f02f"}.fa-try,.fa-turkish-lira,.fa-turkish-lira-sign{--fa:"\e2bb"}.fa-dollar,.fa-dollar-sign,.fa-usd{--fa:"\24"}.fa-x{--fa:"\58"}.fa-magnifying-glass-dollar,.fa-search-dollar{--fa:"\f688"}.fa-users-cog,.fa-users-gear{--fa:"\f509"}.fa-person-military-pointing{--fa:"\e54a"}.fa-bank,.fa-building-columns,.fa-institution,.fa-museum,.fa-university{--fa:"\f19c"}.fa-umbrella{--fa:"\f0e9"}.fa-trowel{--fa:"\e589"}.fa-d{--fa:"\44"}.fa-stapler{--fa:"\e5af"}.fa-masks-theater,.fa-theater-masks{--fa:"\f630"}.fa-kip-sign{--fa:"\e1c4"}.fa-hand-point-left{--fa:"\f0a5"}.fa-handshake-alt,.fa-handshake-simple{--fa:"\f4c6"}.fa-fighter-jet,.fa-jet-fighter{--fa:"\f0fb"}.fa-share-alt-square,.fa-square-share-nodes{--fa:"\f1e1"}.fa-barcode{--fa:"\f02a"}.fa-plus-minus{--fa:"\e43c"}.fa-video,.fa-video-camera{--fa:"\f03d"}.fa-graduation-cap,.fa-mortar-board{--fa:"\f19d"}.fa-hand-holding-medical{--fa:"\e05c"}.fa-person-circle-check{--fa:"\e53e"}.fa-level-up-alt,.fa-turn-up{--fa:"\f3bf"}
.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-style-family-brands:"Font Awesome 6 Brands";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src:url(/bluesky/assets/fontawesome/webfonts/fa-brands-400.woff2) format("woff2"),url(/bluesky/assets/fontawesome/webfonts/fa-brands-400.ttf) format("truetype")}.fa-brands,.fab{font-weight:400}.fa-monero{--fa:"\f3d0"}.fa-hooli{--fa:"\f427"}.fa-yelp{--fa:"\f1e9"}.fa-cc-visa{--fa:"\f1f0"}.fa-lastfm{--fa:"\f202"}.fa-shopware{--fa:"\f5b5"}.fa-creative-commons-nc{--fa:"\f4e8"}.fa-aws{--fa:"\f375"}.fa-redhat{--fa:"\f7bc"}.fa-yoast{--fa:"\f2b1"}.fa-cloudflare{--fa:"\e07d"}.fa-ups{--fa:"\f7e0"}.fa-pixiv{--fa:"\e640"}.fa-wpexplorer{--fa:"\f2de"}.fa-dyalog{--fa:"\f399"}.fa-bity{--fa:"\f37a"}.fa-stackpath{--fa:"\f842"}.fa-buysellads{--fa:"\f20d"}.fa-first-order{--fa:"\f2b0"}.fa-modx{--fa:"\f285"}.fa-guilded{--fa:"\e07e"}.fa-vnv{--fa:"\f40b"}.fa-js-square,.fa-square-js{--fa:"\f3b9"}.fa-microsoft{--fa:"\f3ca"}.fa-qq{--fa:"\f1d6"}.fa-orcid{--fa:"\f8d2"}.fa-java{--fa:"\f4e4"}.fa-invision{--fa:"\f7b0"}.fa-creative-commons-pd-alt{--fa:"\f4ed"}.fa-centercode{--fa:"\f380"}.fa-glide-g{--fa:"\f2a6"}.fa-drupal{--fa:"\f1a9"}.fa-jxl{--fa:"\e67b"}.fa-dart-lang{--fa:"\e693"}.fa-hire-a-helper{--fa:"\f3b0"}.fa-creative-commons-by{--fa:"\f4e7"}.fa-unity{--fa:"\e049"}.fa-whmcs{--fa:"\f40d"}.fa-rocketchat{--fa:"\f3e8"}.fa-vk{--fa:"\f189"}.fa-untappd{--fa:"\f405"}.fa-mailchimp{--fa:"\f59e"}.fa-css3-alt{--fa:"\f38b"}.fa-reddit-square,.fa-square-reddit{--fa:"\f1a2"}.fa-vimeo-v{--fa:"\f27d"}.fa-contao{--fa:"\f26d"}.fa-square-font-awesome{--fa:"\e5ad"}.fa-deskpro{--fa:"\f38f"}.fa-brave{--fa:"\e63c"}.fa-sistrix{--fa:"\f3ee"}.fa-instagram-square,.fa-square-instagram{--fa:"\e055"}.fa-battle-net{--fa:"\f835"}.fa-the-red-yeti{--fa:"\f69d"}.fa-hacker-news-square,.fa-square-hacker-news{--fa:"\f3af"}.fa-edge{--fa:"\f282"}.fa-threads{--fa:"\e618"}.fa-napster{--fa:"\f3d2"}.fa-snapchat-square,.fa-square-snapchat{--fa:"\f2ad"}.fa-google-plus-g{--fa:"\f0d5"}.fa-artstation{--fa:"\f77a"}.fa-markdown{--fa:"\f60f"}.fa-sourcetree{--fa:"\f7d3"}.fa-google-plus{--fa:"\f2b3"}.fa-diaspora{--fa:"\f791"}.fa-foursquare{--fa:"\f180"}.fa-stack-overflow{--fa:"\f16c"}.fa-github-alt{--fa:"\f113"}.fa-phoenix-squadron{--fa:"\f511"}.fa-pagelines{--fa:"\f18c"}.fa-algolia{--fa:"\f36c"}.fa-red-river{--fa:"\f3e3"}.fa-creative-commons-sa{--fa:"\f4ef"}.fa-safari{--fa:"\f267"}.fa-google{--fa:"\f1a0"}.fa-font-awesome-alt,.fa-square-font-awesome-stroke{--fa:"\f35c"}.fa-atlassian{--fa:"\f77b"}.fa-linkedin-in{--fa:"\f0e1"}.fa-digital-ocean{--fa:"\f391"}.fa-nimblr{--fa:"\f5a8"}.fa-chromecast{--fa:"\f838"}.fa-evernote{--fa:"\f839"}.fa-hacker-news{--fa:"\f1d4"}.fa-creative-commons-sampling{--fa:"\f4f0"}.fa-adversal{--fa:"\f36a"}.fa-creative-commons{--fa:"\f25e"}.fa-watchman-monitoring{--fa:"\e087"}.fa-fonticons{--fa:"\f280"}.fa-weixin{--fa:"\f1d7"}.fa-shirtsinbulk{--fa:"\f214"}.fa-codepen{--fa:"\f1cb"}.fa-git-alt{--fa:"\f841"}.fa-lyft{--fa:"\f3c3"}.fa-rev{--fa:"\f5b2"}.fa-windows{--fa:"\f17a"}.fa-wizards-of-the-coast{--fa:"\f730"}.fa-square-viadeo,.fa-viadeo-square{--fa:"\f2aa"}.fa-meetup{--fa:"\f2e0"}.fa-centos{--fa:"\f789"}.fa-adn{--fa:"\f170"}.fa-cloudsmith{--fa:"\f384"}.fa-opensuse{--fa:"\e62b"}.fa-pied-piper-alt{--fa:"\f1a8"}.fa-dribbble-square,.fa-square-dribbble{--fa:"\f397"}.fa-codiepie{--fa:"\f284"}.fa-node{--fa:"\f419"}.fa-mix{--fa:"\f3cb"}.fa-steam{--fa:"\f1b6"}.fa-cc-apple-pay{--fa:"\f416"}.fa-scribd{--fa:"\f28a"}.fa-debian{--fa:"\e60b"}.fa-openid{--fa:"\f19b"}.fa-instalod{--fa:"\e081"}.fa-files-pinwheel{--fa:"\e69f"}.fa-expeditedssl{--fa:"\f23e"}.fa-sellcast{--fa:"\f2da"}.fa-square-twitter,.fa-twitter-square{--fa:"\f081"}.fa-r-project{--fa:"\f4f7"}.fa-delicious{--fa:"\f1a5"}.fa-freebsd{--fa:"\f3a4"}.fa-vuejs{--fa:"\f41f"}.fa-accusoft{--fa:"\f369"}.fa-ioxhost{--fa:"\f208"}.fa-fonticons-fi{--fa:"\f3a2"}.fa-app-store{--fa:"\f36f"}.fa-cc-mastercard{--fa:"\f1f1"}.fa-itunes-note{--fa:"\f3b5"}.fa-golang{--fa:"\e40f"}.fa-kickstarter,.fa-square-kickstarter{--fa:"\f3bb"}.fa-grav{--fa:"\f2d6"}.fa-weibo{--fa:"\f18a"}.fa-uncharted{--fa:"\e084"}.fa-firstdraft{--fa:"\f3a1"}.fa-square-youtube,.fa-youtube-square{--fa:"\f431"}.fa-wikipedia-w{--fa:"\f266"}.fa-rendact,.fa-wpressr{--fa:"\f3e4"}.fa-angellist{--fa:"\f209"}.fa-galactic-republic{--fa:"\f50c"}.fa-nfc-directional{--fa:"\e530"}.fa-skype{--fa:"\f17e"}.fa-joget{--fa:"\f3b7"}.fa-fedora{--fa:"\f798"}.fa-stripe-s{--fa:"\f42a"}.fa-meta{--fa:"\e49b"}.fa-laravel{--fa:"\f3bd"}.fa-hotjar{--fa:"\f3b1"}.fa-bluetooth-b{--fa:"\f294"}.fa-square-letterboxd{--fa:"\e62e"}.fa-sticker-mule{--fa:"\f3f7"}.fa-creative-commons-zero{--fa:"\f4f3"}.fa-hips{--fa:"\f452"}.fa-css{--fa:"\e6a2"}.fa-behance{--fa:"\f1b4"}.fa-reddit{--fa:"\f1a1"}.fa-discord{--fa:"\f392"}.fa-chrome{--fa:"\f268"}.fa-app-store-ios{--fa:"\f370"}.fa-cc-discover{--fa:"\f1f2"}.fa-wpbeginner{--fa:"\f297"}.fa-confluence{--fa:"\f78d"}.fa-shoelace{--fa:"\e60c"}.fa-mdb{--fa:"\f8ca"}.fa-dochub{--fa:"\f394"}.fa-accessible-icon{--fa:"\f368"}.fa-ebay{--fa:"\f4f4"}.fa-amazon{--fa:"\f270"}.fa-unsplash{--fa:"\e07c"}.fa-yarn{--fa:"\f7e3"}.fa-square-steam,.fa-steam-square{--fa:"\f1b7"}.fa-500px{--fa:"\f26e"}.fa-square-vimeo,.fa-vimeo-square{--fa:"\f194"}.fa-asymmetrik{--fa:"\f372"}.fa-font-awesome,.fa-font-awesome-flag,.fa-font-awesome-logo-full{--fa:"\f2b4"}.fa-gratipay{--fa:"\f184"}.fa-apple{--fa:"\f179"}.fa-hive{--fa:"\e07f"}.fa-gitkraken{--fa:"\f3a6"}.fa-keybase{--fa:"\f4f5"}.fa-apple-pay{--fa:"\f415"}.fa-padlet{--fa:"\e4a0"}.fa-amazon-pay{--fa:"\f42c"}.fa-github-square,.fa-square-github{--fa:"\f092"}.fa-stumbleupon{--fa:"\f1a4"}.fa-fedex{--fa:"\f797"}.fa-phoenix-framework{--fa:"\f3dc"}.fa-shopify{--fa:"\e057"}.fa-neos{--fa:"\f612"}.fa-square-threads{--fa:"\e619"}.fa-hackerrank{--fa:"\f5f7"}.fa-researchgate{--fa:"\f4f8"}.fa-swift{--fa:"\f8e1"}.fa-angular{--fa:"\f420"}.fa-speakap{--fa:"\f3f3"}.fa-angrycreative{--fa:"\f36e"}.fa-y-combinator{--fa:"\f23b"}.fa-empire{--fa:"\f1d1"}.fa-envira{--fa:"\f299"}.fa-google-scholar{--fa:"\e63b"}.fa-gitlab-square,.fa-square-gitlab{--fa:"\e5ae"}.fa-studiovinari{--fa:"\f3f8"}.fa-pied-piper{--fa:"\f2ae"}.fa-wordpress{--fa:"\f19a"}.fa-product-hunt{--fa:"\f288"}.fa-firefox{--fa:"\f269"}.fa-linode{--fa:"\f2b8"}.fa-goodreads{--fa:"\f3a8"}.fa-odnoklassniki-square,.fa-square-odnoklassniki{--fa:"\f264"}.fa-jsfiddle{--fa:"\f1cc"}.fa-sith{--fa:"\f512"}.fa-themeisle{--fa:"\f2b2"}.fa-page4{--fa:"\f3d7"}.fa-hashnode{--fa:"\e499"}.fa-react{--fa:"\f41b"}.fa-cc-paypal{--fa:"\f1f4"}.fa-squarespace{--fa:"\f5be"}.fa-cc-stripe{--fa:"\f1f5"}.fa-creative-commons-share{--fa:"\f4f2"}.fa-bitcoin{--fa:"\f379"}.fa-keycdn{--fa:"\f3ba"}.fa-opera{--fa:"\f26a"}.fa-itch-io{--fa:"\f83a"}.fa-umbraco{--fa:"\f8e8"}.fa-galactic-senate{--fa:"\f50d"}.fa-ubuntu{--fa:"\f7df"}.fa-draft2digital{--fa:"\f396"}.fa-stripe{--fa:"\f429"}.fa-houzz{--fa:"\f27c"}.fa-gg{--fa:"\f260"}.fa-dhl{--fa:"\f790"}.fa-pinterest-square,.fa-square-pinterest{--fa:"\f0d3"}.fa-xing{--fa:"\f168"}.fa-blackberry{--fa:"\f37b"}.fa-creative-commons-pd{--fa:"\f4ec"}.fa-playstation{--fa:"\f3df"}.fa-quinscape{--fa:"\f459"}.fa-less{--fa:"\f41d"}.fa-blogger-b{--fa:"\f37d"}.fa-opencart{--fa:"\f23d"}.fa-vine{--fa:"\f1ca"}.fa-signal-messenger{--fa:"\e663"}.fa-paypal{--fa:"\f1ed"}.fa-gitlab{--fa:"\f296"}.fa-typo3{--fa:"\f42b"}.fa-reddit-alien{--fa:"\f281"}.fa-yahoo{--fa:"\f19e"}.fa-dailymotion{--fa:"\e052"}.fa-affiliatetheme{--fa:"\f36b"}.fa-pied-piper-pp{--fa:"\f1a7"}.fa-bootstrap{--fa:"\f836"}.fa-odnoklassniki{--fa:"\f263"}.fa-nfc-symbol{--fa:"\e531"}.fa-mintbit{--fa:"\e62f"}.fa-ethereum{--fa:"\f42e"}.fa-speaker-deck{--fa:"\f83c"}.fa-creative-commons-nc-eu{--fa:"\f4e9"}.fa-patreon{--fa:"\f3d9"}.fa-avianex{--fa:"\f374"}.fa-ello{--fa:"\f5f1"}.fa-gofore{--fa:"\f3a7"}.fa-bimobject{--fa:"\f378"}.fa-brave-reverse{--fa:"\e63d"}.fa-facebook-f{--fa:"\f39e"}.fa-google-plus-square,.fa-square-google-plus{--fa:"\f0d4"}.fa-web-awesome{--fa:"\e682"}.fa-mandalorian{--fa:"\f50f"}.fa-first-order-alt{--fa:"\f50a"}.fa-osi{--fa:"\f41a"}.fa-google-wallet{--fa:"\f1ee"}.fa-d-and-d-beyond{--fa:"\f6ca"}.fa-periscope{--fa:"\f3da"}.fa-fulcrum{--fa:"\f50b"}.fa-cloudscale{--fa:"\f383"}.fa-forumbee{--fa:"\f211"}.fa-mizuni{--fa:"\f3cc"}.fa-schlix{--fa:"\f3ea"}.fa-square-xing,.fa-xing-square{--fa:"\f169"}.fa-bandcamp{--fa:"\f2d5"}.fa-wpforms{--fa:"\f298"}.fa-cloudversify{--fa:"\f385"}.fa-usps{--fa:"\f7e1"}.fa-megaport{--fa:"\f5a3"}.fa-magento{--fa:"\f3c4"}.fa-spotify{--fa:"\f1bc"}.fa-optin-monster{--fa:"\f23c"}.fa-fly{--fa:"\f417"}.fa-square-bluesky{--fa:"\e6a3"}.fa-aviato{--fa:"\f421"}.fa-itunes{--fa:"\f3b4"}.fa-cuttlefish{--fa:"\f38c"}.fa-blogger{--fa:"\f37c"}.fa-flickr{--fa:"\f16e"}.fa-viber{--fa:"\f409"}.fa-soundcloud{--fa:"\f1be"}.fa-digg{--fa:"\f1a6"}.fa-tencent-weibo{--fa:"\f1d5"}.fa-letterboxd{--fa:"\e62d"}.fa-symfony{--fa:"\f83d"}.fa-maxcdn{--fa:"\f136"}.fa-etsy{--fa:"\f2d7"}.fa-facebook-messenger{--fa:"\f39f"}.fa-audible{--fa:"\f373"}.fa-think-peaks{--fa:"\f731"}.fa-bilibili{--fa:"\e3d9"}.fa-erlang{--fa:"\f39d"}.fa-x-twitter{--fa:"\e61b"}.fa-cotton-bureau{--fa:"\f89e"}.fa-dashcube{--fa:"\f210"}.fa-42-group,.fa-innosoft{--fa:"\e080"}.fa-stack-exchange{--fa:"\f18d"}.fa-elementor{--fa:"\f430"}.fa-pied-piper-square,.fa-square-pied-piper{--fa:"\e01e"}.fa-creative-commons-nd{--fa:"\f4eb"}.fa-palfed{--fa:"\f3d8"}.fa-superpowers{--fa:"\f2dd"}.fa-resolving{--fa:"\f3e7"}.fa-xbox{--fa:"\f412"}.fa-square-web-awesome-stroke{--fa:"\e684"}.fa-searchengin{--fa:"\f3eb"}.fa-tiktok{--fa:"\e07b"}.fa-facebook-square,.fa-square-facebook{--fa:"\f082"}.fa-renren{--fa:"\f18b"}.fa-linux{--fa:"\f17c"}.fa-glide{--fa:"\f2a5"}.fa-linkedin{--fa:"\f08c"}.fa-hubspot{--fa:"\f3b2"}.fa-deploydog{--fa:"\f38e"}.fa-twitch{--fa:"\f1e8"}.fa-flutter{--fa:"\e694"}.fa-ravelry{--fa:"\f2d9"}.fa-mixer{--fa:"\e056"}.fa-lastfm-square,.fa-square-lastfm{--fa:"\f203"}.fa-vimeo{--fa:"\f40a"}.fa-mendeley{--fa:"\f7b3"}.fa-uniregistry{--fa:"\f404"}.fa-figma{--fa:"\f799"}.fa-creative-commons-remix{--fa:"\f4ee"}.fa-cc-amazon-pay{--fa:"\f42d"}.fa-dropbox{--fa:"\f16b"}.fa-instagram{--fa:"\f16d"}.fa-cmplid{--fa:"\e360"}.fa-upwork{--fa:"\e641"}.fa-facebook{--fa:"\f09a"}.fa-gripfire{--fa:"\f3ac"}.fa-jedi-order{--fa:"\f50e"}.fa-uikit{--fa:"\f403"}.fa-fort-awesome-alt{--fa:"\f3a3"}.fa-phabricator{--fa:"\f3db"}.fa-ussunnah{--fa:"\f407"}.fa-earlybirds{--fa:"\f39a"}.fa-trade-federation{--fa:"\f513"}.fa-autoprefixer{--fa:"\f41c"}.fa-whatsapp{--fa:"\f232"}.fa-square-upwork{--fa:"\e67c"}.fa-slideshare{--fa:"\f1e7"}.fa-google-play{--fa:"\f3ab"}.fa-viadeo{--fa:"\f2a9"}.fa-line{--fa:"\f3c0"}.fa-google-drive{--fa:"\f3aa"}.fa-servicestack{--fa:"\f3ec"}.fa-simplybuilt{--fa:"\f215"}.fa-bitbucket{--fa:"\f171"}.fa-imdb{--fa:"\f2d8"}.fa-deezer{--fa:"\e077"}.fa-raspberry-pi{--fa:"\f7bb"}.fa-jira{--fa:"\f7b1"}.fa-docker{--fa:"\f395"}.fa-screenpal{--fa:"\e570"}.fa-bluetooth{--fa:"\f293"}.fa-gitter{--fa:"\f426"}.fa-d-and-d{--fa:"\f38d"}.fa-microblog{--fa:"\e01a"}.fa-cc-diners-club{--fa:"\f24c"}.fa-gg-circle{--fa:"\f261"}.fa-pied-piper-hat{--fa:"\f4e5"}.fa-kickstarter-k{--fa:"\f3bc"}.fa-yandex{--fa:"\f413"}.fa-readme{--fa:"\f4d5"}.fa-html5{--fa:"\f13b"}.fa-sellsy{--fa:"\f213"}.fa-square-web-awesome{--fa:"\e683"}.fa-sass{--fa:"\f41e"}.fa-wirsindhandwerk,.fa-wsh{--fa:"\e2d0"}.fa-buromobelexperte{--fa:"\f37f"}.fa-salesforce{--fa:"\f83b"}.fa-octopus-deploy{--fa:"\e082"}.fa-medapps{--fa:"\f3c6"}.fa-ns8{--fa:"\f3d5"}.fa-pinterest-p{--fa:"\f231"}.fa-apper{--fa:"\f371"}.fa-fort-awesome{--fa:"\f286"}.fa-waze{--fa:"\f83f"}.fa-bluesky{--fa:"\e671"}.fa-cc-jcb{--fa:"\f24b"}.fa-snapchat,.fa-snapchat-ghost{--fa:"\f2ab"}.fa-fantasy-flight-games{--fa:"\f6dc"}.fa-rust{--fa:"\e07a"}.fa-wix{--fa:"\f5cf"}.fa-behance-square,.fa-square-behance{--fa:"\f1b5"}.fa-supple{--fa:"\f3f9"}.fa-webflow{--fa:"\e65c"}.fa-rebel{--fa:"\f1d0"}.fa-css3{--fa:"\f13c"}.fa-staylinked{--fa:"\f3f5"}.fa-kaggle{--fa:"\f5fa"}.fa-space-awesome{--fa:"\e5ac"}.fa-deviantart{--fa:"\f1bd"}.fa-cpanel{--fa:"\f388"}.fa-goodreads-g{--fa:"\f3a9"}.fa-git-square,.fa-square-git{--fa:"\f1d2"}.fa-square-tumblr,.fa-tumblr-square{--fa:"\f174"}.fa-trello{--fa:"\f181"}.fa-creative-commons-nc-jp{--fa:"\f4ea"}.fa-get-pocket{--fa:"\f265"}.fa-perbyte{--fa:"\e083"}.fa-grunt{--fa:"\f3ad"}.fa-weebly{--fa:"\f5cc"}.fa-connectdevelop{--fa:"\f20e"}.fa-leanpub{--fa:"\f212"}.fa-black-tie{--fa:"\f27e"}.fa-themeco{--fa:"\f5c6"}.fa-python{--fa:"\f3e2"}.fa-android{--fa:"\f17b"}.fa-bots{--fa:"\e340"}.fa-free-code-camp{--fa:"\f2c5"}.fa-hornbill{--fa:"\f592"}.fa-js{--fa:"\f3b8"}.fa-ideal{--fa:"\e013"}.fa-git{--fa:"\f1d3"}.fa-dev{--fa:"\f6cc"}.fa-sketch{--fa:"\f7c6"}.fa-yandex-international{--fa:"\f414"}.fa-cc-amex{--fa:"\f1f3"}.fa-uber{--fa:"\f402"}.fa-github{--fa:"\f09b"}.fa-php{--fa:"\f457"}.fa-alipay{--fa:"\f642"}.fa-youtube{--fa:"\f167"}.fa-skyatlas{--fa:"\f216"}.fa-firefox-browser{--fa:"\e007"}.fa-replyd{--fa:"\f3e6"}.fa-suse{--fa:"\f7d6"}.fa-jenkins{--fa:"\f3b6"}.fa-twitter{--fa:"\f099"}.fa-rockrms{--fa:"\f3e9"}.fa-pinterest{--fa:"\f0d2"}.fa-buffer{--fa:"\f837"}.fa-npm{--fa:"\f3d4"}.fa-yammer{--fa:"\f840"}.fa-btc{--fa:"\f15a"}.fa-dribbble{--fa:"\f17d"}.fa-stumbleupon-circle{--fa:"\f1a3"}.fa-internet-explorer{--fa:"\f26b"}.fa-stubber{--fa:"\e5c7"}.fa-telegram,.fa-telegram-plane{--fa:"\f2c6"}.fa-old-republic{--fa:"\f510"}.fa-odysee{--fa:"\e5c6"}.fa-square-whatsapp,.fa-whatsapp-square{--fa:"\f40c"}.fa-node-js{--fa:"\f3d3"}.fa-edge-legacy{--fa:"\e078"}.fa-slack,.fa-slack-hash{--fa:"\f198"}.fa-medrt{--fa:"\f3c8"}.fa-usb{--fa:"\f287"}.fa-tumblr{--fa:"\f173"}.fa-vaadin{--fa:"\f408"}.fa-quora{--fa:"\f2c4"}.fa-square-x-twitter{--fa:"\e61a"}.fa-reacteurope{--fa:"\f75d"}.fa-medium,.fa-medium-m{--fa:"\f23a"}.fa-amilia{--fa:"\f36d"}.fa-mixcloud{--fa:"\f289"}.fa-flipboard{--fa:"\f44d"}.fa-viacoin{--fa:"\f237"}.fa-critical-role{--fa:"\f6c9"}.fa-sitrox{--fa:"\e44a"}.fa-discourse{--fa:"\f393"}.fa-joomla{--fa:"\f1aa"}.fa-mastodon{--fa:"\f4f6"}.fa-airbnb{--fa:"\f834"}.fa-wolf-pack-battalion{--fa:"\f514"}.fa-buy-n-large{--fa:"\f8a6"}.fa-gulp{--fa:"\f3ae"}.fa-creative-commons-sampling-plus{--fa:"\f4f1"}.fa-strava{--fa:"\f428"}.fa-ember{--fa:"\f423"}.fa-canadian-maple-leaf{--fa:"\f785"}.fa-teamspeak{--fa:"\f4f9"}.fa-pushed{--fa:"\f3e1"}.fa-wordpress-simple{--fa:"\f411"}.fa-nutritionix{--fa:"\f3d6"}.fa-wodu{--fa:"\e088"}.fa-google-pay{--fa:"\e079"}.fa-intercom{--fa:"\f7af"}.fa-zhihu{--fa:"\f63f"}.fa-korvue{--fa:"\f42f"}.fa-pix{--fa:"\e43a"}.fa-steam-symbol{--fa:"\f3f6"}:host,:root{--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url(/bluesky/assets/fontawesome/webfonts/fa-regular-400.woff2) format("woff2"),url(/bluesky/assets/fontawesome/webfonts/fa-regular-400.ttf) format("truetype")}.fa-regular,.far{font-weight:400}:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url(/bluesky/assets/fontawesome/webfonts/fa-solid-900.woff2) format("woff2"),url(/bluesky/assets/fontawesome/webfonts/fa-solid-900.ttf) format("truetype")}.fa-solid,.fas{font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(/bluesky/assets/fontawesome/webfonts/fa-brands-400.woff2) format("woff2"),url(/bluesky/assets/fontawesome/webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(/bluesky/assets/fontawesome/webfonts/fa-solid-900.woff2) format("woff2"),url(/bluesky/assets/fontawesome/webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(/bluesky/assets/fontawesome/webfonts/fa-regular-400.woff2) format("woff2"),url(/bluesky/assets/fontawesome/webfonts/fa-regular-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(/bluesky/assets/fontawesome/webfonts/fa-solid-900.woff2) format("woff2"),url(/bluesky/assets/fontawesome/webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(/bluesky/assets/fontawesome/webfonts/fa-brands-400.woff2) format("woff2"),url(/bluesky/assets/fontawesome/webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(/bluesky/assets/fontawesome/webfonts/fa-regular-400.woff2) format("woff2"),url(/bluesky/assets/fontawesome/webfonts/fa-regular-400.ttf) format("truetype");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:"FontAwesome";font-display:block;src:url(/bluesky/assets/fontawesome/webfonts/fa-v4compatibility.woff2) format("woff2"),url(/bluesky/assets/fontawesome/webfonts/fa-v4compatibility.ttf) format("truetype");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}

/* ==============================================================================
   0.2 VENDOR - Tiny Slider
   origem: assets/tiny-slider/tiny-slider.css
   ============================================================================== */

.tns-outer{padding:0 !important}.tns-outer [hidden]{display:none !important}.tns-outer [aria-controls],.tns-outer [data-action]{cursor:pointer}.tns-slider{-webkit-transition:all 0s;-moz-transition:all 0s;transition:all 0s}.tns-slider>.tns-item{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.tns-horizontal.tns-subpixel{white-space:nowrap}.tns-horizontal.tns-subpixel>.tns-item{display:inline-block;vertical-align:top;white-space:normal}.tns-horizontal.tns-no-subpixel:after{content:'';display:table;clear:both}.tns-horizontal.tns-no-subpixel>.tns-item{float:left}.tns-horizontal.tns-carousel.tns-no-subpixel>.tns-item{margin-right:-100%}.tns-no-calc{position:relative;left:0}.tns-gallery{position:relative;left:0;min-height:1px}.tns-gallery>.tns-item{position:absolute;left:-100%;-webkit-transition:transform 0s, opacity 0s;-moz-transition:transform 0s, opacity 0s;transition:transform 0s, opacity 0s}.tns-gallery>.tns-slide-active{position:relative;left:auto !important}.tns-gallery>.tns-moving{-webkit-transition:all 0.25s;-moz-transition:all 0.25s;transition:all 0.25s}.tns-autowidth{display:inline-block}.tns-lazy-img{-webkit-transition:opacity 0.6s;-moz-transition:opacity 0.6s;transition:opacity 0.6s;opacity:0.6}.tns-lazy-img.tns-complete{opacity:1}.tns-ah{-webkit-transition:height 0s;-moz-transition:height 0s;transition:height 0s}.tns-ovh{overflow:hidden}.tns-visually-hidden{position:absolute;left:-10000em}.tns-transparent{opacity:0;visibility:hidden}.tns-fadeIn{opacity:1;filter:alpha(opacity=100);z-index:0}.tns-normal,.tns-fadeOut{opacity:0;filter:alpha(opacity=0);z-index:-1}.tns-vpfix{white-space:nowrap}.tns-vpfix>div,.tns-vpfix>li{display:inline-block}.tns-t-subp2{margin:0 auto;width:310px;position:relative;height:10px;overflow:hidden}.tns-t-ct{width:2333.3333333%;width:-webkit-calc(100% * 70 / 3);width:-moz-calc(100% * 70 / 3);width:calc(100% * 70 / 3);position:absolute;right:0}.tns-t-ct:after{content:'';display:table;clear:both}.tns-t-ct>div{width:1.4285714%;width:-webkit-calc(100% / 70);width:-moz-calc(100% / 70);width:calc(100% / 70);height:10px;float:left}

/* ==============================================================================
   0.3 VENDOR - Custom Select
   origem: assets/custom-select/custom-select.css
   ============================================================================== */

select.custom-select.hidden {
    display: none;
}
      
      
.custom-select {
    display: inline-block;
    position: relative;
    font-size: 1rem;
	font-weight: 400;
	color: var(--grey);
    line-height: 1.4;
    width: 100%;
    z-index: 1;
    transition: z-index 0s .2s;
    font-family: var(--font-family-2);
}
.custom-select:focus,
.custom-select *:focus {
    outline: none;
    border: none;
    box-shadow: none;
}
.custom-select.open {
    z-index: 2;
    transition: none;
}

.custom-select .placeholder {
    position: relative;
	padding: 15px 0;
	background-color: transparent;
	border: none;
	border-radius: 0;
    border-bottom: 1px solid #d0d1d1;
    line-height: 1.2;
    resize: none;
    transition: var(--transition);
    font-family: var(--font-family-2);


}
.custom-select .placeholder.has-img {
    padding-left: 35px;
}
.custom-select.not-filled + .custom-select .placeholder {
    border-bottom-color: var(--warning);
}

.custom-select:not(.has-reset) .placeholder::before {
    content: "";
	position: absolute;
	top: -2px;bottom: 0;
	right: 2px;
	margin: auto;
	width: 6px;height: 6px;
	border-right: 1px solid #a5ae01;
	border-bottom: 1px solid #a5ae01;
	transform: rotate(45deg);
    pointer-events: none;
}
.custom-select.has-reset .placeholder > div.reset {
	position: absolute;
	top: -6px;bottom: 0;
    right: 0;
	margin: auto;
	width: 10px;height: 10px;
    overflow: hidden;
    pointer-events: none;
}
.custom-select.has-reset.isSelected .placeholder > div.reset {
    top: 0;
    pointer-events: auto;
}
.custom-select.has-reset .placeholder > div.reset::before,
.custom-select.has-reset .placeholder > div.reset::after {
    content: "";
    position: absolute;
    top: 0;bottom: -10px;
    left: -1px;
    margin: auto;
    width: 12px;height: 1px;
    background-color: var(--black);
}
.custom-select.has-reset.isSelected .placeholder > div.reset::before,
.custom-select.has-reset.isSelected .placeholder > div.reset::after {
    bottom: 0;
}

.custom-select.has-reset .placeholder > div.reset::before {
    transform: rotate(45deg);
}
.custom-select.has-reset .placeholder > div.reset::after {
    transform: rotate(-45deg);
}

.custom-select .placeholder.has-img span {
    position: absolute;
    top: 0;bottom: 0;
    left: 0;
    margin: auto !important;
    width: 20px;
    height: 20px;
    background-position: center;
    background-size: cover;
}

.custom-select .options-wrapper {
    position: absolute;
    left: 0;
    width: 100%;
    max-height: 0;
    transition: var(--transition);
    overflow: hidden;
    background-color: white;
    padding-right: 10px;
    border-left: 1px solid #d0d1d1;
    border-right: 1px solid #d0d1d1;
    border-bottom: 1px solid #d0d1d1;
    opacity: 0;
    z-index: 2;
}
.custom-select.open .options-wrapper,
.custom-select.open .options {
    max-height: 250px;
    opacity: 1;
}

.custom-select .options {
    padding: 10px 0;
    overflow: auto;
}
.custom-select .options::-webkit-scrollbar-track {
    background-color: transparent;
    margin: 15px 0;
}
.custom-select .options::-webkit-scrollbar {
    width: 2px;
    background-color: transparent;
}
.custom-select .options::-webkit-scrollbar-thumb {
    background-color: #d0d1d1;
}

.custom-select .options > div {
    position: relative;
    padding: 5px 10px;
    transition: var(--transition);
    cursor: pointer;
    color: #888787;
}
.custom-select .options > div.selected,
.custom-select .options > div:hover {
    color: var(--black);
}
.custom-select .options > div.disabled {
    opacity: .5;
    pointer-events: none;
}
.custom-select .options > div[data-value=""] {
    display: none;
}

.custom-select .options > div.has-img {
    padding-left: 40px;
    padding-top: 8px;
    padding-bottom: 8px;
}
.custom-select .options > div.has-img span {
    position: absolute;
    top: 0;bottom: 0;
    left: 10px;
    margin: auto;
    width: 20px;
    height: 20px;
    background-position: center;
    background-size: cover;
}
.custom-select .options > div.has-img span::before {
    content: "";
    position: absolute;
    top: -3px;bottom: -3px;
    left: -3px;right: -3px;
    border: 1px solid transparent;
    transition: var(--transition);
    pointer-events: none;
}
.custom-select .options > div.has-img.selected span::before {
    border-color: var(--black)
}


@media(min-width: 768px) {
    .custom-select .options > div {
        padding: 5px 0px;
    }

    .custom-select .options > div.has-img {
        padding-left: 55px;
    }
    .custom-select .options > div.has-img span {
        left: 20px;
    }
    
}

/* ==============================================================================
   0.4 VARIÁVEIS
   origem: variables.css + diferenças de variables_b.css / variables_c.css
   ============================================================================== */

:root {
    --wtb:#ffffff;
    --white:#ffffff;
    --btw:#000000;
    --bbtw: #0a0a0a;
    --black: #0a0a0a;
    --transition: all .3s ease-in-out;
    --transition-slow: all 1.5s ease-in-out;
    --warning: red;
    --transparent: transparent;
	--font-family: 'IBM Plex Mono', monospace;
    --font-family-2: 'Gotham', sans-serif;

    font-size: 13px;

}

@media(min-width: 768px) {
    :root {
        font-size: 16px;
    }
}

:root.vars_b {
    --font-family: 'Gotham', sans-serif;
}
:root.vars_c {
    --font-family: 'Gotham', sans-serif;
}

/* ==============================================================================
   0.5 FONTES
   origem: fonts.css
   ============================================================================== */

/* Fontes CAIS: Gotham (texto) e IBM Plex Mono (mono). Gerado em 26/10/2026. */

@font-face {
	font-family: 'Gotham';
	src: url('/bluesky/fonts/gotham-thin.woff2') format('woff2'),
		url('/bluesky/fonts/gotham-thin.woff') format('woff');
	font-weight: 100;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham';
	src: url('/bluesky/fonts/gotham-thinitalic.woff2') format('woff2'),
		url('/bluesky/fonts/gotham-thinitalic.woff') format('woff');
	font-weight: 100;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham';
	src: url('/bluesky/fonts/gotham-extralight.woff2') format('woff2'),
		url('/bluesky/fonts/gotham-extralight.woff') format('woff');
	font-weight: 200;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham';
	src: url('/bluesky/fonts/gotham-extralightitalic.woff2') format('woff2'),
		url('/bluesky/fonts/gotham-extralightitalic.woff') format('woff');
	font-weight: 200;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham';
	src: url('/bluesky/fonts/gotham-light.woff2') format('woff2'),
		url('/bluesky/fonts/gotham-light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham';
	src: url('/bluesky/fonts/gotham-book.woff2') format('woff2'),
		url('/bluesky/fonts/gotham-book.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham';
	src: url('/bluesky/fonts/gotham-medium.woff2') format('woff2'),
		url('/bluesky/fonts/gotham-medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham';
	src: url('/bluesky/fonts/gotham-bold.woff2') format('woff2'),
		url('/bluesky/fonts/gotham-bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham';
	src: url('/bluesky/fonts/gotham-bolditalic.woff2') format('woff2'),
		url('/bluesky/fonts/gotham-bolditalic.woff') format('woff');
	font-weight: 700;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham';
	src: url('/bluesky/fonts/gotham-black.woff2') format('woff2'),
		url('/bluesky/fonts/gotham-black.woff') format('woff');
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham';
	src: url('/bluesky/fonts/gotham-ultra.woff2') format('woff2'),
		url('/bluesky/fonts/gotham-ultra.woff') format('woff');
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-thin.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-thin.woff') format('woff');
	font-weight: 100;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-thinitalic.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-thinitalic.woff') format('woff');
	font-weight: 100;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-extralight.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-extralight.woff') format('woff');
	font-weight: 200;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-extralightitalic.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-extralightitalic.woff') format('woff');
	font-weight: 200;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-light.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-lightitalic.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-lightitalic.woff') format('woff');
	font-weight: 300;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-regular.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-italic.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-italic.woff') format('woff');
	font-weight: 400;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-medium.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-mediumitalic.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-mediumitalic.woff') format('woff');
	font-weight: 500;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-semibold.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-semibold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-semibolditalic.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-semibolditalic.woff') format('woff');
	font-weight: 600;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-bold.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'IBM Plex Mono';
	src: url('/bluesky/fonts/ibmplexmono-bolditalic.woff2') format('woff2'),
		url('/bluesky/fonts/ibmplexmono-bolditalic.woff') format('woff');
	font-weight: 700;
	font-style: italic;
	font-display: swap;
}

h2,h3,h4 {
    text-transform: uppercase;
    /* font-weight: 400 !important; */
}
p {
    font-family: var(--font-family-2);
}

/* ==============================================================================
   1. BLOCOS HP
   origem: hp/hp.css
   ============================================================================== */

/*****************************/
/********** BANNERS **********/
/*****************************/
.banners{
    position: relative;
}

.banners .slider {
    height: 100%;
}

.banners .slider .slide .subtitle {
    position: absolute;
    top: unset;
    left: 0;
    right: 0;
    bottom: 150px;
    margin: auto 0 auto 11%;
    max-width: 600px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    perspective: 1000px;
    backface-visibility: hidden;
    transform: translate3d(0, 0, 0);
    -webkit-perspective: 1000px;
    -webkit-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
}

.banners .slider .slide .subtitle a {
    
    pointer-events: auto;
}


.banners .slider .slide .subtitle h2 {
    font-size: 60px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: normal;
    text-align: left;
    color: white;
    margin: 0;
}

.banners .slider .slide .subtitle p{
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    text-align: left;
    color: white;
    margin: 25px 0 0;
}

.banners .slider .slide .subtitle div{
    display: flex;
    position: relative;
    gap: 10px;
    margin-top: 35px;
}

.banners .slider .slide .img {
    overflow: hidden;
    position: relative;
    height: 100vh;
    width: 100%;
    z-index: 0;
}

.banners .slider .slide .img::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    mix-blend-mode: multiply;
    background-blend-mode: multiply;
    background-image: linear-gradient(to top, var(--white), #b5b5b5);
    z-index: 1;
    will-change: transform;
}

.banners .slider .slide .img.img2::before{
    background-image: linear-gradient(to top, var(--white), #d9d9d9);
}

.banners .slider .slide:has(.subtitle) .img::before {
    mix-blend-mode: multiply;
    background-image: linear-gradient(to bottom, #b5b5b5, #b5b5b5);
}

.banners .slider .img img{
    position: relative;
    overflow: hidden;
    height: 100%;
}


:where(section:not(.content,.related-section)) .slider .slide .img.video video,
:where(section:not(.content,.related-section)) .slider .slide .img.video iframe{
    width: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    object-fit: cover;
    object-position: center;
    background-color: black;
}

.banners .slider .slide.video .img iframe {
    transform: scale(1.2);
    z-index:-1;
}

.banners .tns-nav {
    background: transparent;
    position: absolute;
    display: flex;
    bottom: 0;
    padding: 20px 20px 32px 41px;
    gap: 25px;
    align-items: center;
    z-index: 2;
    top: auto;
    margin: auto;
    justify-content: center;
    left: 0;
    right: 0;
}

.banners .tns-nav button {
    height: 15px;
    width: 15px;
    z-index: 1;
    transition: var(--transition);
    border: none;
    outline: none;
    padding: 0;
    margin: 0;
    background: none;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.banners .tns-nav button:before {
    content: "";
    border-radius: 100%;
    background: #d7d4d4;
    height: 5px;
    width: 5px;
    z-index: 1;
    transition: var(--transition);
    display: block;
    position: absolute;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
}


.banners .tns-nav button.tns-nav-active:before,
.banners .tns-nav button:hover:before {
    height: 9px;
    width: 9px;
}

.banners .img.video{
    background-color: black;
}

.banners .slider .slide.video .subtitle a.play{
    margin: auto;
    width: 40px;
    height: 40px;
    z-index: 1;
    cursor: pointer;
    pointer-events: all;
    position: relative;
}

.banners .slider .slide.video .subtitle a.play:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 12px;
    height: 14px;
    margin: auto;
    -webkit-mask-image: url(/bluesky/assets/img/template/play_icon.svg);
    mask-image: url(/bluesky/assets/img/template/play_icon.svg);
    mask-position: center;
    -webkit-mask-position: center;
    mask-size: cover;
    -webkit-mask-size: cover;
    background-color: white;
    transition: var(--transition);
    z-index: 2;
}
.banners .slider .slide.video .subtitle a.play:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    transition: var(--transition);
    border-radius: 100%;
    border: 2px solid white;
    z-index: 1;
    background: none;
}

.banners .slider .slide.video .subtitle a.play:hover::after{
    transform: scale(1.05);
}

.banners .img.video.open img {
    opacity: 0;
    pointer-events: none;
}



.banners .video-button {
	opacity: 0;
    min-height: 82px;
    min-width: 82px;
    padding: 7px;
    aspect-ratio: 1;
    position: absolute;
    pointer-events: none;
    transform: translate(-50%, -50%);
    border-radius: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.banners .video-button.mobile {
	display: none;
}

.banners .video-button.in {
	opacity: 1;
}

.banners:has(.video-button.in) .slider .slide {
	cursor: none;
}

.banners .video-button a {
	font-size: 10px;
	font-weight: bold;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.4;
	letter-spacing: 0.8px;
	color: white;
	text-transform: uppercase;
}


.banners .video-button::before {
    content: "";
    opacity: 0.15;
    height: 100%;
    width: 100%;
    position: absolute;
    pointer-events: none;
    background-color: white;
}

@media (min-width: 768px) {
    
    .banners .slider .slide.video .subtitle a.play{
        width: 55px;
        height: 55px;
    }

    .banners .slider .slide.video .subtitle a.play:after {
        width: calc(100% - 4px);
        height: calc(100% - 4px);
        background: white;
        opacity: .25;
    }

    .banners .slider .slide.video .subtitle a.play:before {
        width: 13px;
        height: 16px;
    }
}

.banners .slider .btn-video{
    display: none;
    position: absolute;
    z-index: 10;
    top: auto;
    bottom: 70px;
    left: auto;
    right: 20px;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.43;
    letter-spacing: normal;
    text-align: left;
    color: var(--white);
}


@media(max-width: 767px) {
    .banners .slider .btn-video{
        display: inherit;
    }
    .banners .video-button{
        display: none;
    }
    .banners .slider{
        display: flex;
        justify-content: center;
        align-items: flex-start;
        min-height: 100vh;
    }

    .banners .slider > div{
        flex: 1;
    }
    .banners .slider .itens h2{
        margin-bottom: 20px;
    }

    .banners .tns-nav {
        padding: 0px;
        flex-direction: row;
        top: auto;
        left: 20px;
        right: auto;
        bottom: 70px;
        justify-content: center;
        gap: 30px;
    }

    .banners .button{
        text-align: center;
    }
    .banners .slider .slide .subtitle{
        margin-inline: 0px;
        padding-inline: 20px;
    }
    .banners .slider .slide .subtitle h2 {
        font-size: 35px;
        font-weight: bold;
        font-stretch: normal;
        font-style: normal;
        line-height: 1.09;
    }

    .banners .slider .slide .subtitle p{
        font-size: 16px;
        line-height: 1.38;
        letter-spacing: normal;
        margin-top: 15px;
    }

    .banners .slider .slide .subtitle div .button{
        padding: 11.5px 22px;
        font-size: 14px;
        font-weight: 600;
        line-height: normal;
        letter-spacing: normal;
        align-items: center;
        display: flex;
    }

    .banners .slider .slide .subtitle div{
        margin-top: 25px;
    }
    
}

.index section:not(.banners):first-of-type{
    margin-top: 120px;
}

@media(max-width: 767px) {
    .index section:not(.banners):first-of-type{
        margin-top: 70px;
    }  



    :is(.index, .template) section.testemunhos{
        margin-bottom: 25px;
    }
}



/******************************/
/********** CLIENTES **********/
/******************************/
.clientes{
    position: relative;
    text-align: center;
}
.clientes .slide img{
    width: 220px;
    height: auto;
    filter: grayscale(100%) brightness(0);
    opacity: .25;
    transition: var(--transition);
}

.clientes .slide a:hover img{
    opacity: .95;
    filter: none;
    cursor: pointer;
}

.clientes .container{
    text-align: center;
    position: relative;
    padding-inline: 0;
    margin-top: 44px;
}

.clientes h2{
    font-size: 24.5px;
    font-weight: 600;
    line-height: 1.16;
    letter-spacing: normal;
    text-align: center;
    color: var(--secondary);
    margin-inline: 25px;
}

.clientes h2 strong{
    color: var(--primary);
    font-weight: 600;
}

.clientes .container .slider{
    margin-inline: auto;
    display: flex;
    flex-direction: row;
    gap: 20px;
}


.clientes .slider-arrows > div::before {
	background-color: #dedddd;
}

.clientes .slider-arrows > div:hover::before {
    background-color: #757575;
}

.clientes .slider-arrows > div.prev {
    transform: rotate(180deg);
}


.clientes .tns-inner{
    max-width: 100%;
}

.clientes .tns-outer{
    display: flex;
    justify-content: center;
}

@media(min-width:768px){
    .clientes h2{
        font-size: 25.5px;
    }
    .clientes .container{
        max-width: 1380px;
        padding-inline: 80px;
    }
    .clientes .slide img{
        width: 220px;
    }
}


/*************************************/
/********** GALERIA E TEXTO **********/
/*************************************/
.galeria_txt .imgs{
    visibility: hidden;
}
@media(min-width: 768px){
    :is(.index, .template) section.galeria_txt:has(.tns-nav){
        margin-bottom: 145px;
    }
}

.galeria_txt .container{
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 1220px;
}

.galeria_txt .container > div{
    max-width: 550px;
    width: 100%;
    position: relative;
}

.galeria_txt .container h4,
.galeria_txt .container .h4{
    font-size: 18px;
    font-weight: 600;
    line-height: 1.58;
    letter-spacing: normal;
    text-align: left;
    color: var(--primary);
    margin: 0;
    margin-bottom: 15px;
}

.galeria_txt .container h2{
    font-size: 25.5px;
    font-weight: bold;
    line-height: 1.16;
    letter-spacing: -0.26px;
    text-align: left;
    color: var(--secondary);
    margin: 0;
    margin-bottom: 30px;
    text-transform: uppercase;
}



.galeria_txt .container p,
.galeria_txt .container > div:last-of-type{
    font-size: 18px;
    font-weight: 300;
    line-height: 1.33;
    letter-spacing: normal;
    text-align: left;
    color: var(--third);
    width: 100%;
}

.galeria_txt .container > .cont{
    margin-top: 30px;
}

.galeria_txt .container > .imgs:has(.tns-outer .slide + .slide) + .cont{
    margin-top: 60px;
}



.galeria_txt .container p:has(+.button){
    margin-bottom: 0;
}



.galeria_txt .container .button{
    margin-top: 30px;
    text-align: center;
    width: 100%;
}

.galeria_txt .container .cont a:not(.button){
    color: var(--primary);
    font-weight: 600;
    border-bottom: 1px dotted currentColor;
}
.galeria_txt .container .cont a:not(.button):hover{
    border-bottom: 1px dotted var(--transparent);
}

.galeria_txt .container .cont strong{
    font-weight: 600;
    color: var(--secondary);
}

.galeria_txt .container .cont h2 strong{
    color: var(--primary);
    font-weight: 600;
}


.galeria_txt .container ul{
    margin: 0;
    padding-block: 0px;
    margin-top: 26px;
    counter-reset: item;
    padding-left: 24px;
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.galeria_txt .container ul li{
    position: relative;
    padding-left: 9px;
}
.galeria_txt .container ul li::before {
    content: "";
    display: inline-block;
    height: 15px;
    width: 18px;
    margin-left: -2em;
    margin-right: 26px;
    -webkit-mask-image: url(/bluesky/assets/img/svg/bullet.svg);
    mask-image: url(/bluesky/assets/img/svg/bullet.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
    position: absolute;
    top: 5px;
    left: 1rem;
}

.galeria_txt .container .legend {
    position: absolute;
    top: 0;bottom: 0px;
    left: 0;right: 0;
    padding-inline: 20px;
    padding-bottom: 15px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    z-index: 1;
    pointer-events: none;
    will-change: transform;
}

.galeria_txt .slide:has(.legend):before{
    content: "";
    position: absolute;
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    height: 50%;
    mix-blend-mode: multiply;
    background-image: linear-gradient(to top, rgba(145, 145, 145, 1) 0%, rgba(145, 145, 145, 0));
    /* background-image: linear-gradient(to bottom, #919191, #919191); */
    z-index: 1;
    pointer-events: none;
    will-change: transform;
}

.galeria_txt .slide.video .legend{
    background: none;
    will-change: transform;
}

.galeria_txt .slide.video:has(.legend):before{
    height: auto;
    top: 0;
    will-change: transform;
}

.galeria_txt .container .legend p {
    color: white;
    font-weight: 300;
	font-size: 16px;
	line-height: 1.25;
	margin-bottom: 5px;
    text-align: center;
    will-change: transform;
}


.rounded .galeria_txt .tns-inner{
    overflow: hidden !important;
    border-radius: 30px !important;

}

.galeria_txt .tns-nav{
    position: absolute;
    left: 0;
    right: 0;
    top: auto;
    bottom: -34px;
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 20px;
    will-change: transform;
}

.galeria_txt .tns-nav button{
    background: none;
    border: none;
    font-size: inherit;
    position: relative;
    will-change: transform;
    transition: var(--transition);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 10px;
    height: 10px;
}

.galeria_txt .tns-nav button::before{
    content: "";
    width: 6px;
    height: 6px;
    display: block;
    border: none;
    background: #d7d4d4;
    border-radius: 50%;
    transition: var(--transition);
    will-change: transform;
    position: absolute;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
}

.galeria_txt .tns-nav button:hover::before{
    width: 8px;
    height: 8px;
}

.galeria_txt .tns-nav button.tns-nav-active::before{
    width: 10px;
    height: 10px;
    background: var(--primary);
}

/* .galeria_txt .slide{
    width: 100%;
    position: relative;
    overflow: hidden;
}

.galeria_txt .slide.video {
	width: 100%;
    position: relative;
} */

.galeria_txt .slide.video > div{
    position: relative;
    isolation: isolate;
}
.galeria_txt .slide.video > div::before{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(182, 180, 180, 0.6);
    mix-blend-mode: multiply;
    z-index: 1;
    pointer-events: none;
    display: block;
}

/* .galeria_txt .slide.video img {
	position: relative;
	margin: 0;
} */

.video-wrapper-fullscreen-galeria iframe,
.video-wrapper-fullscreen-galeria video,
.galeria_txt .slide.video iframe,
.galeria_txt .slide.video video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border: 0;
    opacity: 0;
    pointer-events: none;
    z-index: 2;
}

.video-wrapper-fullscreen-galeria iframe,
.video-wrapper-fullscreen-galeria video{
    position: relative;
}

.galeria_txt .slide.video.open iframe,
.galeria_txt .slide.video.open video {
    opacity: 1;
    pointer-events: auto;
}



.galeria_txt .slide.video a.play {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 41px;
    height: 41px;
    z-index: 1;
    cursor: pointer;
    pointer-events: all;
    will-change: transform;
    aspect-ratio: 1;
}



.galeria_txt .slide.video a.play:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 12px;
    height: 14px;
    margin: auto;
    -webkit-mask-image: url(/bluesky/assets/img/template/play_icon.svg);
    mask-image: url(/bluesky/assets/img/template/play_icon.svg);
    mask-position: center;
    -webkit-mask-position: center;
    mask-size: cover;
    -webkit-mask-size: cover;
    background-color: white;
    transition: var(--transition);
    z-index: 2;
}
.galeria_txt .slide.video a.play:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: calc(41px - 4px);
    height: calc(41px - 4px);
    transition: var(--transition);
    border-radius: 100%;
    border: 2px solid white;
    z-index: 1;
    background: none;
    aspect-ratio: 1;
}

.galeria_txt .slide.video a.play:hover::after{
    transform: scale(1.05);
}

@media (min-width: 768px) {
    .galeria_txt .container{
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 80px;
    }

    .galeria_txt .container.align-start{
        align-items: flex-start;
    }

    .galeria_txt .container h4,
    .galeria_txt .container .h4{
        font-size: 20.5px;
        line-height: 1.44;
        margin-bottom: 15px;
        font-family: var(--font-family-2);
    }

    .galeria_txt .container h2{
        font-size: 40px;
        line-height: 1.13;
        letter-spacing: -0.4px;
        margin-bottom: 30px;
    }

    .galeria_txt .container p,
    .galeria_txt .container > div:last-of-type{
        font-size: 20px;
        font-weight: 300;
        line-height: 1.5;
    }

    .galeria_txt .container .button{
        width: auto;
    }

    .galeria_txt .container.typeTxtGal > div:first-of-type{
        order: 2;
    }

    .galeria_txt .container > div:last-of-type{
        margin-top: inherit;
    }
    .galeria_txt .container.typeTxtGal > div:last-of-type{
        padding-left: 0;
        padding-right: 0px;
    }


    .galeria_txt .slide.video a.play{
        width: 93px;
        height: 93px;
    }
    .galeria_txt .slide.video a.play:before {
        left: 4px;
        width: 21px;
        height: 25px;
    }
    .galeria_txt .slide.video a.play:after {
        border: 4px solid white;
        width: calc(93px - 8px);
        height: calc(93px - 8px);
    }

    .galeria_txt .container .legend {
        padding-inline: 50px;
        padding-bottom: 12px;
    }

    .galeria_txt .container ul li {
        padding-left: 1rem;
    }

    .galeria_txt .container ul li::before{
        top: 5px;
        width: 25px;
        height: 21px;
    }

    .galeria_txt .container > .imgs:has(.tns-outer .slide + .slide) + .cont{
        margin-top: 0px;
    }

}


/************************************/
/********** SECÇÕES HEADER **********/
/************************************/

.galeria .header,
:where(section:not(.content,.related-section)) .container .header:not(.text-left,.text-right ) {
    max-width: 100%;
    margin: 0 25px 55px;
    display: block !important;
    text-align: center;
}

:where(section:not(.content,.related-section)) .container .header h4,
:where(section:not(.content,.related-section)) .container .header .h4{
    font-size: 18px;
    font-weight: 600;
    line-height: 1.36;
    letter-spacing: normal;
    color: var(--primary);
    margin: 0;
    margin-bottom: 15px;
}

.galeria .header h2,
:where(section:not(.content,.related-section)) .container .header h2, .hp_texto .container .header > h3:not(.h4){
    font-size: 25.5px;
    font-weight: bold;
    line-height: 1.16;
    letter-spacing: -0.26px;
    color: var(--secondary);
    margin: 0;
    margin-bottom: 30px;
    
}

:where(section:not(.content,.related-section)) .container .header h2 strong{
    color: var(--primary);
}

:where(section:not(.content,.related-section)) .container .header p{
    font-size: 20px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    color: var(--secondary);
    margin-bottom: 0;
    font-family: var(--font-family-2);
}

.mobile .hp-horizontal-slideshow .description{
    padding-inline: 20px;
}

@media(max-width:1200px){
    .galeria .header, 
    :where(section:not(.content,.related-section)) .container .header:first-of-type,
    .testemunhos.tablet .container > div:first-of-type,
    .hp-horizontal-slideshow .description{
        max-width: 660px !important;
        margin-inline: auto !important;
    }
}


@media(min-width:768px){
    .galeria .header,
    :where(section:not(.content,.related-section)) .container .header:first-of-type:not(.text-left,.text-right){
        margin-inline: 80px;
    }

    .galeria .header,
    :where(section:not(.content,.related-section)) .container .header:not(.text-left,.text-right){
        margin: 0 25px 55px;
    }
    
    :where(section:not(.content,.related-section)) .container .header h4,
    :where(section:not(.content,.related-section)) .container .header .h4{
        font-size: 20.5px;
        font-weight: 600;
        line-height: 1.44;
        margin-bottom: 15px;
    }

    .hp_texto .container .header .h4{
        font-size: 16.5px;
        text-transform: uppercase;
    }

    .galeria .header h2,
    :where(section:not(.content,.related-section)) .container .header h2, .hp_texto .container .header > h3:not(.h4){
        font-size: 40px;
        line-height: 1;
        letter-spacing: -0.4px;
        margin-bottom: 30px;
    }

    :where(section:not(.content,.related-section)) .container .header p{
        font-size: 22px;
        line-height: 1.45;
    }

}


.hp_texto .container{
    text-align: center;
}

.hp_texto .container .header{
    margin-bottom: 40px;
}


/*********************************/
/********** TESTEMUNHOS **********/
/*********************************/


.testemunhos + *{
    margin-top: 40px;
}

.testemunhos .container{
    text-align: center;
    max-width: 1360px;
    padding-inline: 0;
}

.testemunhos .container > div:first-of-type + div{
    max-width: 1340px;
    margin-inline: auto;
    padding-inline: 0px !important;
}

.testemunhos .container > div:first-of-type{
    max-width: 910px;
    margin: 0 25px 55px;
}

.testemunhos .container h4,
.testemunhos .container .h4{
    font-size: 18px;
    font-weight: 600;
    line-height: 1.36;
    letter-spacing: normal;
    color: var(--primary);
    margin: 0;
    margin-bottom: 15px;
}

.testemunhos .container h2{
    font-size: 25.5px;
    font-weight: 400;
    line-height: 1.16;
    letter-spacing: -0.26px;
    color: var(--secondary);
    margin: 0;
    margin-bottom: 30px;
    text-transform: uppercase;
}

.testemunhos .container h2 strong{
    color: var(--primary);
}

.testemunhos .container p{
    font-size: 20px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: normal;
    color: var(--secondary);
    margin-bottom: 0;
    font-family: var(--font-family-2);
}

.testemunhos .slider{
    display: flex;
    justify-content: center;
    flex-direction: row;
    gap: 24px;
    margin-bottom: 35px;
    margin-inline: auto;
    margin-left: 10px;
}

.testemunhos .slide{
    /* max-width: 376px; */
    flex: 1;
    min-height: 340px;
}

.testemunhos .slide > div{
    padding: 50px 30px;
    box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.04);
    transition: var(--transition);
    background-color: white;
    height: 100%;
}

.testemunhos .tns-slider .slide > div{
    box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.0);
}

.mobile-or-tablet .testemunhos .slide.tns-slide-active + div > div,
.testemunhos .slide.tns-slide-active > div{
    box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.04);
}


.testemunhos:not(.t_google) .slide > div:before{
    content:"";
    display: block;
    mask-image: url(/bluesky/assets/img/template/quote.svg);
	-webkit-mask-image: url(/bluesky/assets/img/template/quote.svg);
	mask-repeat: no-repeat;
	mask-size: contain;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	-webkit-mask-position: center center;
	background-color: white;
	margin: 0 auto 29px;
	height: 25px;
	width: 31px;
	background-color: var(--primary);
}

.testemunhos .slide > div p{
    font-size: 15px;
    font-weight: 300;
    line-height: 1.42;
    letter-spacing: normal;
    text-align: center;
    color: var(--third);
    margin: inherit;
}
.testemunhos .slide > div p + div{
    margin-top: 8px;
}
.testemunhos .slide > div p strong{
    font-weight: 500;
    color: var(--secondary);
}


.testemunhos .slider-arrows > div::before {
	background-color: #dedddd;
}

.testemunhos .slider-arrows > div:hover::before {
    background-color: #757575;
}

.testemunhos .slider-arrows>div.prev {
    transform: rotate(180deg);
    
}

.testemunhos.t_google .slide > div p{
    text-align: left;
}


.testemunhos.t_google .empty {
    fill: #d2d0d0 !important;
} 

.testemunhos.t_google .filled {
    fill: var(--primary);
}

.testemunhos.t_google .star-container {
    position: relative;
    margin-inline: auto;
    width: 130px;
    height: 21px;
}

.testemunhos.t_google .slider .star-container {
    position: relative;
    margin-left: 0;
    width: 67px;
    height: 10px;
}

.testemunhos.t_google .star-container svg {
    position: absolute;
    top: 0;
    left: 0;
}


.testemunhos.t_google .slide > div > div{
    display: flex;
    align-items: center;
    gap: 20px;
}

@media(max-width: 768px) {

    .rating .star-container {
        transform: scale(0.8);
    }

    .testemunhos.t_google .slide > div > div{
        flex-wrap: wrap;
        gap: 5px;
    }
    .testemunhos.t_google .slider .star-container{
        flex: 100%;
        margin-top: 0;
    }

    .testemunhos .container h2 {
        margin-bottom: 17px;
    }
    .testemunhos .slide > div p{
        font-size: 15.5px;
        line-height: 1.42;
    }
    .testemunhos .container > div:first-of-type{
        margin-bottom: 30px;
    }
}

@media(min-width:768px){

    
    .testemunhos + *{
        margin-top: 80px;
    }

    .testemunhos .container{
        padding-inline: 20px;
    }
    .testemunhos .container > div:first-of-type{
        margin-inline: auto;
    }
    .testemunhos .container > div + div > div:first-of-type{
        padding-inline: 40px !important;
    }
    .testemunhos .container h4,
    .testemunhos .container .h4{
        font-size: 20.5px;
        font-weight: 600;
        line-height: 1.44;
        margin-bottom: 15px;
    }
    .testemunhos .container h2{
        font-size: 40px;
        line-height: 1.13;
        letter-spacing: -0.4px;
        margin-bottom: 30px;
    }

    .testemunhos .container p{
        font-size: 22px;
        line-height: 1.45;
    }

    .testemunhos .slide > div p{
        font-size: 18px;
        line-height: 1.58;
    }

    .testemunhos .slide > div p + div{
        margin-top: 12px;
    }

    .testemunhos .container .tns-inner{
        padding-inline: 20px;
    }

    .testemunhos .slider{
        margin-left: auto;
    }

    :is(.index, .template) section.testemunhos{
        margin-bottom: 85px;
    }
}

.testemunhos .container > div + div{
    position: relative;
}


@media(min-width:992px){
    .testemunhos .slider-arrows{
        bottom: 0;
        top: 0;
    }

    .testemunhos .slider-arrows>div{
        margin: 40px 0px;
    }
}

.testemunhos.tablet .container,
.testemunhos.tablet .container > div + div > div:first-of-type{
    padding: 0 !important;
}

.testemunhos.tablet .container > div:first-of-type{
    padding: 20px !important;
}




/****************************/
/********** PASSOS **********/
/****************************/

.passos .container{
    max-width: 1220px;
}

.passos h2{
    font-size: 26px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.15;
    letter-spacing: -0.26px;
    text-align: center;
    color: var(--secondary);
}

.passos h2 strong{
    color: var(--primary);
}

.passos .sliderSteps{
    display: flex;
    gap: 12px;
    justify-content: center;
    margin-block: 40px;
}

.passos h2 + div:not(.sliderSteps){
    margin-block-start: 50px;
}

.passos .sliderSteps button{
    width: 28px;
    height: 28px;
    aspect-ratio: 1;
    background: none;
    border: none;
    position: relative;
    font-size: 16.5px;
    font-weight: 800;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.21;
    letter-spacing: normal;
    text-align: center;
    color: var(--primary);
    transition: var(--transition);
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: all;
    cursor: pointer;
    font-family: var(--font-famil-2y);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;


}

.passos .sliderSteps button span::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: var(--primary);
    border-radius: 50%;
    overflow: hidden;
    opacity: .07;
    pointer-events: none;
    z-index: -1;
    transition: var(--transition);
    width: 100%;
    height: 100%;
}

.passos .sliderSteps button.tns-nav-active span::before{
    opacity: 1;
}

.passos .sliderSteps button.tns-nav-active{
    color: white;
}


.passos h3{
    font-size: 24.5px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.16;
    letter-spacing: normal;
    text-align: left;
    color: var(--primary);
    margin: 0;
}

.passos h3 + p{
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: normal;
    text-align: left;
    color: var(--third);
    margin: 15px 0 0;
    font-family: var(--font-family-2);
}

.passos .itens{
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 35px;
}

.passos .itens > div{
    flex: 1;
    opacity: 0;
}

.passos .itens > div .button{
    font-size: 14px;
    line-height: 1.43;
    padding: 10.6px 23px 10.4px;
}

.passos .tns-slide-active .itens > div{
    flex: 1;
    opacity: 1;
}

.rounded .passos .itens img{
    border-radius: 30px;
}


@media(min-width:768px){
    .passos h2{
        font-size: 40px;
        line-height: 1.13;
        letter-spacing: -0.4px;
    }


    .passos .sliderSteps button::before,
    .passos .sliderSteps button::after {
        content: "";
        position: absolute;
        left: calc(100% + 10px);
        width: 50px;
        opacity: 0.07;
        height: 5px;
        border-radius: 2.5px;
        background-color: var(--primary);
    }
    .passos .sliderSteps button::after {
        width: 0%;
        opacity: 1;
        background-color: var(--primary);
        transition: width 0s linear;
    }

    .passos .sliderSteps:not(.stop) button.tns-nav-active::after {
        transition: width 5s linear;
        animation-name: load;
        animation-timing-function: ease-in-out;
        animation-fill-mode: forwards;
        animation-iteration-count: 1;
        border-radius: 2.5px;
    }

    .passos .sliderSteps:not(.stop) button.tns-nav-active::after {
        animation-duration: 5s;
    }

    .passos .sliderSteps button:last-of-type:before,
    .passos .sliderSteps button:last-of-type:after{
        content: none;
        display: none;
    }

    @keyframes load {
        0% {
            width: 0%;
        }

        100% {
            width: calc( 100% - 8px);
        }
    }

    .passos .sliderSteps{
        gap: 70px;
        margin-block: 50px;
    }

    .passos .sliderSteps button{
        width: 58px;
        height: 58px;
        font-size: 24px;
        line-height: 1.42;
    }

    .passos .itens{
        flex-direction: row;
        gap: 70px;
    }

    .passos h2 + div:not(.sliderSteps){
        margin-block-start: 60px;
    }

    .passos h3{
        font-size: 25.5px;
        line-height: 1.16;
    }

    .passos h3 + p{
        font-size: 20px;
        line-height: 1.5;
        margin: 20px 0 0;
    }


}


@media(min-width:1024px){
    .passos .sliderSteps button::before {
        width: 60px;
    }
    .passos .sliderSteps:not(.stop) button.tns-nav-active::after {
        transition: width 6s linear;
        animation-name: load;
    }

    .passos .sliderSteps:not(.stop) button.tns-nav-active::after {
        animation-duration: 6s;
    }

    @keyframes load {
        0% {
            width: 0%;
        }

        100% {
            width: calc( 100% - 8px);
        }
    }

    .passos .sliderSteps{
        gap: 80px;
        margin-block: 60px;
    }

    .passos .sliderSteps button{
        width: 68px;
        height: 68px;
        font-size: 24px;
        line-height: 1.42;
    }

    .passos .itens{
        gap: 80px;
    }

    .passos h2 + div:not(.sliderSteps){
        margin-block-start: 70px;
    }

}

@media(max-width:767px){
    .passos .slider .itens > div:first-of-type{
        justify-content: flex-start;
        flex: none;
    }
}

/*************************************************/
/********** Hp Listagem Blog e Notícias **********/
/*************************************************/

.hp-list .row:has(.list-article) {
    --gap-h: 40px;
    justify-content: center;
}
.hp-list .header{
    display: flex !important;
    align-items: flex-end;
    margin-bottom: 35px;
    margin-inline: 0;
}
.hp-list .header h2{
    font-size: 26px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.15;
    letter-spacing: -0.26px;
    text-align: left;
    color: var(--secondary);
    margin: 0;
    
}

.hp-list h2 strong{
    color: var(--primary);
}

.hp-list .header a{
    flex: 1;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.43;
    letter-spacing: normal;
    color: var(--primary);
    text-align: right;
}

.hp-list .header a:hover{
    opacity: .7;
}

@media(min-width:768px){
    .hp-list > .container {
        max-width: 1220px;
        padding: 0 20px;
    }

    .hp-list .header h2{
        font-size: 40px;
        line-height: 1.13;
        letter-spacing: -0.4px;
    }

    .hp-list .header a{
        font-size: 16px;
        line-height: 1.38;
    }
    .hp-list .container .header:first-of-type{
        margin-inline: 0px
    }
}

.hp_texto .container p{
    color: var(--third);
    font-size: 20px;
    font-weight: 300;
    line-height: 1.5;
}

.hp_texto .container p strong{
    font-weight: 600;
    color: var(--secondary);
}

@media(min-width:768px){
    .hp_texto .container .header h2, .hp_texto .container .header > h3:not(.h4){
        font-size: 40px;
        margin-bottom: 23px;
    }
    .hp_texto .container p{
        font-size: 18px;
        line-height: 1.45;
    }
}

.galeria .height-free .image{
    aspect-ratio: 0 !important;
    background: none !important;
}

.galeria .height-free .image img,
.index .galeria .slider-wrapper .height-free .tns-outer .image img{
    position: relative;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

.galeria:has(:not( > .container)) .height-free .image img,
.index .galeria:has(:not( > .container))  .slider-wrapper .height-free .tns-outer .image img{
    width: 100% !important;
}

.galeria .height-free .image::before,
.index .galeria .slider-wrapper .height-free .tns-outer .image:before {
    content: "";
    background-color: var(--color-footer);
    position: absolute;
    opacity: .2;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}




/******************************/
/********** Hp SLIDE **********/
/******************************/

.hp-horizontal-slideshow {
	margin: 60px 0;
}

.hp-horizontal-slideshow .container:has(.tns-outer) {
	max-width: 100%;
	padding: 0;
}


@media(min-width: 768px) {
	.hp-horizontal-slideshow {
		margin: 140px 0;
	}
}

@media(min-width: 1025px) {
	.hp-horizontal-slideshow .container {
		display: flex;
		align-items: center;
		flex-wrap: nowrap;
		gap: 160px;
        justify-content: center;
	}


    .hp-horizontal-slideshow .container:has(.tns-outer) {
		padding: 0 100px;
        padding-left: 250px;
	}

	.hp-horizontal-slideshow {
		margin: 104px 0;
	}
}


/********** DESCRIPTION **********/

.hp-horizontal-slideshow .description {
	max-width: unset;
	min-width: unset;
	margin: 0 20px 50px;
}

.hp-horizontal-slideshow .description h4,
.hp-horizontal-slideshow .description .h4 {
    font-size: 18px;
    font-weight: 600;
    line-height: 1.36;
    letter-spacing: normal;
    text-align: center;
    color: var(--primary);
    margin-bottom: 18px;
}
.hp-horizontal-slideshow .description h2 {
    font-size: 25.5px;
    font-weight: bold;
    color: var(--secondary);
    line-height: 1.16;
    text-align: center;
    letter-spacing: normal;
	margin: 0;
}

.hp-horizontal-slideshow .description h2 + p {
    font-size: 18px;
    font-weight: 300;
    line-height: 1.33;
    letter-spacing: normal;
    text-align: center;
    color: var(--third);
    margin: 25px 0;
}

.hp-horizontal-slideshow .description .button{
    width: 100%;
    text-align: center;
}

@media (min-width: 768px) {
    .hp-horizontal-slideshow .description .button{
        width: auto;
        text-align: center;
    }
}

@media (min-width: 1025px) {
	.hp-horizontal-slideshow .description {
        margin: 0 60px 40px;
        max-width: unset;
        min-width: unset;
        display: block;
	}

    .hp-horizontal-slideshow .description h4,
    .hp-horizontal-slideshow .description .h4 {
        font-size: 20.5px;
        font-weight: 600;
        line-height: 1.2;
        text-align: left;
    }
    
	.hp-horizontal-slideshow .description h2 {
        font-size: 40px;
		line-height: 1.13;
		text-align: left;
	}
    
    
	.hp-horizontal-slideshow .description h2 + p {
        font-size: 20px;
		line-height: 1.5;
        margin: 31px 0 33px;
        text-align: left;
	}

    .hp-horizontal-slideshow .description .button{
        text-align: left;
    }

}

@media (min-width: 1025px) {
	.hp-horizontal-slideshow .description {
		margin: 0;
		max-width: 344px;
		min-width: 344px;
		position: relative;
	}
} 

@media (max-width: 1024px) {
    .hp-horizontal-slideshow .description,
    .hp-horizontal-slideshow .description *{
        text-align: center !important;
    }
}


/********** SLIDER **********/

.hp-horizontal-slideshow .brand-slider{
	margin-right: auto;
}

.hp-horizontal-slideshow:has(.tns-outer) .slider {
	cursor: grab;
}
.hp-horizontal-slideshow:has(.tns-outer) .slider.grabbing {
	cursor: grabbing;
}

.hp-horizontal-slideshow .slider:not(.tns-slider) {
	display: flex;
	gap: 40px;
	flex-wrap: nowrap;
    justify-content: center;
}

.hp-horizontal-slideshow .slider:not(.tns-slider) .slide {
	max-width: 260px;
	min-width: 260px;
}


.hp-horizontal-slideshow .slider .slide img {
	width: 100%;
	object-fit: cover;
	display: block;
}
/* slide com Form Lateral (LP): o link nao tem href */
.hp-horizontal-slideshow .slider .slide a.form-lateral {
	cursor: pointer;
}


.rounded .hp-horizontal-slideshow .slider .slide > div,
.rounded .hp-horizontal-slideshow .slider .slide img,
.hp-horizontal-slideshow .slider .slide:has( h3) > div::before{
    border-radius: 30px;
}

.hp-horizontal-slideshow .slider .slide > div {
    position: relative;
    overflow: hidden;
    will-change: transform;
}
.hp-horizontal-slideshow .slider .slide:has( h3) > div::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    mix-blend-mode: multiply;
    background: linear-gradient(to bottom, var(--white), #b5b5b5);
    z-index: 1;
    will-change: transform;
    pointer-events: none;
}

.hp-horizontal-slideshow .slider .slide h3 {
	font-size: 22px;
	font-weight: bold;
	line-height: 1.09;
	letter-spacing: normal;
	text-align: center;
	color: var(--white);
    position: absolute;
    top: auto;
    left: 0;
    right: 0;
    bottom: 25px;
    margin: 0;
    margin-inline: 25px;
    pointer-events: none;
    z-index: 2;
    will-change: transform;
    pointer-events: none;
}

@media (min-width: 1025px) {

	.hp-horizontal-slideshow .slider:not(.tns-slider) .slide {
		max-width: 340px;
		min-width: 340px;
	}

	.hp-horizontal-slideshow .slider .slide h3 {
		font-size: 28px;
		line-height: 1.29;
		letter-spacing: normal;
        margin-inline: 50px;
        bottom: 44px;
	}

}

@media (min-width: 1025px) {
	.hp-horizontal-slideshow .slider-wrapper,
    .hp-horizontal-slideshow .slider:not(.tns-slider) {
		max-width: calc(100vw - 445px - 140px);
	}
    .hp-horizontal-slideshow .slider-wrapper:has( .tns-slider),
    .hp-horizontal-slideshow .slider.tns-slider {
		min-width: calc(100vw - 445px - 140px);
	}

	.hp-horizontal-slideshow .slider:not(.tns-slider) .slide {
		max-width: 445px;
		min-width: 445px;
	}

} 


/********** SLIDER CURSOR **********/

.hp-horizontal-slideshow .cursor {
	display: none;
	z-index: 10;
}

@media(pointer: fine) {  
	.hp-horizontal-slideshow .cursor {
		position: fixed;
		top: 0;left: 0;
		display: block;
		width: 90px;
		height: 90px;
		border-radius: 100%;
		transform: translate(-50%, -50%);
		background-color: var(--primary);
		opacity: 0;
		mix-blend-mode: hard-light;
		transition: opacity 0.2s ease-in-out;
		pointer-events: none;
	}

	.hp-horizontal-slideshow .cursor.visible {
		opacity: 1;
	}
} 


/********** SLIDER ARROWS **********/

.hp-horizontal-slideshow .slider-arrows {
    justify-content: flex-start;
    gap: 30px;
    position: relative;
    top: unset;
    bottom: unset;
    margin-bottom: 39px;
	display: none;
}



.hp-horizontal-slideshow .slider-arrows a {
	display: inline-block;
	pointer-events: auto;
	width: 17px;
	height: 37px;
	-webkit-mask-image: url(/bluesky/assets/img/template/caret.svg);
    mask-image: url(/bluesky/assets/img/template/caret.svg);
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-position: center center;
	-webkit-mask-position: center center;
	mask-size: contain;
	-webkit-mask-size: contain;
	background-color: #dcdcdc;
	cursor: pointer;
    transform: rotate(180deg);
}

.hp-horizontal-slideshow .slider-arrows a:hover {
	background-color: var(--third);
}

.hp-horizontal-slideshow .slider-arrows .next {
	transform: rotateY(0deg);
}


@media(min-width: 1025px) {

	.hp-horizontal-slideshow:has(.tns-outer) .slider-arrows {
		display: flex;
	}
} 

.galeria_botoes {
    position: relative;
    width: 100vw;
    aspect-ratio: 1.15 / 1;
    max-height: 820px;
}

.galeria_botoes .img-principal:before{
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    mix-blend-mode: multiply;
    background-blend-mode: multiply;
    background-image: linear-gradient(to top, #8b8a8a, #8b8a8a);
    z-index: 5;
    will-change: transform;
    pointer-events: none;
}

/* .galeria_botoes .img-principal img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    transition: opacity 0.2s ease;
} */

.img-principal{
    z-index: 2;
}

.img-principal img.base,
.img-principal img.hover {
    position: absolute;
    top:0; left:0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 0.5s ease;
}

.galeria_botoes .img-principal img.hover {
    opacity: 0;
    z-index:2;
}

.img-principal img.hover.activo {
    opacity: 1;
}

.galeria_botoes.mobile-or-tablet .img-principal img.hover {
    z-index:inherit;
}

.galeria_botoes:not(.mobile-or-tablet) .img-principal img.base {
    z-index:1;
}

.galeria_botoes .slide .button:hover ~ .img-principal img.hover {
    opacity: 1;
}

.galeria_botoes .in {
    opacity: 1;
}
  
.galeria_botoes .out {
    opacity: 0;
}


.galeria_botoes .slide{
    padding-inline: 20px;
}

.galeria_botoes .slide .button {
    cursor: pointer;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.56;
    letter-spacing: normal;
    text-align: center;
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
}

.galeria_botoes .slide .button:not([href]){
    cursor: default;
}

.galeria_botoes .slide .button:before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 10px;
    border: solid 1px rgba(255, 255, 255, 0.3);
    background-color: rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(0); 
    transition: all 0.3s ease;
    z-index: -1; 
}

.galeria_botoes .slide .button:hover:before {
    border: solid 1px rgba(255, 255, 255, 0.65);
    backdrop-filter: blur(5px) !important;
    -webkit-backdrop-filter: blur(5px) !important;  
    transform: scale(1);
}

.galeria_botoes .tns-nav{
    position: absolute;
    bottom: 20px;
    margin: auto;
    display: flex;
    justify-content: center;
    width: 100%;
    gap: 30px;
}

.galeria_botoes .tns-nav button {
    height: 15px;
    width: 15px;
    z-index: 1;
    transition: var(--transition);
    border: none;
    outline: none;
    padding: 0;
    margin: 0;
    background: none;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.galeria_botoes .tns-nav button:before {
    content: "";
    border-radius: 100%;
    background: #fff;
    height: 6px;
    width: 6px;
    z-index: 1;
    transition: var(--transition);
    display: block;
    position: absolute;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
}

.galeria_botoes .tns-nav button.tns-nav-active:before,
.galeria_botoes .tns-nav button:hover:before {
    height: 10px;
    width: 10px;
}

.galeria_botoes .tns-outer {
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

.galeria_botoes .tns-inner{
    flex: 1;
}


.galeria_botoes.tablet {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1.47 / 1;
}

.galeria_botoes .slider {
    position: relative;
    max-width: 860px;
    z-index: 10;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    gap: 25px;
    flex-wrap: wrap;
}

.galeria_botoes:not(.mobile-or-tablet) .slide {
    flex: 1 1 calc(50% - 25px); 
    min-width: 395px;           
    max-width: 395px;           
    min-height: 110px;
    height: 100%;
    display: flex !important;
    justify-content: center;
    padding-inline: 0;
    left: auto !important;
}

.galeria_botoes.tablet .slide .button {
    font-size: 20px;
    line-height: 1.17;
}

.galeria_botoes:not(.mobile-or-tablet) {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1.77 / 1;
}

.galeria_botoes:not(.mobile-or-tablet) .slider {
    gap: 30px;
}

.galeria_botoes.tablet .slide {
    flex: 1 1 calc(50% - 25px); 
    min-width: 365px;           
    max-width: 365px;  
    min-height: 100px;
    height: 100%;
    display: flex !important;
    justify-content: center;
    padding-inline: 0;
    left: auto !important;
}

.galeria_botoes:not(.mobile-or-tablet) .slide .button {
    font-size: 24px;
    line-height: 1.17;
}



.pica_botoes.container{
    max-width: 1220px;
    position: relative;
}

.pica_botoes  > div::before{
    content: "";
    position: absolute;
    inset: 0;
    background: #f8f8f8;
    pointer-events: none;
    z-index: -1;
}

.pica_botoes > div{
    padding: 50px;
    position: relative;
    display: flex;
    align-items: center;
    gap: 100px;
    flex-wrap: wrap;
}

.pica_botoes > div.left img{
    order: 1;
}

.pica_botoes > div.left > div{
    order: 2;
}

.pica_botoes > div img{
    max-width: 490px;
    width: 100%;
}

.pica_botoes > div > div{
    flex: 1;
}

.pica_botoes .botoes_wrapper{
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 35px;
}

.pica_botoes h2{
    font-size: 40px;
    font-weight: bold;
    line-height: 1.13;
    letter-spacing: normal;
    text-align: left;
    color: var(--secondary);
    margin-block: 0;
    margin-bottom: 35px;
}

.pica_botoes p{
    font-size: 20px;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: normal;
    text-align: left;
    color: var(--third);
    margin-block: 0;
}

.pica_botoes .button{
    font-size: 14px !important;
    font-weight: 600;
    line-height: 1.33 !important;
    letter-spacing: normal;
    text-align: left;
    color: var(--primary);
    padding: 11px 20px !important;
}

.pica_botoes .button:focus,
.pica_botoes .button:hover{
    padding: 11px 20px;
    color: var(--primary);
}

.pica_botoes .button::before{
    opacity: 0.1;
}

.rounded .pica_botoes .button::before{
    border-radius: 20px;
}

.rounded .pica_botoes > div img,
.rounded .pica_botoes > div::before{
    border-radius: 30px;
}

@media(max-width:820px){
    .pica_botoes > div{
        padding: 40px;
        justify-content: center;
        gap: 60px;
        align-items: flex-start;
    }
    .pica_botoes > div img{
        max-width: 45%;
    }

    .pica_botoes h2{
        font-size: 32.5px;
        line-height: 1.16;
        margin-bottom: 23px;
    }

    .pica_botoes p{
        font-size: 20px;
        line-height: 1.33;
    }

    .pica_botoes .button{
        font-size: 14px !important;
        line-height: 1.43 !important;
        padding: 9.5px 20px !important;
    }
}


@media(max-width:767px){
    .pica_botoes > div > div{
        order: 2;
    }
    .pica_botoes > div img{
        max-width: 100%;
        order: 1;
    }
    .pica_botoes.container{
        padding: 0;
    }
    .pica_botoes > div::before{
        border-radius: 0px !important;
    }
    .pica_botoes > div{
        padding: 30px 20px;
        gap: 30px;
    }

    .pica_botoes h2{
        font-size: 25.5px;
        line-height: 1.16;
        margin-bottom: 20px;
    }

    .pica_botoes p{
        font-size: 18px;
        line-height: 1.33;
    }

    
}


.hp-numeros .container{
    max-width: 1220px;
}

.hp-numeros .container .count-wrapper {
    padding: 56px 50px 55px;
    position: relative;
}

.hp-numeros .container .count-wrapper:before{
    content: "";
    background-color: var(--primary);
    position: absolute;
    inset: 0;
    opacity: .07;
}

.rounded .hp-numeros .container .count-wrapper:before{
    border-radius: 30px;
}

.hp-numeros .container .count-wrapper > div {
    display: flex;
    gap: 50px;
}

.hp-numeros .container .count-wrapper > div > div {    
    text-align: center;
}

.hp-numeros .container .count-wrapper > div > div span {
    font-size: 50px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: normal;
    text-align: center;
    color: var(--primary);
    height: 60px;
}

.hp-numeros .container .count-wrapper > div > div p {
    font-size: 15.5px;
    font-weight: 300;
    line-height: 1.42;
    letter-spacing: normal;
    text-align: center;
    color: var(--third);
    margin: 0;
    margin-top: 18px;
}

.hp-numeros .slider-arrows > div::before {
    background-color: #dedddd;
}
.hp-numeros .slider-arrows > div:hover::before {
    background-color: #757575;
}
.hp-numeros .slider-arrows>div.prev {
    transform: rotate(180deg);
}

.hp-numeros .tns-item{
    min-width: 230px;
    max-width: 300px;
}


body:not(.mobile) .less .tns-item{
    min-width: 500px;
    max-width: 500px;
}


body:not(.mobile-or-tablet) .hp-numeros .slider-arrows>div.prev {
    margin-left: 0px;
    left: -50px;
}
body:not(.mobile-or-tablet) .hp-numeros .slider-arrows>div.next {
    margin-right: 0px;
    right: -50px;
}


body.mobile-or-tablet .hp-numeros .container{
        padding-inline: 0;
    }


body.mobile-or-tablet .hp-numeros .container .count-wrapper:before{
        border-radius: 0px;
    }

body.mobile-or-tablet .hp-numeros .container .count-wrapper {
    padding: 35px 0px;
}

body.mobile-or-tablet .hp-numeros .container .count-wrapper > div {
    display: flex;
    gap: 0px;
}

body.mobile-or-tablet .hp-numeros .container .count-wrapper > div > div {
    gap: 3px;
}


body.mobile-or-tablet .hp-numeros .container .count-wrapper > div > div span {
    font-size: 28.5px;
    line-height: 1.12;
}

body.mobile-or-tablet .hp-numeros .container .count-wrapper > div > div p {
    font-size: 14px;
    line-height: 1.46;
    margin-top: 18px;
}

body.mobile-or-tablet .hp-numeros .tns-item{
    min-width: 130px;
    max-width: 250px;
}

body.mobile-or-tablet .hp-numeros .container .count-wrapper > div.slider-arrows{
    display: none;
}


.listing .accordion .description ul {
    list-style-type: none;
    margin: 0;
    padding-block: 0px;
    margin-block: 30px;
    counter-reset: item;
    padding-left: 2em;
}

.listing .accordion .description ul li::before{
    content: "";
    display: inline-block;
    height: 16px;
    width: 1.25rem;
    margin-left: -1.8em;
    margin-right: 1rem;
    -webkit-mask-image: url(/bluesky/assets/img/template/bullet.svg);
    mask-image: url(/bluesky/assets/img/template/bullet.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
    align-items: center;
}
.listing .accordion .description ol li::before {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: normal;
    text-align: left;
    color: var(--primary);
    counter-increment: item;
    content: counter(item) ".";
    display: inline-block;
    margin-left: -35px;
    margin-right: 18px;
    width: 16px;
}

/* ==============================================================================
   2. BASE
   origem: estilos.css
   ============================================================================== */

body,
html {
    margin: 0;
    padding: 0;
    width: 100%;

}

body {
    font-family: var(--font-family);
    background: white;
    scroll-behavior: smooth;
}

body:not(.index){
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

body section.content,
body main {
    flex: 1; 
}

/*****************************/
/********** BUTTONS **********/
/*****************************/

.button,
.button:focus,
.form .button-f,
.form .button-f:focus {
	position: relative;
	display: inline-block;
	padding: 9.5px 20px;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: normal;
	isolation: isolate;
	color: white;
    text-transform: uppercase;

}
.button::before,
.form .button-f::before {
	content: "";
	position: absolute;
	top: 0;bottom: 0;
	left: 0;right: 0;
	transition: var(--transition);
	will-change: transform;
	z-index: -1;
	background-color: var(--primary);
	overflow: hidden;
}



.button.button-fill::before {
	content: "";
	position: absolute;
	top: 0;bottom: 0;
	left: 0;right: 0;
	transition: var(--transition);
	will-change: transform;
	z-index: -1;
    background: none;
    border: 1px solid white;
	overflow: hidden;
}

.rounded .button::before,
.rounded .button.button-fill::before,
.rounded .form .button-f::before {
    border-radius: 50px;
}

.button:hover,
.form .button-f:hover{
    color: white;
}

.button:hover::before,
.form .button-f:hover::before{
	transform: scale(1.05);
}


@media(min-width: 992px) {
	.button,
	.button:focus,
    .form .button-f,
    .form .button-f:focus {
        padding: 18px 31px;
        font-size: 13px;
	}
}

.button-f.disabled,
.button.disabled {
	pointer-events: none !important;
	opacity: .5 !important;
}



.container{
    max-width:1190px
}

.container.container-sm {
    max-width: 1020px;
}

:is(.index, .template) section:where(:not(.related-section)){
    margin-block: 30px;
    margin-bottom: 45px;
}

.index section:first-of-type{
	margin-top: 0;
}
/* .index section:last-of-type {
	margin-bottom: 60px;
} */

@media(min-width:992px){
    :is(.index, .template) section:where(:not(.related-section)){
        margin-block: 60px;
        margin-bottom: 120px;
    }
}



/*********************************/
/************* HEADER ************/
/*********************************/

header {
    /* height: 143px; */
    width: 100%;
    padding: 20px 40px 15px;
    position: fixed;
    top: 0;
    z-index: 10;
    display: flex;
    justify-content: space-between;
    align-items: 15px;
    transition: var(--transition);
}

header::before {
    content: "";
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--black);
    opacity: 0;
    pointer-events: none;
    transition: var(--transition);
    -webkit-transition: var(--transition);
}

header.open::before {
    opacity: .8;
    pointer-events: auto;
    /* z-index: 10; */
}

header.fixed {
    background-color: #ffffff;
}

header.fixed.bs {
    box-shadow: rgba(0, 0, 0, 0.05) -2.8px 8.6px 24px 0px;
}

.index header.fixed {
    box-shadow: rgba(0, 0, 0, 0.05) -2.8px 8.6px 24px 0px;
}



header .logo {
    max-width: 330px;
    width: 100%;
    z-index: 3;
    margin: 0;
}

header.open .logo {
    z-index: 1;
    pointer-events: none;
}

header .logo img {
    /* filter: brightness(10); */
    filter: brightness(0) invert(1);
    transition: none;
    max-width: 100%;
    max-height: 100%;
}

/* com o banner da LP (tambem num website) o logo fica sobre o branco: a cor dele */
body:has(.banners-lp) header .logo img {
    filter: brightness(1) invert(0);
}

header .logo img:has( + img.color),
header.fixed .logo img + img.color {
    display: block;
}
header .logo img + img.color,
header.fixed .logo img:has( + img.color) {
    display: none;
}

header .logo img.color,
header.fixed .logo img.color,
header.fixed .logo img {
    filter: brightness(1);
}

header .header-content {
    display: flex;
    flex-direction: column;
    gap: 25px;
    z-index: 1;
    /* justify-content: space-between; */
}

.landing-page header .header-content {
    justify-content: center;
}

.landing-page header .header-content .button {
    padding: 15px 25px 15px;

}

header .header-content:has(.header-menu + .select-wrapper) {
    gap: 20px;
}

header .header-content>div {
    display: flex;
    align-items: center;
    gap: 24px;
    justify-content: flex-end;
    pointer-events: none;
}

header .header-content>div * {
    pointer-events: auto;
}




header:not(.mobile) .header-content>div:first-of-type {
    z-index: 2;
}

header .header-content>div:has( .input-wrapper + .button){
    gap:0
}

header .header-content > div:has( .input-wrapper + .button) > * {
    margin-left: 24px; 
}

header .header-content > div:has( .input-wrapper + .button) > .button {
    margin-left: 10px; 
}

header .header-content>div>a span,
header .header-content>div>a,
header .header-content>div>.header-menu > ul > li > a {
    color: var(--white);
    font-size: 13px;
    font-weight: normal;
    letter-spacing: normal;
    text-transform: none;
}

header .header-content>div>ul li a{
    color: var(--white);
    font-size: 14px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    letter-spacing: 0.14px
}

header.fixed .header-content>div>a:not(.button) {
    color: #9d9d9d;
}

header .header-content>div>a:not(.button):hover {
    opacity: var(--opacity);
}

header .search-form {
    text-align: center;
    display: flex;
    align-items: center;
}

header .header-menu .search-form.hide{
    display: none;
}

header .search-form input {
    line-height: 1;
    color: var(--white);
    background-color: transparent;
    appearance: none;
    -webkit-appearance: none;
    background-color: transparent;
    border: none;
    border-bottom: 1px solid rgb(225, 225, 225, 0);
    width: 100%;
    height: 30px;
    border-radius: 0;
    padding: 0;
        font-family: var(--font-family-2);
    font-size: 13px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    letter-spacing: normal;
    width: 0px;
    max-width: 0px;
    opacity: 0;
    transition: var(--transition);
}

header.open .search-form input,
header.fixed .search-form input {
    color: var(--black);
}

header .search-form.search-open input {
    max-width: 250px;
    width: 250px;
    opacity: .9;
    transition: var(--transition);
    padding-right: 20px;
    border-bottom: 1px solid rgb(255, 255, 255,.6);
}

header.open .search-form.search-open input,
header.fixed .search-form.search-open input {
    border-bottom: 1px solid rgb(0, 0, 0);
}

header .search-form.search-open button {
    margin-left: -15px;
}

header>div .search-form button {
    position: relative;
    display: inline-block;
    width: 15px;
    height: 15px;
    transition: var(--transition);
    z-index: 2;
    margin: 0;
    background: none;
    border: none;
}

header>div .search-form button::before {
    overflow: visible;
    content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    transition: var(--transition);
    -webkit-mask-image: url(/bluesky/assets/img/svg/search.svg);
    mask-image: url(/bluesky/assets/img/svg/search.svg);
    background-color: var(--white);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    top: 0;
    left: 0;
}

header>div .search-form button:hover::before {
    opacity: 0.5;
}

header.fixed>div .search-form button::before {
    background-color: var(--black);
}

header .menu-toggle {
    position: relative;
    display: none;
    width: 31px;
    height: 17px;
    cursor: pointer;
    pointer-events: all;
}

header.open .menu-toggle {
    width: 12px;
    height: 12px;
    padding: 20px 0 20px 20px;
}

header .menu-toggle span {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    height: 3px;
    background-color: var(--white);
    transition: var(--transition);
    -webkit-transition: var(--transition);
    z-index: 1;
    pointer-events: none;
    border-radius: 5px;
    width: 24px;
}

header.mobile .menu-toggle span {
    height: 2.5px;
}
header.mobile.open .menu-toggle span {
    height: 2px;
}

header.open .menu-toggle span {
    background-color: var(--black);
}

header.fixed .menu-toggle span {

    background-color: var(--black);
}

header .menu-toggle span:first-child {
    transform: translateY(0px);

}

header .menu-toggle span:nth-child(2) {
    margin-left: auto;
    margin-right: 0px;
    transform: translateY(8px);
}

header .menu-toggle span:last-child {
    transform: translateY(16px);
}

header.open .menu-toggle {
    z-index: 11;
}

header.open .menu-toggle span:first-child {
    transform: translate(2px, 6px)rotate(45deg);
    width: 15px;
    margin: 0;
}

header.open .menu-toggle span:nth-child(2) {
    opacity: 0;
}

header.open .menu-toggle span:last-child {
    transform: translate(2px, 6px)rotate(-45deg);
    margin: 0;
    width: 15px;
}


header .menu .menu-section .menu-toggle:hover span {
    background-color: var(--black);
}

@media (min-width: 768px) {

    header .menu-toggle:hover span:nth-child(2){
        margin-right: 0;
    }
}

@media(max-width: 992px) {
    header .menu-toggle {
        display: block;
    }
}

@media(max-width:   500px) {

    header .search-form.search-open input {
        width: 100px;
    }
}

header:not(.mobile) .header-menu ul .mobile-footer{
    display: none;
}



/**************************************************/
/******************* LANGUAGE *********************/
/**************************************************/

header .menu .select-wrapper.mobile,
header .header-content div .select-wrapper {
	min-width: 72px;
}

header .menu .select-wrapper.mobile {
	z-index: 1;
	display: none;
}

header .select-wrapper select {
	border: none;
	display: none;
}

header .menu .select-wrapper.mobile .custom-select .placeholder,
header .header-content div .select-wrapper .custom-select .placeholder {
	background: rgba(255, 255, 255, .25);
    border: none;
	color: #ffffff;
	font-size: 12px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: normal;
    text-align: left;
    color: var(--white);
	left: 0;
	padding: 10px 0px 9px 20px;
	cursor: pointer;
    border-radius: 0;
}

.rounded header .menu .select-wrapper .custom-select .placeholder,
.rounded header .menu .select-wrapper.mobile .custom-select .placeholder,
.rounded header .header-content div .select-wrapper .custom-select .placeholder {
    border-radius: 15.5px;
}

@media(max-width:767px){
    header.mobile .menu .select-wrapper.mobile .custom-select .placeholder,
    header.mobile .header-content div .select-wrapper .custom-select .placeholder {
        border-radius: 0px;
        font-size: 12px;
        padding: 6px 14px 6px 10px;
        cursor: pointer;
    }

    .rounded header.mobile .menu .select-wrapper.mobile .custom-select .placeholder,
    .rounded header.mobile .header-content div .select-wrapper .custom-select .placeholder {
        border-radius: 12px;
    }

    header.mobile .header-content div .select-wrapper{
        min-width:50px
    }
    header.mobile.open .header-content div .select-wrapper{
        display: none;
    }
    header.mobile .menu .select-wrapper.mobile .custom-select.isSelected>.placeholder::before,
    header.mobile .header-content div .custom-select:not(.has-reset) .placeholder::before{
        width: 7px;
        height: 4px;
        right: 10px;
    }

    header.mobile .header-content div .custom-select .options-wrapper{
        padding-left: 10px;
    }
}



header.fixed .menu .select-wrapper.mobile .custom-select .placeholder,
header.fixed .upper .right-wrapper .select-wrapper .custom-select .placeholder {
	color: var(--black);
}



header.fixed .header-content div .select-wrapper .custom-select.isSelected>.placeholder{
    background: #f5f5f5;
    color: var(--black);
}
header.fixed .header-content div .custom-select:not(.has-reset) .placeholder::before,
header.fixed .header-content div .custom-select:not(.has-reset) .placeholder::after{
    background: rgba(255, 255, 255, .25);
}


header .menu .select-wrapper.mobile .custom-select.isSelected>.placeholder,
header .header-content div .select-wrapper .custom-select.isSelected>.placeholder {
    pointer-events: auto;
	background: rgba(255, 255, 255, .25);
	transition: var(--transition);
}

.rounded header .header-content div .select-wrapper .custom-select.isSelected.open>.placeholder {
	border-radius: 15.5px;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}



header .menu .select-wrapper.mobile .custom-select.isSelected .options-wrapper,
header .header-content div .custom-select.isSelected .options-wrapper {
	transition: var(--transition);
}

header .header-content div .custom-select.custom-select .options:first-of-type{
    padding-top: 0;
}

header .header-content div .select-wrapper .custom-select.isSelected.open>div{
    background: rgba(255, 255, 255, .25);
}
header.fixed .header-content div .select-wrapper .custom-select.isSelected.open>div{
    background: #f5f5f5;
}
header.fixed .header-content div .custom-select.custom-select.isSelected.open .options>div{
    color:var(--black)
}
header .header-content div .custom-select.custom-select.isSelected.open .options>div:hover{
    color:var(--primary)
}

header .menu .select-wrapper.mobile .custom-select.isSelected>.placeholder::before,
header .header-content div .custom-select:not(.has-reset) .placeholder::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: auto;
    right: 20px;
    margin: auto;
    width: 7px;
    height: 4px;
    -webkit-mask-image: url(/bluesky/assets/img/svg/lang-arrow.svg);
    mask-image: url(/bluesky/assets/img/svg/lang-arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background-color: white;
    transform: none;
    border: none;
    transition: var(--transition);
}

header .menu .select-wrapper.mobile .custom-select.isSelected.open>.placeholder::before,
header .header-content div .custom-select.open .placeholder::before{
    background-color: var(--white);
    transform: rotate(180deg);
}
header.fixed .menu .select-wrapper.mobile .custom-select.isSelected>.placeholder::before,
header.fixed .header-content div .custom-select:not(.has-reset) .placeholder::before{
    background-color: var(--black);
    opacity: 1;
}

header.fixed .header-content div .select-wrapper .custom-select.isSelected.open>div{
    color:var(--black)
}

header.fixed .header-content div .select-wrapper .custom-select.isSelected.open>div:first-of-type{
    border-bottom: transparent;
}
header.fixed .header-content div .select-wrapper .custom-select.isSelected.open>div:last-of-type{
    border-top: transparent;
}


header.fixed .menu .select-wrapper.mobile .custom-select.isSelected>.placeholder::before,
header.fixed .upper .right-wrapper .custom-select:not(.has-reset) .placeholder::before,
header .menu .select-wrapper.mobile .custom-select.isSelected.open>.placeholder::after,
header.fixed .menu .select-wrapper.mobile .custom-select:not(.has-reset) .placeholder::after,
header.fixed .upper .right-wrapper .custom-select:not(.has-reset) .placeholder::after ,
header .header-content div .custom-select.open .placeholder::after,
header .menu .select-wrapper.mobile .custom-select.isSelected.open>.placeholder::before,
header .header-content div .custom-select.open .placeholder::before{
    border-color: var(--black);
}

header .menu .select-wrapper.mobile .custom-select .options-wrapper,
header .header-content div .custom-select .options-wrapper {
	border: none;
	border-radius: 0;
	padding-top: 0px;
	top: 100%;
	padding-right: 0;
	padding-left: 20px;
	margin-top: 0px;
	background: rgba(255, 255, 255, 0);
	z-index: 3;
	transition: var(--transition), background-color 0s ease-out;
}

.rounded header .menu .select-wrapper.mobile .custom-select .options-wrapper,
.rounded header .header-content div .custom-select .options-wrapper{
    border-bottom-left-radius: 15.5px;
	border-bottom-right-radius: 15.5px;
}

header.fixed .menu .select-wrapper.mobile .custom-select .options-wrapper,
header.fixed .upper .right-wrapper .custom-select .options-wrapper {
	background-color: #ffffff;
}

header .menu .select-wrapper.mobile .custom-select.isSelected .options-wrapper,
header .header-content div .custom-select.isSelected .options-wrapper {

	margin-top: 0px;
	padding-bottom: 0;
}

header.fixed .menu .select-wrapper.mobile .custom-select.isSelected .options-wrapper,
header.fixed .upper .right-wrapper .custom-select.isSelected .options-wrapper {
	background-color: #ffffff;
}

header .menu .select-wrapper.mobile .custom-select.isSelected .options-wrapper {
	margin-top: -3px;
}

header.fixed .menu .select-wrapper.mobile .custom-select.isSelected .options-wrapper {
	margin-top: -3px;
	background-color: var(--white);
}

header.fixed .upper .right-wrapper .custom-select.isSelected .options-wrapper {
	background-color: var(--white);
}

header .menu .select-wrapper.mobile .custom-select .options>div,
header .header-content div .custom-select .options>div {
	cursor: pointer;
	padding: 7px 0;
	font-size: 12px;
	font-weight: 300;
	font-stretch: normal;
	font-style: normal;
	line-height: 1;
	letter-spacing: 0.35px;
	color: var(--white);
}

header.fixed .menu .select-wrapper.mobile .custom-select .options>div,
header.fixed .upper .right-wrapper .custom-select .options>div {
	color: var(--grey);
}



header .menu .select-wrapper.mobile .custom-select .options>div:hover,
header .header-content div .custom-select .options>div:hover {
	color: var(--primary);
}

header .header-content div .custom-select .options>div.selected,
header .menu .select-wrapper .custom-select .options>div.selected {
	display: none;
}


header .header-content div .select-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: var(--white);
    transition: var(--transition);
    gap: 5px;
}



/**********************************************/
/******************* MENU *********************/
/**********************************************/


header .header-menu ul {
    padding: 0;
    width: 100%;
    display: flex;
    gap: 48px;
    justify-content: flex-end;
}

header .header-menu ul>li {
    position: relative;
    display: flex;
    align-items: center;
    /* width: 100%; */
}

header .header-menu ul>li .submenu-arrow {
    width: 5px;
    height: 10px;
    position: relative;
    display: none;
}

header .header-menu ul>li .submenu-arrow::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-mask-image: url(/bluesky/assets/img/svg/menu.svg);
    mask-image: url(/bluesky/assets/img/svg/menu-arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
    transform: rotate(180deg);
}

header .header-menu ul>li .subsubmenu-wrapper,
header .header-menu ul>li .submenu-wrapper {
    position: absolute;
    top: 0;
    left: -30px;
    padding-top: 37px;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
    box-shadow: unset;
    transition: var(--transition);
    z-index: -1;
    opacity: 0;
    pointer-events: none;
    min-width: 300px;
}

.rounded header .header-menu ul>li .subsubmenu-wrapper,
.rounded header .header-menu ul>li .submenu-wrapper {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

header .header-menu ul>li .submenu-wrapper{
    min-width: 300px;
}


header:not(.mobile) .header-menu ul>li.edge .subsubmenu-wrapper,
header:not(.mobile) .header-menu ul>li.edge .submenu-wrapper {
    left: unset;
    right: 0px;
}

header:not(.mobile) .header-menu ul>li.edge .submenu-wrapper ul{
    text-align: right;
}

header:not(.mobile) .header-menu ul>li:has(.edge) .submenu-wrapper {
    right: 0px;
    left: unset;
    text-align: end;
}

header:not(.mobile) .header-menu ul>li:has(.edge) .submenu-wrapper ul {
    padding: 25px 0;
}

header:not(.mobile) .header-menu ul>li:has(.edge) .submenu-wrapper ul li {
    flex-direction: row-reverse;
}

header:not(.mobile) .header-menu ul>li:has(.edge) .subsubmenu-wrapper ul li {
    padding-left: 20px;
}

header .header-menu ul>li .submenu-wrapper ul li:has(.subsubmenu-wrapper) .submenu-arrow {
    display: inline-block;
}

header .header-menu ul>li .submenu-wrapper ul li:has(.subsubmenu-wrapper) .submenu-arrow::before {
    width: 7px;
    height: 12px;
}

header:not(.mobile) .header-menu ul>li.edge .submenu-wrapper ul li:has(.subsubmenu-wrapper) .submenu-arrow {
    position: absolute;
    left: 20px;
    transform: rotate(180deg);
}

header:not(.mobile) .header-menu ul>li:has(.edge) .submenu-wrapper ul li:has(.subsubmenu-wrapper) .submenu-arrow {
    margin-left: 30px;
}

header:not(.mobile) .header-menu ul>li:has(.edge) .submenu-wrapper ul li:has(.subsubmenu-wrapper) .submenu-arrow::before {
    transform: none;
}

header:not(.mobile) .header-menu ul>li.edge .submenu-wrapper ul li .subsubmenu-wrapper,
header:not(.mobile) .header-menu ul>li:has(.edge) .submenu-wrapper ul li .subsubmenu-wrapper {
    left: unset;
    right: calc(100%);
}

header .header-menu ul>li .subsubmenu-wrapper.open,
header .header-menu ul>li .submenu-wrapper.open {
    opacity: 1;
    max-height: 100%;
    z-index: 1;
    pointer-events: auto;
}

header .header-menu ul>li .submenu-wrapper ul {
    background-color: var(--white);
    padding: 25px 0 25px 30px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    box-shadow: 0px 10px 20px 0 rgba(0, 0, 0, 0.06);
    border-radius: 0;
}

header .header-menu ul>li.edge .submenu-wrapper ul{
    padding-inline: 0px;
}

.rounded header .header-menu ul>li .submenu-wrapper ul{
    border-radius: 10px;
}

header .header-menu ul>li.edge .submenu-wrapper ul li{
    padding-left: 30px;
}

header .header-menu ul>li .submenu-wrapper ul li {
    padding-right: 30px;
    cursor: pointer;
}

header.mobile .header-menu ul>li .submenu-wrapper ul li{
    padding-right: 0px;
}

header .header-menu ul>li .submenu-wrapper ul li a {
    font-size: 14px;
    color: var(--secondary);
    padding: 0;
    line-height: 1.29;
    text-transform: unset;
    width: 100%;
    display: block;
}

header .header-menu ul>li:hover .submenu-wrapper {
    opacity: 1;
    pointer-events: auto;
}

header .header-menu ul li a {
    text-transform: uppercase;
    position: relative;
}
header.fixed .header-content>div>.header-menu > ul > li > a,
header.fixed .header-menu ul li a {
    color: var(--black);
}

header .header-content>div>ul li a.active,
header .header-menu ul>li .submenu-wrapper > ul li.active > a,
header .header-menu ul>li .submenu-wrapper > ul > ul li.active > a,
header.fixed .header-menu ul li a.active{
    color: var(--primary);
}

header .header-menu ul>li .submenu-wrapper ul li .subsubmenu-wrapper {
    left: calc(100%);
    padding: 0;
    top: -25px;
}

header .header-menu ul>li .submenu-wrapper ul li .subsubmenu-wrapper:hover,
header .header-menu ul>li .submenu-wrapper ul li:hover .subsubmenu-wrapper {
    opacity: 1;
    pointer-events: all;
}

header:not(.mobile) .header-content>div >ul li.active a::after,
header:not(.mobile) .header-content>div >ul li:hover a::after,
header:not(.mobile) .header-content>div .header-menu ul li:hover a::after,
header:not(.mobile) .header-content>div .header-menu ul li.active a::after{
    content: "";
    width: 4px;
    height: 4px;
    background: white;
    border-radius: 50%;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -15px;
    top: auto;
    margin-inline: auto;
}

header.fixed .header-content>div>ul li.active a::after,
header.fixed .header-content>div>ul li:hover a::after,
header.fixed .header-content>div .header-menu ul li:hover a::after,
header.fixed .header-content>div .header-menu ul li.active a::after{
    background: var(--primary);
}

header .header-content>div>ul .submenu-wrapper ul li a::after,
header.fixed .header-content>div .header-menu ul .submenu-wrapper ul li a::after{
    content: none;
    display: none;
}
/***************************************/
/********* HEADER MOBILE ***************/
/***************************************/

header.mobile {
    width: 100%;
    padding: 5px 20px 5px 21px;
    position: fixed;
    top: 0;
    z-index: 999;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: var(--transition);

}

header.mobile .header-content > div > .header-menu,
header.mobile .header-content .header-menu {
    display: none;
}

header.mobile .header-menu ul>li .submenu-arrow::before {
    background-color: var(--black);
    transition: var(--transition);
}

header.mobile .header-content .header-menu {
    display: block;
    max-width: 70%;
}

header.mobile .menu-toggle {
    display: block;
}

header.mobile .header-content>.header-menu {
    position: fixed;
    display: block;
    height: 100vh;
    max-width: 65%;
    background-color: white;
    top: 0;
    right: -100%;
    flex-direction: column;
    transition: var(--transition);
    -webkit-transition: var(--transition);
    z-index: 10;
    width: 100%;
    opacity: 0;
    overflow-x: scroll;
}

header.mobile .header-menu ul>li {
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
}



header.mobile .header-menu > ul>li {
    padding: 17px 25px;
    width: 100%;
    border-bottom: 1px solid #f0f0f0;
}

header.mobile .header-menu ul>li .submenu-arrow {
    margin-left: 20px;
    height: 15px;
    width: 15px;
    position: relative;
    cursor: pointer;
    pointer-events: auto;
    z-index: 1;
    display: block;
}

header.mobile .header-content>.header-menu ul li a {
    color: var(--secondary);
    font-size: 16px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    letter-spacing: 0.96px;
    position: relative;
    pointer-events: auto;
    flex: 1;
}

header.mobile .header-content > .header-menu > ul  li.active > a {
    color: var(--primary);
}

/* header.mobile .header-content>.header-menu>ul>li>a {
    width: 95%;
} */

header.mobile .header-content>.header-menu>ul>li.active:has(.submenu-wrapper.open)>a {
    color: var(--primary);
}


/* header.mobile .header-content>.header-menu>ul>li.active>a+div+span::before {
    background-color: var(--primary);
} */

header.mobile .header-menu ul > li.active:has(.submenu-wrapper.open)>span::before,
header.mobile .header-menu ul > li.active:has(.subsubmenu-wrapper.open)>span::before{
    transform: rotate(270deg);
}

header.mobile.open .header-content>.header-menu {
    max-width: 65%;
    right: 0;
    opacity: 1;
}

header.mobile .header-content>.header-menu ul li.sub li a {
    font-size: 1.125rem;
    font-weight: 400;
    line-height: 1.3;
    text-align: left;
    color: var(--black);
    margin: 0;
}

header.mobile .header-menu>ul {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    margin-top: 50px;
}
@media(min-width:1024px){
    header.mobile .header-menu>ul {
        margin-block: 150px 70px;
    }
}


header.mobile .header-menu ul>li .submenu-wrapper {
    position: relative;
    left: unset;
    right: unset;
    margin: 0;
    top: unset;
    max-width: 100%;
    order: 3;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    padding: 0;
    text-align: start;
}

header.mobile .header-menu ul>li .submenu-wrapper ul {
    padding: 0;
}

header.mobile .header-menu ul>li .submenu-wrapper li a {
    font-size: 14px;
    max-width: 65%;
}

header.mobile .header-menu ul>li .submenu-wrapper.open {
    overflow: visible;
    opacity: 1;
    max-height: 100%;
    padding-bottom: 10px;
}

header.mobile .header-menu ul>li .submenu-wrapper ul {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 20px;
    box-shadow: unset;
    height: 100%;
    transition: var(--transition);
    background-color: rgba(255, 255, 255, 0);
}

header.mobile .header-menu ul>li .submenu-wrapper ul li:hover .subsubmenu-wrapper,
header.mobile .header-menu ul>li .submenu-wrapper ul li .subsubmenu-wrapper:hover{
    opacity: 0;
    pointer-events: none;
    z-index: -1;
}

header.mobile .header-menu ul>li .submenu-wrapper ul li:hover .subsubmenu-wrapper {
    opacity: 1;
    pointer-events: none;
    z-index: 1;
}

header.mobile .menu ul li.sub .open-submenu,
header.mobile .menu ul li.sub .open-menu {
    position: relative;
}

.header.mobile .header-menu ul>li .subsubmenu-wrapper>ul>li {
    width: 100%;
    flex-wrap: wrap;
}

header.mobile .header-menu ul>li .submenu-wrapper ul>li.active>a {
    color: var(--primary);
}

header.mobile .header-menu ul > li.active:has(.subsubmenu-wrapper.open)>span::before,
header.mobile .header-menu ul > li.active:has(.submenu-wrapper.open)>span::before {
    /* transform: rotate(0); */
    background-color: var(--primary);
}

header.mobile .header-menu ul>li .submenu-wrapper ul>li:active .submenu-arrow::before {
    background-color: var(--primary);

}

header.mobile .header-menu ul>li .subsubmenu-wrapper,
header.mobile .header-menu ul>li .submenu-wrapper {
    position: relative;
    max-height: 0;
    overflow: hidden;
    max-width: 100%;
    min-width: 100%;
}

header.mobile .header-menu ul>li .submenu-wrapper ul li .subsubmenu-wrapper {
    max-height: 0;
    opacity: 0;
    left: unset;
    top: unset;
    overflow: hidden;
    z-index: 1;
}

header.mobile .header-menu ul>li .submenu-wrapper ul li .subsubmenu-wrapper ul {
    margin-block: 20px;
    padding-left: 20px;
}


@media(min-width:768px) {
    header .header-menu ul>li .submenu-wrapper ul li:hover>a,
    header .header-menu .submenu-wrapper li:has(.subsubmenu-wrapper:hover)>a,
    header.mobile .header-content>.header-menu>ul>li:hover>a,
    header.mobile .header-menu ul>li .submenu-wrapper li a:hover {
        color: var(--primary);
    }

    header.mobile .header-content>.header-menu>ul>li:hover>a+div+span::before,
    header.mobile .header-menu ul>li .submenu-wrapper ul>li:hover .submenu-arrow::before {
        background-color: var(--primary);
    }

    header .header-menu ul>li .submenu-wrapper ul li:has(.subsubmenu-wrapper) .submenu-arrow::before {
        width: 6px;
        height: 11px;
    }
    header.mobile .header-menu ul>li .submenu-wrapper ul>li:hover .submenu-arrow::before{
        transform: rotate(270deg);
    }
}


header .menu {
    position: fixed;
    display: flex;
    height: 100vh;
    max-width: 100%;
    background-color: white;
    top: 0;
    right: 0;
    flex-direction: column;
    transform: translateY(100%);
    transition: var(--transition);
    -webkit-transition: var(--transition);
    z-index: 1;
    max-width: 600px;
    min-width: 540px;
    opacity: 0;
}

header.open .menu {
    transform: translateY(0%);
    opacity: 1;
}

header .menu .menu-section {
    height: 100%;
    overflow: auto;
    padding: 35px 60px;
}

header .menu .menu-section>div:first-of-type {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 90px;
    gap: 10px;
}

header .menu .menu-section .menu-header {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 40px;
}

header .menu .menu-section .menu-toggle {
    display: block;
    width: 26px;
    height: 25px;
    margin: 0;
    transition: var(--transition);
}

header .menu .menu-section .menu-header>a:first-of-type {
    font-size: 1.125rem;
    color: var(--primary);
    cursor: pointer;
    display: flex;
    gap: 15px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: 2.5;
    letter-spacing: -0.45px;
    text-transform: uppercase;
    transition: var(--transition);
    opacity: 0;
}

header.open .menu .menu-section .menu-header>a:first-of-type {
    opacity: 1;
}

header .menu .menu-section .menu-header>a:first-of-type:hover {
    color: var(--black);
}


header .menu .menu-section>ul {
    margin-top: 100px;
}

header .menu .menu-section>ul>li>a {
    font-size: 1.625rem;
    color: var(--black);
    line-height: 2.06;
    letter-spacing: -0.26px;
    max-width: 440px;
    position: relative;
    pointer-events: auto;
}

header .menu .menu-section>ul li.sub ul li a {
    font-size: 1.125rem;
    font-weight: 400;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.3;
    letter-spacing: normal;
    text-align: left;
    color: var(--black);
    margin: 0;
}

header .menu .menu-section>ul li.sub ul li a:hover {
    color: var(--primary);
}

header .menu ul {
    list-style: none;
    padding: 0;
}

header .menu .menu-section ul li {
    transition: var(--transition);
    overflow: hidden;
    cursor: pointer;
}


header .menu ul li.subsub,
header .menu ul li.sub {
    position: relative;
    transition: var(--transition);
}

header .menu ul li.sub.active>a {
    color: var(--primary);
}

header .menu ul li.subsub.active a.selected,
header .menu ul li.subsub.active>a {
    color: var(--black);
}

header .menu ul li.subsub a:hover {
    color: var(--black);
}

header .menu .menu-section>ul>li:last-of-type {
    margin-bottom: 0;
}

header .menu .menu-section>ul>li>ul,
header .menu .menu-section>ul>li>a {
    margin: 0;
}



header .menu ul li>ul {
    transition: var(--transition);
    max-height: 0;
    opacity: 0;
    gap: 10px;
    display: flex;
    flex-direction: column;
}

header .menu ul li.subsub>ul:first-of-type {
    padding-top: 0;
}


header .menu ul li.subsub.active>ul:first-of-type,
header .menu ul li.sub.active>ul:first-of-type {
    padding-top: 20px;
    opacity: 1;
}

header .menu ul li.subsub.active>ul,
header .menu ul li.sub.active>ul {
    max-height: 700px;
    margin-bottom: 20px;
    padding-right: 0;
}

header .menu ul li.sub .open-submenu,
header .menu ul li.sub .open-menu {
    position: absolute;
    right: 0;
    height: 17px;
    width: 17px;
    display: block;
    z-index: 0;
    top: 18px;
}

header .menu ul li.sub .open-submenu {
    width: 12px;
    top: 3px;
}

header .menu ul li.sub .open-submenu span,
header .menu ul li.sub .open-menu span {
    height: 3px;
    width: 17px;
    background-color: var(--primary);
    display: flex;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}

header .menu ul li.sub .open-submenu span {
    width: 12px;
    height: 2px;
}

header .menu ul li.sub .open-submenu span:last-of-type,
header .menu ul li.sub .open-menu span:last-of-type {
    transform: rotate(90deg);
    transition: var(--transition);
}

header .menu ul li .subsub.active .open-submenu span,
header .menu ul li.sub.active .open-menu span {
    transform: none;
    background-color: var(--primary);
}

header .menu ul li ul li {
    color: #828181;
    padding-left: 20px;
}

header .menu ul li ul li:hover {
    color: var(--black);
}

header.open .filter-wrapper .custom-select {
    z-index: 0;
}

header.mobile .header-content>.header-menu .button{
    margin-top: 62px;
    margin-inline: 25px;
    text-align: center;
    padding-block: 11px;
    margin-bottom: 10px;
    position: relative;
    width: auto;
}

header.mobile .header-content>.header-menu .search-form{
    margin-top: 62px;
}

header.mobile .header-content>.header-menu .search-form{
    display: flex;
    align-items: center;
    position: relative;
    margin-inline: 25px; 
}

header.mobile .header-content>.header-menu .search-form input{
    border: solid 1px #f0f0f0;
    border-radius: 0px;
    width: 100%;
    max-width: 100%;
    opacity: 1;
    height: 40px;
    padding-inline: 25px;
}

.rounded header.mobile .header-content>.header-menu .search-form input{
    border-radius: 20px;
}

header.mobile .header-content>.header-menu .search-form button{
    position: absolute;
    right: 25px;
}

header .header-content .button{
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    padding: 7px 20px 6px;
    cursor: pointer;
}

header .header-content>.header-menu > .button{
    display: none;
}

@media (min-width: 1024px) {
    header.mobile .header-content>.header-menu .search-form{
        display: none;
    }
}


@media (max-width: 767px) {
    header .search-form {
        order: 2;
        display: none;
    }
}

@media (max-width: 767px) {
    header.mobile .header-content>.header-menu:has(.button) .search-form{
        margin-top: 10px;
    }
    header {
        height: 50px;
        padding: 15px 20px 15px 15px;
    }

    header.mobile {
        padding: 5px 20px 5px 21px;
    }
    
    header.mobile .header-menu>ul {
        margin-block: 33px 70px;
    }

    header .header-content .button{
        display: none;
    }

    header .menu {
        width: 100vw;
        max-width: unset;
        min-width: unset;
    }

    header.mobile .logo {
        max-width: 166px;
        min-width: 166px;
        margin-top: 0px;
        margin-left: 0px;
    }

    header.mobile.open .logo {
        display: none;
    }

    
    header .menu .menu-section .menu-toggle,
    header.mobile .left-wrapper .menu-toggle {
        margin-left: 17px;
    }

    header.mobile.open .header-content {
        margin-top: 15px;
        margin-right: 5px;
        gap: 0;
    }

    header.mobile .header-content>.header-menu {
        max-width: 100%;
    }

    header.mobile.open .header-content>.header-menu {
        max-width: 91%;
        transform: translateY(0%);
        opacity: 1;
    }

    header.mobile.open .header-content>div::before{
        content:"";
        background-color: white;
        width: 91%;
        height: 45px;
        position: fixed;
        top: 0;
        right: 0;
        left: auto;
        z-index: 11;
    }

    header .right-wrapper {
        margin-right: 10px;
    }

    header .right-wrapper .button {
        padding: 15px 38px 14px 14px;
    }

    header.open .right-wrapper {
        display: none;
    }

    header .right-wrapper .button::after {
        right: 20px;
        height: 10px;
        width: 10px;
    }

    header .menu .menu-section {
        padding: 40px 30px;
    }


    header .menu ul li.sub .open-menu {
        top: 13px;
    }

    header .header-content>div>a:not(.button, .menu-toggle) {
        display: none;
    }

    header .header-content>div>a.button {
        order: 1;
    }

    header .menu-toggle {
        order: 3;
    }


    header .logo img {
        transition: var(--transition);
        max-width: 100%;
        max-height: initial;
    }

    header.open .logo img {
        filter: brightness(1);
    }

    header .header-content > div:not(.header-menu) > .button{
        display: none;
    }

    header .header-content > div.header-menu > .button{
        display: block
    }




    header .header-content>div>a.button span {
        display: none;
    }


    

    header.mobile .header-menu ul>li .submenu-wrapper li a {
        font-size: 13px;
        font-weight: 300;
        letter-spacing: normal;
        line-height: 1.3;
    }

  

    header .header-content>div {
        gap: 10px;
    }

    header.mobile .header-content {
        margin-left: auto;
    }

    header .header-content>div>a.button::after {
        width: 16px;
        height: 16px;
        transition: var(--transition);
        display: none;
    }

    header.fixed .header-content>div>a.button::after,
    header.open .header-content>div>a.button::after {
        background-color: var(--black);
    }
    

    header.open .search-form {
        z-index: -1;
    }

    header>div .search-form button:hover::before {
        opacity: 1;
    }

    header.open>div .search-form button::before {
        background-color: var(--black);
    }

    header.mobile .header-content>.header-menu ul li a {
        font-size: 12px;
        flex: 1;
    }
}

@media (max-width: 500px) {
    header .menu .select-wrapper.mobile {
        display: block;
    }

    header .menu .form a[submit],
    header .menu form a[submit] {
        right: 20px;
        height: 17px;
        width: 17px;
    }

    header .menu .form a[submit]::before,
    header .menu form a[submit]::before {
        height: 17px;
        width: 17px;
    }
}



.side-form{
    position: fixed;
    height: 100vh;
    width: 90%;
    background-color: white;
    z-index: 10;
    right: -100%;
    top: 0;
    transition: var(--transition);
    
    overflow-y: auto;
    max-width: 485px;
    
    display: flex;
    align-items: center;
    z-index: 999;
}

.side-form > div{
    height: 100%;
    overflow-y: auto;
    padding: 50px 20px;
}

.side-form .title{
    font-size: 28px;
    font-weight: normal;
    line-height: 1.37;
    letter-spacing: normal;
    text-align: center;
    margin-bottom: 30px;
    color: var(--secondary);
    text-transform: uppercase;
}

.side-form .title + p{
    font-size: 18px;
    font-weight: 300;
    line-height: 1.56;
    letter-spacing: normal;
    text-align: center;
    color: var(--third);
    margin: 24px 0 30px 0;
    font-family: var(--font-family-2);
}

.side-form .form{
    margin: 30px auto 0;
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
}

.side-form .form .input-wrapper{
    width: 100%;
}

.contacts .side-form .form:has(:not(.template)){
    padding-top: 0;
}

.side-form .close{
    position: absolute;
    top: 20px;
    right: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    transform: rotate(45deg);
    z-index: 12;
}

.side-form.opened::before {
    content: "";
    background-color: white;
    width: 91%;
    height: 45px;
    position: fixed;
    top: 0;
    right: 0;
    left: auto;
    z-index: 11;
}

.side-form .close:hover{
    transform: rotate(-45deg);
}

.side-form .close::before{
    content:"";
    position: absolute;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background-color: var(--primary);
}

.side-form .close::after{
    content:"";
    position: absolute;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
    height: 100%;
    width: 2px;
    border-radius: 2px;
    background-color: var(--primary);
}

.side-form.opened{
    right: 0;
}

.side-form > div{
    width: 100%;
}

body:has( .side-form)::before {
    content: "";
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #454444;
    mix-blend-mode: multiply;
    opacity: 0;
    pointer-events: none;
    transition: var(--transition);
    -webkit-transition: var(--transition);
    z-index: 11;
    
}

body:has(.form-proposta.opened)::before,
body:has(.side-form.opened)::before {
    opacity: 1;
    pointer-events: auto;
}
.side-form .form .button-f::before{
    border-radius: 0;
}
.rounded .side-form .form .button-f::before{
    border-radius: 30px;
}

.side-form .form input[type="checkbox"] + label{
    left: 0;
}

.side-form .form div > p{
    margin: 0;
}
.side-form .form .checkbox-wrapper{
    margin-top: 10px;
    margin-bottom: 10px;
    flex-wrap: nowrap;
}

/* .side-form .form input[type="checkbox"] + label + label{
    position: relative;
} */


.side-form .form .button-f[submit] + p.warning {
    position: relative;
    bottom: 0px;
    padding: 0 20px;
    text-align: center;
    height: initial;
}


@media(min-width:768px){
    /* o espaco fica dentro do div que faz scroll: com ele no painel, a barra
       de scroll ficava a meio do painel e o conteudo cortado nessa caixa */
    .side-form{
        width: 100%;
        max-width: 525px;
        padding: 0;
        gap: 30px;
    }
    .side-form > div{
        padding: 145px 55px 95px;
    }

    .side-form.opened::before {
        content: none;
        background-color: white;
        width: 100%;
        max-width: 485px;
        height: 45px;
        position: fixed;
        top: 0;
        right: 0;
        left: auto;
        z-index: 11;
    }

    .side-form .title{
        font-size: 28px;
        line-height: 1.29;
        margin-bottom: 30px;
    }
}




/*****************************/
/********** ROUNDED **********/
/*****************************/

.index .rounded .listing .accordion,
.rounded .testemunhos .slide > div,
.rounded .colunas.box .itens,
.rounded .colunas.image .itens .img,
.rounded .list-article .img-list,
.rounded .module8 .container > a:has(img),
.rounded .img-without{
    border-radius: 30px;
}

@media(min-width:768px){
    .rounded .galeria > .container video,
    .rounded .galeria > .container iframe,
    .rounded .galeria > .container a:has(img),
    .rounded .galeria > .container .slider-wrapper .tns-outer {
        border-radius: 30px;
    }
}

/*****************************/
/********** COLUNAS **********/
/*****************************/

.colunas .container{
    max-width: 1220px;
}
.colunas .containerSlide,
.colunas .containerSlide .tns-outer{
    max-width: 1240px;
    margin-inline: auto;
}

:is(.index, .template) section.colunas .containerSlide:has( .tns-outer){
    max-width: 1350px;
}

.colunas .container > div,
.colunas.box .container .slider,
.colunas.image .container .slider{
    display: flex;
    flex-direction: row;
    gap: 50px;
    /* justify-content: center; */
}

.colunas.box .container .slider.tns-slider{
    gap: 0px;
}


.colunas.image .container .slider:not(.tns-slider){
    overflow: initial;
}

.colunas.icon .slider-arrows{
    bottom: auto;
}

.colunas.box .slider-arrows{
    bottom: 0;
}

.colunas.icon:not(.box) .slider-arrows{
    top: calc(90px - 10px)
}

.mobile .colunas.icon:not(.box) .slider-arrows{
    top: calc(115px - 10px)
}

.colunas.icon .slider > div.item{
    align-items: flex-start !important;
}
@media (min-width: 768px) {

    :is(.index, .template) section.colunas .containerSlide:has( .tns-outer){
        padding-inline: 60px;
    }
    .colunas .containerSlide .tns-ovh {
        padding-inline: 15px;
    }
    .colunas.image .containerSlide .tns-ovh{
        padding-inline: 5px;
    }

    .colunas[data-count="2"] .slider > div{
        max-width: 50%;
        /* margin-inline: auto; */
    }

    .colunas .slider > div.item {
        flex: 1;
    }
    
    .colunas .slider > div.item:not(:has( img)){
        display: flex;
        align-items: center;
        justify-content: center;
    }
    
    
    .colunas .slider.tns-slider > div.item,
    .colunas .slider.many-items > div.item:not(:has( img)){
        display: block;
        align-items: start;
    }

    .colunas .container.containerSlide > div,
    .colunas.image .container.containerSlide .slider{
        gap: 0px;
    }

    .colunas.box[data-count="2"] .slider > div .itens{
        padding-inline: 60px;
    }

    .colunas .slider-arrows>div.next{
        margin-right: 0px;
        right:-35px
    }
    .colunas .slider-arrows>div.prev{
        margin-left: 0px;
        left:-30px
    }
}

@media (max-width: 767px) {
    .colunas.image .container.containerSlide:has( .tns-slider){
        padding-inline:0;
        max-width: 100%;
    }
    .colunas .container > .slider:not(.gridCol){
        flex-direction: column !important;
    }

    .colunas.image .container.containerSlide .slider.gridCol{
        gap: 50px 20px;
        flex-wrap: wrap;
        justify-content: center;
    }
    .colunas.image .container.containerSlide .slider.gridCol:not(.tns-slider) .item {
        flex: calc(50% - 20px);
        max-width: calc(50% - 10px);
    }

    .colunas.module25 .slider-arrows{
        display: none !important;
    }

    :is(.index, .template) section.colunas .itens p + .button,
    .passos p + .button{
        display: block;
        text-align: center;
        padding: 9.5px 20px;
        font-size: 14px;
    }
    body:not(.tablet) .colunas.box .container .slider.few-items:not(.tns-slider),
    body:not(.tablet) .colunas.image .container .slider.few-items:not(.tns-slider){
        flex-direction: column;
        gap: 30px;
    }
}

.colunas .container .slider.few-items{
    display: flex;
    gap: 30px;
}


:is(.index, .template) section.colunas.tablet .containerSlide:has( .tns-outer){
    padding-inline: 0;
}

.colunas.align-left .itens,
.template .colunas.align-left .itens p{
    text-align: left;
}

.colunas.align-right .itens,
.template .colunas.align-right .itens p{
    text-align: right;
}

.colunas.align-center .itens,
.template .colunas.align-center .itens p{
    text-align: center;
}

.colunas .item{
    flex: 1;
}

.colunas .tns-inner .slider {
    display: flex;
    justify-content: center;
    padding-bottom: 40px;
    gap: 50px;
    transition: var(--transition);
}


.colunas .tns-inner .slider,
.colunas.box .container > div{
    gap: 25px;
}

.colunas:not(.image,.box) .itens{
    padding: 0px 10px ;
}

.colunas.image .tns-inner .slider {
    padding-bottom: 0;
}

.colunas.box .itens{
    box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.04);
    transition: var(--transition);
    background-color: white;
    padding: 50px 25px 46px;
    height: 100%;
}

.colunas.box .tns-slider .itens{
    box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.0);
}

.colunas.box .tns-slide-active .itens{
    box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.04);
}




main:has( .colunas.box:last-of-type .tns-inner .slider) + footer{
    margin-top: 0px;
}

.colunas.box:has( .tns-inner .slider) + section{
    margin-top: 80px;
}

.colunas.box:has( .tns-inner .slider){
    margin-bottom: 80px;
}


.colunas .itens .img{
    width: 90px;
}
.colunas.box .itens .img{
    width: 70px;
}
.colunas.image .itens .img{
    width: 100%;
    overflow: hidden;
}

.colunas.image .itens .img img,
.colunas .itens .img.icon{
    transition: var(--transition);
}

.rounded .colunas.image .itens .img.icon{
    border-radius: 0;
}
.colunas.image .itens .img img.icon{
    max-height: 78px;
    min-height: 78px;
    width: auto !important;
    border-radius: 0;
}


.colunas .itens .img.icon{
    margin-block: 5px;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}

.colunas.image .itens a:hover .img.icon,
.colunas.image .itens .img a:hover img,
.colunas:not(.image) .itens a:hover .img.icon{
    transform: scale(1.05);
}


.colunas .itens .img.icon:before{
    content: "";
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
    height: 90px;
    display: block;
}

.colunas.image .itens .img.icon:before{
    height: 78px;
}

.colunas.align-center .img{
    margin-inline: auto;
}

.colunas.image .img.icon{
    mask-position: center;
    -webkit-mask-position: center;
    mask-size: contain;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
}

/* .colunas.align-right .img.icon{
    mask-position: right;
    -webkit-mask-position: right;
}

.template .template-module.colunas.align-right small.text-center{
    text-align: right !important;
}

.template .template-module.colunas.align-left small.text-center{
    text-align: left !important;
} */

.template .template-module p small{
    display: inline-block;
    line-height: 1 !important;
}

.colunas.align-right .img{
    margin-left: auto;
    margin-right: 0;
}

:is(.index, .template) section.colunas .itens h3{
    font-size: 22px;
    font-weight: 600;
    line-height: 1.16;
    letter-spacing: normal;
    color: var(--secondary);;
    margin-bottom: 17px;
}

:is(.index, .template) section.colunas .itens p{
    font-size: 15.5px;
    font-weight: 300;
    line-height: 1.42;
    letter-spacing: normal;
    color: var(--third);
    margin-bottom: 0;
    font-family: var(--font-family-2);
}

:is(.index, .template) section.colunas .itens p + .button,
.passos p + .button{
    margin-top: 20px;
    
}
:is(.index, .template) section.colunas.icon .itens p + .button{
    font-size: 14px;
    line-height: 1.43;
    padding: 10.6px 23px 10.4px;
}

.colunas.icon:not(.box) .container.containerSlide > div.slider-arrows{
    top: 80px;
    bottom: auto;
}

.colunas .itens > p:first-of-type{
    margin-top: 0px;
}

.colunas.image .itens > a:has(.img.icon) + p:first-of-type,
.colunas .itens > .img + p:first-of-type{
    margin-top: 27px;
}
.colunas div:not(.containerSlide) .slider-arrows{
    display: none;
}

.colunas .container .sliderWrapper {
    position: relative;
    justify-content: center !important;
}

.colunas div.containerSlide .slider-arrows {
    display: flex;
}

.colunas .slider-arrows > div::before {
	background-color: #dedddd;
}

.colunas .slider-arrows > div:hover::before {
	background-color: #757575;
}

.colunas .slider-arrows>div.prev {
    transform: rotate(180deg);
}


.colunas:not(.image,.box).tablet .itens{
    padding-inline: 0px;
}

.colunas .itens > div.img + div:has( a.button:first-of-type){
    margin-top: 20px;
}

.colunas.image .itens .img + div:has( > *){
    margin-top: 27px;
}

@media (max-width: 767px) {
    .colunas .container .sliderWrapper{
        justify-content: start !important;
    }

    .colunas.box .container > div.slider-arrows{
        display: none;
    }

    .colunas.box .tns-inner .slider{
        margin-left: 10px;
    }
    
    .colunas.box .container .slider{
        padding-bottom: 20px;
    }

    :is(.index, .template) section.colunas:not(.box) .container:has(.slider){
        padding-inline: 0px;
    }
    .colunas:not(.image,.box) .itens,
    :is(.index, .template) section.colunas .container .header{
        margin-inline: 0;
    }

    .colunas .container .sliderWrapper:not(:has(.tns-inner)),
    :is(.index, .template) section.colunas .container .header{
        padding-inline: 20px;
    }
    .colunas .tns-inner .slider{
        gap: initial !important;
        padding-bottom: 0;
    }
    .colunas:not(.image,.box) .itens,
    .colunas.box:has( .tns-inner .slider) .container{
        padding-inline: 0px;
    }

    .colunas.box:has( .tns-inner .slider){
        margin-bottom: 40px;
    }
    .colunas.box:has( .tns-inner .slider) + section{
        margin-top: 40px !important;
    }
    .colunas .button{
        width: 100%;
        text-align: center;
    }

    .colunas.icon:not(.box) .container.containerSlide > div.slider-arrows{
        top: 105px;
    }
    .colunas div.containerSlide .slider-arrows{
        width: calc(100% + 40px);
        left: -20px;
    }
}

/*************************/
/********** CTA **********/
/*************************/
.cta{
    padding-block: 78px;
    position: relative;
}

.cta .image{
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    pointer-events: none;
}

.cta .image:before{
    content:"";
    background: #a09f9f;
    mix-blend-mode: multiply;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;

}

.cta .image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
}

.cta .container{
    max-width: 970px;
    text-align: center;
}

.cta .container p{
    font-size: 28px;
    font-weight: bold;
    line-height: 1.14;
    letter-spacing: -0.28px;
    text-align: center;
    color: white;
    margin: 0;
}

.cta.color .container p strong{
    color: inherit;
}

.cta .container p strong{
    color: var(--primary);
}

.cta:not(.image) .container p strong{
    font-weight: inherit;
}

.cta:not(.image) .container p strong{
    font-weight: inherit;
}

.cta.transparent .container p,
.cta.grey .container p{
    color: var(--secondary);
}

.cta:not(.image)::before{
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    pointer-events: none;
}

.cta.color::before,
.cta.transparent::before{
    background: var(--primary);
}

.cta.transparent::before{
    opacity: 0.1;
}

.cta.grey::before{
    background: #f8f8f8;
}

.cta .container p + .button{
    margin-top: 23px;
}
.cta.color .container .button{
    color: var(--secondary);
}

.cta.color .container .button::before{
    background-color: white;
}

.cta .container .button{
    width: 100%;
}

@media(min-width:768px){
    .cta{
        padding-block: 90px;
    }
    .cta .container p{
        font-size: 45px;
        line-height: 1.11;
        letter-spacing: -0.45px;
    }
    .cta .container p + .button{
        margin-top: 35px;
    }
    .cta .container .button{
        width: auto;
    }
}


.video-wrapper-fullscreen-galeria,
.video-wrapper-fullscreen {
	position: fixed !important;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100vw;
	height: 100vh;
	background-color: #000;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
	transition: var(--transition);
	padding: 50px 20px;

}

.video-wrapper-fullscreen.active,
.video-wrapper-fullscreen.active iframe,
.video-wrapper-fullscreen.active video,
.video-wrapper-fullscreen-galeria.open,
.video-wrapper-fullscreen-galeria.open iframe,
.video-wrapper-fullscreen-galeria.open video {
	opacity: 1;
	pointer-events: all;
    display: block;
}

.video-wrapper-fullscreen .close,
.video-wrapper-fullscreen-galeria .close {
	display: block;
	position: absolute;
	top: 20px;
	right: 30px;
	width: 50px;
	height: 50px;
	mask-image: url(/bluesky/assets/img/template/close.svg);
	mask-repeat: no-repeat;
	mask-size: contain;
	mask-position: center center;
	-webkit-mask-image: url(/bluesky/assets/img/template/close.svg);
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	-webkit-mask-position: center center;
	background-color: white;
	cursor: pointer;
    z-index: 9;
}

.video-wrapper-fullscreen video,
.video-wrapper-fullscreen iframe,
.video-wrapper-fullscreen-galeria video,
.video-wrapper-fullscreen-galeria iframe {
	width: 100%;
	height: 100%;
	display: none;
	border: none;
}


@media(min-width:992px){
    .video-wrapper-fullscreen-galeria,
    .video-wrapper-fullscreen {
        padding: 50px 100px;
    }
}

/*****************************/
/********** GALERIA **********/
/*****************************/



.galeria > .container{
    max-width: 100%;
    padding: 0px;
}

.galeria .slider .image,
.galeria .slider img {
	border-radius: 0;
}


.galeria .slider-wrapper {
	position: relative;
}


.galeria > .container .slider-wrapper .tns-outer {
    overflow: hidden;
    isolation: isolate;
    transform: translateZ(0);
}

.galeria .slider-wrapper .tns-outer .image {
    border-radius: 0;
	/* background-color: #c7c5c5; */
    background: transparent;
}

.galeria .slider-wrapper .tns-outer .image.video{
    background: none;
}

.galeria .slider:not(.tns-slider) {
    display: flex;
    overflow: hidden;
}

.galeria .slider:not(.tns-slider) > .slide {
    flex-basis: 100%;
    min-width: 100%;
}

.galeria .slider:not(.tns-gallery) .slide {
	position: relative;
}


.galeria:not(.module3, .module2 ) .image {
	position: relative;
    aspect-ratio: 1.779788838612368 / 1;
	background-color: unset;
}


.galeria.module2 .image,
.galeria.module3 .image {
	position: relative;
	padding-top: 56.25%;
}


.galeria .image img {
	position: absolute;
	top: -1px;bottom:-1px;
	left: -1px;right: -1px;
	max-width: 100%;
	max-height: 100%;
	margin: auto;
	/* width: auto !important; */
    min-height: initial;
    min-width: initial;
	height: 100%;
}

.index .galeria .image img {
    object-fit: cover;
    width: 100%;
}

.galeria .slider .legend {
	padding: 10px 40px;
	text-align: center;
	position: relative;
    background-color: white;
    pointer-events: none;
}
.galeria .slider .legend small {
    text-align: center;
    margin: .25em 0;
	color: white;
	font-size: 20px;
	font-weight: 300;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.5;
}

.slider-arrows {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	pointer-events: none;
	width: 100%;
	justify-content: space-between;
}

.slider-arrows>div {
	position: relative;
	width: 17px;
    height: 37px;
	pointer-events: auto;
	margin: 30px;
	cursor: pointer;
	transition: var(--transition);
}

.galeria .slider-wrapper .slider-arrows>div{
    opacity: 0.5;
}

.galeria .slider-wrapper .slider-arrows>div:hover {
    opacity: 1;
	transform: none;
}

.galeria .slider-wrapper .slider-arrows>div.prev {
	transform: rotateY(180deg);

}

@media(min-width:768px){


    .galeria > .container{
        max-width: 1220px;
        padding: 0 20px;
    }
}


.galeria .slider-wrapper .slider-arrows>div.prev:hover {
	transform: rotateY(180deg);
}

.slider-arrows>div.prev {
	transform: rotate(0);
}

.slider-arrows>div.next {
	right: 0;
}

.slider-arrows > div::before {
	content: "";
	position: absolute;
	-webkit-mask-image: url("/bluesky/assets/img/template/caret.svg");
	-webkit-mask-repeat: no-repeat;
	mask-image:url("/bluesky/assets/img/template/caret.svg");
	mask-repeat: no-repeat;
    -webkit-mask-size: contain;
	mask-size: contain;
	background-color: #ffffff;
	transition: var(--transition);
	cursor: pointer;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}


@media (max-width: 768px){

	.slider-arrows > div {
		width: 12px;
		height: 27px;
		margin: 10px;
	}

	.rounded .galeria > .container .slider-wrapper .tns-outer .image {
		border-radius: 30px;
	}

}

@media(min-width: 992px) {
	.galeria .slider .legend {
		padding: 20px 80px;
	}

}


/***********************************************/
/********** MODULE 1: SLIDER (NO BAR) **********/
/***********************************************/


.galeria .slider-wrapper.no-bar .slider .legend {
    position: absolute;
    top: 0;bottom: 0;
    left: 0;right: 0;
    background: linear-gradient(to top, rgba(1,1,1,0.2), rgba(1,1,1,0.1) );
    display: flex;
    align-items: flex-end;
    justify-content: center;
    z-index: 1;
}

.galeria .slider-wrapper.no-bar .slider .legend,
.galeria .slider-wrapper.no-bar .slider .legend p{
    color: white;
    font-weight: 300;
	font-size: 16px;
	line-height: 1.25;
}

.galeria .slider-wrapper.no-bar .slider .legend a,
.galeria .slider-wrapper.no-bar .slider .legend p a{
    border-bottom: 1px solid currentColor;
    pointer-events: all;
}
.galeria .slider-wrapper.no-bar .slider .video + .legend {
    background: transparent;
    color: white;
}
/*

.galeria .slider-wrapper.no-bar .slider-arrows {
    padding-top: 0;
}

.galeria .slider-wrapper.no-bar .slider-arrows > div::before {
    background-image: url(/template1/assets/img/arrow-white.svg);
} */

@media(max-width: 768px) {

	.galeria .slider-wrapper.no-bar .slider .legend {
		position: relative;
		background: transparent;
		padding: 10px 20px 0;
	}
	.galeria .container .slider-wrapper.no-bar .slider .legend {
		padding: 10px 20px 0;
	}
    .galeria .slider-wrapper.no-bar .slider .video + .legend,
    .galeria .slider-wrapper.no-bar .slider .legend,
	.galeria .slider-wrapper.no-bar .slider .legend p {
		font-size: 14px;
		font-weight: 300;
		line-height: 1.43;
		letter-spacing: normal;
		text-align: center;
		color: var(--third);
		margin: 0;
	}

    .galeria .slider-wrapper.no-bar .slider-arrows > div{
        opacity: .5;
    }
}


.galeria .video.open + .legend {
	opacity: 0;
}

/* @supports(object-fit: cover) {
	.galeria .image.video img {
		top: 0;left: 0;
		transform: none;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
} */


.galeria .video a.play {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 72px;
    height: 72px;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.galeria .video a.play:before {
	content: "";
	position: absolute;
	top: auto;bottom: auto;
    left: auto;
    right: auto;
    width: 25px;
    height: 25px;
	margin: auto;
	-webkit-mask-image: url("/bluesky/assets/img/template/play_icon.svg");
	mask-image: url("/bluesky/assets/img/template/play_icon.svg");
	mask-position: right;
	-webkit-mask-position: right;
    mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size:contain;
	background-color: white;
	transition: var(--transition);
	z-index: 2;
}

.galeria .video a.play:after {
	content: "";
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: calc(100% - 8px);
    height: calc(100% - 8px);
	transition: var(--transition);
    border-radius: 100%;
    z-index: 1;
    background-color: transparent;
    border: 4px solid white;
}

.galeria .image.video iframe,
.galeria .image.video video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 99.9%;
    height: 100%;
    border: 0;
    opacity: 0;
    pointer-events: none;
    z-index: 2;
}


.galeria .video.open iframe,
.galeria .video.open video {
    opacity: 1;
    pointer-events: auto;
}


@media(max-width: 768px) {

	.galeria .video + p.text-center {
		font-size: 10px;
	}

	.galeria a + p.text-center, .galeria img + p.text-center {
		margin-top: 10px;
	}
    .galeria .video a.play {
        width: 41px;
		height: 41px;
    }
	.galeria .video a.play:before {
        max-height: 12px;
        max-width: 11px;
	}

	.galeria .video a.play:after {
		width: 41px;
		height: 41px;
        border: 2px solid white;
        width: calc(100% - 4px);
        height: calc(100% - 4px);
	}

}



@media(min-width: 768px) {
	.galeria .video a {
		border-width: 4px
	}

	.galeria .video a.play {
		width: 70px;
		height: 70px;
	}

	.fullscreen-container iframe,
	.fullscreen-container video {
		padding: 50px;
	}


}

@media(min-width: 992px) {
	.galeria .video a.play {
		width: 95px;
		height: 95px;
	}
	.galeria .video a:hover.play::after {
		transform: scale(1.05)
	}
}




footer{
    padding:0;
    margin-top: 60px;
}
footer .container{
    display: flex;
    align-items: start;
    flex-wrap: wrap;
    font-size: 16px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.63;
    letter-spacing: normal;
    text-align: left;
    color: var(--secondary);
    flex-direction: column;
    text-align: center;
    gap: 12px;
}


/* footer .middle .container > div + div{
    margin-top: 26px;
} */

footer .container > div:nth-of-type(2),
footer .container > div:nth-of-type(5){
    text-align: right;
}

footer .container a{
    color:var(--secondary);
    font-weight: 300;
    cursor: pointer;
}

footer .middle .container > div:nth-of-type(1) span{
    white-space: pre-wrap;
}



.footer-socials {
    gap: 25px;
    display: flex;
    justify-content: end;
}

.footer-socials a {
    position: relative;
    color: #fff;
    transition: var(--transition);
}

.footer-socials a i {
    font-size: 18px;
    width: 18px;
    height: 18px;
    line-height: 18px;
    display: inline-block;
    color: var(--secondary);
    transition: var(--transition);
}

footer .container a.active,
footer .container a:hover,
.footer-socials a:hover i{
    color: var(--primary);
}
footer .container a.active{
    font-weight: normal;
}

@media(min-width:768px){
    footer {
        margin-top: 0;
    }
    .index footer {
        margin-top: 60px;
    }
    footer .container{
        flex-direction: row;
        text-align: initial;
    }

    footer .container strong,
    footer .container a:first-of-type{
        display: initial;
    }
    footer .container strong{
        font-weight: 500;
    }
    footer .container > div + div{
        margin-top: 0;
    }

    footer .container .footer-menu{
        display: flex;
        gap: 10px 20px;
        flex-wrap: wrap;
    }


    /* NOVAS REGRAS - Controlam o w-100 baseado na presença dos elementos */
    
    /* Se footer-socials NÃO existe, esconde w-100 após o primeiro col */
    footer .container:has(> div.col:not(:has(+ .footer-socials))):has(> div.col:first-of-type + .w-100) .w-100 {
        display: none;
    }
    
    /* Se footer-menu NÃO existe, esconde w-100 após socials ou primeiro col */
    footer .container:not(:has(> .footer-menu)) .w-100 {
        display: none !important;
    }
    
    /* Se AMBOS footer-socials E footer-menu existem, esconde w-100 após eles */
    footer .container:has(> .footer-socials):has(> .footer-menu) .w-100 {
        display: block;
    }
    
    /* Se APENAS footer-socials existe, mostra w-100 após ele */
    footer .container:has(> .footer-socials):not(:has(> .footer-menu)) .w-100 {
        display: block;
    }
    
    /* Se APENAS footer-menu existe, mostra w-100 após primeiro col */
    footer .container:not(:has(> .footer-socials)):has(> .footer-menu) > div.col:first-of-type + .w-100 {
        display: block;
    }

    footer .middle .container:not(:has(> .footer-menu)) > div:nth-of-type(2) {
        text-align: center;
        margin-inline: auto;
        justify-content: center;
    }


    /* footer .container > div:not(.footer-socials) + .w-100{
        display: none;
    }

    footer .container > div.col + .w-100{
        display: block;
    } */

    footer .container > div.credito{
        text-align: right;
        flex-basis: 20%;
        flex-grow: unset;
        flex: 1;
    }

    /* SO quando existe menu de rodape: o credito encolhe ao proprio conteudo
       para os menus usarem a linha toda (antes dividiam 50/50 e quebravam
       cedo demais). Sem menu de rodape as 3 colunas ficam iguais, senao a
       coluna do meio (redes sociais) deixava de estar centrada.
       width:auto anula o width:100% herdado do mobile. */
    footer .container:has(> .footer-menu) > div.credito{
        flex: 0 0 auto;
        width: auto;
    }
}

/* @media(max-width:1024px){
    body:has( .follow) footer{
        padding-bottom:80px
    }
} */

@media(max-width:767px){
    footer .container{
        gap: 0;
        font-size: 14px;
        line-height: 1.43;
        letter-spacing: normal;
    }
    footer .middle .container > div + div:not(:last-of-type){
        margin-top: 0;
        margin-bottom: 40px;
    }
    footer .middle .container div:first-of-type{
        order: 3;
    }
    footer .container .w-100{
        display: none;
    }
    footer  .middle .container > div.footer-socials{
        order: 1;
        justify-content: center;
    }
    footer .container > div.w-100 + div{
        order: 2;
    }

    footer .container a + a{
        display: block;
    }

    footer .container > div.credito{
        order: 5;
        text-align: center;
        margin-top: 0px;
    }
}


footer > .newsletter{
    background-color: var(--primary);
    padding-block: 35px;
}

footer > .newsletter .container,
footer > .newsletter .container > div:last-of-type{
    display: flex;
    align-items: center;
    gap: 23px;
}

footer > .newsletter img{
    max-width: 60px;
    max-height: 60px;
    width: 100%;
    height: 100%;
}

footer > .newsletter .container > *{
    text-align: left;
    color: white;
}

footer > .newsletter .container > div:last-of-type div,
footer > .newsletter .container > div{
    text-align: left !important;
    order: 1;
}

footer > .newsletter .container > div img{
    filter: brightness(0) invert(1);
}

footer > .newsletter .container h2{
    font-size: 22px;
    font-weight: 600;
    line-height: 1.27;
    margin: 0;
}

footer > .newsletter .container{
    flex-direction: row;
    align-items: flex-start;
}

footer > .newsletter .container > div:last-of-type{
    flex-direction: column;
    flex: 1;
    margin-top: 0;
    align-items: flex-start;
}

footer > .newsletter .container,
footer > .newsletter .container p{
    font-size: 16px;
    font-weight: 300;
    line-height: 1.38;
    letter-spacing: normal;
}

footer > .newsletter .container p{
    margin: 0;
    margin-top: 10px;
}

footer > .newsletter .container strong{
    margin: inherit;
    font-weight: 600;
}

footer .newsletter a{
    width: 28px;
    height: 23px;
    order: 2;
}
footer .newsletter a:before{
    content: "";
    display: inline-block;
    width: 28px;
    height: 23px;
    -webkit-mask-image: url(/bluesky/assets/img/svg/bullet.svg);
    mask-image: url(/bluesky/assets/img/svg/bullet.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: white;
    transition: var(--transition);
}

footer .newsletter a:hover:before{
    transform: translateX(10px);
}

@media(min-width:768px){
    footer > .newsletter{
        padding-block: 50px;
    }
    footer > .newsletter .container{
        align-items: center;
        gap: 53px;
    }
    footer > .newsletter .container > div:last-of-type,
    footer > .newsletter .container > div:last-of-type div{
        flex: 1;
    }
    footer > .newsletter img {
        max-width: 110px;
        max-height: 110px;
    }

    footer > .newsletter .container h2{
        font-size: 30px;
        line-height: 1.33;
        margin: 0;
    }
    footer > .newsletter .container,
    footer > .newsletter .container p{
        font-size: 18px;
        font-weight: 300;
        line-height: 1.56;
    }
    footer .newsletter a{
        width: 45px;
        height: 37px;
        order: 2;
    }
    footer .newsletter a:before{
        width: 45px;
        height: 37px;
    }

    footer > .newsletter .container > div:last-of-type{
        flex-direction: inherit;
        align-items: center;
        display: flex;
    }
}





footer > div{
    position: relative;
}
footer > div:not(.newsletter)::before{
    content: "";
    background-color: var(--color-footer);
    position: absolute;
    opacity: .07;
    top: 0;
    bottom: 0;
    left:0;
    right: 0;
}

/* footer:has( > .upper + .middle) .middle::before,
footer:has( > .middle + .bottom) .middle::before{
    opacity: .2;
} */

footer > div.middle::before{
    opacity: .2;
}

footer > div.upper:has( > *){
    padding-block: 50px;
}
footer > div.middle{
    padding-block: 60px;
    background: #f9f5f047;
}
footer > div.bottom{
    /* padding-block: 27px 45px; */
    padding-block: 35px 35px;
}



footer > div.upper .container{
    display: flex;
    flex-wrap: inherit;
    align-items: flex-start;
    gap: 30px;
}

footer > div.upper .container > div{
    text-align: center;
    flex: 1;
}

footer > div.upper .container > div p.title{
    font-size: 18px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.33;
    color: var(--secondary);
}

footer > div.upper .container > div p:first-of-type{
    margin-top: 0;
}

footer > div.upper .container > div p:last-of-type{
    margin-bottom: 0;
}

footer > div.upper .container > div p{
    font-size: 14px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.71;
    letter-spacing: normal;
    color: var(--secondary);
}

footer > div.upper .container > div p a{
    font-size: 14px;
    font-weight: 600;
    color: var(--primary);
}

footer > div.upper .container > div p small{
    font-size: 12px;
    color: #b7b8b0;
}

footer > div.upper .container > div p a:hover{
    opacity: .6;
}

footer > div.upper .container > div p strong{
    font-weight: 600;
    margin-right: inherit;
}


@media(min-width:768px){
    footer > div.upper:has( > *) {
        padding-block: 95px;
    }
    footer > div.upper .container{
        gap: 50px;
    }
    footer > div.upper .container > div{
        text-align: left;
        flex: 1;
    }
    footer > div.upper .container > div p.title{
        font-size: 20px;
        line-height: 1.5;
    }

    footer > div.upper .container > div p{
    font-size: 16px;
    line-height: 1.63;
    }

    footer > div.upper .container > div p a{
        font-size: 16px;
    }
}


footer .barra-apoios{
    flex-wrap: nowrap;
    align-items: center;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: normal;
    text-align: left;
    color: #444;
    position: relative; 
}

footer .barra-apoios:has( > div > .imagens:first-of-type){
    justify-content: center;
}

footer .barra-apoios p{
    margin: 0;
}

footer .barra-apoios img{
    max-height: 52px;
    max-width: 100%;
}

footer .barra-apoios > div:first-of-type:has( + div),
footer .barra-apoios > div.descricao{
    flex: 1;
    order: 1;
    align-self: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
footer .barra-apoios > div:has( img){
    order: 2;
    align-self: center;
}
footer .barra-apoios > div:first-of-type:has( + div) p,
footer .barra-apoios > div.descricao p{
    max-width: 490px;
    margin: 0;
}

footer .barra-apoios > div:has( img){
    
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
footer .barra-apoios .imagens {
  display: flex;
  gap: 20px;
  justify-content: center;
}

@media(max-width:767px){
    footer .barra-apoios > div p{
        text-align: center;
    }
    footer .barra-apoios .imagens{
        flex-wrap: wrap;
    }
    footer .barra-apoios > div:has( img){
        gap: 10px;
        
        align-items: center;
        margin-top: 10px;
    }
}


/*******************************/
/********* FORM STYLE **********/
/*******************************/
.form .honey-input,
form .honey-input {
    position: fixed;
    top: -200%;
    left: -200%;
}

.form {
	position: relative;
    z-index: 1;
    margin-top: 50px;
}

.form .warning {
    font-size: 12px !important;
    font-weight: 400;
    color: var(--warning);
    height: 0;
    margin: 0;
    margin-top: 5px;
    padding-left: 0px;
    position: absolute;
    transition: var(--transition);
}

.form .not-filled .warning {
    height: 20px;
}

.form input.not-filled,
.form input[type="checkbox"].not-filled + label,
.form textarea.not-filled,
.form select.not-filled + .custom-select .placeholder {
    border: 2px solid var(--warning) !important;
}

.form textarea::after,
.form textarea::before {
    content: "";
    width: 95%;
    height: 53px;
    position: absolute;
    top: 73px;
    left: 0;
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 0.2) 100%);
    pointer-events: none;
    z-index: 1;
}

.form textarea,
.form select,
.form input{
    position: relative;
    border-radius: 10px;
    padding: 12.5px 21px;
    background-color: transparent;
    border: 1px solid rgba(0,0,0,0.2)!important;
    font-size: 16px;
    font-weight: 300;
    letter-spacing: -0.15px;
    text-align: left;
    color: var(--secondary);
    width: 100%;
    transition: var(--transition);
    margin: 0;
	line-height: 1.63;
}
.form textarea {
	border-radius: 25px;
	resize: none;
}

.form .input-wrapper{
    position: relative;
    transition: var(--transition);
}

/* .form .input-wrapper:has( .not-filled){
    margin-bottom: 30px;
} */

.form .input-wrapper label {
    display: block;
    position: absolute;
    transform: translateY(21px);
    pointer-events: none;
    transition: var(--transition);
    margin: 0;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.2;
    letter-spacing: normal;
    color: var(--secondary);
    left: 19px;
    top: -4px;
    z-index: 1;
    font-family: var(--font-family-2);
}

.form .input-wrapper input:focus + label,
.form .input-wrapper input[placeholder] + label,
.form .input-wrapper textarea:focus + label,
.form .input-wrapper textarea[placeholder] + label,
.form .input-wrapper.filled label {
    padding: 0 5px;
    font-size: 11px;
    color: var(--primary);
	transform: translateY(-1px);
    z-index: 1;
    line-height: 1;
	isolation: isolate;
}

.form .input-wrapper input + label::before,
.form .input-wrapper input[placeholder] + label::before,
.form .input-wrapper textarea + label::before,
.form .input-wrapper textarea[placeholder] + label::before,
.form .input-wrapper label::before {
	content: "";
	height: 100%;
	width: 100%;
    background-color: var(--form-fundo, white);
	display: block;
	position: absolute;
	top: 0;bottom: 0;
	left: 0;right: 0;
	z-index: -1;
	top: 5px
}


.form .input-wrapper input:focus,
.form .input-wrapper.filled input {
    border: 2px solid var(--primary) !important;
}

.form .input-wrapper input:focus + label::before,
.form .input-wrapper input[placeholder] + label::before,
.form .input-wrapper textarea:focus + label::before,
.form .input-wrapper textarea[placeholder] + label::before,
.form .input-wrapper.filled label::before {
	content: "";
	height: 100%;
	width: 100%;
    background-color: var(--form-fundo, white);
}

.form .input-wrapper input:focus,
.form .input-wrapper textarea:focus,
.form .input-wrapper.filled input {
    /* !important obrigatorio: a regra base ".form textarea, .form select,
       .form input" usa "border: ... !important", que sem isto ganhava e a
       textarea em foco ficava cinzenta (so verde quando .filled, que tem
       o seu proprio !important) */
    border: 1px solid var(--primary) !important;
}

.form .checkbox-wrapper {
    display: flex;
    margin-top: 7px;
	flex-wrap: wrap;
	gap: 10px;
    margin-bottom: 30px;
    position: relative;
}


.form .checkbox-wrapper .checkbox {
	max-width: 33%;
}

.form .checkbox-wrapper .warning{
    padding-left: 0;
    bottom: -2px;
}

.form input[type="checkbox"],
.form input[type="radio"] {
    display: none;
}

.form input[type="checkbox"] + label,
.form input[type="radio"] + label {
    display: inline-block;
    vertical-align: middle;
    height: 24px;
    width: 24px;
    background-color: transparent;
	cursor: pointer;
    position: relative;
    border: 2px solid #e9e9e9;
	border-radius: 5px;
    transition: var(--transition);
}


.form input[type="checkbox"]:checked + label::before,
.form input[type="radio"]:checked + label::before {
    opacity: 1;
}

.form input[type="checkbox"]:checked + label,
.form input[type="radio"]:checked + label {
    border: 1px solid var(--primary);
}

.form input[type="checkbox"] + label + label,
.form input[type="radio"] + label + label {
    display: inline-block;
	font-size: 14px;
	line-height: 1.63;
	letter-spacing: normal;
	text-align: left;
	font-weight: 300;
	color: var(--secondary);
    flex: 1;
    cursor: pointer;
}

.form input[type="checkbox"] + label + label a,
.form input[type="radio"] + label + label a {
    color: var(--primary);
	font-weight: 300;
	border-bottom: 1px solid transparent;
}

.form input[type="checkbox"] + label + label a:hover,
.form input[type="radio"] + label + label a:hover {
	border-bottom: 1px solid currentColor;
}

.form input[type="checkbox"] + label + label:has(a.disabled),
.form input[type="checkbox"] + label + label a.disabled{
    pointer-events: none;
    color: currentColor;
    cursor: default;
}

.form .button-f{
    width: 100%;
    text-align: center;
    padding: 15px 29px;
}
.form .button-f::before{
    border-radius: 10px;
}
.form .button-f::before:hover{
    transform: scale(1.02);
}


.form .button[submit] + .warning{
    position: relative;
    padding: 0;
}

@media (max-width: 768px) {

    .form textarea,
    .form select,
    .form input:not([type="checkbox"], [type="file"]) {
		padding: 12px 30px;
    }

	.form .checkbox-wrapper{
		margin-bottom: 20px ;
		gap: 10px 20px;
	}
}

/* body::before {
    content: "";
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #454444;
    mix-blend-mode: multiply;
    opacity: 0;
    pointer-events: none;
    transition: var(--transition);
    -webkit-transition: var(--transition);
    z-index: 11;
} */

.index .content{
    flex:1;
    display: flex;
    align-items: center;
    justify-content: center;
}

body:has( .side-form.opened) .follow{
    z-index: 1;
}

.follow{
    position: fixed;
    bottom: 22px;
    right: 22px;
    display: flex;
    gap: 9px;
    z-index: 99;
}
.follow a{
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.follow a:before{
    content: "";
    background: var(--primary);
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 50%;
}

.follow a:hover{
    transform: scale(1.1);
}

.follow a::after{
    content: "";
	position: absolute;
	top: 0;bottom: 0;
    left: 0;
    right: 0;
    width: 26px;
    height: 26px;
	margin: auto;
	-webkit-mask-image: url(/bluesky/assets/img/lp/messenger.svg);
	mask-image: url(/bluesky/assets/img/lp/messenger.svg);
	mask-position: center;
	-webkit-mask-position: center;
	mask-size:cover;
	-webkit-mask-size:cover;
	background-color: white;
	transition: var(--transition);
	z-index: 2;
}

.follow a.whatsapp::after{
    -webkit-mask-image: url(/bluesky/assets/img/lp/whatsapp.svg);
	mask-image: url(/bluesky/assets/img/lp/whatsapp.svg);
}

.follow a.email::after {
    -webkit-mask-image: url(/bluesky/assets/img/lp/email.svg);
    mask-image: url(/bluesky/assets/img/lp/email.svg);
    width: 22px;
    height: 20px;
}

.follow a.phone::after {
    -webkit-mask-image: url(/bluesky/assets/img/lp/phone.svg);
    mask-image: url(/bluesky/assets/img/lp/phone.svg);
    width: 22px;
    height: 22px;
}


.nome_phone,
.nome_phone span{
    position: relative;
}

.nome_phone span{
    order: 2;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    color: white;
    display: none;
}

.follow a.nome_phone:before{
    border-radius: 24.5px;
}

.follow a.phone.nome_phone::after{
    position: relative;
}


@media(min-width:768px){
    .follow{
        bottom: 30px;
        right: 38px;
    }
    .follow a{
        width: 50px;
        height: 50px;
    }
    .follow a::after{
        width: 33px;
        height: 33px;
    }
    .follow a.email::after{
        width: 26px;
        height: 22px;
    }
    .follow a.phone::after{
        width: 24px;
        height: 24px;
    }
    .follow a.phone.nome_phone{
        width: auto;
        padding-inline: 15px;
        display: flex;
        gap: 8px;
        align-items: center;
    }
    .follow a.phone.nome_phone span{
        display: flex;
    }
}


.tns-item, 
.tns-item .legend, 
.tns-item .container, 
.tns-item .image.filter::after, 
.tns-item .image.filter::before, 
.tns-item .image.video::before, 
.tns-item .image.video .play, 
.tns-item .img.video .play, 
.tns-item .image.video video,
.tns-item .img.video video,
.tns-item img {
    perspective: 1000px !important;
    backface-visibility: hidden !important;
    transform: translate3d(0, 0, 0);
    -webkit-perspective: 1000px !important;
    -webkit-backface-visibility: hidden !important;
    -webkit-transform: translate3d(0, 0, 0);
}

.filter-container {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 80px;
    flex-wrap: nowrap;
}

.filter-wrapper{
    position: relative;
    display: flex;
    flex-wrap: nowrap;
}

.listing .filter .input-wrapper,
.filter-container .input-wrapper {
    max-width: 250px;
    width: 100%;
}


.input-wrapper {
    position: relative;
    display: flex;
}


.input-wrapper label {
    position: absolute;
    left: 22px;
    top: 12px;
    transition: var(--transition);
    z-index: 2;
    font-size: 16px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.75;
    letter-spacing: normal;
    text-align: left;
    color: var(--secondary);
    opacity: 1;
    background-color: var(--form-fundo, white);
    padding: 0 5px;
        font-family: var(--font-family-2);

}

.input-wrapper:has(.isSelected) label {
    z-index: 1;
    color: var(--primary);
}

.input-wrapper:has(.isSelected) label,
.input-wrapper.filled label {
    top: -8px;
    font-size: 0.7rem;
}
.custom-select {
    height: auto;
    padding: 0;
    background: initial;
    border: 0;
    border-radius: 0;
    display: inline;
}

.custom-select .placeholder {
    border: 1px solid rgba(0,0,0,0.2);;
    border-radius: 0px;
    padding: 16px 0;
    padding-left: 22px;
    color: var(--secondary);
    cursor: pointer;
    z-index: 3;
}

.rounded .custom-select .placeholder {
    border-radius: 27.5px;
}

.custom-select .placeholder,
.listing .filter-form .filter-input::placeholder {
    text-transform: capitalize;
    font-size: 16px;
    font-weight: normal;
    line-height: normal;
    letter-spacing: normal;
    text-align: left;
    color: var(--secondary);
}


.custom-select .placeholder {
    background-color: white;
    text-transform: none;
}

.custom-select.open .placeholder {
    border-bottom: 2px solid rgba(255, 255, 255, 0);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.custom-select .options-wrapper {
    border-left: 1px solid rgba(0,0,0,0.2);;
    border-right: 1px solid rgba(0,0,0,0.2);;
    border-bottom: 1px solid rgba(0,0,0,0.2);;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
    padding-top: 0px;
    padding-bottom: 10px;
    top: 20px;
    padding-right: 0;
    padding-left: 24px;
    margin-top: -3px;
    font-size: 13px;
}

.rounded .custom-select .options-wrapper {
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
}

.custom-select.has-reset .placeholder > div.reset {
    width: 7px;
    height: 20px;
    right: 21px;
    top: 0;
    overflow: visible;
}

.custom-select.has-reset .placeholder > div.reset::before, 
.custom-select.has-reset .placeholder > div.reset::after {
    width: 8px;
    bottom: auto;
    height: 1px;
    transition: all .2s ease-in-out;
    background-color: var(--secondary);
}

.custom-select:not(.has-reset) .placeholder::before {
    right: 21px;
    border-right: 1px solid var(--secondary);
    border-bottom: 1px solid var(--secondary);
}


.custom-select.not-filled + .custom-select .placeholder {
    border-color: var(--warning);
}
.custom-select.not-filled  + .custom-select .options-wrapper {
    border-left: 2px solid var(--warning);
    border-right: 2px solid var(--warning);
    border-bottom: 2px solid var(--warning);
}

.custom-select.has-reset .placeholder > div.reset::before {
    border-radius: 1px;
    transform-origin: 50%;
    left: -2px;
    transform: translateX(-25%) rotate(45deg) scaleX(0.9);
    top: 9px;
}

.custom-select.has-reset .placeholder > div.reset::after {
    border-radius: 1px;
    transform-origin: 50%;
    transform: translateX(25%) rotate(-45deg) scaleX(0.9);
    top: 9px;
}


.custom-select.has-reset.isSelected .placeholder > div.reset::before {
    transform: translateX(1px) rotate(45deg) scaleX(1.4);
    background-color: var(--primary);
}

.custom-select.has-reset.isSelected .placeholder > div.reset::after {
    transform: translateX(0) rotate(-45deg) scaleX(1.4);
    background-color: var(--primary);
}

.custom-select.has-reset.isSelected .placeholder > div.reset {
    height: 22px;
}

.custom-select.has-reset.isSelected .placeholder > div.reset::after,
.custom-select.has-reset.isSelected .placeholder > div.reset::before {
    height: 2px;
    width: 9px;
    top: 0;
}

.custom-select .options {
    padding: 0;
    overflow: auto;
}

.custom-select.open .options-wrapper, 
.custom-select.open .options {
    max-height: 250px;
    opacity: 1;
    top: 50px;
    /* text-transform: capitalize; */
    z-index: 3;
}

.custom-select .options > div {
    padding: 5px 0;
}

.custom-select.isSelected .placeholder {
    border-color: var(--primary);
    pointer-events: none;
}

.custom-select.isSelected.open .placeholder {
    border-bottom: 2px solid #3e976500;
}

.custom-select.isSelected.open .options-wrapper {
    border-color: var(--primary);
}

.listing .clear-btn {
    display: none;
    font-size: 0.688rem;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.1;
    letter-spacing: normal;
    color: #c4c3c3;
    margin-top: 30px;
    display: flex;
    justify-content: end;
    align-items: center;
    position: absolute;
    right: 70px;
    bottom: 10px;
}

.listing .clear-btn::before {
    content: "\00D7";
    font-size: 1rem;
    padding-right: 9px;
}

.listing .filter-form {
    margin-top: 0;
    position: relative;
}

.listing .filter-form .filter-input {
    padding-top: 17px;
    padding-bottom: 17px;
    padding-left: 22px;
    width: 100%;
    font-size: 16px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    text-align: left;
    color: #003535;
    outline: none;
    border-radius: 0px;
    position: relative;
    min-width: 380px;
    border: 1px solid rgba(0,0,0,0.2);;
        font-family: var(--font-family-2);

}

.rounded .listing .filter-form .filter-input {
    border-radius: 100px;
}

.listing .filter-form .filter-input.has-value{
    border-color: var(--primary);
}

.listing .filter-form span{
    right: 21px;
    top: 0;
    bottom: 0;
    margin: auto;
    position: absolute;
    width: 15px;
    height: 15px;
    cursor: pointer;
}

.listing .filter-form span::after{
    content: "";
    margin: auto;
    position: absolute;
    width: 15px;
    height: 15px;
    -webkit-mask-image: url(/bluesky/assets/img/svg/search.svg);
    mask-image: url(/bluesky/assets/img/svg/search.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--secondary);
}



.listing .filter-form:has(.has-value) span::before,
.listing .filter-form:has(.has-value) span::after {
    content: "";
    position: absolute;
    top: 0;
    left: -1px;
    margin: auto;
    bottom: auto;
    height: 2px;
    width: 9px;
    background-color: var(--secondary);
}

.listing .filter-form:has(.has-value) span {
    width: 7px;
    height: 22px;
    right: 21px;
    top: 0;
    overflow: visible;
}


.listing .filter-form:has(.has-value) span::before {
    border-radius: 1px;
    transform-origin: 50%;
    left: -2px;
    transform: translateX(-25%) rotate(45deg) scaleX(0.9);
    top: 9px;
}

.listing .filter-form:has(.has-value) span::after {
    -webkit-mask: none;
    mask: none;
    background: none;
    border-radius: 1px;
    transform-origin: 50%;
    transform: translateX(25%) rotate(-45deg) scaleX(0.9);
    top: 9px;
}


.listing .filter-form:has(.has-value) span::before {
    transform: translateX(1px) rotate(45deg) scaleX(1.4);
    background-color: var(--primary);
}

.listing .filter-form:has(.has-value) span::after {
    transform: translateX(0) rotate(-45deg) scaleX(1.4);
    background-color: var(--primary);
}



.mobile-close,
.filter-button,
.apply-mobile {
    display: none;
}


/********************/
/***** NOTICIAS *****/
/********************/

.news .listing .container,
.blog .listing .container,
.template .related-section .container{
    max-width: 1240px;
}

.row:has(.list-article) {
    --gap-h: 60px;
    --gap-v: 80px;
    opacity: 1;
    transition: opacity 0.3s ease;
}

.related-section .row:has(.list-article) {
    justify-content: center;
    
}

.row.fade-out:has(.list-article) {
    opacity: 0;
}

.list-article .img-list {
    position: relative;
    overflow: hidden;
    width: 100%;
	font-size: 0;
    isolation: isolate;
    transform: translateZ(0)
}

.list-article .img-list img {
    width: 100%;
    transition: var(--transition);
    height: 100%;
}

.list-article .img-list:hover img {
    transform: scale(1.05);
}

.list-article .list-bot-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 15px;
}

.list-article .list-bot-content span {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.43;
    letter-spacing: normal;
    text-align: center;
    color: #bdbebe;
    display: flex;
    gap: 10px;
    text-transform: uppercase;
}

.list-article .list-bot-content > h2 > a,
.list-article .list-bot-content > h3 > a,
.list-article .list-bot-content > a {
    font-size: 22px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.18;
    letter-spacing: normal;
    color: var(--secondary);
    margin-top:11px;
    text-align: center;
    text-transform: none;
}
.list-article .list-bot-content > h2,
.list-article .list-bot-content > h3{
    font-size: inherit;
    line-height: inherit;
    letter-spacing: normal;
    margin: inherit;
    text-align: center;
}

.list-article .list-bot-content span > a{
    color: var(--primary);
}

.list-article .list-bot-content > h3 > a:hover,
.list-article .list-bot-content > h2 > a:hover,
.list-article .list-bot-content > a:hover,
.list-article .list-bot-content span > a:hover {
    opacity: .5;
}

@media (max-width: 768px) {

    .row:has(.list-article) {
        --gap-v: 35px;
    }

    .news .listing .container,
    .blog .listing .container,
    .template .related-section .container{
        padding-inline: 20px;
    }

    .list-article {
        max-width: 100%;
    }

    .list-article .list-bot-content span {
        font-size: 13px;
    }
    .list-article .list-bot-content > h2 > a,
    .list-article .list-bot-content > h3 > a,
    .list-article .list-bot-content > a {
        font-size: 22px;
        line-height: 1.45;
        letter-spacing: normal;
        margin-top: 5px;
    }

    .list-article .list-bot-content > h2,
    .list-article .list-bot-content > h3{
        margin-top: 9px;
    }
 
    .filter-button {
        display: flex;
        padding: 10px 20px;
        border: 1px solid rgba(0,0,0,0.2);;
        font-size: 13px;
        font-weight: normal;
        letter-spacing: normal;
        color: var(--secondary);
        gap: 10px;
        align-items: center;
        max-width: 106px;
        margin-bottom: 12px;
        margin-left: auto;
    }
    .rounded .filter-button {
        border-radius: 50px;
    }
    .filter-button span {   
        content: "";
        width: 15px;
        height: 13px;
        -webkit-mask-image: url(/bluesky/assets/img/svg/filters.svg);
        mask-image: url(/bluesky/assets/img/svg/filters.svg);
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        background-color: var(--secondary);
        pointer-events: none;
    }

    .filter-container {
        display: flex;
        justify-content: flex-start;
        gap: 10px;
        margin-bottom: 80px;
        flex-direction: column;
        position: fixed;
        background: white;
        top: 0;
        bottom: 0;
        right: 0;
        z-index: 99999;
        margin: 0;
        padding: 20px;
        padding-top: 90px;
        transition: var(--transition);
        transform: translatex(100%);
        gap: 20px;
    }

    .listing .filter-form span {
        right: -100%;
    }

    .listing .filter-container.open .filter-form span {
        right: 21px;
    }

    .listing .filter-form .filter-input {
        min-width: 250px;
    }

    .filter-container.open {
        max-width: 91%;
        transform: translateY(0%);
    }

    body:has(.filter-container.open) header::before {
        opacity: .8;
        pointer-events: auto;
        z-index: 1;
    }

    .custom-select .placeholder {
        padding: 10px 0;
        padding-left: 22px;
    }

    .listing .filter-form .filter-input {
        padding-top: 9.5px;
        padding-bottom: 9.5px;
        font-size: 14px;
    }
    .listing .filter-form span::after,
    .listing .filter-form span {
        width: 13px;
        height: 13px;
    }

    .input-wrapper label {
        font-size: 13px;
        top: 9px;
        z-index: 1;
    }

    .custom-select.has-reset .placeholder,
    .listing  .filter-form .filter-input::placeholder {
    font-size: 13px;
    }   

    .input-wrapper .custom-select.open + label {
        z-index: 3;
    }
    .apply-mobile {
        display: block;
    }
    .apply-mobile .button {
        text-align: center;
        width: 100%;
    }


    .custom-select.open .options-wrapper, 
    .custom-select.open .options {
        top: 42px;
    }

    .filter-container .mobile-close {
        display: none;
        position: absolute;
        width: 20px;
        height: 20px;
        top: 20px;
        right: 24px;
    }

    .filter-container.open .mobile-close{
        display: block;
    }


    .filter-container .mobile-close span {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        width: 16px;
        height: 2px;
        background-color: #1f3839;
        border-radius: 2px;
        transition: var(--transition);
        transform: rotate(45deg);
        pointer-events: none;
    }


    .filter-container .mobile-close span:last-child {
        transform: rotate(-45deg);

    }


    .custom-select.not-filled + .custom-select .placeholder {
        margin-bottom: 5px;
    }

}


.article .banner .list-article-desc {
    margin-top: 22px;
}

.article .banner .list-article-desc > div {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
}

.article .banner .list-article-desc > div > * {
    font-size: 14px;
    font-weight: normal;
    line-height: 1.43;
    letter-spacing: normal;
    text-align: center;
    color: var(--primary);
}

.article .banner .list-article-desc > div > span {
    color: #8f8e8e;
}

.article .banner + .template {
    margin-top: 35px;
}

.pagination-wrapper {
    margin: 80px auto 0;
    max-width: 1020px;
    padding: 0 20px;
}

.pagination {
    padding: 0 0 60px;
    mix-blend-mode: multiply;
    border-bottom: 2px solid #f5f5f5;
}

.template:not( .listing:has( .pagination) + *) .listing .pagination{
    border-color: transparent;
}


.pagination ul {
    margin: auto;
    width: 100%;
    padding: 0;
    display: flex;
    justify-content: space-between;
    padding: 0;
}

.template .pagination ul{
    padding-inline: 0;
}

.pagination ul li {
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
    color: var(--primary);
    font-size: 13px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    letter-spacing: 0.65px;
    text-transform: uppercase;
    line-height: 1;
    transition: var(--transition);
    display: flex;
    align-items: center;
}

.pagination ul li:hover {
    opacity: 0.6;
}

.pagination ul li.disabled{
    pointer-events: none;
    opacity: 0.4;
}

article .template .pagination ul {
    justify-content: center;
    display: flex;
}
article .template .pagination li {
    flex: 1;
}

article .template .pagination li:nth-of-type(2) {
     justify-content: center;
}

article .template .pagination li:last-of-type {
     justify-content: right;
}


@media(min-width:768px){
    .pagination ul{
        justify-content: initial;
    }
    .pagination ul li{
        justify-content: left;
    }

    .pagination ul li:nth-of-type(2){
        width: auto;
        justify-content: center;
    }

    .pagination ul li:last-of-type{
        justify-content: right;
    }
}

.related-section {
    margin-top: 80px;
}

.related-section h2 {
    font-size: 36px;
    font-weight: bold;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.26;
    letter-spacing: normal;
    text-align: center;
    color:var(--secondary);
    display: block;
}

.template .related-section h2{
    margin-bottom: 50px;
}

@media(max-width: 768px) { 

    .article .banner .list-article-desc > div > *{
        font-size: 13px;
    }

    .article .banner .list-article-desc {
        margin-top: 15px;
    }

    .article .banner + .template > .template-module:first-of-type:has(img) .container {
       padding: 0;
    }

    .article .banner + .template > .template-module:first-of-type:has(img) .container img {
       border-radius: 0px;
    }

    .pagination-wrapper {
        margin-top: 60px;
    }

    .pagination {
        padding: 0 0 30px;
    }

    .pagination ul li {
        font-size: 12px;
        letter-spacing: 0.6px;
    }

    .related-section {
        margin-top: 50px;
    }

   

    .template .related-section h2{
        margin-bottom: 35px;
        font-size: 28px;
        font-weight: bold;
        line-height: 1.29;
        letter-spacing: normal;
        text-align: center;
        color: #212121;
    }

    .related-section .row:has(.list-article) {
        --gap-v: 30px;
    }
}

.img-without {
    position: relative;
    width: 100%;
    height: 100%;
    background: #f8f8f8;
    transition: var(--transition);
}

.img-without > div {
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
	background-position: center;
	background-size: 70%;
	filter: grayscale(1);
    transition: var(--transition);
    opacity: .25;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}


.card-item .img.img_vertical,
.card-item .img-without.img_vertical,
.card-item .img-without {
	aspect-ratio: 0.74 / 1;
}
.card-item .img.img_quadrada,
.card-item .img-without.img_quadrada {
	aspect-ratio: 1 / 1;
}
.card-item .img.img_horizontal,
.card-item .img-without.img_horizontal {
	aspect-ratio: 1.858 / 1;
}

.list-article .img-without {
	aspect-ratio: 1.67 / 1;
}

.list-article .img-without > div {
	background-size: 50%;
}

.list-article a:hover .img-without {
    transform: scale(1.05);
}

/***************************************/
/************ CONTACTS **************/
/***************************************/

.contacts:has( .content .form) .content > .template:has(*) {
    margin: 0;
    padding-top: 80px;
}

.contacts:has( .content .form) .content > .template:has(*) .module28 {
    background-color: #f7f6f5;
    --form-fundo: #f7f6f5;
    padding-block: 80px 100px;
}

/* .contacts:has( .content .form) .content:has( .no-img ) > .template:has(*) {
    margin-top: 80px;
} */
.contacts:has( .content .form) .content > .template:has( > .module8.FullW:first-of-type) {
    padding-top: 0;
}

/* .contacts .form {
    padding-top: 100px;
} */

.contacts .form .template {
    margin: 0;
    padding-top: 0px;
    padding-bottom: 50px;
    background:none;
}

/* .contacts .form:has(:not(.template)) {
    padding-top: 100px;
} */


.newsletter .container.container-sm:has(.form),
.contacts .form .container{
    max-width: 880px; 
}
/* .contacts .form {
    margin-bottom: 80px;
}
@media (min-width: 768px) {
    .contacts .form {
        margin-bottom: 140px;
    }
} */

.contacts .form .title {
    font-size: 40px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.25;
    letter-spacing: 2px;
    text-align: center;
    color: #1f3839;
    margin-top: 90px;
}
.contacts .form .desc {
    font-size: 18px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.44;
    letter-spacing: normal;
    text-align: center;
    color: #1f3839;
    margin-bottom: 50px;
    display: block;
}


/***************************************/
/********** FAQ ACCORDION LISTING **********/
/***************************************/

/* .faq .listing-faq .container{
    max-width: 940px;
} */

.faq .listing-faq .theme-title{
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.29;
    letter-spacing: normal;
    text-align: left;
    color: #212121;
    margin-bottom: 30px;
}

.faq .listing-faq .item + .theme-title{
    margin-top: 80px;
}

.faq .listing-faq .container > h2 strong{
    color:var(--primary)
}

.faq .listing-faq .accordion {
	background-color: white;
    box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.04);
    border: none;
}

.faq .listing-faq .accordion + .accordion{
    margin-top: 9px;
}

.faq.rounded .listing-faq .accordion{
    border-radius: 30px;
    padding-bottom: 3px;
}

.faq .listing-faq .accordion > div:first-of-type > .h3{
	font-size: 20.5px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: normal;
    text-align: left;
	color: var(--secondary);
	margin: 0;
	transition: var(--transition);
	-webkit-transition: var(--transition);
	letter-spacing: normal;
	text-transform: none;
}

.faq .listing-faq .accordion.open > div:first-of-type > .h3{
	color: var(--primary);
}

.faq .listing-faq .accordion > div {
	position: relative;
	padding: 20px 25px;
	cursor: pointer;
	transition: var(--transition);
	-webkit-transition: var(--transition);
}

.faq .listing-faq .accordion > div:first-of-type > .h3 {
	padding-right: 33px;
	max-width: 760px;
	pointer-events: none;
}

.faq .listing-faq .accordion .toggle {
	height: 14px;
	width: 14px;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 23px;
	margin: auto;
	transition: var(--transition);
	-webkit-transition: var(--transition);
	pointer-events: none;
}
.faq .listing-faq .accordion .toggle:hover {
	transform: rotate(90deg);
}
.faq .listing-faq .accordion.open .toggle:hover {
	transform: rotate(0);
}
.faq .listing-faq .accordion .toggle::before {
	content: none;

}
.faq .listing-faq .accordion .toggle::after {
	content: "";
	position: absolute;
	top: 2px;
	bottom: 0;
    mask-image: url(/bluesky/assets/img/template/arrow.svg);
	-webkit-mask-image: url(/bluesky/assets/img/template/arrow.svg);
	mask-repeat: no-repeat;
	mask-size: contain;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	-webkit-mask-position: center center;
	background-color: white;
	margin: auto;
	height: 9px;
	width: 100%;
	background-color: var(--secondary);
	transition: var(--transition);
	-webkit-transition: var(--transition);
	transform: rotate(0);
}

.faq .listing-faq .accordion.open .toggle::after,
.faq .listing-faq .accordion.active .toggle::after {
	transform: rotate(180deg);
    background-color: var(--primary);
}



@media(min-width:768px){
    .faq .listing-faq .accordion > div:first-of-type:hover > .h3{
        color: var(--primary);
    }
    .faq .listing-faq .accordion > div:hover .toggle::after {
        background-color: var(--primary);
    }
}

.faq .listing-faq .accordion .description {
	padding: 0 25px;
	max-height: 0;
	overflow: hidden;
	transition: var(--transition);
	cursor: default;
}

.faq .listing-faq .accordion.active .description {
	max-height: none;
}
/* .faq .listing-faq .accordion .description p,
.faq .listing-faq .accordion .description ul,
.faq .listing-faq .accordion .description ol {
	font-size: 18px;
    font-weight: 300;
    line-height: 1.36;
    letter-spacing: normal;
    text-align: left;
    color: var(--third);
} */

/* .faq .listing-faq .accordion .description strong{
    font-weight: 600;
} */

.faq .listing-faq .accordion .description > *:first-child {
	margin-top: 5px !important;
}
.faq .listing-faq .accordion .description > *:last-child {
	margin-bottom: 30px !important;
}


@media (min-width: 768px) {

    /* .faq .listing-faq .container > h2{
        font-size: 40px;
        line-height: 1.13;
        letter-spacing: normal;
        margin-bottom: 60px;
    } */

    .faq .listing-faq .accordion > div:first-of-type > .h3{
        font-size: 22px;
        line-height: 1.34;
    }

	.faq .listing-faq .accordion > div {
        padding: 42px 50px;
	}

	.faq .listing-faq .accordion .toggle {
		height: 34px;
		width: 34px;
        right: 40px;
	}
	.faq .listing-faq .accordion .description {
        padding: 0 50px;
	}

	.faq .listing-faq .accordion .description > *:first-child {
		margin-top: 0 !important;
	}
	.faq .listing-faq .accordion .description > *:last-child {
		margin-bottom: 47px !important;
	}
/* 
    .faq .listing-faq .accordion .description p,
    .faq .listing-faq .accordion .description ul,
    .faq .listing-faq .accordion .description ol {
        font-size: 20.5px;
        line-height: 1.44;
    } */
}


.form .row {
    --gap-h: 30px;
    --gap-v: 30px;
}

.form small{
    font-size: 11px;
    font-weight: 300;
}

.form .honey-input, 
form .honey-input {
    position: fixed;
    top: -200%;
    left: -200%;
}

@media(max-width: 768px) {

    .form .row {
        --gap-h: 20px;
        --gap-v: 20px;
    }
    .form textarea.not-filled, .form select.not-filled, 
    .form input[type="checkbox"].not-filled+label, 
    .form input:not([type="checkbox"], 
    [type="file"]).not-filled {
        margin-bottom: 5px;
    }


    
    .contacts .form .title {
        margin-top: 50px;
        font-size: 26px;
        line-height: 1.38;
        letter-spacing: 1.3px;
    }

    .contacts .form .desc {
        font-size: 16px;
        line-height: 1.38;
        margin-bottom: 35px;
    }

    .form small{
        font-size: 10px;
    }

    .contacts .form{
        margin-bottom: 20px;
    }

}


.newsletter .template .form small {
    font-size: 11px;
    font-weight: 300;
}
@media (min-width: 992px) {
    .newsletter .template-module {
        margin: 60px 0;
    }
}

/****************************/
/***********INPUTS***********/
/****************************/

.form .input {
    position: relative;
}

.form .input-wrapper input,
.form .input-wrapper textarea {
    padding: 15px 22px;
    border-radius: 0px;
    border: solid 1px #f0f0f0;
    position: relative;
    font-size: 16px;
    line-height: 1.43;
    width: 100%;
    font-family: var(--font-family-2);
    transition: var(--transition);
}

.rounded .form .input-wrapper input{
     border-radius: 30px;
}
.rounded .form .input-wrapper textarea {
    border-radius: 20px;
}

.form .input-wrapper:has(textarea) {
    width: 100%;
    max-width: 100%;
    margin-top: 16px;
    /* sem margin-top extra: o espacamento vem do gap das linhas do form,
       senao a Mensagem ficava mais afastada que os restantes campos
       (o mobile ja o anulava com margin-top: 0) */
}

.form textarea.not-filled,
.form select.not-filled,
.form input[type="checkbox"].not-filled+label,
.form input:not([type="checkbox"],
    [type="file"]).not-filled {
    border-color: var(--warning) !important;
}

.form .warning {
    font-size: 12px;
    font-weight: 400;
    color: var(--warning);
    height: 20px;
    margin: 0;
    margin-top: 3px;
    padding-left: 20px;
    position: absolute;
    bottom: -22px;
}

.template .form .warning{
    text-align: center;
}

.input-wrapper.filled textarea,
.input-wrapper.filled input {
    border-color: var(--primary) !important;
}

@media(max-width: 768px) {

    .form .input-wrapper input {
        padding: 8px 22px;
        font-size: 14px;
        font-weight: 300;
        line-height: 1.43;
        letter-spacing: normal;
        text-align: left;
        color: #212121;
    }

    .form .input-wrapper textarea,
    .form .input-wrapper:has(textarea) {
        margin-top: 0;
    }

    .form .warning {
        bottom: -15px;
    }
    /* .form  .custom-select + .warning {
        margin-top: 1px;
    } */
}



/****************************/
/*********CHECKBOXES******+**/
/****************************/

.form input[type=checkbox],
.form input[type=radio] {
    display: none;
    visibility: hidden;
}

.form input[type=checkbox]+.privacy {
    display: inline-block;
    vertical-align: middle;
    height: 24px;
    left: 0;
    min-width: 24px;
    top: 0px;
    background-color: white;
    border: 1px solid rgba(0,0,0,0.2);
    border-radius: 0px;
    cursor: pointer;
    pointer-events: auto;
    position: relative;
    transition: var(--transition);
    z-index: 1;
}

.rounded .form input[type=checkbox]+.privacy{
    border-radius: 5px;
}

.form input[type='checkbox']+label::before,
.form input[type='radio']+label::before {
    content: "\f00c";
    font-family: "Font Awesome 5 Free";
    font-size: .875rem;
    font-weight: bold;
    color: var(--primary);
    line-height: 1;
    width: 11px;
    height: 12px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0px;
    right: 0;
    margin: auto;
    opacity: 0;
    pointer-events: none;
    transition: var(--transition);
    -webkit-transition: var(--transition);
}

.form input[type='checkbox']:checked+label::before,
.form input[type='radio']:checked+label::before {
    opacity: 1;
}

.form .checkbox-wrapper {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-top: -12px;
    width: 100%;
    z-index: 0;
    margin: 25px 0 30px;
}

.form .checkbox-wrapper p {
    text-align: left;
    margin: 0;
    font-weight: 300;
    font-size: 16px;
}

.form .checkbox-wrapper p a {
    display: initial !important;
    color: var(--primary);
    font-weight: 600;
    border-bottom: transparent 1px solid;
}

.form .checkbox-wrapper p a:hover{
    border-bottom: currentColor 1px solid;
}



/****************************/
/***********LABELS********+**/
/****************************/

label {
    position: absolute;
    top: 20px;
    left: 32px;
    font-size: 14px;
    color: var(--black);
    pointer-events: none;
    transition: var(--transition);
    z-index: 2;
}

.select-wrapper:has(.isSelected) label,
.filter-wrapper:has(.isSelected)+label,
input:focus+label,
textarea:focus+label,
.input-wrapper.filled label,
.input-wrapper.filled input:focus+label,
.input-wrapper.filled textarea:focus+label,
.input-wrapper.filled input:not(:focus)+label,
.input-wrapper.filled textarea:not(:focus)+label {
    top: -2px;
    left: 18px;
    font-size: 11px;
    color: var(--primary);
    font-weight: normal;
    border-radius: 10px;
    background-color: var(--form-fundo, white);
    padding: 1px 6px;
    z-index: 2;
    font-size: 11px;
    opacity: 1;
}

@media(max-width: 768px) {
    label {
        top: 15px;
        font-size: 13px;
    }

    .form .input-wrapper label {
        transform: translateY(14.5px);
        font-size: 14px;
        font-weight: 300;
        line-height: 1.43;
        letter-spacing: normal;
        text-align: left;
        color: #212121;
        left: 15px;
    }

    .select-wrapper:has(.isSelected) label, 
    .filter-wrapper:has(.isSelected)+label, 
    input:focus+label, textarea:focus+label, 
    .input-wrapper.filled label, 
    .input-wrapper.filled input:focus+label, 
    .input-wrapper.filled textarea:focus+label, 
    .input-wrapper.filled input:not(:focus)+label, 
    .input-wrapper.filled textarea:not(:focus)+label {
        top: -5px;
        left:19px
    }
}


@media(max-width: 500px) { 
    .contacts .form .button {
        width: 100%;
    }

}


/********************************/
/********** SWEETALERT **********/
/********************************/

.swal-overlay {
    background-color: rgba(0, 0, 0, .88);
}

.swal-modal {
    border-radius: 20px;
    max-width: 600px;
    width: 100%;
    will-change: transform;
    backface-visibility: hidden;
    transform: translateZ(0);
    text-rendering: optimizeLegibility;
}

.swal-icon:first-child {
    margin-top: 80px;
}

.swal-title {
    font-family: var(--font-family);
    font-size: 1.75rem;
    font-weight: 300;
    color: var(--secondary);
    text-transform: uppercase;
}

.swal-icon {
    margin: 0 auto 20px;
    width: 60px;
    height: 60px;
    background-color: #ff0d00;
    box-shadow: none;
    border: 0;
}

.swal-modal.warning .swal-icon {
    background-color: #f8c30d;
}

.swal-icon--success__ring,
.swal-icon.swal-icon--success {
    width: 61px;
    height: 61px;
    background-color: #50a130;
    border-color: #50a130;
    overflow: hidden;
}

.swal-icon .swal-icon--success__hide-corners {
    display: none;
}

.swal-icon--success__line {
    border-radius: 40px;
}

.swal-icon .swal-icon--success__line--tip {
    width: 16px;
    left: 15px;
    top: 36px;
    -webkit-transform: rotate(40deg);
    transform: rotate(40deg);
    -webkit-animation: none;
    animation: none ;
    background-color: #ffffff;
    z-index: 3;
}

.swal-icon .swal-icon--success__line--long {
    background-color: #ffffff;
    z-index: 3;
    width: 29px;
    right: 9px;
    top: 29px;
    -webkit-animation: none;
    animation: none ;
}

.swal-icon--success:after,
.swal-icon--success:before {
    content: none;
}

.swal-icon--warning__body {
    width: 5px;
    height: 30px;
    border-radius: 5px;
}

.swal-icon--warning__dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    margin-left: -4px;
    bottom: -11px;
}

.swal-icon--error__line,
.swal-icon--warning .swal-icon--warning__body,
.swal-icon--warning__dot {
    background-color: white;
}

.swal-icon--error__line--left {
    left: 9px;
}

.swal-icon--error__line--right {
    right: 9px;
}

.swal-icon--error__line {
    position: absolute;
    height: 5px;
    width: 43px;
    background-color: white;
    display: block;
    top: 28px;
    border-radius: 2px;
}

.swal-content{
    margin-top: 0;
}


.swal-content > p,
.swal-text {
    font-size: 16px;
    font-weight: 300;
    color: var(--secondary);
    text-align: center;
    padding: 0 65px;
    max-width: 100%;
    margin-block: 20px;
    display: inline-block;
}

.swal-footer {
    margin: 20px 0 80px;
    padding: 0;
    display: flex;
    justify-content: center;
    gap: 10px;
}

.swal-button-container {
    margin: 0;
}

.swal-button,
.swal-button:not([disabled]):focus,
.swal-button:not([disabled]):hover {
    display: inline-block;
    padding: 13px 44px;
    background:none ;
    font-size: 16px;
    font-weight: 600;
    color: white;
    line-height: 1;
    position: relative;
    transition: var(--transition);
    border-radius: 50px;
    font-family: var(--font-family);
}

.swal-button::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    border-radius: 50px;
    background-color: var(--primary);
    transition: var(--transition);
    will-change: transform;
    z-index: -1;
    overflow: hidden;
}

.swal-modal:has(.swal-icon--success) .swal-button.swal-button--confirm::before {
    background-color: #50a130;
}

.swal-modal.warning .swal-button.swal-button--confirm::before {
    background-color: #ff0d00;
}


.swal-button.swal-button--cancel::before {
    background-color: white;
    border: solid 2px rgba(178, 177, 177, 0.5);
}


.swal-button:not([disabled]):hover::before {
    transform: scale(1.05);
}

.swal-button.swal-button--cancel {
    color: #b2b1b1 !important;
}


.swal-button:focus {
    outline: none;
    box-shadow: none;
}

.swal-modal.delete-vehicle .swal-button-container:has(.swal-button--cancel) {
    width: 100%;
    max-width: 116px;
}

.swal-modal.delete-vehicle .swal-button--cancel {
    padding: 13px 20px;
    width: 100%;
}

.swal-modal .swal-content p a:hover {
    color: var(--primary);
}





/********************************/
/************* SEARCH ***********/
/********************************/
body:has(.search-results) .banner {
    background-color: #ffffff;
}

.template .search-results h2 {
    font-size: 26px;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.36;
    letter-spacing: normal;
    text-align: left;
    font-weight: 600;
    color: var(--secondary);
    margin: .9em 0;
  text-transform: unset;
    font-family: var(--font-text);
}

.search-layout {
    display: flex;
    gap: 50px;
    margin-top: 45px;
}

.search-layout .search-filters {
    width: 100%;
    max-width: 250px;
    min-width: 250px;
}

.template-module .search-layout .search-filters ul {
    padding: 0;
    box-shadow: 0px 15px 40px 0 rgba(0, 0, 0, 0.05);
    margin: 0;
}

.template-module .search-layout .search-results-list ul li::before,
.template-module .search-layout .search-filters ul li::before{
    content: none;
}

.template-module .search-layout .search-filters ul li a {
    font-size: 16px;
    font-weight: normal;
    line-height: 1.63;
    letter-spacing: normal;
    color: #0000007d;
    padding: 21px 20px 21px 40px;
    border-bottom: 1px solid #f0f0f0;
    width: 100%;
}

.template-module .search-layout .search-filters ul li:last-child a:last-of-type {
    border-bottom: 0px solid #f0f0f0;
}

.template-module .search-layout .search-filters ul li a.active,
.template-module .search-layout .search-filters ul li a:hover {
    color: var(--primary);
}


.template-module .search-layout .search-results-list {
    color: var(--primary);
    width: 100%;
}

.template-module .search-layout .search-results-list ul {
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-block: 0;
}

.template-module .search-layout .search-results-list .search-item {
    border: solid 1px #dddddd;
    transition: var(--transition);
}


.template-module .search-layout .search-results-list .search-item:hover {
    border: solid 1px #b1b1b1;
}

.template-module .search-layout .search-results-list .search-item.highlight {
    border: 1px solid #fbc8c8;
    background-color: #fef9f9;
}

.template-module .search-layout .search-results-list .search-item.highlight:hover {
    border: 1px solid #e77e7e;
}

.template-module .search-layout .search-results-list .search-item a {
    flex-direction: column;
    padding: 12.5px 50px 12.5px 30px;
    width: 100%;
    color: var(--black);
    border:none;
}

.template-module .search-layout .search-results-list .search-item a:hover {
    color: var(--primary);
}

.template-module .search-layout .search-results-list .search-item a .search-card-category {
    font-size: 12px;
    color: #868686;
    font-weight: 300;
}

.template-module .search-layout .search-results-list .search-item a .search {
    font-family: var(--font-text);
    font-size: 18px;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.36;
    letter-spacing: normal;
    text-align: left;
    font-weight: 600;
    color: var(--secondary);
    margin: .2em 0;
    text-transform: unset;
}

.template-module .search-layout .search-products {
  margin-bottom: 30px;
}

.template-module .search-layout a.category + a.description {
  display: block;
}

.template-module .search-layout .card  a.description p {
    font-size: 14px;
    font-weight: 500;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.56;
    letter-spacing: normal;
    text-align: left;
    color: #563420;
    text-transform: uppercase;
}

.template-module .search-layout .search-results-list .search-item a .search-item-desc,
.template-module .search-layout .search-results-list .search-item a .description{
    margin: 10px 0 0 0;
      font-family: var(--font-text);
    font-size: 14px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.3;
    letter-spacing: normal;
    text-align: left;
    color: #797979;
    margin: 0;
    margin-block: 5px;
}

.template-module .search-layout .search-results-list .search-item a:has(.article) {
    display: flex;
    flex-direction: row;
    gap: 30px;
    border: none;
}

.template-module .search-layout .search-results-list .search-item a .article {
    /* margin-block: 15px; */
    max-width: 160px;
    max-height: 90px;
    aspect-ratio: 16 / 9;
    margin: auto 0;
    width: 100%;
    overflow: hidden;
}

.template-module .search-layout .search-results-list .search-item a .article:has(.search-img.image-service) {
    max-width: 70px;
}

.template-module .search-layout .search-results-list .search-item a .article .search-img{
    object-fit: cover;
    height: 100%;
    padding: 0;
}

.template-module .search-layout .search-results-list .search-item a .article-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 52%;
}

.template-module .search-layout .search-results-list .search-item a .arrow {
    content: "";
    -webkit-mask-image: url(/assets/img/marcacao/caret.svg);
    mask-image: url(/assets/img/marcacao/caret.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--black);
    width: 7px;
    height: 11px;
    display: block;
    transition: var(--transition);
    position: absolute;
    right: 20px;
    top: 0;
    bottom: 0;
    margin: auto;
    opacity: 0.6;
}

.template-module .search-layout .search-results-list .search-item a:hover .arrow {
    opacity: 1;
}

.template-module .search-layout .row {
    margin: 0;
}

.template-module .search-layout a:not(.button,.search) {
    margin-top: 0px;
}
  .template-module .search-layout .row > div {
      padding: 0px;
      --gap: 40px;
  }



/* Desktop */
.search-filters {
    display: block;
}

.search-filters-mobile {
    display: none;    
}

.template-module .search-filters-mobile .input-wrapper.select-wrapper .custom-select.isSelected .placeholder {
    font-size: 14px;
    padding: 10px 20px;
    pointer-events: auto;
}

.template-module .search-filters-mobile .input-wrapper.select-wrapper .custom-select.open .placeholder {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0);
}

.template-module .search-filters-mobile .input-wrapper.select-wrapper .custom-select .options-wrapper {
    top: 41px;
    font-size: 14px;
}

.template-module .search-filters-mobile .input-wrapper.select-wrapper .custom-select:not(.has-reset) .placeholder::before {
    margin-right: 0;
    right: 21px;
}

/* .template-module .search-filters-mobile .input-wrapper.select-wrapper .custom-select.isSelected .options-wrapper {
    border-left: 1px solid #fbc8c8;
    border-right: 1px solid #fbc8c8;
    border-bottom: 1px solid #fbc8c8;
} */


/* garante que a coluna do texto pode encolher dentro do flex */
.search-results-list .search-item a{
  display: flex;          /* se já for, mantém */
  align-items: stretch;
}

.search-results-list .search-item .article-wrapper{
  flex: 1;
  min-width: 0;           /* <- IMPORTANTÍSSIMO para truncation em flex */
}

/* clamp a 2 linhas */
.search-results-list .search-item .search-item-desc{
  font-family: var(--font-text);
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  word-break: break-word;
}

/* se tiveres seta/arrow absoluta, reduz o “corredor” à direita */
.search-results-list .search-item a{
  padding-right: 24px;    /* ajusta ao tamanho real da seta */
}

.search-results-list .search-products .card-item p {
  margin: 0;
}

.search-results-list .search-products .card-item > div {
  padding: 10px;
}

.search-results-list .search-products .card-item h3.title, 
.search-results-list .search-products .card-item p.title {
    margin-top: 5px;
}
.search-results-list .search-products .card-item p a {
  font-size: 12px;
}

.search-results-list .search-products .card-item .title a{
  font-size: 16px;
}



.rounded .template-module .search-layout .search-filters ul,
.rounded .template-module .search-layout .search-results-list .search-item,
.rounded .template-module .search-layout .search-results-list .search-item a .article,
.rounded .search-results-list .card-item .img,
.rounded .template-module .search-results-list .image, 
.rounded [class*="module"] .container .search-results-list img {
    border-radius: 15px;
}


/* Mobile */
@media (max-width: 768px) {

    .search-layout {
        flex-direction: column;
        gap: 30px;
    }

    .search-filters {
        display: none;
    }

    .search-filters-mobile {
        display: block;
    }
        
    .template-module .search-layout .search-results-list .search-item a .article:has(.search-img.image-service) {
        max-width: 60px;
        min-width: unset;
        min-height: 50px;
    }

    .template-module .search-layout .search-results-list .search-item a .search-card-category {
        font-size: 10px;
    }

    .template-module .search-layout .search-results-list .search-item a .search {
        font-size: 14px;
        line-height: 1.2;
    }

    .template-module .search-layout .search-results-list .search-item a .search-item-desc,
    .template-module .search-layout .search-results-list .search-item a .description {
        font-size: 12px;
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        text-overflow: ellipsis;
        margin: 0;
    }

    .template-module .search-layout .search-results-list .search-item a {
        padding: 10.5px 30px 10.5px 20px;
    }

    .template-module .search-layout .search-results-list .search-item a:has(.article) {
        gap: 20px;
    }

    .template-module .search-layout .search-results-list .search-item a .article {
        aspect-ratio: 16 / 9;
        width: 120px;
        min-width: 120px;
    }

    .template-module .search-layout .search-results-list .search-item {
        margin: 0;
    }
}

/* ==============================================================================
   3. NORMALIZE
   origem: normalize.css
   ============================================================================== */

* {
    box-sizing: border-box;
}

:root {
    font-size: 13px;
}


html,
body {
    font-family: var(--font-family);
    font-weight: normal;
    letter-spacing: 0;
    padding: 0;
    margin: 0;
    overflow-x: hidden;
	scroll-behavior: smooth;
}

html.lock,
body.lock {
    overflow: hidden;
}


@media(min-width: 768px) {
    :root {
        font-size: 14px;
    }
}

@media(min-width: 992px) {
    :root {
        font-size: 16px;
    }
}


a,
a:hover,
a:focus,
button,
button:hover,
button:focus {
    transition: var(--transition);
    text-decoration: none;
    cursor: pointer;
    color: currentColor;
    outline: none;
    box-shadow: none;
}

ul,
ol {
    list-style: none;
    margin: 0;
    /* padding: 0; */
}

*:focus {
    outline: none;
    box-shadow: none;
}

*::placeholder,
*::-webkit-placeholder {
    color: currentColor;
}

*:-ms-input-placeholder {
    color: currentColor;
}

.hp-h1 {
    max-height: 0;
    overflow: hidden;
    pointer-events: none;
    position: absolute;
}

.hp-h1 h1{
	font-size:12px
}

main header{
	position: relative;
	display: block;
	padding: inherit;
	top: inherit;
	height: inherit;
}

/********** HELPER CLASSES **********/

.container {
    position: relative;
    width: 100%;
    padding: 0 20px;
    margin-left: auto;
    margin-right: auto;
}
.container-full {
    max-width: 2000px;
}


@media(min-width: 1200px) {
	.container-full {
		padding: 0 60px;
	}	
}


.row {
    display: flex;
	--gap-h: 20px;
    --gap-v: 20px;
    --gap: 20px;
    gap: var(--gap-v) var(--gap-h);
    flex-wrap: wrap;
    
}


.row+.row {
    margin-top: var(--gap-h);
}


.col, .col-auto, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12,
.col-lg, .col-lg-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12,
.col-md, .col-md-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12,
.col-sm, .col-sm-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
	position: relative;
	width: 100%;
}

.col {
	flex-basis: 0;
	flex-grow: 1;
	max-width: 100%
}
.col-auto {
	flex: 1 1 auto;
	width: auto;
	max-width: none
}

.col-1 {
	flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
	max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
}
.col-2 {
	flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
	max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
}
.col-3 {
	flex: 1 1 calc(25% - (var(--gap-h) * 0.25));
	max-width: calc(25% - (var(--gap-h) * 0.25));
}
.col-4 {
	flex: 1 1 calc(33.333333% - (var(--gap-h) * 0.33333333));
	max-width: calc(33.333333% - (var(--gap-h) * 0.33333333));
}
.col-5 {
	flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
	max-width: calc(41.666667% - (var(--gap-h) * 41.666667));
}
.col-6 {
	flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
	max-width: calc(50% - (var(--gap-h) * 0.50));
}
.col-7 {
	flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
	max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
}
.col-8 {
	flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
	max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
}
.col-9 {
	flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
	max-width: calc(75% - (var(--gap-h) * 0.75));
}
.col-10 {
	flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
	max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
}
.col-11 {
	flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
	max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
}
.col-12 {
	flex: 1 1 100%;
	max-width: 100%
}

@media (min-width: 576px) {
	.col-sm {
		flex-basis: 0;
		flex-grow: 1;
		max-width: 100%
	}
	.col-sm-auto {
		flex: 1 1 auto;
		width: auto;
		max-width: none
	}

	.col-sm-1 {
		flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
		max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
	}
	.col-sm-2 {
		flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
		max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
	}
	.col-sm-3 {
		flex: 1 1 calc(25% - (var(--gap-h) * 0.25));
		max-width: calc(25% - (var(--gap-h) * 0.25));
	}
	.col-sm-4 {
		flex: 1 1 calc(33.333333% - (var(--gap-h) * 0.33333333));
		max-width: calc(33.333333% - (var(--gap-h) * 0.33333333));
	}
	.col-sm-5 {
		flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
		max-width: calc(41.666667% - (var(--gap-h) * 41.666667));
	}
	.col-sm-6 {
		flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
		max-width: calc(50% - (var(--gap-h) * 0.50));
	}
	.col-sm-7 {
		flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
		max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
	}
	.col-sm-8 {
		flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
		max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
	}
	.col-sm-9 {
		flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
		max-width: calc(75% - (var(--gap-h) * 0.75));
	}
	.col-sm-10 {
		flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
		max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
	}
	.col-sm-11 {
		flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
		max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
	}
	.col-sm-12 {
		flex: 1 1 100%;
		max-width: 100%
	}
}

@media (min-width: 768px) {
	.col-md {
		flex-basis: 0;
		flex-grow: 1;
		max-width: 100%
	}
	.col-md-auto {
		flex: 1 1 auto;
		width: auto;
		max-width: none
	}

	.col-md-1 {
		flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
		max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
	}
	.col-md-2 {
		flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
		max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
	}
	.col-md-3 {
		flex: 1 1 calc(25% - (var(--gap-h) * 0.80));
        max-width: calc(25% - (var(--gap-h) * 0.80));
	}
	.col-md-4 {
		flex: 1 1 calc(33.333333% - (var(--gap-h) * 0.8));
		max-width: calc(33.333333% - (var(--gap-h) * 0.8));
	}
	.col-md-5 {
		flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
		max-width: calc(41.666667% - (var(--gap-h) * 41.666667));
	}
	.col-md-6 {
		flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
		max-width: calc(50% - (var(--gap-h) * 0.50));
	}
	.col-md-7 {
		flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
		max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
	}
	.col-md-8 {
		flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
		max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
	}
	.col-md-9 {
		flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
		max-width: calc(75% - (var(--gap-h) * 0.75));
	}
	.col-md-10 {
		flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
		max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
	}
	.col-md-11 {
		flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
		max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
	}
	.col-md-12 {
		flex: 1 1 100%;
		max-width: 100%
	}
}

@media (min-width: 992px) {
	.col-lg {
		flex-basis: 0;
		flex-grow: 1;
		max-width: 100%
	}
	.col-lg-auto {
		flex: 1 1 auto;
		width: auto;
		max-width: none
	}

	.col-lg-1 {
		flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
		max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
	}
	.col-lg-2 {
		flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
		max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
	}
	.col-lg-3 {
		flex: 1 1 calc(25% - (var(--gap-h) * 0.80));
		max-width: calc(25% - (var(--gap-h) * 0.80));
	}
	.col-lg-4 {
		flex: 1 1 calc(33.333333% - (var(--gap-h) * 0.33333333));
		max-width: calc(33.333333% - (var(--gap-h) * 0.33333333));
	}
	.col-lg-5 {
		flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
		max-width: calc(41.666667% - (var(--gap-h) * 41.666667));
	}
	.col-lg-6 {
		flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
		max-width: calc(50% - (var(--gap-h) * 0.50));
	}
	.col-lg-7 {
		flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
		max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
	}
	.col-lg-8 {
		flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
		max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
	}
	.col-lg-9 {
		flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
		max-width: calc(75% - (var(--gap-h) * 0.75));
	}
	.col-lg-10 {
		flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
		max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
	}
	.col-lg-11 {
		flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
		max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
	}
	.col-lg-12 {
		flex: 1 1 100%;
		max-width: 100%
	}
}

@media (min-width:1200px) {
	.col-xl {
		flex-basis: 0;
		flex-grow: 1;
		max-width: 100%
	}

	.col-xl-auto {
		flex: 1 1 auto;
		width: auto;
		max-width: none
	}

	.col-xl-1 {
		flex: 1 1 calc(8.333333% - (var(--gap-h) * 0.083333));
		max-width: calc(8.333333% - (var(--gap-h) * 0.083333));
	}
	.col-xl-2 {
		flex: 1 1 calc(16.666667% - (var(--gap-h) * 0.16666667));
		max-width: calc(16.666667% - (var(--gap-h) * 0.16666667));
	}
	.col-xl-3 {
		flex: 1 1 calc(25% - (var(--gap-h) * 0.25));
		max-width: calc(25% - (var(--gap-h) * 0.25));
	}
	.col-xl-4 {
		flex: 1 1 calc(33.333333% - (var(--gap-h) * 0.33333333));
		max-width: calc(33.333333% - (var(--gap-h) * 0.33333333));
	}
	.col-xl-5 {
		flex: 1 1 calc(41.666667% - (var(--gap-h) * 0.41666667));
		max-width: calc(41.666667% - (var(--gap-h) * 41.666667));
	}
	.col-xl-6 {
		flex: 1 1 calc(50% - (var(--gap-h) * 0.50));
		max-width: calc(50% - (var(--gap-h) * 0.50));
	}
	.col-xl-7 {
		flex: 1 1 calc(58.333333% - (var(--gap-h) * 0.5833333));
		max-width: calc(58.333333% - (var(--gap-h) * 0.5833333));
	}
	.col-xl-8 {
		flex: 1 1 calc(66.666667% - (var(--gap-h) * 0.6666667));
		max-width: calc(66.666667% - (var(--gap-h) * 0.6666667));
	}
	.col-xl-9 {
		flex: 1 1 calc(75% - (var(--gap-h) * 0.75));
		max-width: calc(75% - (var(--gap-h) * 0.75));
	}
	.col-xl-10 {
		flex: 1 1 calc(83.333333% - (var(--gap-h) * 0.8333333));
		max-width: calc(83.333333% - (var(--gap-h) * 0.8333333));
	}
	.col-xl-11 {
		flex: 1 1 calc(91.666667% - (var(--gap-h) * 0.9166667));
		max-width: calc(91.666667% - (var(--gap-h) * 0.9166667));
	}

	.col-xl-12 {
		flex: 1 1 100%;
		max-width: 100%
	}
}

.w-100 {
    width: 100% !important
}


.d-none {
    display: none !important
}

.d-inline {
    display: inline !important
}

.d-inline-block {
    display: inline-block !important
}

.d-block {
    display: block !important
}

.d-flex {
    display: flex !important
}

.d-inline-flex {
    display: inline-flex !important
}


.text-left {
    text-align: left !important
}

.text-right {
    text-align: right !important
}

.text-center {
    text-align: center !important
}

.form input,
.form textarea,
.form select {
    appearance: none;
    -webkit-appearance: none;
    border: 0;
    display: block;
}

.img-fluid {
    display: block;
    height: auto ;
    object-fit: cover !important;
    width: 100% !important;
}

input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px white inset;
    box-shadow: 0 0 0 1000px white inset;
    color: inherit;
}

/* ==============================================================================
   4. TIPOGRAFIA
   origem: template.css
   ============================================================================== */

body :is(.content, .index :where(main)) h2:first-child:not(:where(section:not(.content,.related-section)) *),
body :is(.content, .index :where(main)) h3:first-child:not(:where(section:not(.content,.related-section)) *),
body :is(.content, .index :where(main)) h4:first-child:not(:where(section:not(.content,.related-section)) *),
body :is(.content, .index :where(main)) ul:first-child:not(:where(section:not(.content,.related-section)) *),
body :is(.content, .index :where(main)) ol:first-child:not(:where(section:not(.content,.related-section)) *) {
	margin-top: 0;
}

body :is(.content, .index :where(main)) h2:last-child:not(:where(section:not(.content,.related-section)) *),
body :is(.content, .index :where(main)) h3:last-child:not(:where(section:not(.content,.related-section)) *),
body :is(.content, .index :where(main)) h4:last-child:not(:where(section:not(.content,.related-section)) *),
body :is(.content, .index :where(main)) p:last-child:not(:where(section:not(.content,.related-section)) *),
body :is(.content, .index :where(main)) ul:last-child:not(:where(section:not(.content,.related-section)) *),
body :is(.content, .index :where(main)) ol:last-child:not(:where(section:not(.content,.related-section)) *) {
	margin-bottom: 0;
}

:is(.template, .index :where(main)) hr:not(:where(section:not(.content,.related-section)) *) {
    background-color: #ebe9e9;
    height: 1px;
    border: none;
}
/***************************/
/***** Banner Template *****/
/***************************/


.banner {
    text-align: center;
    position: relative;
    isolation: isolate;
    overflow: hidden;
}


/* .banner .image {
    padding-top: 31.5%;
    min-height: 360px;
    overflow: hidden;
    position: relative;
} */

.banner:not(.no-img) .image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.banner img {
    width: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    object-fit: cover;
    object-position: top center;
}

.banner .image::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    mix-blend-mode: multiply;
    background-blend-mode: multiply;
    background-image: linear-gradient(51deg, #b7b7b7, #ececec);;
}

.banner:not(.no-img) .container {
    color: var(--white);
    position: relative;
    padding-top: 230px;
    padding-bottom: 120px;
    max-width: 1020px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
}

body:not(.index) main:has(article) > .container nav ol,
body .banner .container ol {
    padding: 0;
    list-style: none;
    display: inline-flex;
    flex-wrap: wrap;
    line-height: 1.55;
}

body.mobile .banner .container ol{
    justify-content: center;
}

body:not(.index) main:has(article) > .container nav ol li,
body .banner .container ol li {
    font-size: 11px;
    color: rgba(255, 255, 255, 1);
    line-height: 1.45;
    letter-spacing: 0.88px;
    text-transform: uppercase;
}

body:not(.index) main:has(article) > .container nav ol li,
body .banner.no-img .container ol li {
    color: #9d9d9d;
}

body:not(.index) main:has(article) > .container nav ol li a:hover,
body .banner .container ol li a:hover {
    opacity: .6;
}


body:not(.index) main:has(article) > .container nav ol li+li::before,
body .banner .container ol li+li::before {
    content: ".";
    padding-left: .6em;
    padding-right: .6em;
    font-size: 0.625rem;
    color: #9d9d9d;
}

body:not(.index) main:has(article) > .container{
    text-align: center;
}
/* Compensa o header fixo. O ".banner.no-img" era so para paginas SEM <article>
   (":not(:has(article))") e o outro selector exigia ".content" filho DIRECTO
   de main -- nas paginas de artigo (main > article > section.content) nao
   pegava nenhum dos dois e o breadcrumb/H1 ficavam por baixo do header. */
body:not(.index) main:has(article) > .container,
.banner.no-img {
    padding-top: 140px;
    margin-top: 20px;
}

.banner.no-img .image::after {
    background-color: var(--transparent);
}

.article .container > nav ol li a,
.article .container > nav ol li+li::before,
.banner.no-img .container ol li+li::before,
.banner.no-img .container ol li a {
    color: rgba(28, 28, 28, 0.3);
}
.article .container > nav ol li a:hover,
.banner.no-img .container ol li a:hover {
    color: var(--black);
}

.banner .container h1,
.banner .container .h1 {
    font-size: 3.75rem;
    font-weight: normal;
    line-height: 1.18;
    letter-spacing: normal;
    text-align: center;
    color: var(--white);
	margin: 0;
	margin-top: 15px;
	display: flex;
	flex-direction: column;
    text-transform: uppercase;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}


.banner.no-img .container h1,
.banner.no-img .container .h1 {
    color: var(--secondary);
    font-size: 3.125rem;
    max-width: 980px;
    margin-inline: auto;
    line-height: 1.2;
    letter-spacing: normal;
    text-align: center;

}

.banner .container h1 + span {
	display: block;
    font-size: 14px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.43;
    letter-spacing: normal;
    text-align: center;
    color: var(--white);
    margin-top: 25px;
}

.banner.no-img .container h1 + span {
    color: var(--secondary);
}


.banner.no-img .container h1 + span.spanCat{
    color: var(--primary) !important;
}

.banner .container h1 + span a,
.banner .container h1 + div a{
    color: var(--primary);
}

.banner .container h1 + span a:hover,
.banner .container h1 + div a:hover{
    opacity: .7;
}

.banner .container h1 + div.date {
    position: relative;
    display: flex;
    gap: 11px;
    justify-content: center;
    align-items: center;
    margin-top: 25px;
    font-size: 14px;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.43;
    letter-spacing: normal;
    text-align: center;
    color: #c9caca;
}



@media(max-width: 768px) {

    .article .container > nav ol li a,
    body .banner .container ol li {
        font-size: 10px !important;
        line-height: 1.4 !important;
        letter-spacing: 0.8px !important;
    }


    .banner:not(.no-img) .container {
        padding-top: 172px;
        padding-bottom: 55px;
        min-height: unset;
    }
    body:not(.index) main:has(article) > .container,
    body:not(:has(article)) .banner.no-img,
    body:has( main > .content) .banner.no-img {
        padding-top: 70px;
    }
    .banner.no-img .container .h1,
    .banner.no-img .container h1 {
        font-size: 30px;
        line-height: 1.2;
        margin-top: 10px;
        letter-spacing: normal;
    }

    .banner .container .h1 + span a,
    .banner .container h1 + span a {
        font-size: 13px;
    }

    .banner .container .h1 + span,
    .banner .container .h1 > span,
    .banner .container h1 + span,
    .banner .container h1 > span {
		display: block;
		font-size: 13px;
		margin-top: 12px;
	}

    .banner .container .h1 + div.date,
    .banner .container h1 + div.date{
        margin-top: 20px;
        font-size: 13px;
    }

}




.banner .container .details {
	margin-top: 40px;
    padding-top: 30px;
	border-top: 1px solid #ebe9e9;
    position: relative;
    width: 100%;
    text-align: start;
}

.publication .banner .container .details {
	margin-top: 20px;
}

.banner .container .details ul {
	display: block;
	text-align: left;
    padding: 0;
}

.banner .container .details ul li {
    font-size: 20px !important;
    color: var(--black) !important;
    width: 100%;
    line-height: 1.45;
    font-weight: 300;
}

.banner .container .details ul li + li {
	margin-top: 16px;
}

.banner .container .details ul li::before {
	content: "";
    position: relative;
    width: 20px;
    height: 20px;
	margin-right: 15px;
    display: inline-block;
	vertical-align: middle;
    -webkit-mask-image: url(/assets/img/svg/phone.svg);
	mask-image: url(/assets/img/svg/phone.svg);
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-position: center;
    mask-size: contain;
    -webkit-mask-size: contain;
    background-color: var(--primary);
    padding: 0 !important;
    font-size: 20px !important;
    top: -2px;
}

.banner .container .details ul li.phone::before {
    -webkit-mask-image: url(/assets/img/svg/phone.svg);
    mask-image: url(/assets/img/svg/phone.svg);
}

.banner .container .details ul li.email::before {
    -webkit-mask-image: url(/assets/img/svg/);
    mask-image: url(/assets/img/svg/email.svg);
}

.banner .container .details ul li.h-web-index::before {
    -webkit-mask-image: url(/assets/img/svg/h-index.svg);
    mask-image: url(/assets/img/svg/h-index.svg);
}

.banner .container .details ul li.h-google-index::before {
    -webkit-mask-image: url(/assets/img/svg/google.svg);
    mask-image: url(/assets/img/svg/google.svg);
}

.banner .container .details ul li.web-reference::before {
    -webkit-mask-image: url(/assets/img/svg/link.svg);
    mask-image: url(/assets/img/svg/link.svg);
}

.banner .container .details ul li.research::before {
    -webkit-mask-image: url(/assets/img/svg/research.svg);
    mask-image: url(/assets/img/svg/research.svg);
}

.banner .container .details ul li.author::before {
    mask-image: url(/assets/img/svg/author.svg);
    -webkit-mask-image: url(/assets/img/svg/author.svg);
}

.banner .container .details ul li.article::before {
    mask-image: url(/assets/img/svg/article.svg);
    -webkit-mask-image: url(/assets/img/svg/article.svg);
}

.banner .container .details ul li.doi::before {
    mask-image: url(/assets/img/svg/doi.svg);
    -webkit-mask-image: url(/assets/img/svg/doi.svg);
}
.banner .container .details ul li.tag::before {
    mask-image: url(/assets/img/svg/tag.svg);
    -webkit-mask-image: url(/assets/img/svg/tag.svg);
    vertical-align: middle;
}

.banner .container .details ul li a {
   	color: var(--primary) !important;
    font-weight: 600;
}
.banner .container .details ul li a:hover {
    opacity: 0.5;
}

.banner .container .details ul li b {
	font-weight: 600;
}


/***************************/
/*******  Template *********/
/***************************/

.template {
    margin-top: 80px;
    /* width: 100%; */
    margin-inline: auto;
}

.rounded .template-module .image,
.rounded [class*="module"] .container img{
    border-radius: 30px;
    overflow: hidden;
}


.banner.no-img + .template{
    margin-top: 80px;
}

.banner.no-img:has( .date) + .template{
    margin-top: 35px;
}

@media(max-width:768px) {
    .banner.no-img:has( .date) + .template{
        margin-top: 25px;
    }
}

:is(.template, .index :where(main)) ul:not(:where(section:not(.content,.related-section)) *), 
:is(.template, .index :where(main)) ol:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) p:not(:where(section:not(.content,.related-section)) *) {
    font-size: 1.125rem;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.5;
    letter-spacing: normal;
    text-align: left;
    color: #727272;
    margin: 0;
    margin-block: 20px;
    font-family: var(--font-family-2);
}
:is(.template, .index :where(main)) .container:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
    max-width: 1020px;
    padding: 0 20px;
    margin-inline: auto;
}

:is(.template, .index :where(main)) .template-module.search-results .container {
    max-width: 1320px;
}

:is(.template, .index :where(main)) h2:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) .h2:not(:where(section:not(.content,.related-section)) *):not(:where(section)),
:is(.template, .index :where(main)) h3:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) .h3:not(:where(section:not(.content,.related-section)) *):not(:where(section)),
:is(.template, .index :where(main)) h4:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) .h4:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
    font-weight: normal;
    color: var(--secondary);
    text-transform: uppercase;
}

:is(.template, .index :where(main)) ol + h2:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) ol + h3:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) ul + h2:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) ul + h3:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) p + h2:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) p + h3:not(:where(section:not(.content,.related-section)) *) {
    margin: 68px 0 20px;
}
:is(.template, .index :where(main)) ol + h4:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) ul + h4:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) p + h4:not(:where(section:not(.content,.related-section)) *) {
    margin: 60px 0 20px;
}

:is(.template, .index :where(main)) h2:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) .h2:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
    font-size: 2.25rem;
    line-height: 1.28;
    letter-spacing: normal;
    margin: 0.5em 0;
}

:is(.template, .index :where(main)) h2 strong:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) .h2 strong:not(:where(section:not(.content,.related-section)) *){
    color: var(--primary);
    font-weight: normal;
}

:is(.template, .index :where(main)) h3:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) .h3:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
    font-size: 1.75rem;
    font-weight: normal;
    line-height: 1.29;
    letter-spacing: normal;
    margin: 1em 0;

}

:is(.template, .index :where(main)) h4:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) .h4:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
    font-size: 1.5rem;
    font-weight: 300;
    line-height: 1.45;
    letter-spacing: -0.24px;
    margin: 1em 0;
}

:is(.template, .index :where(main)) .table-wrapper + h2,
:is(.template, .index :where(main)) .table-wrapper + h3,
:is(.template, .index :where(main)) .table-wrapper + h4,
:is(.template, .index :where(main)) ol + h2:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) ol + h3:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) ul + h2:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) ul + h3:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) p + h2:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) p + h3:not(:where(section:not(.content,.related-section)) *), 
:is(.template, .index :where(main)) ol + h4:not(:where(section:not(.content,.related-section)) *), 
:is(.template, .index :where(main)) ul + h4:not(:where(section:not(.content,.related-section)) *), 
:is(.template, .index :where(main)) p + h4:not(:where(section:not(.content,.related-section)) *) {
    margin: 45px 0 0;
}

:is(.template, .index :where(main)) h2 strong:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) .h2 strong:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) h3 strong:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) .h3 strong:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) h4 strong:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) .h4 strong:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) h5 strong:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) .h5 strong:not(:where(section:not(.content,.related-section)) *){
    color: var(--primary);
    font-weight: 600;
}

:is(.template, .index :where(main)) b:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) strong:not(:where(section:not(.content,.related-section)) *) {
    font-weight: 600;
    color: var(--secondary);
}

:is(.template, .index :where(main)) .template-module small a,
:is(.template, .index :where(main)) .template-module ul a,
.listing.module20 .image-item a:not(.button, .play),
:is(.template, .index :where(main)) .listing .accordion a:not(.button, .play),
:is(.template, .index :where(main)) .template-module p a,
:is(.template, .index :where(main)) .template-module td a,
:is(.template, .index :where(main)) p strong > a:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) a strong:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) a b:not(:where(section:not(.content,.related-section)) *) {
    display: inline-flex;
    font-weight: 500;
    transition: var(--transition);
    color: var(--primary);
    position: relative;
}

:is(.template, .index :where(main)) .template-module td a,
:is(.template, .index :where(main)) .template-module p a,
:is(.template, .index :where(main)) .listing .accordion a:not(.button, .play),
:is(.template, .index :where(main)) .listing .accordion strong a,
.listing.module20 .image-item a:not(.button, .play),
:is(.template, .index :where(main)) .listing .accordion a strong,
:is(.template, .index :where(main)) p strong > a:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) a strong:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) a b:not(:where(section:not(.content,.related-section)) *) {
    display: inline;
    border-bottom: 1px dotted var(--transparent);
}

:is(.template, .index :where(main)) .template-module small a,
:is(.template, .index :where(main)) .template-module ul a {
    border-bottom: 1px dotted var(--transparent);
}

:is(.template, .index :where(main)) .template-module td a:hover,
:is(.template, .index :where(main)) .template-module small a:hover,
:is(.template, .index :where(main)) .template-module ul a:hover,
:is(.template, .index :where(main)) .template-module p a:hover,
:is(.template, .index :where(main)) .listing .accordion a:not(.button, .play):hover,
.listing.module20 .image-item div:not(.image) a:not(.button):hover,
:is(.template, .index :where(main)) .listing .accordion strong a:hover,
:is(.template, .index :where(main)) .listing .accordion a:hover strong,
:is(.template, .index :where(main)) p strong > a:hover:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) a:hover strong:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) a:hover b:not(:where(section:not(.content,.related-section)) *) {
    border-bottom: 1px dotted currentColor;
}


:is(.template, .index :where(main)) .template-module small,
:is(.index, .template) section.colunas .itens small,
p small:not(:where(section:not(.content,.related-section)) *) {
    font-size: 0.875rem;
    font-weight: 300;
    line-height: 1.57;
    display: inline-block;
    color: var(--secondary);
}

:is(.template, .index :where(main)) .template-module strong small,
p b small:not(:where(section:not(.content,.related-section)) *) {
    font-weight: bold;
}

:is(.template, .index :where(main)) .template-module small {
    margin: 0.8em 0;
} 

:is(.template, .index :where(main)) .template-module td small{
    margin: 0;
}

:is(.template, .index :where(main)) .template-module p > small:first-of-type {
    margin: 0;
} 

:is(.template, .index :where(main)) .template-module p > small:first-of-type + br + strong > small{
    margin: 0;
}

body:not(.contacts) :is(.template, .index :where(main)) .template-module p:has(> small:first-of-type){
    line-height: 1;
}

body:not(.contacts) :is(.template, .index :where(main)) .template-module blockquote p:has(> small:first-of-type){
    line-height: 1.45;
}

:is(.template, .index :where(main)) .template-module small.text-center,
:is(.index, .template) section.colunas .itens small.text-center {
    width: 100%;
} 

/* .template .template-module.module8 small,
.template .template-module.module25 small{
    color: #858585;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.5;
} */

:is(.template, .index :where(main)) .template-module.module8 img{
    max-width: 100%;
    width: auto;
}

:is(.template, .index :where(main)) .template-module.module8.FullW img{
    width: 100%;
}

:is(.template, .index :where(main)) .item.accordion .template-module.module8.FullW img{
        margin: 0 -50px;
    width: calc(100% + 100px);
    max-width: unset;
}

:is(.template, .index :where(main)) blockquote > *:not(:where(section:not(.content,.related-section)) *):not(:where(section)),
:is(.template, .index :where(main)) p big:not(:where(section:not(.content,.related-section)) *) {
    font-family: var(--font-family);
    position: relative;
    display: block;
    font-size: 1.375rem !important;
    font-weight: normal;
    line-height: 1.45 !important;
    text-align: left;
    padding: 0 0 0 85px;
    letter-spacing: normal;
    color: var(--secondary);
        font-family: var(--font-family-2);
}

:is(.template, .index :where(main)) blockquote:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) p big:not(:where(section:not(.content,.related-section)) *){
    padding-right: 60px;
}

:is(.template, .index :where(main)) p big:not(:where(section:not(.content,.related-section)) *), 
:is(.template, .index :where(main)) blockquote:not(:where(section:not(.content,.related-section)) *) {
    position: relative;
    padding-block: 40px;
}

:is(.template, .index :where(main)) p:has(> big):not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) blockquote:not(:where(section:not(.content,.related-section)) *) {
    margin-inline: 0;
    margin-block: 50px;
    margin-bottom: 50px;
}
:is(.template, .index :where(main)) p:has(> big):not(:where(section:not(.content,.related-section)) *){
    margin-top: 47px;
}

:is(.template, .index :where(main)) blockquote:not(:where(section:not(.content,.related-section)) *)::after,
:is(.template, .index :where(main)) p big:not(:where(section:not(.content,.related-section)) *)::before{
    content: ' ';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: var(--primary);
    opacity: 0.07;
}

.contacts .template blockquote::after,
.contacts .template p big::before{
    opacity: 0.1;
}

.rounded :is(.template, .index :where(main)) blockquote:not(:where(section:not(.content,.related-section)) *)::after,
.rounded :is(.template, .index :where(main)) p big:not(:where(section:not(.content,.related-section)) *)::before{
    border-radius: 30px;
}

:is(.template, .index :where(main)) p sup:not(:where(section:not(.content,.related-section)) *),
:is(.template, .index :where(main)) p sub:not(:where(section:not(.content,.related-section)) *){
    font-size: 13px;
}

big:not(:where(section:not(.content,.related-section)) *)::after {
    content: ' ';
    background-color: var(--primary);
    width: 5px;
    height: calc(100% - 80px);
    display: block;
    position: absolute;
    top: 35px;
    left: 60px;
    margin-block: 5px;
    border-radius: 2.5px;
}


blockquote:not(:where(section:not(.content,.related-section)) *)::before {
    content: '';
    -webkit-mask-image: url(/bluesky/assets/img/template/quote.svg);
    mask-image: url(/bluesky/assets/img/template/quote.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
    display: block;
    width: 37px;
    height: 30px;
    position: absolute;
    top: 35px;
    left: 27px;
}

:is(.template, .index :where(main)) blockquote p:not(:where(section:not(.content,.related-section)) *) {
    padding-top: 0;
    margin: 0;
}

:is(.template, .index :where(main)) .template-module blockquote small {
    color: var(--primary);
    font-weight: bold;
}

:is(.template, .index :where(main)) ul:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) ol:not(:where(section:not(.content,.related-section)) *) {
    list-style-type: none;
    margin: 0;
    padding-block: 0px;
    margin-block: 30px;
    counter-reset: item;
    padding-left: 2em;
}


.listing .accordion .description ul li::before,
.listing.module20 ul li::before,
.template-module:not(.search-results) ul li::before{
    content: "";
    display: inline-block;
    height: 16px;
    width: 1.25rem;
    margin-left: -1.9em;
    margin-right: 1rem;
    -webkit-mask-image: url(/bluesky/assets/img/template/bullet.svg);
    mask-image: url(/bluesky/assets/img/template/bullet.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
    align-items: center;
}
.listing .accordion .description ol li::before,
.listing.module20 ol li::before,
.template-module ol li::before {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: normal;
    text-align: left;
    color: var(--primary);
    counter-increment: item;
    content: counter(item) ".";
    display: inline-block;
    margin-left: -35px;
    margin-right: 18px;
    width: 16px;
}


:is(.template, .index :where(main)) sup:not(:where(section:not(.content,.related-section)) *) {
    vertical-align: super;
    font-size: 0.7em;
    line-height: 1;
}

.template-module .table-wrapper{
    display: inline-block;
    width: 100%;
}

.template-module .table-wrapper table {
    min-width: 100%;
}

.template-module .table-wrapper .swipeIcon{
    display: none;
}

.template-module .table-wrapper.swipe {
    overflow: auto;
    margin-inline: -20px;
    padding-inline: 20px;
    padding-bottom: 20px;
}

.template-module .table-wrapper.swipe .swipeIcon {
    display: flex;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: normal;
    text-align: center;
    color: #1f3839;
    margin-bottom: 24px;
    width: 100%;
    justify-content: center;
    align-items: center;
    gap: 13px;
}

.template-module .table-wrapper.swipe .swipeIcon::before {
    position: relative;
    display: inline-flex;
    width: 25px;
    height: 27px;
    content: "";
    -webkit-mask-image: url("/bluesky/assets/img/template/swipe.svg");
    mask-image: url("/bluesky/assets/img/template/swipe.svg");
    background-color: var(--primary);
}



.template-module table thead {
    position: relative;
}


/* .template-module table thead::before{
    content:"";
    background: var(--primary);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
} */

.template-module table thead{
    background: var(--primary);
}
.template-module table img {
    display: inline;
}

.template-module table,
.template-module table td,
.template-module table tr,
.template-module table th {
    font-size: 1.25rem;
    font-stretch: normal;
    font-style: normal;
    line-height: 1;
    letter-spacing: normal;
    text-align: left;
    padding:20px;
    position: relative;
    border: solid 1px #e1e1e1;
    border-collapse: collapse;
}

.template-module table thead,
.template-module table thead tr,
.template-module table thead tr th {
    border: none;
}


.template-module table th {
    color: white;
    font-weight: 600;

}
.template-module table td  {
    font-weight: normal;
    color: var(--third);
}

.template-module table td b {
    font-weight: normal;
    text-align: left;
}


:is(.template, .index :where(main)) .listing .file .link {
    
    font-size: 0.875rem;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    letter-spacing: 0.7px;
    color: var(--primary);
    text-transform: uppercase;
    padding-right: 30px;
}

:is(.template, .index :where(main)) .listing .file .link::after {
    width: 21px;
    height: 15px;
    content: '';
    display: inline-block;
    -webkit-mask-image: url(/bluesky/assets/img/elements/svg/normal-arrow.svg);
    mask-image: url(/bluesky/assets/img/elements/svg/normal-arrow.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
    position: relative;
    right: -15px;
    transition: var(--transition);
    top: 2px;
}

:is(.template, .index :where(main)) .listing .file .link:hover::after {
    right: -25px;
}

.rating-section {
    border-top: 1px solid #e6e6e8;   
    /* margin-top: 100px; */
}

@media(max-width: 768px) {
    .template {
        margin-top: 40px;
    }

    body:not(.contacts, .blog, .news) .banner:not(.no-img) + .template {
        margin-top: 60px;
    }

    .blog .template,.news .template {
        margin-top: 12px;
    }
    :is(.template, .index :where(main)) .container:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
        width: 100%;
        max-width: calc(100% - 40px);
        padding: 0;
    }

    .listing-faq .item .description .container,
    .glossary .content .template .description .container {
        max-width: 100%;
    }

    :is(.template, .index :where(main)) .item.accordion .template-module.module8.FullW img {
        margin: 0px -25px;
        width: calc(100% + 50px);
    }
    :is(.template, .index :where(main)) .template-module.imageArticle{
        margin-bottom: 30px;
    }
    :is(.template, .index :where(main)) .template-module.imageArticle + .template-module{
        margin-top: 30px;
    }
    :is(.template, .index :where(main)) .template-module.imageArticle .container{
        max-width: 100%;
    }

    :is(.template, .index :where(main)) .template-module.imageArticle img{
        border-radius: 0;
    }

    .banner .container ul li+li::before,
    .banner .container ul {
        font-size: 0.875rem;
        flex-wrap: wrap;
        justify-content: center;
    }

    .banner .container h1 {
        letter-spacing: normal;
        font-size: 35px;
        font-weight: bold;
        line-height: 1.29;
        margin-top: 7px;
    }

    .banner .image {
        min-height: 264px;
    }

    :is(.template, .index :where(main)) h2:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) .h2:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
        font-size: 28px;
        line-height: 1.29;
        letter-spacing: normal;
    }

    :is(.template, .index :where(main)) ul:not(:where(section:not(.content,.related-section)) *),
    :is(.template, .index :where(main)) ol:not(:where(section:not(.content,.related-section)) *),
    :is(.template, .index :where(main)) p:not(:where(section:not(.content,.related-section)) *) {
        font-size: 18px;
        line-height: 1.33;
        margin-block: 20px;
    }

    :is(.template, .index :where(main)) h3:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) .h3:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
        font-size: 24px;
        line-height: 1.33;
    }

    :is(.template, .index :where(main)) h4:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) .h4:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
        font-size: 20px;
        line-height: 1.3;
        letter-spacing: -.2px;
    }


    :is(.template, .index :where(main)) .table-wrapper + h2, :is(.template, .index :where(main)) .table-wrapper + h3, :is(.template, .index :where(main)) .table-wrapper + h4, :is(.template, .index :where(main)) ol + h2:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) ol + h3:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) ul + h2:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) ul + h3:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) p + h2:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) p + h3:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) ol + h4:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) ul + h4:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) p + h4:not(:where(section:not(.content,.related-section)) *){
        margin: 35px 0 0;
    }

    :is(.template, .index :where(main)) .template-module small,
    :is(.index, .template) section.colunas .itens small,
    :is(.template, .index :where(main)) p small:not(:where(section:not(.content,.related-section)) *) {
        font-size: 13px;
        line-height: 1.38;
    }

    big:not(:where(section:not(.content,.related-section)) *)::after{
        left:0px;
        margin-block: 0;
        height: calc(100% - 70px);
    }
    
    :is(.template, .index :where(main)) blockquote p:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) p big:not(:where(section:not(.content,.related-section)) *) {
        font-size: 19px;
        padding: 30px 0 30px 30px;
        line-height: 1.37;
    }

    .rounded :is(.template, .index :where(main)) blockquote:not(:where(section:not(.content,.related-section)) *)::after, .rounded :is(.template, .index :where(main)) p big:not(:where(section:not(.content,.related-section)) *)::before{
        border-radius: 0;
    }

    :is(.template, .index :where(main)) blockquote:not(:where(section:not(.content,.related-section)) *)::after, 
    :is(.template, .index :where(main)) p big:not(:where(section:not(.content,.related-section)) *)::before{
        width: 100vw;
        z-index: -1;
        left: 50%;
        transform: translateX(-50%);
    }

    :is(.template, .index :where(main)) .item.accordion blockquote::after,
    :is(.template, .index :where(main)) .item.accordion p big::before {
        width: calc(100vw - 40px);
        z-index: 1;
    }

    :is(.template, .index :where(main)) blockquote p:not(:where(section:not(.content,.related-section)) *) {
        padding: 0 0 0 30px;
    }

    :is(.template, .index :where(main)) p big:not(:where(section:not(.content,.related-section)) *) {
        padding: 30px 0px 30px 30px;
    }

    :is(.template, .index :where(main)) ul:not(:where(section:not(.content,.related-section)) *), :is(.template, .index :where(main)) ol:not(:where(section:not(.content,.related-section)) *){
        counter-reset: item;
        padding-left: 2em;
    }
    /* .template-module:not(.search-results) ul li::before{
        margin-left: -17px;
        margin-right: 11px;
    } */
    .template-module:not(.search-results) ul li::before {
        height: 14px;
        width: 18px;
        margin-right: 11px;
        margin-left: -30px;
    }


    .template-module table, .template-module table td, .template-module table tr, .template-module table th {
        font-size: 1rem;
    }

    blockquote:not(:where(section:not(.content,.related-section)) *)::before {
        top: 40px;
        left: -5px;
        width: 26px;
        height: 21px;
    }

    :is(.template, .index :where(main)) blockquote:not(:where(section:not(.content,.related-section)) *){
        padding-right: 25px;
    }


    .template-module ol li::before {
        margin-left: -30px;
        margin-right: 14px;
        font-size: 18px;
    }

    :is(.template, .index :where(main)) .template-module.module8 small,
    :is(.template, .index :where(main)) .template-module .image.video + small{
        font-size: 14px !important;
        line-height: 1.29;
    }
    
    :is(.template, .index :where(main)) .template-module.module12 .container{
        padding-inline: 0;
        max-width: 100%;
    }

    .rounded .template-module .container:has( .slider-wrapper) .image,
    .rounded .template-module .container:has( .slider-wrapper) .image img,
    .rounded .template-module.module12 .container .image,
    .rounded .template-module.module12 .container img{
        border-radius: 0px;
    }
}


:is(.template, .index :where(main)) p.title:not(:where(section:not(.content,.related-section)) *) {
    font-size: 24px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.55;
    letter-spacing: normal;
    text-align: left;
    margin: 2em 0 .5rem 0;
    color: var(--black);
}

:is(.template, .index :where(main)) .template-module.search-results .listing{
    margin-top: 30px;
}

.template-module.fullwidth .image img{
    width: 100%;
    background: none;
}
.rounded .template-module.fullwidth .image{
    border-radius: 0;
}
@media(min-width: 768px) {
    .template {
        margin-bottom: 110px;
    }
    :is(.template, .index :where(main)) .button:not(:where(section:not(.content,.related-section)) *):not(:where(section)){
        font-size: 13px;
    }
}

/* ==============================================================================
   5. BLOCOS TEMPLATE
   origem: template-modules.css
   ============================================================================== */

/**************************************/
/********** TEMPLATE MODULES **********/
/**************************************/

.template-module {
	margin: 40px 0;
    position: relative;
    font-size: 0;
}

.template-module:first-child {
	margin-top: 0;
}

.template-module:not(:has(+ .template-module)):not(:has(+ .listing)),
.template-module + .template-module:last-child {
	margin-bottom: 0;
}

.template-module .row {
	margin: 40px 0px;
}
.template-module .row > div {
	padding-inline: 0;
}

.template-module a:not(.button,.search) {
    display: flex;
}

.template-module a:not(.button,.search):has(img) {
    overflow: visible;
}

.template-module img {
	display: block;
	margin: 0 auto;
	width: 100%;
}

.template-module img.img-gif{
	max-width: 100%;
	width: auto;
}

.template-module.round-corners a:has(img),
.template-module.round-corners img {
	border-radius: 30px;
}


.template-module.round-corners .slider .image,
.template-module.round-corners .slider img {
	border-radius: 0;
}
.template-module > img {
	width: 100%;
}
.template-module a[href] img {
	transition: var(--transition);
}

.template-module .button.button-center {
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}

.template-module .button.button-right {
	position: relative;
	left: 100%;
	transform: translateX(-100%);
}

/* 
@media(min-width: 768px) {
	.template-module {
		margin: 80px 0;
	}
} */

@media(min-width: 992px) {

	.template-module a[href]:has(img):hover img {
		transform: scale(1.02);
	}
	
	.template-module {
		margin: 80px 0;
	}
	
	.template-module .row {
		margin: 0;
	}
	.template-module .row > div {
		padding: 0
	}
}

/**************************************/
/********** MODULE 1: SLIDER **********/
/**************************************/

.template-module .slider-wrapper {
	position: relative;
	background-color: transparent;
}

.template-module .slider-wrapper .tns-outer {
    overflow: hidden;
    isolation: isolate;
    transform: translateZ(0);
}

.template-module.round-corners .slider-wrapper {
    border-radius: 30px;
    overflow: hidden;
    isolation: isolate;
    transform: translateZ(0);
}

.template-module .slider:not(.tns-slider) {
    display: flex;
    overflow: hidden;
}
.template-module .slider:not(.tns-slider) > .slide {
    flex-basis: 100%;
    min-width: 100%;
}

.template-module .slider:not(.tns-gallery) .slide {
	position: relative;
}

.template-module .slider .slide .image::before  {
	border-radius: 0;
}




.template-module .image {
	position: relative;
	padding-top: 56.25%;
}

.template-module .slide:not(:has(.legend)) .image.video::after,
.template-module .slide:not(:has(.legend)) .image::after {
	content:"";
	position: absolute;
	top: 0;bottom:0;left: 0;right:0;
	/* background-color: #ebebeb; */
	background-color: #E0E0E0;
	z-index: -1;
	pointer-events: none;
}

.template-module .slide:has( .legend) .image.video::after,
.template-module .slide:has( .legend) .image::after{
	content:"";
	position: absolute;
	top: 1px;bottom:0;left: 0;right:0;
	/* background-color: #ebebeb; */
	background-color: #E0E0E0;
	z-index: -1;
	pointer-events: none;
}

.template-module .image img {
	position: absolute;
	top: 0;bottom:0;
	left: 0;right: 0;
	max-width: 100%;
	min-width: 100%;
	max-height: 100%;
	margin: auto;
	width: auto;
	height: auto;
	/* height: 100%; */
	background-color: var(--white);
}

.template-module .slider .image img{
	object-fit: contain;
	min-height: initial;
	min-width: initial;
	border-radius: 0;
}
.template-module .slider .legend {
	padding: 10px 40px;
	text-align: center;
	position: relative;
    background-color: white;
    pointer-events: none;
        font-family: var(--font-family-2);
}
.template-module .slider .legend small {
    text-align: center;
    margin: 0;
	color: white;
	font-size: 16px;
	font-weight: 300;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.45;
}

.slider-arrows:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	pointer-events: none;
	width: 100%;
	justify-content: space-between;
}

.slider-arrows>div:not(:where(section:not(.content,.related-section)) *) {
	position: relative;
	width: 25px;
  	height: 49px;
	pointer-events: auto;
	margin: 20px;
	cursor: pointer;
	transition: var(--transition);
}

.slider-arrows>div:hover:not(:where(section:not(.content,.related-section)) *) {
	opacity: 0.6;
}

.slider-arrows>div.next:not(:where(section:not(.content,.related-section)) *) {
	transform: rotate(180deg);
}



.slider-arrows>div.next:not(:where(section:not(.content,.related-section)) *) {
	right: 0;
}

.slider-arrows > div:not(:where(section:not(.content,.related-section)) *)::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-mask-image: url("/bluesky/assets/img/template/caret_slide.svg");
	-webkit-mask-repeat: no-repeat;
	mask-image:url("/bluesky/assets/img/template/caret_slide.svg");
	mask-repeat: no-repeat;
	mask-size: contain;
	background-color: #ffffff;
	transition: var(--transition);
	cursor: pointer;
}

.colunas.image .tns-inner .slider:not(:where(section:not(.content,.related-section)) *):not(:where(section)){
	padding-bottom: 2px;
}

.colunas .slider-arrows>div:not(:where(section:not(.content,.related-section)) *) {
    position: relative;
    width: 17px;
    height: 37px;
    pointer-events: auto;
    margin: 30px;
    cursor: pointer;
    transition: var(--transition);
}

.colunas .slider-arrows>div.prev:not(:where(section:not(.content,.related-section)) *) {
	left: -55px;
}
.colunas .slider-arrows>div.next:not(:where(section:not(.content,.related-section)) *) {
	right: -55px;
	transform: rotate(0);
}

.colunas .slider-arrows > div:not(:where(section:not(.content,.related-section)) *)::before {
    -webkit-mask-image: url(/bluesky/assets/img/template/caret.svg);
    mask-image: url(/bluesky/assets/img/template/caret.svg);
    -webkit-mask-size: contain;
    mask-size: contain;
	background-color: #dedddd;;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}


:is(.template, .index :where(main)) .template-module.colunas small.text-center{
	color: #858585;
	font-size: 16px;
    line-height: 1.25;
    font-weight: 300;
    line-height: 1.29;
    letter-spacing: normal;
    text-align: center;
}

:is(.template, .index :where(main)) .template-module.colunas small.text-center:has( + * > *){
	margin-bottom: 21px;
}



@media (max-width: 768px){ 
	:is(.template, .index :where(main)) .template-module.colunas small.text-center{
		font-size: 14px;
    	line-height: 1.29;
	}

	.slider-arrows > div:not(:where(section:not(.content,.related-section)) *) {
		width: 17px;
		height: 35px;
		margin: 25px;
	}

	.template-module .slider .legend small {
		font-size: 14px;
		line-height: 1.2;
	}

	.template-module .container:has( .slider-wrapper) {
		padding-inline: 0;
		max-width: 100%;
	}

	.template-module .slider-wrapper.no-bar .slider-arrows > div{
		width: 17px;
  		height: 32px;
	}

	.template-module .slider-wrapper.no-bar .slider-arrows > div:first-of-type{
		margin-left: 15px;
	}
	.template-module .slider-wrapper.no-bar .slider-arrows > div:last-of-type{
		margin-right: 15px;
	}

	.template-module .slider-wrapper.no-bar .slider .legend {
		background: none !important;
		position: relative !important;
	}
	.template-module .slider .legend small{
		color: #858585;
	}
	

}

@media(min-width: 992px) {
	.template-module .slider .legend {
		padding: 18px 80px;
	}
	
}

.colunas .container>div.noSlider:not(:where(section:not(.content,.related-section)) *),
.colunas.image .container .noSlider:not(:where(section:not(.content,.related-section)) *):not(:where(section))  {
    gap: 50px;
    flex-wrap: wrap;
    justify-content: center;
}

.container>div.noSlider > *{
    display: flex;
    flex-direction: column;
}

.container>div.noSlider .item .itens {
    flex: 1;
}

/* 2 colunas */
.container>div.noSlider.colslide-2 > * {
    flex: 0 0 calc(50% - 25px);
}

/* 3 colunas */
.container>div.noSlider.colslide-3 > * {
    flex: 0 0 calc(33.333% - 33.333px);
}

/* 4 colunas */
.container>div.noSlider.colslide-4 > * {
    flex: 0 1 calc((100% / 4) - 38.5px);
}

/* Ajustes para mobile */
.container>div.noSlider.colslide-2 div.itens:not(:has( img)) {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
	width: 100%;
}

/* sobrescreve quando não há nenhuma imagem no colslide */
.container > div.noSlider.colslide-2:not(:has(img)) div.itens {
    justify-content: flex-start;
}

.colunas div.itens > div p:has( > big):not(:where(section:not(.content,.related-section)) *){
	margin-top: 0;
}

.colunas div.itens:not(:has( .img)) > div > p:first-of-type:not(:where(section:not(.content,.related-section)) *) {
	margin-top: 0;
}

@media (max-width: 768px) {
	.colunas .container>div.noSlider:not(:where(section:not(.content,.related-section)) *),
	.colunas.image .container .noSlider:not(:where(section:not(.content,.related-section)) *):not(:where(section))  {
		gap: 40px 25px;
	}
    body:not(.tablet) .colunas .container>div.noSlider > *:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
		flex: 0 0 100%;
    }
	/* body.tablet .colunas .container>div.noSlider > * {
        flex: 0 0 50%;
    } */
	/* .container>div.noSlider.colslide-2 .item:not(:has( .itens img)) {
		order: 2;
	} */

	.container > div.noSlider.colslide-2 .item.order-mobile-1  { order: 1; }
    .container > div.noSlider.colslide-2 .item.order-mobile-2  { order: 2; }
    .container > div.noSlider.colslide-2 .item.order-mobile-3  { order: 3; }
    .container > div.noSlider.colslide-2 .item.order-mobile-4  { order: 4; }
    .container > div.noSlider.colslide-2 .item.order-mobile-5  { order: 5; }
    .container > div.noSlider.colslide-2 .item.order-mobile-6  { order: 6; }
    .container > div.noSlider.colslide-2 .item.order-mobile-7  { order: 7; }
    .container > div.noSlider.colslide-2 .item.order-mobile-8  { order: 8; }
    .container > div.noSlider.colslide-2 .item.order-mobile-9  { order: 9; }
    .container > div.noSlider.colslide-2 .item.order-mobile-10 { order: 10; }
    .container > div.noSlider.colslide-2 .item.order-mobile-11 { order: 11; }
    .container > div.noSlider.colslide-2 .item.order-mobile-12 { order: 12; }
	
}





/***********************************************/
/********** MODULE 1: SLIDER (NO BAR) **********/
/***********************************************/

.template-module .slider-wrapper.no-bar .slider .legend {
    position: absolute;
    top: 0;bottom: 0;
    left: 0;right: 0;
    background: linear-gradient(to top, rgba(1,1,1,0.5) 0%, rgba(1,1,1,0) 50% );
    display: flex;
    align-items: flex-end;
    justify-content: center;
    z-index: 1;
}

.rounded .template-module:not(.fullwidth) .slider-wrapper.no-bar .slider .legend {
	border-radius: 30px;
}

.template-module.round-corners .slider-wrapper.no-bar .slider .legend {
    border-radius: 30px;
}
.template-module .slider-wrapper.no-bar .slider .legend p {
    color: white;
}

.template-module .slider-wrapper.no-bar .slider .video + .legend {
    background: transparent;
}
/* 

.template-module .slider-wrapper.no-bar .slider-arrows {
    padding-top: 0;
}

.template-module .slider-wrapper.no-bar .slider-arrows > div::before {
    background-image: url(/template1/assets/img/arrow-white.svg);
} */

@media (max-width: 768px){ 

	.template-module .slider-wrapper.no-bar .slider .legend p {
		font-size: 14px;
	}

}

/**************************************************/
/********** MODULE 1: SLIDER THUMBNAILS  **********/
/**************************************************/

.template-module .thumbnail-wrapper {
	position: relative;
	margin-top: 20px;
	padding: 0 40px;
}

.template-module .thumbnail-slider {
	margin: 0 -10px;
}
.template-module .thumbnail-slider:not(.tns-slider) {
	display: flex;
	justify-content: flex-start;
	overflow: hidden;
}
.template-module .thumbnail-slider:not(.tns-slider) > div {
	flex-basis: 50%;
    min-width: 50%;
}

.template-module .thumbnail-slider .slide {
	padding: 0 10px;
	cursor: pointer;
}

.template-module .thumbnail-slider .slide > div {
	padding: 6px;
	border: 1px solid transparent;
	transition: all .2s ease-in-out;
}
.template-module .thumbnail-slider .image {
	position: relative;
    padding-top: 56.25%;
	background-position: center;
	background-size: cover;
}
.template-module .thumbnail-slider .slide.tns-nav-active > div, .template-module .thumbnail-slider .slide:hover > div {
	border: 1px solid rgb(var(--primary));
}


.template-module .thumbnail-slider-arrows {
	position: absolute;
	top: 50%;left: 0;
	transform: translateY(-50%);
    width: 100%;
    display: flex;
    pointer-events: none;
}
.template-module .thumbnail-slider-arrows > div {
    position: relative;
	cursor: pointer;
	margin: auto;
	width: 25px;
	height: 11px;
    font-size: 0;
    pointer-events: auto;
}
.template-module .thumbnail-slider-arrows > div[aria-disabled="true"] {
	opacity: .1;
	pointer-events: none;
}

.template-module .thumbnail-slider-arrows > div.prev {
    margin-left: 0;
    transform: rotate(180deg);
}
.template-module .thumbnail-slider-arrows > div.next {
    margin-right: 0;
}
.template-module .thumbnail-slider-arrows > div::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    -webkit-mask-image: url(/bluesky/assets/img/general/slider-caret.svg);
    -webkit-mask-repeat: no-repeat;
    mask-image: url(/bluesky/assets/img/general/slider-caret.svg);
    mask-repeat: no-repeat;
    mask-size: cover;
    background-color: #000000;
    transition: var(--transition);
    cursor: pointer;
}


@media(min-width: 768px) {
    .template-module .thumbnail-wrapper {
		padding: 0 65px;
	}

    .template-module .thumbnail-slider:not(.tns-slider) > div {
        flex-basis: 25%;
		min-width: 25%;
    }

	.template-module .thumbnail-slider-arrows > div {
		width: 40px;
		height: 18px;
	}
}


/**************************************************/
/********** MODULE 1: FULL WIDTH GALLERY **********/
/**************************************************/

.template-module .gallery {
	position: relative;
}
.template-module .gallery-fullscreen {
	display: none;
	position: fixed;
    top: 0;left: 0;
	width: 100vw;
	height: 100vh;
    z-index: 10;
    background: rgba(32, 32, 32, .9);
	padding: 100px;
	opacity: 0;
	pointer-events: none;
	transition: var(--transition);
}
.template-module .gallery-fullscreen.visible {
	opacity: 1;
	pointer-events: auto;
}

.template-module .gallery-track {
	padding-top: 56.25%;
	max-height: 800px;
	position: relative;
	height: auto;
	overflow-x: auto;
    overflow-y: hidden;
    margin-top: 30px;
}
.template-module .gallery-fullscreen .gallery-track {
	height: 100%;
	padding: 0;
	max-height: none;
}
.template-module .gallery-track::-webkit-scrollbar-track {
	background-color: var(--white);
}
.template-module .gallery-track::-webkit-scrollbar {
	height: 22px;
	background-color: var(--white);
}
.template-module .gallery-fullscreen .gallery-track::-webkit-scrollbar {
	height: 0;
}
.template-module .gallery-track::-webkit-scrollbar-thumb {
	background-color: var(--black);
	border: 10px solid var(--white);
}

.template-module .gallery-track .gallery-list {
	position: absolute;
	top: 0;left: 0;
	display: flex;
	flex-wrap: nowrap;
	height: 100%;
}
.template-module .gallery-fullscreen .gallery-track .gallery-list {
	position: relative;
}

.template-module .gallery-slide {
	height: 100%;
	top: 0;
	overflow: hidden;
}
.template-module .gallery-fullscreen .gallery-slide {
	max-height: 100%;
	min-width: 100%;
	height: auto;
	display: flex;
	align-items: center;
}

.template-module .gallery-track .gallery-slide img {
	max-height: 100%;
	cursor: pointer;
	transition: var(--transition);
	will-change: transform;
}
.template-module .gallery-fullscreen .gallery-track .gallery-slide img {
	max-width: 100%;
	display: block;
	margin: auto;
	cursor: default;
}
.template-module .gallery > .gallery-track .gallery-slide img:hover {
	transform: scale(1.025);
}

/* .template-module .gallery-arrows {
	position: absolute;
	top: 0;left: 0;
	right: 0;bottom: 42px;
	pointer-events: none;
} */
/* .template-module .gallery-arrows div {
	position: absolute;
	width: 25px;
	height: 47px;
	top: 0;bottom: 0;
	right: 20px;
	margin: auto;
	background-image: url(/template1/assets/img/caret-slim-white.svg);
	background-size: contain;
	background-repeat: no-repeat;
	pointer-events: auto;
} */
/* .template-module .gallery-fullscreen .gallery-arrows div {
	pointer-events: none;
}
.template-module .gallery-fullscreen.visible .gallery-arrows div {
	pointer-events: auto;
}
.template-module .gallery-arrows div:first-of-type {
	left: 20px;
	right: auto;
	transform: rotate(180deg);
} */

/* .template-module .gallery.disabled .gallery-arrows div {
	opacity: 0;
	pointer-events :none;
} */

.template-module .gallery-fullscreen .close {
	position: absolute;
	top: 35px;
	right: 35px;
	height: 25px;
	width: 25px;
	opacity: 1;
	overflow: visible;
}
.template-module .gallery-fullscreen .close::before,
.template-module .gallery-fullscreen .close::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 2px;
	width: 35px;
	background-color: white;
	transform: rotate(45deg);
	transform-origin: left
}
.template-module .gallery-fullscreen .close::after {
	left: auto;right: 0;
	transform: rotate(-45deg);
	transform-origin: right;
}


@media(min-width: 768px) {
    .template-module .gallery-track::-webkit-scrollbar {
		height: 42px;
    }
	.template-module .gallery-track::-webkit-scrollbar-thumb {
		border: 20px solid var(--white);
	}
	
	/* .template-module .gallery-arrows div {
		width: 32px;
		height: 62px;
		right: 50px;
	}
	.template-module .gallery-arrows div:first-of-type {
		left: 50px;
	} */
}


@media(min-width: 992px) {
	.template-module .gallery-fullscreen {
		display: block;
	}
	
	.template-module .gallery-track {
		padding-top: 35.7142%;
	}
}



/**************************************************/
/********** MODULE 2 & 3: TEXT AND IMAGE **********/
/**************************************************/

/* .template-module.wrap::before,
.template-module.wrap::after {
    content: "";
    display: table;
    clear: both;
} */

.template-module.wrap img + h2,
.template-module.wrap img + h3,
.template-module.wrap img + h4,
.template-module.wrap img + p,
.template-module.wrap img + ul,
.template-module.wrap img + ol,
.template-module.wrap .image + h2,
.template-module.wrap .image + h3,
.template-module.wrap .image + h4,
.template-module.wrap .image + p,
.template-module.wrap i.imagemg + ul,
.template-module.wrap .image + ol  {
    margin-top: 0;
}

.template-module.wrap  {
	display: flow-root;
}

/* .template-module.wrap ol,
.template-module.wrap ul{
	display: flow;
} */

.template-module.module2.wrap img,
.template-module.module3.wrap img {
	max-width: 100%;
	float: none;
	margin: 0 0 15px 0;
}

.template-module.module2 .row > div:first-child {
    padding-right: 15px;
}

.template-module.module3 .row > div:last-child {
    padding-left: 15px;
}

.template-module.module2.wrap .image,
.template-module.module3.wrap .image {
	width: 100%;
}

.template-module.module2.wrap .image img,
.template-module.module3.wrap .image img {
	position: relative;
	margin: 0;
}

.template-module.module2.wrap .image small,
.template-module.module3.wrap .image small,
:is(.template, .index :where(main)) .template-module small.text-center,
:is(.index, .template) section.colunas .itens small.text-center {
    font-size: 14px;
    font-weight: 300;
    line-height: 1.29;
  	letter-spacing: normal;
    text-align: center;
    color: #858585;
    margin: 15px 0 0;
    font-family: var(--font-family-2);
}

:is(.template, .index :where(main)) .template-module small.text-center,
:is(.index, .template) section.colunas .itens small.text-center {
    width: 100%;
	/* margin-bottom: 0; */
}

.rounded .template-module.module2 .video > div,
.rounded .template-module.module3 .video > div {
	border-radius: 30px;
}
.template-module.module2 .video > div,
.template-module.module3 .video > div{
	position: relative;
	overflow: hidden;
}

@media(min-width: 768px) {

	.template-module.module2.wrap .image,
	.template-module.module3.wrap .image {
		max-width: calc(50% - 10px);
		margin-top: 5px;
	}

	.template-module.module2.wrap h2,
	.template-module.module3.wrap h2 {
		margin-top: 0px;
	}

	.template-module.module2.wrap .image.video img,
	.template-module.module3.wrap .image.video img {
		max-width: unset;
	}

	.template-module.module2.wrap .image,
	.template-module.module3.wrap .image {
		max-width: calc(50% - 10px);
	}

	.template-module.module2.wrap .image {
		margin: 8px 0 30px 50px;
		float: right;
	}
	.template-module.module3.wrap .image {
		margin: 8px 50px 30px 0;
		float: left;
	}	

	.template-module.module2 .row > div:first-child {
		padding-right: 45px;
	}
	
	.template-module.module3 .row > div:last-child {
		padding-left: 45px;
	}

	.template-module.module2.wrap .image {
		margin-bottom: 23px;
		margin-left: 43px;
		float: right;
		padding-top: 0;
	}

	.template-module.module3.wrap .image {
		margin-bottom: 23px;
		margin-right: 43px;
		float: left;
		padding-top: 0;
	}

	.template-module.module2.wrap .image img,
	.template-module.module3.wrap .image img {
		padding: 0;
	}	

	.template-module.module2.wrap .image small,
	.template-module.module3.wrap .image small,
	:is(.template, .index :where(main)) .template-module small.text-center,
	:is(.index, .template) section.colunas .itens small.text-center {
		font-size: 16px;
		line-height: 1.25;
		margin: 15px 0 0;
	}

}

@media(max-width:767px){
	.template-module.module2.wrap .image,
	.template-module.module3.wrap .image {
		padding-top: 0;
	}

	.template-module.module2.wrap .image + *:not(p):first-of-type,
	.template-module.module3.wrap .image + *:not(p):first-of-type{
		margin-top: 10px;
		margin-bottom: 10px;
	}

	.listing .accordion .description .template-module.module2.wrap .image + p:first-of-type,
	.listing .accordion .description .template-module.module3.wrap .image + p:first-of-type,
	.template-module.module2.wrap .image + p:first-of-type,
	.template-module.module3.wrap .image + p:first-of-type{
		margin-top: 20px;
	}


	:is(.template, .index :where(main)) .template-module small.text-center{
		padding-inline: 20px;
	}
}

/**********************************************************/
/********** MODULE 4, 5, 6 & 7: IMAGE AND LEGEND **********/
/**********************************************************/

.template-module.module4 p,
.template-module.module5 p,
.template-module.module6 p,
.template-module.module7 p {
    margin-left: auto;
	margin-right: auto;
	padding: 0 20px 0;
}

/* .template-module.module4 img+h2,
.template-module.module5 a+h2,
.template-module.module6 a+h2,
.template-module.module7 a+h2,
.template-module.module4 img+h3,
.template-module.module5 a+h3,
.template-module.module6 a+h3,
.template-module.module7 a+h3,
.template-module.module4 img+h4,
.template-module.module5 a+h4,
.template-module.module6 a+h4,
.template-module.module7 a+h5 {
   margin-top: 1em;
} */

@media(min-width: 768px) {
	.template-module.module4 p,
    .template-module.module5 p,
    .template-module.module6 p,
    .template-module.module7 p {
        width: 75%;
        padding: 0 10px 0;
    }
}



/***************************************************************************************/
/********** MODULE 4 + 10 FUSION & MODULE 5 + 11 FUSION: TEXT + IMAGE COLUMNS **********/
/***************************************************************************************/
.template-module.module4.module10 .row,
.template-module.module5.module11 .row{
	--gap-h: 50px;
}

.template-module.module11 .row > div {
    --gap-h: 100px;
}

.template-module.module4.module10 p,
.template-module.module5.module11 p {
	margin-left: 0;
	margin-right: 0;
	padding: 0;
	width: auto;
}

.template-module.module25 .header {
	margin-bottom: 30px;
}

.template-module .header p{
	color: var(--primary);
	font-size: 32px;
	font-weight: 900;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.31;
	letter-spacing: -0.32px;
	text-align: left;
}

.template-module.module5.module11 .row > div > :first-child,
.template-module.module4.module10 .row > div > :first-child {
	margin-top: 0;
}

.template-module.module25 .itens .img + h4,
.template-module.module25 .itens .img + h3,
.template-module.module25 .itens .img + h2,
.template-module.module25 a:has(img) + h4,
.template-module.module25 a:has(img) + h3,
.template-module.module25 a:has(img) + h2,
.template-module.module25 .itens .img + div h4,
.template-module.module25 .itens .img + div h3,
.template-module.module25 .itens .img + div h2,
.template-module.module25 a:has(img) + div h4,
.template-module.module25 a:has(img) + div h3,
.template-module.module25 a:has(img) + div h2,
.template-module.module25 h2,
.template-module.module25 h3,
.template-module.module25 h4{
	margin: 0.4em 0;
}

.template-module.module25 small + h4,
.template-module.module25 small + h3,
.template-module.module25 small + h2{
	margin-top: 0;
}

/* 
.template-module.module25 h2:has(+p),
.template-module.module25 h3:has(+p),
.template-module.module25 h4:has(+p){
	margin-bottom: 0 !important;
} */
.template-module.module25 h2+p,
.template-module.module25 h3+p,
.template-module.module25 h4+p{
	margin-top: 17px !important;
}

.template-module.module25 small+p{
	margin-top: 10px !important;
}

.template-module a[href]:has(img) {
	overflow: hidden;
}

.template-module .header.text-center{
	justify-content: center;
}

.template-module .header.text-right{
	justify-content: right;
}

@media(max-width: 767px) {
	
	.template-module .header p{
		font-size: 22px;
		font-weight: 900;
		line-height: 1.36;
		letter-spacing: -0.22px;
		text-align: left;
	}

	
	.template-module.module5.module10 .row:has(.col-12.col-md-6:last-of-type > img):not(:has(.col-12.col-md-6:nth-child(1) > img)),
	.template-module.module4.module10 .row:has(.col-12.col-md-6:last-of-type > img):not(:has(.col-12.col-md-6:nth-child(1) > img)) {
		flex-direction: column-reverse;
	}
}

/* @media(min-width: 992px) {
	.template-module.module25 a.button {
		margin-top: 31px;
        position: relative;
    }
} */

/******************************************************************/
/********** MODULE 12: VIDEO & MODULE 1: SLIDER w/ video **********/
/******************************************************************/

.template-module .video::before {
    content: "";
    position: absolute;
    top: 0;bottom: 0;
    left: 0;right: 0;
	mix-blend-mode: multiply;
    background-color: rgba(1, 1, 1, .2);
    z-index: 1;
}


.template-module.module2 .video > div::before,
.template-module.module3 .video > div::before {
    content: "";
    position: absolute;
    top: 0;bottom: 0;
    left: 0;right: 0;
	border-radius: 0;
    mix-blend-mode: multiply;
  	background-color: #b6b4b4;
    z-index: 1;
}

.template-module.module2 .video::before,
.template-module.module3 .video::before{
	content: none;
	display: none;
}

.template-module.round-corners .video iframe,
.template-module.round-corners .video video,
.template-module.round-corners .video::before {
    border-radius: 50px;
}

.template-module.circle .video iframe,
.template-module.circle .video video,
.template-module.circle .video::before {
	border-radius: 500px;
}

.template-module .video.open::before {
    background-color:	black;
}


.fullscreen-container iframe,
.fullscreen-container video,
.template-module .video iframe,
.template-module .video video {
	position: absolute;
	top: 0;bottom: 0;
	left: 0;right: 0;
	width: 100%;
	height: 100%;
    border: 0;
    opacity: 0;
    pointer-events: none;
    z-index: 2;
}

.template-module .video.open iframe,
.template-module .video.open video {
	opacity: 1;
	pointer-events: auto;
	/* object-fit: contain; */
}


.fullscreen-container {
	height: 100vh;
    width: 100vw;
    background-color: rgba(0, 0, 0, .9);
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 999;
	opacity: 0;
	pointer-events: none;
}

.fullscreen-container.open {
	opacity: 1;
	pointer-events: all;
}

.fullscreen-container iframe,
.fullscreen-container video {
	display: none;
	opacity: 1;
	pointer-events: all;
	padding-block: 50px;
}

.fullscreen-container .close {
    position: absolute;
    top: 20px;
    right: 20px;
    padding: 15px;
    z-index: 10;
    cursor: pointer;
}

.fullscreen-container .close::after,
.fullscreen-container .close::before {
    content: "";
    position: absolute;
    top: 10px;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    transform: rotate(45deg);
    background-color: #fff;
}

.fullscreen-container .close::after {
    transform: rotate(-45deg);
}
.template-module .video.open + .legend {
	opacity: 0;
}

@supports(object-fit: cover) {
	.template-module .image.video img {
		top: 0;left: 0;
		transform: none;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

.template-module .video a.play {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 94px;
    height: 94px;
    z-index: 1;
	display: flex;
    align-items: center;
    justify-content: center;
}

.template-module .video a.play:before {
	content: "";
	position: absolute;
	top: auto;bottom: auto;
    left: auto;right: auto;
    width: 25px;
    height: 25px;
	margin: auto;
	-webkit-mask-image: url("/bluesky/assets/img/template/play_icon.svg");
	mask-image: url("/bluesky/assets/img/template/play_icon.svg");
	mask-position: right;
	-webkit-mask-position: right;
    mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size:contain;
	background-color: white;
	transition: var(--transition);
	z-index: 2;
}

.template-module .video a.play:after {
	content: "";
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: calc(100% - 8px);
    height: calc(100% - 8px);
	transition: var(--transition);
    border-radius: 100%;
    z-index: 1;
    background-color: transparent;
    border: 4px solid white;
}

.template-module .video a.play:hover {
	transform: scale(1.05);
}

.template-module .video + p.text-center {
    position: absolute;
    bottom: 0;
    left: 20px;right: 20px;
    margin: 1em auto;
    color: white;
    z-index: 1;
}

.template-module a + p.text-center,
.template-module img + p.text-center {
	margin-top: 25px;
}

.template-module.module2.wrap .image.video,
.template-module.module3.wrap .image.video {
	width: 100%;
	padding: 0;
}


@media(max-width: 768px) {
	.template-module .video + p.text-center {
		font-size: 10px;
	}

	.template-module a + p.text-center, .template-module img + p.text-center {
		margin-top: 10px;
	}

	.template-module .video a.play {
		max-height: 41px;
		max-width: 41px;
	}

	.template-module .video a.play:before {
		width: 14px;
        height: 14px;
	}

	.template-module .video a.play:after {
        border: 2px solid white;
        width: calc(100% - 4px);
        height: calc(100% - 4px);
    }

}

:is(.template, .index :where(main)) .template-module .image.video + small {
	z-index: 1;
	font-size: 16px;
	font-weight: 300;
	
}

@media(min-width: 768px) {
	.template-module .video a {
		width: 70px;
		height: 70px;
		border-width: 4px
	}

	.template-module .video a.play {
		width: 93px;
		height: 93px;
	}

	/* .template-module.module2.wrap .image.video,
	.template-module.module3.wrap .image.video {
		max-width: 50%;
	} */

	.template-module.module3.wrap .image.video {
		margin-bottom: 25px;
		/* margin-right: 55px; */
		float: left;
		padding-top: 0;
	}	
	.template-module.module2.wrap .image.video img,
	.template-module.module3.wrap .image.video img {
		padding: 0;
	}	

	.template-module.module2.wrap .image.video {
		margin-bottom: 25px;
		/* margin-left: 55px; */
		float: right;
		padding-top: 0;
	}

	.fullscreen-container iframe,
	.fullscreen-container video {
		padding: 50px;
	}

	:is(.template, .index :where(main)) .template-module .image.video + small {
		color: #ffffff;
		position: absolute;
		margin-bottom: 23px;
		bottom: 0;
		z-index: 1;
		left: 0;
		right: 0;
	}
}

@media(min-width: 992px) {
	.template-module .video a {
		width: 95px;
		height: 95px;
	}
}


/*****************************************************/
/********** MODULE 19: CALL TO ACTION (CTA) **********/
/*****************************************************/

.template-module .cta {
    display: block;
    position: relative;
	width: 100%;
	padding: 30px;
    background-color: var(--primary);
	text-align: center;
}

.rounded .template-module .cta{
	border-radius: 30px;
}


.template-module .cta h2,
.template-module .cta h3,
.template-module .cta h4,
.template-module .cta h5,
.template-module .cta .h3 {
	font-size: 26px;
	font-weight: 600;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.28;
	text-align: center;
	margin: auto;
	color: var(--white);
	max-width: 730px;
}

.template-module .cta p {
	text-align: center;
	max-width: 730px;
	margin: auto;
	color: 	var(--white);
}


.listing-faq .accordion .description .template-module .cta .h3 + p,
.template-module .cta .h3 + p {
	margin-top: 32px;
}

.template-module .cta .button {
	margin-top: 0;
	display: inline-block;
	padding: 17px 31px 16.5px;
}

.template-module .cta > .h3 + .button,
.template-module .cta > p + .button {
	margin-top: 33px;
}

.template-module .cta .button:before {
	background-color: var(--secondary);
	opacity: .5;
}




@media(max-width: 768px) {
	.template-module .cta {
		padding: 55px 22px;
	}


	.template-module .cta h3,
	.template-module .cta .h3 {
		font-size: 28px;
		line-height: 1.29;
		letter-spacing: normal;
		
	}

	.template-module .cta p {
		max-width: unset;
	}

	.template-module .cta .h3+p {
		margin-top: 30px;
	}
	
	.template-module .cta .button {
		padding: 9.5px 20px;
		display: block;
	}
}

@media(min-width: 768px) {


	.template-module .cta h3,
	.template-module .cta .h3 {
		line-height: 1.14;
		letter-spacing: -0.42px;
		font-size: 36px;
	}

}

@media(min-width: 992px) {
    .template-module .cta {
		padding: 60px 40px 70px;
    }
}



/******************************************/
/********** MODULE 20: PHONE CTA **********/
/******************************************/

.template-module .phone-cta {
	background-color: white;
	padding: 20px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.template-module .phone-cta .image {
	max-width: 60px;
}

.template-module .phone-cta .image + div {
	flex: 1;
	margin-left: 20px;
}
.template-module .phone-cta div span {
	display: block;
	font-size: 1rem;
	font-weight: 900;
	color: rgb(var(--primary));
	line-height: 1;
	text-transform: uppercase;
}
.template-module .phone-cta div span.phone {
	font-size: 2.125rem;
	color: black;
	margin-top: 10px;
}

.template-module .phone-cta a.button {
	padding: 22px 30px;
	margin-top: 20px;
	min-width: 100%;
	text-align: center;
}


@media(min-width: 768px) {
	.template-module .phone-cta a.button {
		min-width: auto;
	}

	.template-module .phone-cta {
		padding: 25px 45px;
	}

	.template-module .phone-cta .image {
		max-width: 70px;
	}

	.template-module .phone-cta .image + div {
		margin-left: 30px;
	}

	.template-module .phone-cta a.button {
		margin: 0;
	}
}

@media(min-width: 992px) {	
	.template-module .phone-cta {
		padding: 35px 70px;
	}

	.template-module .phone-cta .image {
		max-width: 90px;
	}
	.template-module .phone-cta .image + div {
		margin: 0 60px;
	}

	.template-module .phone-cta a.button {
		padding: 22px 30px;
	}
}


/*****************************************************/
/********** MODULE 21: IMAGE + TITLE + TEXT **********/
/*****************************************************/

.template-module.module21 {
	background-color: white;
}
.template-module.module21:not(:first-child) {
	margin-top: 70px;
}
.template-module.module21:not(:last-child) {
	margin-bottom: 70px;
}

.template-module.module21 .container {
	padding-bottom: 50px;
}

.template-module.module21 .title {
	position: relative;
	top: -20px;
	margin: 0 15px;
	padding: 15px;
	background-color: rgb(var(--primary));
	display: inline-flex;
}
.template-module.module21 .title::before,
.template-module.module21 .title::after {
	content: "";
	position: absolute;
	top: 0;bottom: 0;
	width: 15px;
	background-color: inherit;
}
.template-module.module21 .title::before {
	left: -15px;
	transform: skewX(-8deg);
    transform-origin: bottom left;
}
.template-module.module21 .title::after {
	right: -15px;
	transform: skewX(-8deg);
    transform-origin: top right;
}

.template-module.module21 .title .image {
	width: 52px;
	margin-right: 20px;
}

.template-module.module21 .title h2,
.template-module.module21 .title .h2 {
	margin: 0;
	color: white;
}


@media(max-width: 767px) {
	.template-module.module21 .title h2,
	.template-module.module21 .title .h2 {
		font-size: 2rem;
	}
}

@media(min-width: 768px) {
	.template-module.module21:not(:first-child) {
		margin-top: 90px;
	}
	.template-module.module21:not(:last-child) {
		margin-bottom: 90px;
	}

	.template-module.module21 .container {
		padding-left: 50px;
		padding-right: 50px;
	}

	.template-module.module21 .title {
		top: -30px;
		margin: 0;
		left: -15px;
		align-items: center;
	}
}

@media(min-width: 992px) {
	.template-module.module21:not(:first-child) {
		margin-top: 120px;
	}
	.template-module.module21:not(:last-child) {
		margin-bottom: 120px;
	}

	.template-module.module21 .container {
		padding: 80px 20px;
	}

	.template-module.module21 .title .image {
		margin-right: 30px;
	}

	.template-module.module21 .title {
		position: absolute;
		top: -40px;
		left: 0;
	}

	.template-module.module21 .title::before {
		transform: skewX(-10deg);
	}
	.template-module.module21 .title::after {
		transform: skewX(-10deg);
	}
}


/***************************************************/
/********** MODULE 22: CONTACT US BUTTONS **********/
/**************************************************/

.template-module.module22 .container > a {
	background-color: rgb(var(--primary));
	width: 100%;
}
.template-module.module22 .container > a + a {
	margin-top: 30px;
}
.template-module.module22 .container > a:last-child {
	background-color: white;
	border: 1px solid #e5e3e3;
	flex: 1;
}

.template-module.module22 .container > a.has-image .image {
	width: 100%;
}
.template-module.module22 .container > a.has-image .image img {
	position: absolute;
	min-width: 100%;
	min-height: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.template-module.module22 .container > a .description {
	position: relative;
	padding: 18px 47px 14px 20px;
}
.template-module.module22 .container > a .description {
	padding-top: 22px;
	padding-bottom: 18px;
}

.template-module.module22 .container > a p {
	display: block;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1;
	color: white;
	margin: 0;
}
.template-module.module22 .container > a:last-child p {
	color: var(--black);
}
.template-module.module22 .container > a p + p {
	font-size: 2rem;
	font-weight: 900;
	margin-top: 10px;
}

.template-module.module22 .container > a span {
	position: absolute;
	top: 0;bottom: 0;
	right: 15px;
	margin: auto;
	width: 12px;
	height: 24px;
	transition: var(--transition);
}
.template-module.module22 .container > a:hover span,
.template-module.module22 .container > a:focus span {
	transform: translateX(5px);
}
.template-module.module22 .container > a span::before,
.template-module.module22 .container > a span::after {
	content: "";
	position: absolute;
	top: 0;bottom: 0;
	right: 0;
	margin: auto;
	width: 17px;
	height: 2px;
	background-color: white;
	border-right: 2px;
	transform-origin: right;
	transition: var(--transition);
}
.template-module.module22 .container > a:last-child span::before,
.template-module.module22 .container > a:last-child span::after {
	background-color: rgb(var(--primary));
}
.template-module.module22 .container > a span::before {
	transform: rotate(45deg);
}
.template-module.module22 .container > a:hover span::before {
	transform: rotate(35deg);
}
.template-module.module22 .container > a span::after {
	transform: rotate(-45deg);
}
.template-module.module22 .container > a:hover span::after {
	transform: rotate(-35deg);
}


@supports(object-fit: cover) {
	.template-module.module22 .container > a.has-image .image img {
		position: static;
		width: 100%;
		height: 100%;
		object-fit: cover;
		transform: none;
	}
}


@media(min-width: 768px) {
	.template-module.module22 .container {
		display: flex;
		justify-content: flex-start;
	}

	.template-module.module22 .container > a {
		width: auto;
	}
	.template-module.module22 .container > a + a {
		margin: 0;
		margin-left: 30px;
	}

	.template-module.module22 .container > a.has-image {
		display: flex;
	}

	.template-module.module22 .container > a.has-image .image {
		width: 150px;
		margin: 0;
	}

	.template-module.module22 .container > a .description {
		padding: 23px 57px 19px 25px;
	}
	.template-module.module22 .container > a:last-child .description {
		padding-top: 22px;
		padding-bottom: 18px;
		flex: 1
	}

	.template-module.module22 .container > a span {
		right: 20px;
	}
}

@media(min-width: 992px) {
	.template-module.module22 .container > a + a {
		margin-left: 40px;
	}

	.template-module.module22 .container > a.has-image .image {
		width: 165px;
	}

	.template-module.module22 .container > a .description {
		padding: 28px 80px 24px 30px;
	}
	.template-module.module22 .container > a:last-child .description {
		padding-top: 27px;
		padding-bottom: 23px;
	}

	.template-module.module22 .container > a span {
		right: 30px;
	}
}

/***************************************************/
/***************** MODULE TABLE ********************/
/**************************************************/

.template-module table,
.template-module table td,
.template-module table tr,
.template-module table th {
	font-size: 1.25rem;
	font-stretch: normal;
	font-style: normal;
	line-height: 1;
	letter-spacing: normal;
	text-align: left;
	padding: 21px 0 20px 21px;
	position: relative;
        font-family: var(--font-family-2);
}

.template-module table {
	padding: 0;
}

.template-module table th {
	color: var(--white);
	font-weight: 600;

}

/* .template-module table tbody tr td:last-of-type,
.template-module table th:last-of-type {
	text-align: end;
	padding: 21px 21px 20px 0;
}


.template-module table tbody tr td:last-of-type {
	text-align: end;
	padding: 21px 0px 20px;
} */

.template-module table th:last-of-type {
	text-align: center;
}

.template-module table tbody tr td{
	padding-inline: 20px !important;
}

.template-module table th{
	text-align: center;
	padding-inline: 20px;
}

.template-module table td {
	font-weight: 300;
	color: #1c1c1c;
	background: #ffffff;
}

.template-module table tr > td:first-of-type {
	padding-right:20px;
}

.template-module table td b,
.template-module table td strong {
	font-weight: 600;
	text-align: left;
}

@media(max-width: 768px) {

	.template-module table,
	.template-module table td,
	.template-module table tr,
	.template-module table th {
		font-size: 18px;
	}
}
.tns-item:not(:where(section:not(.content,.related-section)) *):not(:where(section)), 
.tns-item .legend:not(:where(section:not(.content,.related-section)) *):not(:where(section)), 
.tns-item .container:not(:where(section:not(.content,.related-section)) *):not(:where(section)), 
.tns-item .image.filter:not(:where(section:not(.content,.related-section)) *):not(:where(section))::after, 
.tns-item .image.filter:not(:where(section:not(.content,.related-section)) *):not(:where(section))::before, 
.tns-item .image.video:not(:where(section:not(.content,.related-section)) *):not(:where(section))::before, 
.tns-item .image.video .play:not(:where(section:not(.content,.related-section)) *):not(:where(section)), 
.tns-item .image.video video:not(:where(section:not(.content,.related-section)) *), 
.tns-item img:not(:where(section:not(.content,.related-section)) *) {
    perspective: 1000px !important;
    backface-visibility: hidden !important;
    transform: translate3d(0, 0, 0);
    -webkit-perspective: 1000px !important;
    -webkit-backface-visibility: hidden !important;
    -webkit-transform: translate3d(0, 0, 0);
}



.template-module.round-corners,
.template-module.round-corners .image,
.template-module.round-corners img,
.template-module.round-corners a:has(img),
.template-module .round-corners,
.template-module .round-corners .image,
.template-module .round-corners a:has(img),
.template-module .round-corners img {
	border-radius: 50px;
	background-color: transparent;
}
.listing.round-corners img {
	border-radius: 25px;
}

.template-module.circle .image,
.template-module.circle img,
.template-module .circle .image,
.template-module .circle img {
    border-radius: 300px;
	background-color: transparent;
}

.template-module .circle a {
	overflow: unset;
}

.listing.circle img {
	border-radius: 70px;
}

.listing.module25 .container {
    max-width: 1350px;
	padding: 0 85px;
} 

/* .listing.module25 .card-wrapper{
    padding: 40px;
}  */


.listing.module25 .card-wrapper {
    gap: 0;
	padding-bottom: 40px;
	flex-wrap: nowrap;
}

.listing.module25 .card-wrapper > div {
	display: flex;
}


.listing.module25 .card-wrapper .card{
	max-width: unset;
    display: flex;
    flex-direction: column;
    /* flex: 1; */
    transition: var(--transition);
	box-shadow: unset;
}

.listing.module25 #tns1-iw {
	margin: 0px -40px 0px 0px;
	padding: 0 20px;
}

.listing.module25 .card-wrapper .card img{
	margin: 0;
}

.listing.module25 .card-wrapper .tns-slide-active .card {
	box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.07);
}

.listing.module25 .card-wrapper .card .tag-wrapper .tag{
	background-color: var(--primary);
    pointer-events: all;
}

.listing.module25 .card-wrapper .card .card-content>div>a:last-of-type {
    font-family: var(--font-family);
    color: #1c1c1c;
    font-size: 20.5px;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.24;
}

/* .listing.module25 .card-wrapper .card{
	box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.02);
} */


.listing.module25 .card-wrapper .card .note:has(span){
	background-color: var(--primary);
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: normal;
    text-align: center;
    color: var(--white);
    padding: 15px 0;
    text-transform: uppercase;
}

.listing.module25 .arrow-container {
    display: flex;
    gap: 10px;
    align-items: center;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    justify-content: space-between;
	padding: 100px 15px 0;
    pointer-events: none;

}

.listing.module25 .arrow-container .arrow{
    pointer-events: auto;
}

.listing.module25 .card-slider-header {
    display: flex;
    width: 100%;
    justify-content: center;
	margin-bottom: 50px;
}

.listing.module25 .arrow-container.mobile {
    display: none;
}

.listing.module25 .header{
	margin-bottom: 0px;
}


@media (max-width: 768px) {

	.listing.module25 .container {
		padding: 0;
	}
	.listing.module25 .card-wrapper {
		gap: 0;
	}
	.listing.module25 .arrow-container {
		display: none;
	}
	.listing.module25 .arrow-container.mobile {
        position: relative;
        justify-content: center;
        display: flex;
        padding: 0;
	}
	.listing.module25 .card-wrapper .card {
		max-width: calc(100% - 20px);
	}


}

.listing.module25 .arrow-container .arrow::before {
    left: -4px;
	right: 0px;
}

.listing.module25 .arrow-container .arrow::after {
    left: -4px;
	right: 0px;
}

.listing.module25 .card-wrapper .card .tag span{
	color: var(--white);
}


.template-module:not(.module3, .module2 ) .image {
    position: relative;
    aspect-ratio: 16 / 8.99;
    background-color: unset;
}


.cards-module .container{
	max-width: 1330px;
}

.cards-module .tag-container {
    margin: 75px auto;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 9px;
    padding: 0 20px;
    justify-content: center;
}

.tag-container .tag {
    padding: 16px 20px 15px;
	font-size: 16px;
	font-weight: 400;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.38;
	letter-spacing: normal;
	text-align: left;
	color: var(--secondary);
    transition: var(--transition);
    cursor: pointer;
    position: relative;
	border-radius: 0px;
	background: transparent;
}



.cards-module .tag-container .tag.selected {
    background-color: var(--primary);
	color: #ffffff;
	/* font-weight: 600; */
}

.cards-module .tag-container .tag::before {
    content: "";
    position: absolute;
    border: 2px solid var(--primary);
    opacity: .5;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
	overflow: hidden;
	border-radius: 0px;
    transition: var(--transition);
}

.rounded .cards-module .tag-container .tag::before,
.rounded .tag-container .tag{
	border-radius: 50px;

}

.cards-module .tag-container .tag:not(.selected):hover::before {
    opacity: 1;
}


.cards-module .listing .container .items {
	justify-content: center;
}
.card-item {
	overflow: hidden;
}

.card-item > div  {
	padding: 20px 0px 0;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.rounded .card-item .img{
	overflow: hidden;
	border-radius: 30px;
}

.card-item .img{
	width: 100%;
}

.card-item a:not([href]){
	pointer-events: none;
	cursor: default;
}

.card-item > div > div {
	display: flex;
	gap: 5px;
}

:is(.template, .index :where(main)) .template-module .card-item > div > p {
    display: inline-flex;
    gap: 0;
    flex-wrap: wrap;
}

:is(.template, .index :where(main)) .template-module .card-item > div.cards-categories > p{
	margin-block: 0;
    display: inline-block;
    line-height: 1.4 !important;
}

:is(.template, .index :where(main)) .template-module .card-item > div.cards-categories > p:first-of-type{
	color: var(--primary) !important;
	line-height: 1.1 !important;
	font-size: 14px !important;
}

:is(.template, .index :where(main)) .template-module .card-item > div > p.role > a {
	font-size: 16px;
    font-weight: 300;
    line-height: 1.66;
    letter-spacing: normal;
    text-align: center;
    color: #003535;
}

:is(.template, .index :where(main)) .template-module .card-item > div > p.role > span:hover,
:is(.template, .index :where(main)) .template-module .card-item > div > p.role > a:hover {
	border-bottom: 1px solid transparent;
}

.card-item > div > p > a {
    border-bottom: 1px solid transparent;
}

.card-item > div > p > a span {
	transition: var(--transition);
}

.card-item > div > p > a span:hover {
	opacity: 0.6;
}

.card-item .category {
	font-size: 14px;
	font-weight: normal;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.43;
	letter-spacing: normal;
	text-align: center;
	color: var(--primary);
}

.card-item .category:hover {
	opacity: .7;
}

.card-item p {
	font-size: 16px;
	font-weight: 300;
	line-height: 1.66;
	letter-spacing: normal;
	text-align: center;
	color: #003535;
	margin-top: 10px;
}

.card-item h3 + p,
.card-item p + p {
	margin-top: 0;
}

.card-item h3.title,
.card-item h3.title > a,
.card-item p.title,
.card-item p.title > a {
	font-size: 22px;
	font-weight: normal;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.18;
	letter-spacing: normal;
	color: #434344;
}

.card-item h3.title,
.card-item p.title{
	margin-top: 10px;
}
.card-item h3.title{
	margin-bottom: .5rem;
}
.card-item h3.title > a,
.card-item p.title > a{
	border: none !important;
}

.card-item h3.title > a:hover,
.card-item p.title > a:hover {
	opacity: .5;
}

.card-item div > p {
	font-size: 18px;
	font-weight: 300;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.56;
	letter-spacing: normal;
	text-align: start;
	color: var(--third);
}


:is(.content, .index :where(main)) .listing .items .card-item .img.img_horizontal img,
:is(.content, .index :where(main)) .listing .items .card-item .img.img_vertical img,
:is(.content, .index :where(main)) .listing .items .card-item .img.img_quadrada img{
	max-height: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}



 @media (min-width: 768px) {
		
	.cards-module .row {
		--gap-h: 60px;
		--gap-v: 50px;
	}
} 

 @media (max-width: 768px) {
	.cards-module .container{
		padding-inline: 20px;
	}

	.cards-module .tag-container {
		flex-wrap: nowrap;
		justify-content: flex-start;
		overflow: auto;
        margin: 0 0 30px 0;
        gap: 10px;
        padding-bottom: 7px;
		scrollbar-width: none
		
	}

	.cards-module .tag-container::-webkit-scrollbar {
		display: none;
	}

	.cards-module .tag-container .tag {
		white-space: nowrap;
		font-size: 14px;
		font-weight: 300;
		line-height: .14;
		letter-spacing: normal;
		padding: 19px 20px;
	}


	.cards-module .row {
		--gap-h: 10px;
		--gap-v: 10px;
	}

	.card-item {
		border-radius: 10px;
	}

	.card-item > div > div > span {
		width: 39px;
		height: 30px;
	}

	.card-item > div {
		padding: 20px 15px;
	}

	.card-item .category {
		font-size: 13px;
		line-height: 1.38;
		letter-spacing: normal;
	}

	.card-item  div > a > p {
		font-size: 20px;
		font-weight: 600;
		line-height: 1.2;
		letter-spacing: normal;
		text-align: center;
		color: var(--secondary);
		
	}
	.card-item div > p  {
		font-size: 16px;
		font-weight: 300;
		line-height: 1.38;
		letter-spacing: normal;
		margin-top: 10px;
		color: var(--third);
	}

	.card-item > div > div {
		gap: 0;
	}
}

/* ------------------------------------------------------------------------------
   Modulo 28: Formulario
   O markup e o do formulario de contactos (.form, .input-wrapper,
   .checkbox-wrapper, .row/.col-*), por isso so se acrescenta o que ele nao tem:
   grupos de opcoes, data, ficheiro, titulo, paragrafo, linha divisoria e download.
   ------------------------------------------------------------------------------ */
.template-module.module28 .header {
	margin-bottom: 30px;
}
/* nas paginas o cabecalho so tem o titulo; a descricao vem a seguir, como texto */
.template-module.module28 .form-intro {
	margin: -10px 0 30px;
	font-size: 16px;
	font-weight: 300;
}
.template-module.module28 .form-intro p {
	margin: 0 0 10px;
    text-align: center;
}
/* uma palavra que nao cabe (um URL, um email comprido) parte na margem em vez
   de sair pela direita do ecra */
.module28 .header,
.module28 .form-intro,
.module28 .form .form-texto {
	overflow-wrap: break-word;
}
.module28 .form .row {
	align-items: flex-start;
}
.module28 .form .grupo-label {
	margin: 0 0 10px;
	font-size: 16px;
	font-weight: 300;
	color: var(--secondary);
}
.module28 .form .grupo-opcoes .checkbox-wrapper {
	margin: 0;
	gap: 12px 30px;
}
.module28 .form .grupo-opcoes .opcao {
	display: flex;
	align-items: center;
	gap: 10px;
}
/* no painel lateral as caixas sao nowrap (por causa da privacidade): as
   opcoes passam a linha inteira, em vez de partirem o texto */
.side-form .module28 .form .grupo-opcoes .checkbox-wrapper {
	flex-wrap: wrap;
}
/* lista obrigatoria: a seta vem de uma regra do glossario sem ambito
   (left:0; right:0; margin:auto) e ficava ao centro. Mesmo sitio que a seta
   das listas opcionais (div.reset: right 22px, 10x5). */
.module28 .form .custom-select:not(.has-reset) .placeholder::before {
	left: auto;
	right: 22px;
	width: 10px;
	height: 5px;
	margin: auto 0;
}
/* escolha unica: caixa redonda com um ponto (o site usa o mesmo visto das caixas) */
.module28 .form .grupo-opcoes input[type="radio"] + label {
	border-radius: 50%;
}
.module28 .form .grupo-opcoes input[type="radio"] + label::before {
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: var(--primary);
}
/* listas: o texto de partida como as etiquetas dos campos (16px/300 e, ate
   768px, 14px escuro); o .custom-select .placeholder do site usa 16px normal,
   e 13px nas listas opcionais em telemovel */
.module28 .form .custom-select .placeholder {
	font-size: 16px;
	font-weight: 300;
}
@media (max-width: 768px) {
	.module28 .form .custom-select .placeholder {
		font-size: 14px;
	}
	/* .opcao .opcao-texto: a regra base de .opcao-texto vem depois no ficheiro */
	.module28 .form .custom-select:not(.isSelected) .placeholder,
	.module28 .form .grupo-label,
	.module28 .form .grupo-opcoes .opcao .opcao-texto {
		color: rgb(33, 33, 33);
	}
	.module28 .form .grupo-label,
	.module28 .form .grupo-opcoes .opcao .opcao-texto {
		font-size: 14px;
	}
}
/* a regra geral "label" (etiqueta flutuante dos campos) poe top/left em todas,
   e pointer-events: none: com o input escondido (display none), sem isto nao
   havia onde clicar. O site so devolve o clique a caixa da privacidade (.privacy) */
.module28 .form .grupo-opcoes .opcao > label {
	top: auto;
	left: auto;
	pointer-events: auto;
	cursor: pointer;
}
.module28 .form .grupo-opcoes .opcao-texto {
	position: static;
	transform: none;
	width: auto;
	height: auto;
	border: 0;
	background: none;
	font-size: 15px;
	font-weight: 300;
	color: var(--secondary);
	cursor: pointer;
}
.module28 .form .grupo-opcoes .opcao-texto::before,
.module28 .form .grupo-opcoes .opcao-texto::after {
	content: none;
}
/* data e ficheiro: o campo nunca esta "vazio" (o browser desenha a mascara
   dd/mm/aaaa ou o botao), por isso a etiqueta fica sempre em cima, no rebordo */
.module28 .form .input-wrapper.data label,
.module28 .form .input-wrapper.ficheiro label {
	padding: 0 5px;
	font-size: 11px;
	color: var(--primary);
	transform: translateY(-1px);
	line-height: 1;
}
.module28 .form .input-wrapper.data input {
	min-height: 54px;
	cursor: pointer;
}
.module28 .form .input-wrapper.ficheiro input[type="file"] {
	min-height: 54px;
	padding: 10px 14px;
	font-size: 14px;
	cursor: pointer;
}
.module28 .form .input-wrapper.ficheiro input[type="file"]::file-selector-button {
	margin-right: 14px;
	padding: 6px 14px;
	border: 0;
	border-radius: 20px;
	background-color: var(--primary);
	color: #fff;
	cursor: pointer;
}
.module28 .form .form-titulo {
	margin: 10px 0 0;
	padding-bottom: 8px;
	border-bottom: 1px solid #e9e9e9;
	font-size: 20px;
}
/* linha divisoria: o traco do titulo; o hr do bootstrap trazia cor e opacidade */
.module28 .form .form-divisor {
	height: 0;
	margin: 10px 0;
	border: 0;
	border-top: 1px solid #e9e9e9;
	background: none;
	opacity: 1;
}
.module28 .form .form-texto {
	margin: 0;
	font-size: 14px;
	font-weight: 300;
	color: var(--secondary);
}
.module28 .form .download {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--primary);
	font-weight: 500;
	text-decoration: underline;
}
.module28 .form .download::before {
	content: "\f019";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
}
.module28 .form .checkbox-wrapper.privacidade {
	margin-bottom: 0;
	align-items: center;
}
.module28 .form .checkbox-wrapper.privacidade p {
	margin: 0;
}
.module28 .form .envio {
	text-align: center;
}
/* o Formulario Lateral (painel do botao do topo) mantem o espacamento do
   antigo formulario fixo do painel */
.side-form .module28 .form .row {
	row-gap: 24px;
}
.side-form .module28 .form .checkbox-wrapper.privacidade {
	margin-bottom: 10px;
}
.module28 .form .envio .warning {
	position: static;
	height: auto;
	margin-top: 10px;
}
/* ancora #formulario-<id> (link "Abrir num separador" do construtor): o
   cabecalho do site e fixo e tapava o inicio do formulario */
.module28[id^="formulario-"] {
	scroll-margin-top: 120px;
}

/* ==============================================================================
   6. LISTAGENS
   origem: listings.css
   ============================================================================== */

:is(.content .template, .index main) * + .listing {
	margin-top: 40px;
}

:is(.content .template, .index main) .listing + .listing {
	margin-top: 40px;
}

:is(.content .template, .index main) .listing:first-child {
	margin-top: 0 !important;
}
:is(.content .template, .index main) .listing:last-child {
	margin-bottom: 0 !important;
}

/************************************/
/********** LISTING HEADER **********/
/************************************/

.listing .header {
	margin-bottom: 26px;
	position: relative;
}
.listing.listing-button .header {
	margin-bottom: 27px;
}
.listing .header h2,
.listing .header .h2,
.listing .header h3,
.listing .header .h3
.listing .header h4,
.listing .header .h4 {
	margin: 0;
	flex: 1;
	color: var(--secondary);
	font-size: 36px;
	font-weight: normal;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.28;
	letter-spacing: normal;
	text-align: left;
}

.listing-button .header h2,
.listing-button .header .h2,
.listing-button .header h3,
.listing-button .header .h3
.listing-button .header h4,
.listing-button .header .h4{
	color: var(--grey);
}


.header.text-center > *{
	text-align: center !important;
}

.header.text-right > *{
	text-align: right !important;
}


.listing .link {
	margin-top: 10px;
}

.listing .accordion {
    background-color: white;
    box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.04);
    border: none;
}

.glossary .listing .accordion {
	border-top: 2px solid #f5f5f5;
    box-shadow: none;
}

.glossary .listing .accordion:last-of-type {
	border-bottom: 2px solid #f5f5f5;

}
.rounded:not(.glossary) .listing:not(.tabs) .accordion {
    border-radius: 30px;
    padding-bottom: 3px;
}

.listing .accordion + .accordion {
    margin-top: 9px;
}

.contacts .listing.module20 .items > .items {
	border-top: 2px solid #e5e5e5;
}
.contacts .listing.module20 .items > .items:last-of-type {
	border-bottom: 2px solid #e5e5e5;
}

:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h1,
:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h1,
:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h3,
:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h3,
:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h2,
:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h2,
:is(.template, .index :where(main)) .listing .file > h3,
:is(.template, .index :where(main)) .listing .file > .h3,
:is(.template, .index :where(main)) .listing .file > h2,
:is(.template, .index :where(main)) .listing .file > .h2,
:is(.template, .index :where(main)) .listing .item > h3,
:is(.template, .index :where(main)) .listing .item > .h3,
:is(.template, .index :where(main)) .listing .item > h2,
:is(.template, .index :where(main)) .listing .item > .h2 {
	margin: 0;
	transition: var(--transition);
	-webkit-transition: var(--transition);
	color: var(--secondary);
	font-size: 23.5px;
	font-weight: normal;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.45;
	letter-spacing: normal;
	text-align: left;
}


:is(.template, .index :where(main)) .listing .accordion.open > div:first-of-type > h1,
:is(.template, .index :where(main)) .listing .accordion.open > div:first-of-type > .h1,
:is(.template, .index :where(main)) .listing .accordion.open > div:first-of-type > h3,
:is(.template, .index :where(main)) .listing .accordion.open > div:first-of-type > .h3,
:is(.template, .index :where(main)) .listing .accordion.open > div:first-of-type > h2,
:is(.template, .index :where(main)) .listing .accordion.open > div:first-of-type > .h2,
:is(.template, .index :where(main)) .listing .accordion.active > div:first-of-type > h1,
:is(.template, .index :where(main)) .listing .accordion.active > div:first-of-type > .h1,
:is(.template, .index :where(main)) .listing .accordion.active > div:first-of-type > h3,
:is(.template, .index :where(main)) .listing .accordion.active > div:first-of-type > .h3,
:is(.template, .index :where(main)) .listing .accordion.active > div:first-of-type > h2,
:is(.template, .index :where(main)) .listing .accordion.active > div:first-of-type > .h2 {
	color: 	var(--primary);
}

.listing .load-more {
	margin-top: 50px;
	left: 50%;
	transform: translateX(-50%);
}

.listing .items > *:not(hr) {
	position: relative;
	margin: 0;
}

.listing .items {
	margin-inline: auto;
	justify-content: center;
}

:is(.template, .index :where(main)) .listing .container .items {
	margin-top: 0;
}

/* .template .listing:not(.listing-button) .container .items {
	justify-content: center;
} */

.listing.listing-button.left .items{
	justify-content: left;
}

.listing.listing-button.right .items{
	justify-content: right;
}

@media (max-width: 768px) {
	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h1, 
	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h1, 
	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h3, 
	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h3, 
	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h2, 
	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h2, 
	:is(.template, .index :where(main)) .listing .file > h3, 
	:is(.template, .index :where(main)) .listing .file > .h3, 
	:is(.template, .index :where(main)) .listing .file > h2, 
	:is(.template, .index :where(main)) .listing .file > .h2, 
	:is(.template, .index :where(main)) .listing .item > h3, 
	:is(.template, .index :where(main)) .listing .item > .h3, 
	:is(.template, .index :where(main)) .listing .item > h2, 
	:is(.template, .index :where(main)) .listing .item > .h2 {
		font-size: 19.5px;
		line-height: 1.21;
		letter-spacing: normal;
		letter-spacing: normal;
		padding-right: 0 !important;
	}

	.listing .header h2, .listing .header .h2 {
		font-size: 28px;
		font-weight: 600;
		font-stretch: normal;
		font-style: normal;
		line-height: 1.29;
		text-align: left;
	}

}
@media (min-width: 768px) {
	:is(.content .template, .index main) * + .listing {
		margin-top: 0px;
	}

	:is(.content .template, .index main) .listing + .listing {
		margin-top: 80px;
	}

	.template-module .header,
	.listing .header {
		display: flex;
		align-items: center;
	}

	.listing .link {
		margin-top: 0;
	}
}

/************************************/
/********** LISTING FILTER **********/
/************************************/

.listing .filter {
	margin-bottom: 30px;
	position: relative;
	text-align: center;
	white-space: nowrap;
	font-size: 0;
}
.listing .filter.glossary-filter {
	display: flex;
	flex-wrap: nowrap;
	margin-bottom: 40px;
}

.listing .filter > div {
	font-size: 12px;
	font-weight: 600;
	color: var(--white);
	letter-spacing: 0.02em;
	text-transform: uppercase;
	display: inline-block;
	position: relative;
	padding: 0 10px 10px;
	transition: var(--transition);
	-webkit-transition: var(--transition);
	cursor: pointer;
}
.listing .filter.glossary-filter > div {
	font-size: 19.5px;
	font-weight: 300;
	padding: 0;
	margin-bottom: 1px;
	flex: 1;
	min-width: 27px;
}
.listing .filter > div:hover,
.listing .filter > div.selected,
.listing .filter > div.active {
	color: var(--primary);
}
.listing .filter > div.disabled {
	color: #666;
	pointer-events: none;
}

.listing .filter > div::before,
.listing .filter .line {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 27px;
	height: 3px;
	background-color: rgb(var(--primary));
	transition: all 0.5s ease-in-out;
}
.listing .filter .line.hidden {
	opacity: 0;
}

.listing .filter > div::before {
	content: "";
	right: 0;
	margin: auto;
	opacity: 0;
	transition: var(--transition);
	-webkit-transition: var(--transition);
}
.listing .filter.glossary-filter > div::before {
	width: 100%;
	bottom: -2px;
}
.listing .filter > div.initial::before {
	opacity: 1;
}

@media (max-width: 768px) {
	.listing .filter.glossary-filter {
		overflow: scroll;
	}
}

@media (min-width: 992px) {
	.listing .filter {
		margin-bottom: 60px;
	}

	.listing .filter > div {
		padding: 0 18px 10px;
	}
}

/********** LISTING FILTER FORM **********/

.listing .filter.form {
	padding: 25px 40px;
	background-color: #eeeeee;
	text-align: left;
	overflow: initial;
}

.listing .filter.form > div {
	display: flex;
	padding: 0;
	text-transform: none;
	letter-spacing: normal;
	cursor: default;
}
.listing .filter.form > div::before {
	content: normal;
}

.listing .filter.form .input-wrapper {
	padding: 0;
}
.listing .filter.form .input-wrapper label {
	display: none;
}
.listing .filter.form input,
.listing .filter.form .custom-select {
	font-size: 14px;
	background-color: white;
}
.listing .filter.form input,
.listing .filter.form select,
.listing .filter.form .custom-select .placeholder {
	padding: 15px 20px;
	border: none;
}
.listing .filter.form .custom-select .options-wrapper {
	border: none;
}
.listing .filter.form select,
.listing .filter.form .custom-select .placeholder {
	line-height: 1.25;
}
.listing .filter.form input {
	padding-right: 53px;
}
.listing .filter.form .custom-select:not(.has-reset) .placeholder::before,
.listing .filter.form .custom-select.has-reset .placeholder > div.reset {
	right: 20px;
}

.listing .filter.form [submit] {
	position: absolute;
	width: 49px;
	height: 49px;
	right: 0;
}
/* .listing .filter.form [submit]::before {
	content: "";
	width: 15px;
	height: 15px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background-color: var(--black);
	-webkit-mask-image: url(/bluesky/assets/img/searchBar-icon.svg);
	mask-image: url(/bluesky/assets/img/searchBar-icon.svg);
	-webkit-mask-repeat: no-repeat;
	transition: var(--transition);
} */

/****************************************/
/********** LISTING PAGINATION **********/
/****************************************/

.listing .pagination {
	margin: 60px auto 0;
	width: 100%;
}

.listing .pagination:not(:has( *)) {
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

.listing .pagination ul {
	display: block;
	text-align: center;
	list-style: none;
	font-size: 0;
	padding: 0;
	margin: 0 -7px;
	display: flex;
    justify-content: center;
}
.listing .pagination ul li,
.listing .pagination ul li a {
	font-size: 16px;
	font-weight: normal;
	color: #bdbebe;
	line-height: 1;
	display: inline-block;
	transition: var(--transition);
	position: relative;
}
.listing .pagination ul li.disabled {
	pointer-events: none;
}
.listing .pagination ul li.disabled a {
	opacity: .4;
}
.listing .pagination ul li.prev {
	margin-right: 20px;
}
.listing .pagination ul li.next {
	margin-left: 20px;
}
.listing .pagination ul li::before {
	content: normal;
}

.listing .pagination ul li a,
.listing .pagination ul li.ellipsis {
	padding: 0 7px;
	display: inline-block;
	border: none;
	letter-spacing: normal;
	text-align: center;
}
.paging_footer .pages a.ellipsis {
	padding: 0 7px;
	display: inline-block;
	border: none;
}

.listing .pagination ul li a:hover,
.listing .pagination ul li a:focus,
.listing .pagination ul li.active a {
	color: var(--secondary);
	border-bottom: none;
}

.listing .pagination ul li.prev a:before,
.listing .pagination ul li.next a:before {
	content: "";
    display: inline-block;
	height: 9px;
	width: 16px;
	-webkit-mask-image: url(/bluesky/assets/img/template/arrow-listage.svg);
	mask-image: url(/bluesky/assets/img/template/arrow-listage.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
    mask-size: contain;
    -webkit-mask-size: contain;
	transform: rotate(270deg);
}

.listing .pagination ul li.prev a {
	transform: rotate(180deg);
}

@media (min-width: 768px) {
	.listing .pagination {
		margin: 100px auto 0;
	}
	
}

@media (min-width: 992px) {
	.listing .pagination ul {
		margin: 0;
		padding-left: 0;
		display: flex;
		gap: 0;
		justify-content: center;
	}
	.listing .pagination ul li a,
	.listing .pagination ul li.ellipsis {
		padding: 0 9px;
	}

	.paging_footer .pages a.ellipsis {
		padding: 0 9px;
	}

	.listing .pagination ul li.prev:hover {
		transform: translateX(-5px);
	}
	.listing .pagination ul li.next:hover {
		transform: translateX(5px);
	}

	.listing .pagination ul li.prev a,
	.listing .pagination ul li.next a {
		width: 20px;
		height: 16px;
		padding: 0;
	}
}

/******************************************/
/********** GENERIC ITEM LISTING **********/
/******************************************/

/* .listing .item {
	padding: 15px 0;
} */

.listing .item h3,
.listing .item .h3 {
	flex: 1;
	padding-right: 20px;
}
.listing .item .link {
	margin-top: 10px;
}

@media (min-width: 768px) {
	.listing .item {
		/* padding: 25px 0; */
		display: block;
		/* align-items: center; */
	}

	.listing .item .link {
		margin: 0;
	}
}

/**********************************/
/********** FILE LISTING **********/
/**********************************/

.listing .file {
	padding: 15px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	background-color: transparent;
	border: none;
	position: relative;
}
.listing .file::before{
	content: ' ';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: var(--primary);
    opacity: 0.07;
	transition: var(--transition);
}

.contacts .listing .file::before{
	opacity: 0.1;
}

.listing .file:hover:before{
	opacity: 0.15;
}

.rounded .listing .file::before{
	border-radius: 30px;
}

.listing .file + .file{
	margin-top: 10px;
}

.listing .file .image {
	width: 50px;
    height: 50px;
    background-image: linear-gradient(to left, var(--primary), var(--primary));
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    transition: var(--transition);
    position: relative;
    opacity: 1;
}
/* .listing .file .image img {
	display: block;
    width: 100%;
} */

:is(.template, .index :where(main)) .listing .file a:has(h3){
	max-width: 85%;
    padding-right: 30px;
}

:is(.template, .index :where(main)) .listing .file h3,
:is(.template, .index :where(main)) .listing .file .h3 {
	flex: 1;
	padding: 0 32px;
	font-size: 24px;
	font-weight: normal;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.42;
	letter-spacing: .22px;
	color: var(--grey);

}

.listing .file .link {
	padding-left: 10px;
	margin-top: 10px;
}

:is(.template, .index :where(main)) .listing .file .link {
	font-size: 16px;
	font-weight: 600;
	font-stretch: normal;
	font-style: normal;
	letter-spacing: normal;
	color: var(--white);
	padding-right: 30px;
	position: relative;
}

:is(.template, .index :where(main)) .listing .file .link::after {
	width: 139px;
	height: 50px;
	border-radius: 50px;
	content: "";
	position: absolute;
	display: block;
	mask-repeat: no-repeat;
	background-color: var(--primary);
	transition: var(--transition);
}

:is(.template, .index :where(main)) .listing .file .button {
    padding: 26.5px 26.5px;
}

:is(.template, .index :where(main)) .listing .file .button::after {
	content: "";
	width: 25px;
	height: 19px;
	-webkit-mask-image: url(/bluesky/assets/img/template/bullet.svg);
	mask-image: url(/bluesky/assets/img/template/bullet.svg);
	position: absolute;
	margin: auto;
	left: 0;right: 0;
	bottom: 0;top: 0;
	background-color: var(--white);
	opacity: 1;
	background-image: none;
	mask-repeat: no-repeat;
	transition: var(--transition);
}

:is(.template, .index :where(main)) .listing .file .button::before{
	border-radius: 50%;
}

:is(.template, .index :where(main)) .listing .file:hover .button::before,
:is(.template, .index :where(main)) .listing .file:hover .button::after {
	transform: scale(1);
}
:is(.template, .index :where(main)) .listing .file:hover .button::before {
	transform: scale(1.15);
}

@media (min-width: 768px) {


	.listing .file .link {
		padding-left: 0;
		margin: 0;
	}

	.listing .file .link {
		padding-left: 60px;
	}
	.listing .file {
		padding: 36px 42px;
	}

	.listing .file .image {
		width: 50px;
        justify-content: center;
        display: flex;	
	}

	:is(.template, .index :where(main)) .listing .file .button {
		padding: 27.5px 27.5px;
		margin-left: auto;
	}
	
}

@media (max-width: 768px) {

	.listing .file {
		flex-wrap: nowrap;
		flex-direction: row;
		gap: 15px;
		padding: 28px 21px 25px 20px;
		align-items: flex-start;
	}

	:is(.template, .index :where(main)) .listing .file a:has(h3), 
	:is(.template, .index :where(main)) .listing .file a:has(.h3) {
		margin-right: auto;
	}

	:is(.template, .index :where(main)) .listing .file h3, 
	:is(.template, .index :where(main)) .listing .file .h3 {
		padding: 0;
		font-size: 20px;
		line-height: 26px;
		letter-spacing: normal;
		margin-top: 0;
		padding-right: 0;
	}
	:is(.template, .index :where(main)) .listing .file a:has(h3){
		padding-right: 0;
	}
	.listing .file .image {
		width: 30px;
		height: 30px;
		-webkit-mask-size: contain;
		mask-size: contain;
		-webkit-mask-position: center;
		mask-position: center;
		}
	
	:is(.template, .index :where(main)) .listing .file .button {
		display: none;
	}
}


/***************************************/
/********** ACCORDION LISTING **********/
/***************************************/

.listing {
	counter-reset: accordion;
}

.listing .accordion.numbered {
	counter-increment: accordion;
}

.listing .accordion > div {
	position: relative;
    padding: 20px 25px;
	padding-right: 45px;
	cursor: default;
	pointer-events: none;
	transition: var(--transition);
	-webkit-transition: var(--transition);
}

.listing .accordion{
	cursor: default;
	pointer-events: none;
}

.listing .accordion:has( .description),
.listing .accordion:has( .description) > div{
	cursor: pointer;
	pointer-events: all;
}

.listing .accordion.numbered > div {
	padding-left: 30px;
}
.listing .accordion.numbered > div:first-child::before {
	content: counter(accordion) ".";
	font-size: 16px;
	font-weight: 600;
	color: rgb(var(--primary));
	line-height: 1em;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	height: 1em;
	width: 1em;
	margin: auto;
}

:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h1,
:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h1,
:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h3,
:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h3,
:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h2,
:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h2 {
	padding-right: 65px;
    max-width: 100%;
	pointer-events: none;
}

@media(min-width:768px){
	:is(.template, .index :where(main)) .listing .accordion:hover > div:first-of-type > *:first-of-type{
		color: var(--primary);
	}
	:is(.template, .index :where(main)) .listing .accordion:hover > div:first-of-type > .toggle{
		transform: scale(1.15);
	}
}



.listing .accordion .toggle {
	height: 26px;
	width: 26px;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	transition: var(--transition);
	-webkit-transition: var(--transition);
	pointer-events: none;
}

.listing .accordion .toggle:hover,
.listing .accordion .toggle:focus {
	transform: rotate(90deg);
}
.listing .accordion.open .toggle:hover,
.listing .accordion.epen .toggle:focus {
	transform: rotate(0);
}
.listing .accordion .toggle::before,
.listing .accordion .toggle::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	height: 2px;
	width: 100%;
	border-radius: 1.5px;
	background-color: var(--primary);
	transition: var(--transition);
	-webkit-transition: var(--transition);
}
.listing .accordion .toggle::after {
	transform: rotate(90deg);
}
.listing .accordion.active .toggle{
	pointer-events: none;
	opacity: 0;
}
.listing .accordion.open .toggle::after,
.listing .accordion.active .toggle::after {
	transform: rotate(0deg);
}

.listing .accordion .description,
.glossary .listing .accordion .description {
	padding: 0;
	max-height: 0;
	overflow: hidden;
	transition: var(--transition);
	cursor: default;
	opacity: 0;
}

.listing .accordion.active .description,
.listing .accordion.open .description {
	opacity: 1;
}
.listing .accordion.active .description{
	overflow: visible;
}

.listing .accordion .description .listing,
.listing .accordion .description .template-module {
	margin: 25px 0 50px;
}

.listing .accordion .description .template-module p:first-of-type{
	margin-top: 0;
}

.listing .accordion .description ul li::before {
    content: "";
    display: inline-block;
    height: 16px;
    width: 1.25rem;
    margin-left: -1.9em;
    margin-right: 1rem;
    -webkit-mask-image: url(/bluesky/assets/img/template/bullet.svg);
    mask-image: url(/bluesky/assets/img/template/bullet.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
}

.listing .accordion.numbered .description {
	padding-left: 0;
}
.listing .accordion.active .description {
	max-height: none;
}


.listing .accordion .description > *:first-child {
	margin-top: 5px !important;
}
.listing .accordion .description > *:last-child {
	margin-bottom: 30px !important;
}

.listing .accordion .description .header p.h2 {
    font-size: 20px;
    line-height: 1.5;
    letter-spacing: normal;
    text-align: left;
}

@media (min-width: 768px) {
	.listing .accordion .toggle {
		height: 34px;
		width: 34px;
	}
	.glossary .listing .accordion > div {
		padding: 29px 0 28px;
	}
	.listing .accordion > div {
		padding: 42px 50px;
	}
	.listing .accordion.numbered > div,
	.listing .accordion.numbered .description {
		padding-left: 40px;
	}


	.listing .accordion .description > *:first-child {
		margin-top: 0 !important;
	}
	.listing .accordion .description > *:last-child {
		margin-bottom: 47px !important;
	}

	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h1,
	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h1,
	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h3,
	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h3,
	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h2,
	:is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h2 {
		padding-right: 110px;
	}
}



/********************************/
/*********** GLOSSARY ***********/
/********************************/

.glossary .content .template .container {
    max-width: 1020px;
}

.listing-faq .item .description .container,
.glossary .content .template .description .container {
    padding-inline: 0;
}

.glossary .content .input-wrapper.select-wrapper {
    max-width: 303px;
    margin: auto;
}

.glossary .content .input-wrapper .placeholder {
    border: solid 2px #f0f0f0;
    padding: 14.5px 22px;
    border-radius: 0px;
	font-size: 16px;
	font-weight: 300;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.38;
	letter-spacing: normal;
	text-align: left;
	color: var(--secondary);
}

.rounded.glossary .content .input-wrapper .placeholder{
	border-radius: 27.5px;
}

.glossary .content .input-wrapper .isSelected .placeholder{
	border: solid 2px var(--primary);
}

:is(.content, .index :where(main)) .custom-select.has-reset:not(.isSelected) .placeholder > div.reset {
    right: 22px;
	width: 10px;
    height: 5px;
	top: 0;
	bottom: 0;
}

.custom-select:not(.has-reset) .placeholder::before,
:is(.content, .index :where(main)) .custom-select.has-reset:not(.isSelected) .placeholder > div.reset::before{
	content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-mask-image: url(/bluesky/assets/img/svg/arrow-glossary.svg);
    mask-image: url(/bluesky/assets/img/svg/arrow-glossary.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
    background-color: var(--secondary);
	transition: var(--transition);
	width: 10px;
    height: 5px;
	transform: rotate(0deg);
}
:is(.content, .index :where(main)) .custom-select.has-reset:not(.isSelected) .placeholder > div.reset::after {
	content: none;
}

.glossary .content .custom-select .options-wrapper {
    padding: 20px 22px 20px;
	font-weight: 300;
    border-left:1px solid rgba(0,0,0,0.2);
    border-right: 1px solid rgba(0,0,0,0.2);;
    border-bottom: 1px solid rgba(0,0,0,0.2);;
    text-transform: none;
    top: 37px;
    text-align: left;
	display: flex;
}

.rounded .glossary :is(.content, .index :where(main)) .custom-select .options-wrapper{
	border-bottom-left-radius: 27.5px;
	border-bottom-right-radius: 27.5px;
}

.listing .custom-select.open .placeholder{
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

/* .content .custom-select.has-reset.isSelected .placeholder > div.reset::after,
.content .custom-select.has-reset.isSelected .placeholder > div.reset::before {
    top: 0;
} */


.glossary .listing .filter.glossary-filter {
    overflow-y: hidden;
    overflow-x: hidden;
    margin-bottom: 38px;
}

.glossary .listing .filter.glossary-filter > div {
    font-size: 18.5px;
    font-weight: normal;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.49;
    letter-spacing: normal;
    text-align: center;
    color: var(--secondary);
    padding-bottom: 5px;
    border: 0;
}

.glossary .listing .filter.glossary-filter > div.disabled {
    color: var(--secondary);
    pointer-events: none;
    opacity: .1;
}

.glossary .listing .filter.glossary-filter > div.selected {
    color: var(--primary);
}

.glossary .listing .filter.glossary-filter {
    margin-top: 68px;
}


@media (min-width: 768px) {

    .filter.glossary-filter{
        max-width: 1020px;
        position: relative;
        width: 100%;
        padding: 0 50px;
        margin: auto;
    }

}

@media (max-width: 768px) {

    .content.glossary .template {
        margin-top: 30px;
    }
    .glossary .listing .filter.glossary-filter {
        overflow-x: scroll;
        margin-top: 40px;
        margin-bottom: 25px;
        gap: 7px;
        padding-inline: 20px;
		scrollbar-width: none
    }
    .glossary .listing .filter.glossary-filter > div {
        font-size: 16px;
        line-height: 1;
    }

	.glossary .listing .filter.glossary-filter::-webkit-scrollbar {
		display: none;
	}

    .glossary .content .template .container{
        padding-inline: 20px;
    }

	.glossary .content .input-wrapper .placeholder {
		padding: 8px 22px;
		border-radius: 20px;
		font-size: 14px;
		line-height: 1.43;
	}

	.glossary .listing .template-module.module12 {
		margin-inline: -20px;
	}

}


/*************************************/
/********** ARTICLE LISTING **********/
/*************************************/

.listing.listing-article .items.row {
	margin: -30px -20px;
}

.listing .article {
	padding: 30px 20px;
}

.listing .article img {
	display: block;
	margin-bottom: 35px;
}

.listing .article .button {
	font-size: 12px;
	padding: 17px 35px;
}

.listing .article .details {
	margin-bottom: 20px;
}
.article .details span {
	display: block;
	font-size: 14px;
	color: #b6b9b9;
	line-height: 1.25;
}
.article .details span.date {
	padding-left: 20px;
	padding-bottom: 12px;
	position: relative;
}
.article .details span.date::before {
	content: "\f073";
	font-weight: 400;
	color: var(--black);
	position: absolute;
	left: 0;
}

.article .details span a {
	color: rgb(var(--primary));
	border-bottom: 1px solid transparent;
}
/* .article .details span a:hover, .article span a:focus {
	border-bottom: 1px solid currentColor;
} */

@media (min-width: 768px) {
	.listing.listing-article .items.row {
		margin: -40px -30px;
	}

	.listing .article {
		padding: 40px 30px;
	}

	.article .details span.date {
		padding-left: 25px;
	}
}

@media (min-width: 992px) {
	.listing .article .button {
		padding: 17px 45px;
	}
}

/******************************************/
/********** MINI ARTICLE LISTING **********/
/******************************************/

.listing.listing-mini-article .items.row,
.listing.listing-mini-article .container.container-sm .items.row {
	margin: -15px;
}
.listing .article.mini-article,
.listing .container.container-sm .article.mini-article {
	padding: 15px;
}

.listing .article.mini-article img {
	margin-bottom: 20px;
}
.listing .article.mini-article h2,
.listing .article.mini-article .h2 {
	font-size: 1.875rem;
	margin-top: 15px;
}

.listing .article.mini-article .video {
	position: relative;
	display: block;
}
.listing .article.mini-article .video::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(1, 1, 1, 0.4);
}
.listing .article.mini-article .video::after {
	content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-mask-image: url(/bluesky/assets/img/template/play.svg);
    mask-image: url(/bluesky/assets/img/template/play.svg);
    background-color: white;
    opacity: 0.8;
}
.listing .article.mini-article .video:hover::after {
	opacity: 1;
}

.listing .article.mini-article .details {
	margin-bottom: 15px;
}
.listing .article.mini-article .details span {
	padding-bottom: 0;
	padding-top: 0;
}
.listing .article.mini-article .details span:not(:first-child) {
	padding-top: 12px;
}

@media (min-width: 768px) {
	.listing .article.mini-article h2,
	.listing .article.mini-article .h2 {
		font-size: 1.375rem;
	}
}

@media (min-width: 992px) {
	.listing.listing-mini-article .items.row {
		margin: -34px;
	}
	.listing.listing-mini-article .container.container-sm .items.row {
		margin: -25px;
	}
	.listing .article.mini-article {
		padding: 34px;
	}
	.listing .container.container-sm .article.mini-article {
		padding: 25px;
	}
}

/************************************/
/********** BUTTON LISTING **********/
/************************************/

/* .listing.listing-button h3 {
	font-size: 2.375rem;
	font-weight: 300;
	font-stretch: normal;
	font-style: normal;
	line-height: 0.76;
	letter-spacing: normal;
	text-align: left;
	color: var(--black-3);
} */

.listing.listing-button .items {
	font-size: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.listing.listing-button .button {
	padding: 17px 31px 16.5px;
}

.listing.listing-button .items.text-left {
	justify-content: flex-start;
}

.listing.listing-button.center .items,
.listing.listing-button .items.text-center {
	justify-content: center;
}

.listing.listing-button.right .items,
.listing.listing-button .items.text-right {
	justify-content: flex-end;
}

@media (max-width: 768px) {
	.listing.listing-button h3 {
		font-size: 1.75rem;
		line-height: 1.14;
	}

	.listing.listing-button .button {
		font-size: 14px;
        padding: 10px 20px;
        line-height: 1.43;
		letter-spacing: normal;
	}

	.listing.listing-button .items {
		gap: 9px;
	}
}

/*************************************************/
/********** ITEM WITH THUMBNAIL LISTING **********/
/*************************************************/

.listing .image-item {
	padding: 20px 0;
	display: flex;
	flex-wrap: wrap;
}
.listing .image-item:first-child {
	padding-top: 0;
}
.listing .image-item:last-child {
	padding-bottom: 0;
}

.listing .image-item .image {
	width: 90px;
	height: 90px;
	position: relative;
	margin-right: 20px;
}
.listing .image-item .image img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 100%;
	max-height: 100%;
}

.listing .image-item > div:not(.image) {
	flex: 1;
}

@media (min-width: 768px) {
	.listing .image-item {
		padding: 35px 0;
	}

	.listing .image-item .image {
		margin-right: 75px;
	}
}

/*************************************************************/
/********** MINI ARTICLE LISTING (FULLSCREEN VIDEO) **********/
/*************************************************************/

.listing.listing-mini-article .video-fullscreen {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(1, 1, 1, 0.9);
	z-index: 10;
	opacity: 0;
	pointer-events: none;
	transition: var(--transition);
}
.listing.listing-mini-article .video-fullscreen.visible {
	opacity: 1;
	pointer-events: auto;
}

.listing.listing-mini-article .video-fullscreen div {
	padding-top: 80px;
	height: 100%;
	width: 100%;
}
.listing.listing-mini-article .video-fullscreen div iframe {
	height: 100%;
	width: 100%;
}

.listing.listing-mini-article .video-fullscreen .close,
.hp-gallery.hp-gallery-fullscreen .close {
	position: absolute;
	top: 25px;
	right: 25px;
	height: 25px;
	width: 25px;
	opacity: 1;
}
.listing.listing-mini-article .video-fullscreen .close::before,
.video-fullscreen .close::after,
.hp-gallery.hp-gallery-fullscreen .close::before,
.hp-gallery.hp-gallery-fullscreen .close::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 2px;
	width: 35px;
	background-color: white;
	transform: rotate(45deg);
	transform-origin: left;
}
.listing.listing-mini-article .video-fullscreen .close::after,
.hp-gallery.hp-gallery-fullscreen .close::after {
	left: auto;
	right: 0;
	transform: rotate(-45deg);
	transform-origin: right;
}

@media (min-width: 992px) {
	.listing.listing-mini-article .video-fullscreen div {
		padding: 100px;
	}

	.listing.listing-mini-article .video-fullscreen .close,
	.hp-gallery.hp-gallery-fullscreen .close {
		top: 35px;
		right: 35px;
	}
}

/************************************/
/********** SQUARE LISTING **********/
/************************************/

.listing.listing-square .items.row {
	margin: -20px;
}
.listing .square {
	padding: 20px;
}

.listing .square .image {
	padding-top: 100%;
	position: relative;
	display: block;
	overflow: hidden;
}
.listing .square .image img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 100%;
	max-height: 100%;
}

@supports (mix-blend-mode: multiply) {
	.listing .square .image img {
		filter: grayscale(1);
		filter: grayscale(100%);
		transition: var(--transition);
		-webkit-transition: var(--transition);
	}
	.listing .square .image:hover img,
	.listing .square .image:focus img {
		filter: grayscale(0);
		filter: grayscale(0%);
	}
}

@media (max-width: 767px) and (orientation: landscape) {
	.listing .square {
		flex-basis: 50%;
		max-width: 50%;
	}
}

@media (min-width: 768px) {
	.listing.listing-square .items.row {
		margin: -15px;
	}
	.listing .square {
		padding: 15px;
	}
}

@media (min-width: 992px) {
	.listing.listing-square .items.row {
		margin: -25px;
	}
	.listing .square {
		padding: 25px;
	}
}

/**********************************/
/********** CARD LISTING **********/
/**********************************/

.listing .items .card-section {
	margin-inline: auto;
	gap: 50px;
}

.listing .items .card-section + .card-section {
	margin-top: 70px;
}

.listing.listing-card .items.row {
	margin: -10px;
}

.listing .card .image {
	padding-top: 150%;
	position: relative;
	display: block;
	overflow: hidden;
}
.listing .card .image img {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	/* IE */
	transform: translate(-50%, -50%);
	width: auto;
	max-width: none;
}

:is(.content, .index :where(main)) .listing .items .card > a:first-of-type {
	overflow: hidden;
	display: block;
}

:is(.content, .index :where(main)) .listing .items img {
	display: block;
	max-width: 100%;
	width: 100%;
	height: initial;
	/* transition: var(--transition); */
}

:is(.content, .index :where(main)) .listing .items img:hover {
	/* transform: scale(1.1); */
}

.listing .card .description {
	padding: 28px 30px;
	background-color: white;
	text-align: center;
}

.listing .card .description p {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: 1px;
	color: black;
	margin: 0;
	line-height: 1.2;
}

.listing .card .description p:hover {
	opacity: 0.7;
}
.listing .card .description span {
	font-size: 1rem;
	font-weight: 300;
	color: var(--grey);
	margin: 0;
	display: block;
}

@supports (mix-blend-mode: multiply) {
	.listing .card .image img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transform: none;
		top: 0;
		left: 0;
	}
}

@media (max-width: 767px) and (orientation: landscape) {
	.listing .card > div {
		flex-basis: 50%;
		max-width: 50%;
	}
}

@media(min-width:992px){
	.cards-module .listing .items > .col-lg-4 {
		flex: 1 1 calc(31% - (var(--gap-h) * 0.31));
		max-width: calc(31% - (var(--gap-h) * 0.31));
	}
}

/***********************************/
/********** AUDIO LISTING **********/
/***********************************/

.listing .audio {
	margin: 0 -20px;
	padding: 20px;
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	background-color: white;
}
.listing .audio audio {
	display: none;
}

.listing .audio + .audio {
	margin-top: 30px;
}

.listing .audio .play,
.listing .audio .pause {
	max-width: 42px;
	min-width: 42px;
}
.listing .audio .play a,
.listing .audio .pause a {
	display: block;
	position: relative;
	width: 100%;
	height: 0;
	padding-top: calc(100% - 4px);
	border: 2px solid rgb(var(--primary));
	border-radius: 100%;
}
.listing .audio .play a::before,
.listing .audio .pause a::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.listing .audio .play a::before {
	border-left: 12px solid rgb(var(--primary));
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	width: 0;
	height: 0;
}
.listing .audio .pause a::before {
	border-left: 3px solid rgb(var(--primary));
	border-right: 3px solid rgb(var(--primary));
	width: 14px;
	height: 14px;
}

.listing .audio .audio-progress {
	min-width: 100%;
	max-width: 100%;
	display: flex;
	align-items: center;
	margin-top: 25px;
}
.listing .audio span {
	display: block;
	position: relative;
	font-size: 10px;
	line-height: 1;
	color: var(--grey);
}

.listing .audio .bar {
	position: relative;
	margin: 0 12px;
	flex: 1;
	max-width: 100%;
	height: 4px;
	border-radius: 2px;
	background-color: var(--white);
	cursor: pointer;
}
.listing .audio .bar > span {
	position: absolute;
	top: 0;
	bottom: 0;
	background-color: rgb(var(--primary));
	width: 0;
	border-radius: inherit;
}
.listing .audio .bar > span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(50%, -50%);
	width: 8px;
	height: 8px;
	border-radius: 100%;
	background-color: inherit;
	pointer-events: none;
}

.listing .audio h4,
.listing .audio .h4 {
	flex: 1;
	padding-left: 20px;
	margin: 0;
	min-width: calc(100% - 42px);
}

@media (min-width: 768px) {
	.listing .audio {
		align-items: center;
	}

	.listing .audio h4,
	.listing .audio .h4 {
		min-width: auto;
	}

	.listing .audio .link {
		padding-left: 0;
		margin-top: 0;
	}

	.listing .audio .audio-progress {
		padding-left: 62px;
	}
}

@media (min-width: 992px) {
	.listing .audio h4,
	.listing .audio .h4 {
		padding-left: 40px;
	}

	.listing .audio {
		padding: 30px;
		margin: 0 -30px;
	}

	.listing .audio .audio-progress {
		padding-left: 82px;
	}
}

/* if using not <hr> uncomment the code below */

.listing.module20 .image-item {
	padding: 40px 0;
}

.listing.module20 .items > .items{
	border-top: 2px solid #f5f5f5;
}

.listing.module20 .items > .items:last-of-type {
	border-bottom: 2px solid #f5f5f5;
}

.listing.module20 .image-item > div {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 70px;
}

.listing.module20 .image-item > div h2:first-child,
.listing.module20 .image-item > div h3:first-child,
.listing.module20 .image-item > div h4:first-child{
	margin-bottom: .7em;
}

.listing.module20 .image-item > div.bottom {
	flex-direction: column;
	gap: 20px;
	align-items: baseline;
}

.listing.module20 .image-item > div.bottom p {
	max-width: unset;
}

.listing.module20 .image-item > div.bottom a.button {
	margin-top: 0;
}

.listing.module20 .image-item > div > div > p:first-of-type {
	margin: 0;
}

.listing.module20 .image-item > div > div *:last-child {
	margin-bottom: 0;
}

.listing.module20 .image-item.icon .image,
.listing.module20 .image-item .image {
	width: 135px;
	height: 135px;
	margin-right: 40px;
	transition: var(--transition);
	justify-content: center;
}




.listing.module20 .image-item .image a{
	height: 100%;
}

.listing.module20 .image-item .image:has(a) img {
	transition: var(--transition);
}

/* .listing.module20 .image-item .image:has(a) img:hover {
	transform: scale(1.05);
} */

.listing.module20 .image-item .image img {
	position: relative;
	object-fit: contain;
}

.listing.module20 .image-item .image a:has(img),
.listing.module20 .image-item .image img{
	border-radius: 0;
	overflow: hidden;
}

.listing.module20 .image-item.round-corners .image a:has(img),
.listing.module20 .image-item.round-corners .image img {
    border-radius: 30px;
	transition: var(--transition);
}

.listing.module20 .image-item .image a:hover img,
.listing.module20 .image-item.circle .image a:hover img,
.listing.module20 .image-item.round-corners .image a:hover img,
.listing.module20 .image-item.number .image a:hover,
.listing.module20 .image-item.bullet .image a:hover {
	transform: scale(1.05);
}

.listing.module20 .image-item.circle .image a:has(img),
.listing.module20 .image-item.circle .image img {
    border-radius: 100%;
}

.listing.module20 .image-item a.button {
	margin-block: auto;
    white-space: nowrap;
	text-align: center;
	margin: 0;
	margin-top: 32px;
}

.listing.module20 .image-item.number a.button,
.listing.module20 .image-item.bullet a.button {
	margin-top: 39px;
}

.listing.module20 .image-item.icon .image,
.listing.module20 .image-item.number .image,
.listing.module20 .image-item.bullet .image{
	justify-content: flex-start;
	width: 100px;
	height: 100px;
}

.listing.module20 .image-item.icon .image > div,
.listing.module20 .image-item.number .image > div,
.listing.module20 .image-item.bullet .image > div{
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 100px;
	height: 100px;
}

.listing.module20 .image-item.number a:not(.button),
.listing.module20 .image-item.bullet a:not(.button){
	align-items: center;
}


.listing.module20 .image-item.number .image span {
    font-size: 44.5px;
  	font-weight: 800;
    color: var(--primary);
    position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
    justify-content: center;
    align-items: center;
	height: 100%;
	line-height: 0;
	width: 100%;
    margin: auto;
}

/* .listing.module20 .image-item.icon .image::before, */
.listing.module20 .image-item.bullet .image > div::before,
.listing.module20 .image-item.number .image > div::before {
	content:"";
	background: var(--primary);
	opacity: .15;
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	border-radius: 100%;
	
}

/* .listing.module20 .image-item.icon .image{
	padding: 20px;
} */

.listing.module20 .image-item.icon .image > .icon{
	-webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
	background-color: var(--primary);
	display: block;
	width: 100%;
	height: 100%;
	mask-position: center;

}


.listing.module20 .image-item.number .image a,
.listing.module20 .image-item.bullet .image a{
	width: 100%;
	justify-content: center;
}

.listing.module20 .image-item.bullet .image span{
	width: 44px;
}

.listing.module20 .image-item.bullet .image span::before {
	content: "";
	width: 37px;
	height: 33px;
	-webkit-mask-image: url(/bluesky/assets/img/template/arrow_miniatura.svg);
	mask-image: url(/bluesky/assets/img/template/arrow_miniatura.svg);
	position: absolute;
	margin: auto;
	left: 0;right: 0;
	bottom: 0;top: 0;
	background-color: var(--primary);
	opacity: 1;
	background-image: none;
	mask-repeat: no-repeat;
	transition: var(--transition)
}


.listing.module20 + .listing.module20:not(:has(.header)) {
	margin-top: 0;
}

.listing.module20 + .listing.module20:not(:has(.header)) .container > .items > .items:first-of-type {
	border-top: 0;
}

@media(max-width: 992px) {
	.listing.module20 .image-item .image:hover {
		transform: scale(1);
	}

	.listing.module20 .image-item.number .image span{
		font-size: 22px;
		letter-spacing: .55px;
	}
}

.listing .image-item > div:not(.image) > div:not(.button-wrapper) {
    margin-block: auto;
}


@media (min-width: 768px) {
	.listing .image-item > div:not(.image) > div.button-wrapper .button{
		margin-top: 0;
	}

	.listing .image-item > div:not(.image) > div.button-wrapper,
	.listing .image-item > div:not(.bottom) > div.button-wrapper{
		display: flex;
		align-items: center;
	}

	.listing .image-item:has(.image img) > div:not(.image) > div.button-wrapper,
	.listing .image-item:has(.image img) > div:not(.bottom) > div.button-wrapper{
		height: 135px;
	}

	.listing .image-item.bullet > div:not(.bottom) div.button-wrapper,
	.listing .image-item.number > div:not(.bottom) div.button-wrapper{
		height: 100px;
	}

	.listing .image-item.bullet > div.bottom div.button-wrapper,
	.listing .image-item.number > div.bottom div.button-wrapper,
	.listing .image-item:has(.image img) > div.bottom > div.button-wrapper{
		height: inherit;
	}
}


@media (max-width: 768px) {
	.listing.module20 .image-item > div {
		display: flex;
		flex-direction: column;
		gap: 10px;
	}


	.listing.module20 .image-item .image {
		margin-bottom: auto;
		
	}


	

	/* .listing.module20 .image-item > div.bottom {
		align-items: center;
	} */

	.listing.module20 .image-item:not(.bullet,.number){
		flex-direction: column;
	}

	.listing.module20 .image-item:not(.bullet,.number) > div.bottom .button,
	.listing.module20 .image-item:not(.bullet,.number) .image{
		margin: auto;
	}

		
	.listing.module20 .image-item .image:has(a) {
		overflow: visible;
        width: 135px;
        height: 135px;
	}

	.listing.module20 .image-item a.button,
	.listing.module20 .image-item.number a.button,
	.listing.module20 .image-item.bullet a.button {
		margin-top: 10px;
		display: block;
		width: 100%;
	}

	.listing.module20 .image-item:not(.bullet,.number,:has(img)){
		align-items: flex-start;
	}

	.listing.module20 .image-item.number,
	.listing.module20 .image-item.bullet{
		gap: 20px;
		padding: 30px 0;	
	}

	.listing.module20 .image-item.bullet .image span::before {
		content: "";
		width: 26px;
		height: 19px;
	}

	.listing.module20 .image-item.number .image:has(a),
	.listing.module20 .image-item.bullet .image:has(a),
	.listing.module20 .image-item.number .image,
	.listing.module20 .image-item.bullet .image,
	.listing.module20 .image-item.number .image > div,
	.listing.module20 .image-item.bullet .image > div {
        width: 50px;
        height: 50px;
	}


}

@media (max-width: 480px) {
	.listing.module20 .image-item .image {
		margin: 0;
	}

	.listing.module20 .image-item {
		gap: 20px;
		padding: 30px 0;
	}



}

/* =========================================================================
   ACCORDIONS UNIFICADOS — TABS & FAQs
   ---------------------------------------------------------------------
   Aplica o mesmo estilo de accordion (definido para .faq .listing-faq em
   estilos.css e replicado em hp/hp_faqs.css) a:
     - Modulo Tabs (tipo 13) modo manual           -> .listing.listing-tabs
     - Modulo Tabs (tipo 13) modo FAQs             -> .listing.listing-faq
     - Seccao HP Tabs (tipo 10) modo manual        -> .tabs.listing
     - (As regras especificas .faq .listing-faq e .hp-faqs .listing-faq
       continuam a vencer por especificidade quando aplicaveis.)
   ========================================================================= */

.listing.listing-tabs .accordion,
.listing.listing-faq .accordion,
section.tabs.listing .accordion {
	background-color: white;
	box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.04);
	border: none;
}

.listing.listing-tabs .accordion + .accordion,
.listing.listing-faq .accordion + .accordion,
section.tabs.listing .accordion + .accordion {
	margin-top: 9px;
}

.rounded .listing.listing-tabs .accordion,
.rounded .listing.listing-faq .accordion {
	border-radius: 30px;
	padding-bottom: 3px;
	overflow: hidden;
}

.listing.listing-tabs .accordion > div:first-of-type > .h3,
.listing.listing-tabs .accordion > div:first-of-type > h3,
.listing.listing-faq .accordion > div:first-of-type > .h3,
.listing.listing-faq .accordion > div:first-of-type > h3,
section.tabs.listing .accordion > div:first-of-type > .h3,
section.tabs.listing .accordion > div:first-of-type > h3 {
	font-size: 20.5px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: normal;
	text-align: left;
	color: var(--secondary);
	margin: 0;
	transition: var(--transition);
	-webkit-transition: var(--transition);
	text-transform: none;
}

.listing.listing-tabs .accordion.open > div:first-of-type > .h3,
.listing.listing-tabs .accordion.open > div:first-of-type > h3,
.listing.listing-faq .accordion.open > div:first-of-type > .h3,
.listing.listing-faq .accordion.open > div:first-of-type > h3,
section.tabs.listing .accordion.open > div:first-of-type > .h3,
section.tabs.listing .accordion.open > div:first-of-type > h3 {
	color: var(--primary);
}

.listing.listing-tabs .accordion > div,
.listing.listing-faq .accordion > div,
section.tabs.listing .accordion > div {
	position: relative;
	padding: 20px 25px;
	cursor: pointer;
	transition: var(--transition);
	-webkit-transition: var(--transition);
}

.listing.listing-tabs .accordion > div:first-of-type > .h3,
.listing.listing-tabs .accordion > div:first-of-type > h3,
.listing.listing-faq .accordion > div:first-of-type > .h3,
.listing.listing-faq .accordion > div:first-of-type > h3,
section.tabs.listing .accordion > div:first-of-type > .h3,
section.tabs.listing .accordion > div:first-of-type > h3 {
	padding-right: 33px;
	max-width: 760px;
	pointer-events: none;
}

.listing.listing-tabs .accordion .toggle,
.listing.listing-faq .accordion .toggle,
section.tabs.listing .accordion .toggle {
	height: 14px;
	width: 14px;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 23px;
	margin: auto;
	transition: var(--transition);
	-webkit-transition: var(--transition);
	pointer-events: none;
}

.listing.listing-tabs .accordion .toggle:hover,
.listing.listing-faq .accordion .toggle:hover,
section.tabs.listing .accordion .toggle:hover {
	transform: rotate(90deg);
}

.listing.listing-tabs .accordion.open .toggle:hover,
.listing.listing-faq .accordion.open .toggle:hover,
section.tabs.listing .accordion.open .toggle:hover {
	transform: rotate(0);
}

.listing.listing-tabs .accordion .toggle::before,
.listing.listing-faq .accordion .toggle::before,
section.tabs.listing .accordion .toggle::before {
	content: none;
}

.listing.listing-tabs .accordion .toggle::after,
.listing.listing-faq .accordion .toggle::after,
section.tabs.listing .accordion .toggle::after {
	content: "";
	position: absolute;
	top: 2px;
	bottom: 0;
	mask-image: url(/bluesky/assets/img/template/arrow.svg);
	-webkit-mask-image: url(/bluesky/assets/img/template/arrow.svg);
	mask-repeat: no-repeat;
	mask-size: contain;
	mask-position: center center;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	-webkit-mask-position: center center;
	background-color: var(--secondary);
	margin: auto;
	height: 9px;
	width: 100%;
	transition: var(--transition);
	-webkit-transition: var(--transition);
	transform: rotate(0);
}

.listing.listing-tabs .accordion.open .toggle::after,
.listing.listing-tabs .accordion.active .toggle::after,
.listing.listing-faq .accordion.open .toggle::after,
.listing.listing-faq .accordion.active .toggle::after,
section.tabs.listing .accordion.open .toggle::after,
section.tabs.listing .accordion.active .toggle::after {
	transform: rotate(180deg);
	background-color: var(--primary);
}

@media (min-width: 768px) {
	.listing.listing-tabs .accordion > div:first-of-type:hover > .h3,
	.listing.listing-tabs .accordion > div:first-of-type:hover > h3,
	.listing.listing-faq .accordion > div:first-of-type:hover > .h3,
	.listing.listing-faq .accordion > div:first-of-type:hover > h3,
	section.tabs.listing .accordion > div:first-of-type:hover > .h3,
	section.tabs.listing .accordion > div:first-of-type:hover > h3 {
		color: var(--primary);
	}
	.listing.listing-tabs .accordion > div:hover .toggle::after,
	.listing.listing-faq .accordion > div:hover .toggle::after,
	section.tabs.listing .accordion > div:hover .toggle::after {
		background-color: var(--primary);
	}

	.listing.listing-tabs .accordion > div,
	.listing.listing-faq .accordion > div,
	section.tabs.listing .accordion > div {
		padding: 42px 50px;
	}

	.listing.listing-tabs .accordion .toggle {
        height: 34px;
        width: 34px;
        right: 40px;
    }
}

.listing.listing-tabs .accordion .description,
.listing.listing-faq .accordion .description,
section.tabs.listing .accordion .description {
	padding: 0 25px;
	max-height: 0;
	overflow: hidden;
	transition: var(--transition);
	cursor: default;
	/* flow-root = BFC sem cortar nada. Depois de abrir, o JS poe
	   overflow:visible (para dropdowns/sliders dentro da resposta nao ficarem
	   cortados) e, sem BFC, a margin-bottom do ultimo filho -- que e o espaco
	   final da caixa -- fugia para fora do cartao branco em vez de o esticar. */
	display: flow-root;
}

.listing.listing-tabs .accordion.active .description,
.listing.listing-faq .accordion.active .description,
section.tabs.listing .accordion.active .description {
	max-height: none;
}

.listing.listing-tabs .accordion .description > *:first-child,
.listing.listing-faq .accordion .description > *:first-child,
section.tabs.listing .accordion .description > *:first-child {
	margin-top: 5px !important;
}

.listing.listing-tabs .accordion .description > *:last-child,
.listing.listing-faq .accordion .description > *:last-child,
section.tabs.listing .accordion .description > *:last-child {
	margin-bottom: 30px !important;
}

/* ---- Responsive desktop (>= 768px) — espelha .faq .listing-faq do estilos.css ---- */
@media (min-width: 768px) {
	.listing.listing-tabs .accordion > div:first-of-type > .h3,
	.listing.listing-tabs .accordion > div:first-of-type > h3,
	.listing.listing-faq .accordion > div:first-of-type > .h3,
	.listing.listing-faq .accordion > div:first-of-type > h3,
	section.tabs.listing .accordion > div:first-of-type > .h3,
	section.tabs.listing .accordion > div:first-of-type > h3 {
		font-size: 22px;
		line-height: 1.34;
	}

	.listing.listing-tabs .accordion > div,
	.listing.listing-faq .accordion > div,
	section.tabs.listing .accordion > div {
		padding: 42px 50px;
	}

	.listing.listing-tabs .accordion .toggle,
	.listing.listing-faq .accordion .toggle,
	section.tabs.listing .accordion .toggle {
		height: 34px;
		width: 34px;
		right: 40px;
	}

	.listing.listing-tabs .accordion .description,
	.listing.listing-faq .accordion .description,
	section.tabs.listing .accordion .description {
		padding: 0 50px;
	}

	.listing.listing-tabs .accordion .description > *:first-child,
	.listing.listing-faq .accordion .description > *:first-child,
	section.tabs.listing .accordion .description > *:first-child {
		margin-top: 0 !important;
	}

	.listing.listing-tabs .accordion .description > *:last-child,
	.listing.listing-faq .accordion .description > *:last-child,
	section.tabs.listing .accordion .description > *:last-child {
		margin-bottom: 47px !important;
	}
}

/* ==============================================================================
   7. AJUSTES NOVOS
   origem: (novo)
   ============================================================================== */

/* Espaçamento do primeiro/último bloco nos dois contextos.
   - Interiores: o .template já dá a margem de topo/fundo, por isso a primeira/última
     section (blocos ex-homepage) não soma a sua.
   - Homepage: um bloco "template-module"/"listing" em primeiro lugar precisa do mesmo
     recuo que as sections já tinham (.index section:not(.banners):first-of-type). */
.template > section:first-child { margin-top: 0; }
.template > section:last-child { margin-bottom: 0; }
.index main > .template-module:first-child,
.index main > .listing:first-child { margin-top: 120px; }
@media (max-width: 767px) {
    .index main > .template-module:first-child,
    .index main > .listing:first-child { margin-top: 70px; }
}

/* LARGURA DOS BLOCOS POR CONTEXTO
   Regra: na homepage (.index) os blocos alinham a 1180px úteis (max-width 1220 - 2x20 de
   padding, a largura que os blocos ex-homepage já usavam); nas restantes páginas alinham
   a 1020px (a largura do .template .container).
   Não mexe nos blocos com largura própria: clientes (1380), testemunhos (1360), slideshow
   horizontal (100%), caixas em slider (.containerSlide 1350), .listing.module25 (1350),
   cards (1330), resultados de pesquisa (1320), relacionados do blog (1240), .cta (970). */

/* Homepage: os blocos .listing deixam de ficar a 1020. Os .template-module ficam
   la: sao os MESMOS modulos que os menus servem, e a 1220 as imagens saiam 20%
   maiores do que na pagina de menu. */
.index :where(main) .container:where(:not(section, section *, .cta *, .cards-module *, .template-module *)) {
    max-width: 1220px;
}

/* Interiores: blocos ex-homepage (sections) deixam de ficar a 1220/1190 */
.template section:where(:not(.related-section, .clientes, .testemunhos, .hp-horizontal-slideshow, .cta)) .container,
.template section.pica_botoes.container {
    max-width: 1020px;
}

/* ==============================================================================
   8. TEMPLATE B  (só com <html class="tpl-b">)
   origem: estilos_b.css
   ============================================================================== */

.tpl-b :is(.index, .template) section.colunas .itens h3{
    font-weight: 500;
}

.tpl-b :is(.template, .index :where(main)) h2 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-b :is(.template, .index :where(main)) .h2 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-b :is(.template, .index :where(main)) h3 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-b :is(.template, .index :where(main)) .h3 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-b :is(.template, .index :where(main)) h5 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-b :is(.template, .index :where(main)) .h5 strong:not(:where(section:not(.content,.related-section)) *),
.tpl-b :is(.template, .index :where(main)) h2:not(:where(section:not(.content,.related-section)) *), 
.tpl-b :is(.template, .index :where(main)) .h2:not(:where(section:not(.content,.related-section)) *):not(:where(section)), 
.tpl-b :is(.template, .index :where(main)) h3:not(:where(section:not(.content,.related-section)) *), 
.tpl-b :is(.template, .index :where(main)) .h3:not(:where(section:not(.content,.related-section)) *):not(:where(section)),
.tpl-b :is(.template, .index :where(main)) blockquote > *:not(:where(section:not(.content,.related-section)) *):not(:where(section)),
.tpl-b :is(.template, .index :where(main)) p big:not(:where(section:not(.content,.related-section)) *),
.tpl-b .template-module table th,
.tpl-b :is(.template, .index :where(main)) .template-module small a, 
.tpl-b :is(.template, .index :where(main)) .template-module ul a, 
.tpl-b .listing.module20 .image-item a:not(.button), 
.tpl-b :is(.template, .index :where(main)) .template-module p a, 
.tpl-b :is(.template, .index :where(main)) .template-module td a
 {
    font-weight: 500 !important;
}

.tpl-b :is(.template, .index :where(main)) h4:not(:where(section:not(.content,.related-section)) *), 
.tpl-b :is(.template, .index :where(main)) .h4:not(:where(section:not(.content,.related-section)) *):not(:where(section)), 
.tpl-b :is(.template, .index :where(main)) h4 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-b :is(.template, .index :where(main)) .h4 strong:not(:where(section:not(.content,.related-section)) *){
    font-weight: normal !important;
}

.tpl-b :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h1, 
.tpl-b :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h1, 
.tpl-b :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h3, 
.tpl-b :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h3, 
.tpl-b :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h2, 
.tpl-b :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h2, 
.tpl-b :is(.template, .index :where(main)) .listing .file > h3, 
.tpl-b :is(.template, .index :where(main)) .listing .file > .h3, 
.tpl-b :is(.template, .index :where(main)) .listing .file > h2, 
.tpl-b :is(.template, .index :where(main)) .listing .file > .h2, 
.tpl-b :is(.template, .index :where(main)) .listing .item > h3, 
.tpl-b :is(.template, .index :where(main)) .listing .item > .h3, 
.tpl-b :is(.template, .index :where(main)) .listing .item > h2, 
.tpl-b :is(.template, .index :where(main)) .listing .item > .h2{
    font-weight: normal !important;
}


.tpl-b :is(.template, .index :where(main)) ul:not(:where(section:not(.content,.related-section)) *), 
.tpl-b :is(.template, .index :where(main)) ol:not(:where(section:not(.content,.related-section)) *),
.tpl-b :is(.template, .index :where(main)) p:not(:where(section:not(.content,.related-section)) *),
.tpl-b :is(.template, .index :where(main)) td:not(:where(section:not(.content,.related-section)) *){
    font-size: 1.125rem !important;
    line-height: 1.56 !important;
}


.tpl-b :is(.template, .index :where(main)) p small:not(:where(section:not(.content,.related-section)) *){
    font-size: 12px !important;
}

.tpl-b :is(.template, .index :where(main)) .template-module blockquote small {
    font-size: 14px !important;
    font-weight: 500 !important;
}

/* ==============================================================================
   9. TEMPLATE C  (só com <html class="tpl-c">)
   origem: hp/hp_c.css + estilos_c.css
   ============================================================================== */

.tpl-c .banners .slider .slide .subtitle h2,
.tpl-c .galeria_txt .container h2,
.tpl-c .galeria_txt .container h4,
.tpl-c .index .listing .container > h2,
.tpl-c :where(section:not(.content,.related-section)) .container .header h4,
.tpl-c .galeria .header h2,
.tpl-c :where(section:not(.content,.related-section)) .container .header h2,
.tpl-c .testemunhos .container h4,
.tpl-c .testemunhos .container h2,
.tpl-c .passos h2,
.tpl-c .hp-list .header h2,
.tpl-c .hp-horizontal-slideshow .description h2,
.tpl-c .hp-horizontal-slideshow .description h4,
.tpl-c .index .cta .container p {
    text-transform: uppercase;
}

.tpl-c .clientes h2 strong,
.tpl-c .index .listing .accordion > div:first-of-type > .h3{
    font-weight: normal;
}

.tpl-c .galeria_txt .container h4,
.tpl-c :where(section:not(.content,.related-section)) .container .header h4{
    font-size: 14px;
}

@media(min-width:768px){  
    .tpl-c :where(section:not(.content,.related-section)) .container .header h4{
        font-weight: 600;
    }
}

.tpl-c .passos h3{
    font-weight: 500;
}

.tpl-c .button:not(:where(section:not(.content,.related-section)) *):not(:where(section)),
.tpl-c .button:focus:not(:where(section:not(.content,.related-section)) *):not(:where(section)),
.tpl-c .form .button-f,
.tpl-c .form .button-f:focus,
.tpl-c .banner .container h1, .tpl-c .banner .container .h1 {
    text-transform: uppercase;
}


@media(min-width: 992px) {
	.tpl-c .button:not(:where(section:not(.content,.related-section)) *):not(:where(section)),
	.tpl-c .button:focus:not(:where(section:not(.content,.related-section)) *):not(:where(section)),
    .tpl-c .form .button-f,
    .tpl-c .form .button-f:focus {
        font-size: 12px;
	}
}

.tpl-c :is(.index, .template) section.colunas .itens h3{
    font-weight: 500;
}

.tpl-c .banner.no-img .container h1, 
.tpl-c .banner.no-img .container .h1 {
    font-size: 3.75rem !important;
    font-weight: 800;
}

.tpl-c :is(.template, .index :where(main)) h2 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-c :is(.template, .index :where(main)) .h2 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-c :is(.template, .index :where(main)) h3 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-c :is(.template, .index :where(main)) .h3 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-c :is(.template, .index :where(main)) h5 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-c :is(.template, .index :where(main)) .h5 strong:not(:where(section:not(.content,.related-section)) *),
.tpl-c :is(.template, .index :where(main)) h2:not(:where(section:not(.content,.related-section)) *), 
.tpl-c :is(.template, .index :where(main)) .h2:not(:where(section:not(.content,.related-section)) *):not(:where(section)), 
.tpl-c :is(.template, .index :where(main)) h3:not(:where(section:not(.content,.related-section)) *), 
.tpl-c :is(.template, .index :where(main)) .h3:not(:where(section:not(.content,.related-section)) *):not(:where(section)),
.tpl-c :is(.template, .index :where(main)) blockquote > *:not(:where(section:not(.content,.related-section)) *):not(:where(section)),
.tpl-c :is(.template, .index :where(main)) p big:not(:where(section:not(.content,.related-section)) *),
.tpl-c .template-module table th,
.tpl-c :is(.template, .index :where(main)) .template-module small a, 
.tpl-c :is(.template, .index :where(main)) .template-module ul a, 
.tpl-c .listing.module20 .image-item a:not(.button), 
.tpl-c :is(.template, .index :where(main)) .template-module p a, 
.tpl-c :is(.template, .index :where(main)) .template-module td a
 {
    font-weight: 500 !important;
}

.tpl-c :is(.template, .index :where(main)) h4:not(:where(section:not(.content,.related-section)) *), 
.tpl-c :is(.template, .index :where(main)) .h4:not(:where(section:not(.content,.related-section)) *):not(:where(section)), 
.tpl-c :is(.template, .index :where(main)) h4 strong:not(:where(section:not(.content,.related-section)) *), 
.tpl-c :is(.template, .index :where(main)) .h4 strong:not(:where(section:not(.content,.related-section)) *){
    font-weight: normal !important;
}

@media (min-width: 768px) {
    .tpl-c :is(.template, .index :where(main)) .button:not(:where(section:not(.content,.related-section)) *):not(:where(section)) {
        font-size: 12px !important;
        line-height: 1.5 !important;
    }
}

.tpl-c .template-module table,
.tpl-c .template-module table td,
.tpl-c .template-module table tr,
.tpl-c .template-module table th,
.tpl-c :is(.template, .index :where(main)) ul:not(:where(section:not(.content,.related-section)) *), 
.tpl-c :is(.template, .index :where(main)) ol:not(:where(section:not(.content,.related-section)) *), 
.tpl-c :is(.template, .index :where(main)) p:not(:where(section:not(.content,.related-section)) *) {
    font-size: 1.125rem !important;
    line-height: 1.67;
}

.tpl-c .template blockquote > *, 
.tpl-c .template p big {
    font-size: 1.375rem !important;
        line-height: 1.45 !important;
}

.tpl-c .template-module table,
.tpl-c .template-module table td,
.tpl-c .template-module table tr,
.tpl-c .template-module table th{
    line-height: 1;
}

.tpl-c :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h1, 
.tpl-c :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h1, 
.tpl-c :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h3, 
.tpl-c :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h3, 
.tpl-c :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > h2, 
.tpl-c :is(.template, .index :where(main)) .listing .accordion > div:first-of-type > .h2, 
.tpl-c :is(.template, .index :where(main)) .listing .file > h3, 
.tpl-c :is(.template, .index :where(main)) .listing .file > .h3, 
.tpl-c :is(.template, .index :where(main)) .listing .file > h2, 
.tpl-c :is(.template, .index :where(main)) .listing .file > .h2, 
.tpl-c :is(.template, .index :where(main)) .listing .item > h3, 
.tpl-c :is(.template, .index :where(main)) .listing .item > .h3, 
.tpl-c :is(.template, .index :where(main)) .listing .item > h2, 
.tpl-c :is(.template, .index :where(main)) .listing .item > .h2{
    font-weight: normal !important;
}


/* ==============================================================================
   hp/hp_faqs.css  —  em falta no bundle ate 23/09/2026

   O cabecalho deste ficheiro dizia que ja o incluia, mas nenhuma das suas 217
   regras ca estava: o unico "hp-faqs" do bundle era um comentario. Dai o titulo
   do modulo de tabs/faqs sair com o default do browser e o modulo de FAQs ficar
   sem estilo nenhum.

   Copiado tal e qual, e no fim, que e a ordem da Producao: la o index.asp
   carrega-o como ULTIMO <link> da homepage (o menu.asp nao o carrega de todo).
   Das 217 regras, 209 estao presas a .index/.hp-/.tabs/.faq e so podem casar na
   homepage; as outras 8 (.fullscreen-container e .rounded .template-module
   .image) ja existiam aqui com as mesmas declaracoes.

   ⚠️ Vem com um erro que a Producao tambem tem: falta uma virgula a seguir a
   ".hp-faqs .header .h3", o que parte esse selector e o do h4. Nao o corrigi de
   proposito, para nao mudar o aspecto sem alguem decidir.
   ============================================================================== */

/* =========================================================================
   HP - FAQs (seccao Tabs com opcao=faqs)
   ---------------------------------------------------------------------
   Estilo equivalente ao que o pages/faq.asp recebe via `.faq .listing-faq`
   em estilos.css, mas escopado a `.hp-faqs` (a section que envolve as FAQs
   da homepage). Carregado depois do hp.css para vencer os seletores
   `.index .listing .accordion` (mesma especificidade, mas ordem mais tarde).

   Tambem inclui overrides explicitos para neutralizar as regras do hp.css
   que poderiam pintar a FAQ como uma "tab" ou outra seccao normal.
   ========================================================================= */

/* ---- Neutralizar regras do hp.css quando estamos numa FAQ ---- */
.index .hp-faqs .listing.listing-faq .accordion + .accordion {
    /* hp.css impoe margin-top: 9px ja igual ao que queremos; deixar como esta. */
}
.index.rounded .hp-faqs .listing.listing-faq .accordion {
    /* hp.css impoe border-radius: 30px; replicar para FAQ rounded */
    border-radius: 30px;
    padding-bottom: 3px;
}
.tabs .container,
.hp-faqs .container {
 max-width: 1220px;
}

.rounded .template-module .image,
.rounded [class*="module"] .container img{
    border-radius: 30px;
    overflow: hidden;
}
.index .tabs.listing .container > h2,
.hp-faqs .header h2, 
.hp-faqs .header .h2, 
.hp-faqs .header h3, 
.hp-faqs .header .h3 
.hp-faqs .header h4, 
.hp-faqs .header .h4 {
    margin: 0;
    flex: 1;
    color: var(--secondary);
    font-size: 40px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.13;
    letter-spacing: normal;
    text-align: center;
}

/* ---- Heading da seccao (h2 acima do listing) ---- */
.hp-faqs > .container .header  {
    margin: 0 0 30px;
}
.hp-faqs > .container > h2 strong {
    color: var(--primary);
}

/* ---- Theme title (opcional, se vier a usar agrupamento) ---- */
.hp-faqs .listing-faq .theme-title {
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.29;
    letter-spacing: normal;
    text-align: left;
    color: #212121;
    margin-bottom: 30px;
}
.hp-faqs .listing-faq .item + .theme-title {
    margin-top: 80px;
}

/* ---- Accordion (card) ---- */
.hp-faqs .listing-faq .accordion {
    background-color: white;
    box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.04);
    border: none;
}
.hp-faqs .listing-faq .accordion + .accordion {
    margin-top: 9px;
}
.index.rounded .hp-faqs .listing-faq .accordion,
.hp-faqs.rounded .listing-faq .accordion {
    border-radius: 30px;
    padding-bottom: 3px;
}

/* ---- Titulo do accordion (h3) ---- */
.hp-faqs .listing-faq .accordion > div:first-of-type > h3,
.hp-faqs .listing-faq .accordion > div:first-of-type > .h3 {
    font-size: 20.5px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: normal;
    text-align: left;
    color: var(--secondary);
    margin: 0;
    transition: var(--transition);
    -webkit-transition: var(--transition);
    text-transform: none;
}
.hp-faqs .listing-faq .accordion.open > div:first-of-type > h3,
.hp-faqs .listing-faq .accordion.open > div:first-of-type > .h3 {
    color: var(--primary);
}

/* ---- Linha clicavel do header (padding, cursor) ---- */
.hp-faqs .listing-faq .accordion > div {
    position: relative;
    padding: 20px 25px;
    cursor: pointer;
    transition: var(--transition);
    -webkit-transition: var(--transition);
}
.hp-faqs .listing-faq .accordion > div:first-of-type > h3,
.hp-faqs .listing-faq .accordion > div:first-of-type > .h3 {
    padding-right: 33px;
    max-width: 760px;
    pointer-events: none;
}

/* ---- Toggle (seta) ---- */
.hp-faqs .listing-faq .accordion .toggle {
    height: 14px;
    width: 14px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 23px;
    margin: auto;
    transition: var(--transition);
    -webkit-transition: var(--transition);
    pointer-events: none;
}
.hp-faqs .listing-faq .accordion .toggle:hover {
    transform: rotate(90deg);
}
.hp-faqs .listing-faq .accordion.open .toggle:hover {
    transform: rotate(0);
}
.hp-faqs .listing-faq .accordion .toggle::before {
    content: none;
}
.hp-faqs .listing-faq .accordion .toggle::after {
    content: "";
    position: absolute;
    top: 2px;
    bottom: 0;
    mask-image: url(/bluesky/assets/img/template/arrow.svg);
    -webkit-mask-image: url(/bluesky/assets/img/template/arrow.svg);
    mask-repeat: no-repeat;
    mask-size: contain;
    mask-position: center center;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    -webkit-mask-position: center center;
    margin: auto;
    height: 9px;
    width: 100%;
    background-color: var(--secondary);
    transition: var(--transition);
    -webkit-transition: var(--transition);
    transform: rotate(0);
}
.hp-faqs .listing-faq .accordion.open .toggle::after,
.hp-faqs .listing-faq .accordion.active .toggle::after {
    transform: rotate(180deg);
    background-color: var(--primary);
}

/* ---- Description (conteudo expansivel) ---- */
.hp-faqs .listing-faq .accordion .description {
    padding: 0 25px;
    max-height: 0;
    overflow: hidden;
    transition: var(--transition);
    cursor: default;
}
.hp-faqs .listing-faq .accordion.active .description {
    max-height: none;
}
.hp-faqs .listing-faq .accordion .description > *:first-child {
    margin-top: 5px !important;
}
.hp-faqs .listing-faq .accordion .description > *:last-child {
    margin-bottom: 30px !important;
}

@media (max-width: 768px) {
    .hp-faqs .template .container {
        width: 100%;
        max-width: calc(100% - 40px);
        padding: 0;
    }

    .faq .listing-faq .accordion .description {
        padding: 0;
    }
}
/* ---- Desktop ---- */
@media (min-width: 768px) {
    .hp-faqs .listing-faq .accordion > div:first-of-type:hover > h3,
    .hp-faqs .listing-faq .accordion > div:first-of-type:hover > .h3 {
        color: var(--primary);
    }
    .hp-faqs .listing-faq .accordion > div:hover .toggle::after {
        background-color: var(--primary);
    }

    .hp-faqs .listing-faq .accordion > div:first-of-type > h3,
    .hp-faqs .listing-faq .accordion > div:first-of-type > .h3 {
        font-size: 22px;
        line-height: 1.34;
    }
    .hp-faqs .listing-faq .accordion > div {
        padding: 42px 50px;
    }
    .hp-faqs .listing-faq .accordion .toggle {
        height: 34px;
        width: 34px;
        right: 40px;
    }
    .hp-faqs .listing-faq .accordion .description {
        padding: 0 25px;
    }
    .hp-faqs .listing-faq .accordion .description > *:first-child {
        margin-top: 0 !important;
    }
    .hp-faqs .listing-faq .accordion .description > *:last-child {
        margin-bottom: 47px !important;
    }
}

/* =========================================================================
   .template-module base (template-modules.css) replicado.
   ---------------------------------------------------------------------
   Assegura que os modulos dentro da FAQ description (module2/3/8/12/19,
   module2.wrap / module3.wrap / module8.FullW, listing-button left, etc.)
   recebem as margens, dimensoes e estrutura base, mesmo quando o hp.css
   tenta forcar regras `.index .listing .accordion .description > *` com
   margins !important.
   ========================================================================= */
.hp-faqs .listing-faq .accordion .description .template-module {
    margin: 40px 0;
    position: relative;
    font-size: 0;
}
.hp-faqs .listing-faq .accordion .description .template-module:first-child {
    margin-top: 0;
}
.hp-faqs .listing-faq .accordion .description .template-module:not(:has(+ .template-module)):not(:has(+ .listing)),
.hp-faqs .listing-faq .accordion .description .template-module + .template-module:last-child {
    margin-bottom: 0;
}
.hp-faqs .listing-faq .accordion .description .template-module .row {
    margin: 40px 0px;
}
.hp-faqs .listing-faq .accordion .description .template-module .row > div {
    padding-inline: 0;
}
.hp-faqs .listing-faq .accordion .description .template-module a:not(.button,.search) {
    display: flex;
}
.hp-faqs .listing-faq .accordion .description .template-module a:not(.button,.search):has(img) {
    overflow: visible;
}
.hp-faqs .listing-faq .accordion .description .template-module img {
    display: block;
    margin: 0 auto;
    width: 100%;
}
.hp-faqs .listing-faq .accordion .description .template-module img.img-gif {
    max-width: 100%;
    width: auto;
}
.hp-faqs .listing-faq .accordion .description .template-module.round-corners a:has(img),
.hp-faqs .listing-faq .accordion .description .template-module.round-corners img {
    border-radius: 30px;
}
.hp-faqs .listing-faq .accordion .description .template-module.round-corners .slider .image,
.hp-faqs .listing-faq .accordion .description .template-module.round-corners .slider img {
    border-radius: 0;
}
.hp-faqs .listing-faq .accordion .description .template-module > img {
    width: 100%;
}
.hp-faqs .listing-faq .accordion .description .template-module a[href] img {
    transition: var(--transition);
}
.hp-faqs .listing-faq .accordion .description .template-module .button.button-center {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
.hp-faqs .listing-faq .accordion .description .template-module .button.button-right {
    position: relative;
    left: 100%;
    transform: translateX(-100%);
}

.hp-faqs .listing-faq .accordion .description .listing.listing-button .header {
    margin-bottom: 27px;
}

@media (min-width: 992px) {
    .hp-faqs .listing-faq .accordion .description .template-module a[href]:has(img):hover img {
        transform: scale(1.02);
    }
    .hp-faqs .listing-faq .accordion .description .template-module {
        margin: 80px 0;
    }
    .hp-faqs .listing-faq .accordion .description .template-module .row {
        margin: 0;
    }
    .hp-faqs .listing-faq .accordion .description .template-module .row > div {
        padding: 0;
    }
        .hp-faqs .listing-faq .accordion .description .header {
        display: flex;
        align-items: center;
        margin-inline: 0;
    }
}


/* =========================================================================
   Module 2 (Texto + Imagem) / Module 3 (Imagem + Texto) — replicado integral
   de template-modules.css linhas 800-956. Selectors prefixados com
   .hp-faqs .listing-faq .accordion .description para escopo e specificity.
   ========================================================================= */
.hp-faqs .listing-faq .accordion .description .template-module.wrap {
    display: flow-root;
}

.hp-faqs .listing-faq .accordion .description .template-module.module2.wrap img,
.hp-faqs .listing-faq .accordion .description .template-module.module3.wrap img {
    max-width: 100%;
    float: none;
    margin: 0 0 15px 0;
}

.hp-faqs .listing-faq .accordion .description .template-module.module2 .row > div:first-child {
    padding-right: 15px;
}

.hp-faqs .listing-faq .accordion .description .template-module.module3 .row > div:last-child {
    padding-left: 15px;
}

.hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image,
.hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image {
    width: 100%;
}

.hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image img,
.hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image img {
    position: relative;
    margin: 0;
}

.hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image small,
.hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image small,
.hp-faqs .listing-faq .accordion .description .template-module small.text-center {
    font-size: 14px;
    font-weight: 300;
    line-height: 1.29;
    letter-spacing: normal;
    text-align: center;
    color: #858585;
    margin: 15px 0 0;
}

.hp-faqs .listing-faq .accordion .description .template-module small.text-center {
    width: 100%;
    /* margin-bottom: 0; */
}

.rounded .hp-faqs .listing-faq .accordion .description .template-module.module2 .video > div,
.rounded .hp-faqs .listing-faq .accordion .description .template-module.module3 .video > div {
    border-radius: 30px;
}
.hp-faqs .listing-faq .accordion .description .template-module.module2 .video > div,
.hp-faqs .listing-faq .accordion .description .template-module.module3 .video > div {
    position: relative;
    overflow: hidden;
}

@media (min-width: 768px) {

    .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image,
    .hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image {
        max-width: calc(50% - 10px);
        margin-top: 5px;
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap h2,
    .hp-faqs .listing-faq .accordion .description .template-module.module3.wrap h2 {
        margin-top: 0px;
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image.video img,
    .hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image.video img {
        max-width: unset;
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image,
    .hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image {
        max-width: calc(50% - 10px);
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image {
        margin: 8px 0 30px 50px;
        float: right;
    }
    .hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image {
        margin: 8px 50px 30px 0;
        float: left;
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module2 .row > div:first-child {
        padding-right: 45px;
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module3 .row > div:last-child {
        padding-left: 45px;
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image {
        margin-bottom: 23px;
        margin-left: 43px;
        float: right;
        padding-top: 0;
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image {
        margin-bottom: 23px;
        margin-right: 43px;
        float: left;
        padding-top: 0;
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image img,
    .hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image img {
        padding: 0;
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image small,
    .hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image small,
    .hp-faqs .listing-faq .accordion .description .template-module small.text-center {
        font-size: 16px;
        line-height: 1.25;
        margin: 15px 0 0;
    }

}

@media (max-width: 767px) {
    .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image,
    .hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image {
        padding-top: 0;
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image + *:not(p):first-of-type,
    .hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image + *:not(p):first-of-type {
        margin-top: 10px;
        margin-bottom: 10px;
    }

    .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image + p:first-of-type,
    .hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image + p:first-of-type {
        margin-top: 20px;
    }


    .hp-faqs .listing-faq .accordion .description .template-module small.text-center {
        padding-inline: 20px;
    }
}


/* =========================================================================
   Module 8 (Imagem) / Module 8 FullW (Imagem Fullscreen)
   Replicado de template.css linhas 653-661 (FullW), 984-987 (mobile FullW)
   e 1169-1175 (.template-module.fullwidth).
   ========================================================================= */
/* .hp-faqs .listing-faq .accordion .description .template-module.module8 {
    overflow: hidden;
} */
.hp-faqs .listing-faq .accordion .description .template-module.module8 img {
    width: 100%;
    height: auto;
}

/* Module 8 FullW dentro duma listing-faq accordion
   (item.accordion no template.css → .item.accordion neste contexto):
   imagem ultrapassa o padding do accordion para preencher full-width. */
.hp-faqs .listing-faq .accordion .description .template-module.module8.FullW img {
    width: 100%;
}
.hp-faqs .listing-faq .item.accordion .template-module.module8.FullW img,
.hp-faqs .listing-faq .accordion .description .template-module.module8.FullW img {
    margin: 0 -25px;
    width: calc(100% + 50px);
    max-width: unset;
}

/* .template-module.fullwidth (alternativa ao .FullW, em alguns layouts) */
.hp-faqs .listing-faq .accordion .description .template-module.fullwidth .image img {
    width: 100%;
    background: none;
}
.rounded .hp-faqs .listing-faq .accordion .description .template-module.fullwidth .image {
    border-radius: 0;
}

@media (max-width: 768px) {
    /* Em mobile o accordion tem padding 25px (vs 50px desktop) — replicado
       de template.css linha 984 mas com o nosso selector. */
    .hp-faqs .listing-faq .item.accordion .template-module.module8.FullW img,
    .hp-faqs .listing-faq .accordion .description .template-module.module8.FullW img {
        margin: 0 -25px;
        width: calc(100% + 50px);
    }
}


/* =========================================================================
   Module 12 (Video) / Module 19 (CTA — replicado de estilos.css 2487-2610)
   ========================================================================= */
.hp-faqs .listing-faq .accordion .description .template-module.module12,
.hp-faqs .listing-faq .accordion .description .template-module.module19 {
    position: relative;
}

/* CTA dentro duma FAQ.
   Estrutura gerada por template.asp Case 19:
       <div class="template-module module19">
           <div class="container container-sm">
               <div class="cta">                        ← .cta sem variant
                   <h3 class="h3">...</h3>               ← filhos directos
                   <p>...</p>
                   <a class="button">...</a>
               </div>
           </div>
       </div>
   As regras .cta .container ... em estilos.css nao aplicam (o .container
   esta fora do .cta). Aqui aplicamos styling apropriado para a estrutura
   real, com selector que vence o .hp-faqs ... description p (que da
   font-size 1.25rem ao p generico). */

.hp-faqs .listing-faq .accordion .description .template-module.module19 .container.container-sm {
    text-align: center;
}

.hp-faqs .listing-faq .accordion .description .cta {
    position: relative;
    display: block;
    position: relative;
    width: 100%;
    padding: 30px;
    background-color: var(--primary);
    text-align: center;
}

.hp-faqs .listing-faq .accordion .description .cta h2, 
.hp-faqs .listing-faq .accordion .description .cta h3, 
.hp-faqs .listing-faq .accordion .description .cta h4, 
.hp-faqs .listing-faq .accordion .description .cta h5, 
.hp-faqs .listing-faq .accordion .description .cta .h3 {
    font-size: 26px;
    font-weight: 600;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.28;
    text-align: center;
    margin: auto;
    color: var(--white);
    max-width: 730px;
}
.hp-faqs .listing-faq .accordion .description .cta > p {
    font-size: 1.25rem;
    font-weight: 300;
    font-stretch: normal;
    font-style: normal;
    line-height: 1.5;
    letter-spacing: normal;
      text-align: center;
    max-width: 730px;
    margin: auto;
    color: var(--white);
}

.hp-faqs .listing-faq .accordion .description .cta .h3 + p {
    margin-top: 32px;
}

.hp-faqs .listing-faq .accordion .description .cta > p strong {
    color: var(--primary);
}
.hp-faqs .listing-faq .accordion .description .cta > p + .button,
.hp-faqs .listing-faq .accordion .description .cta > h3 + .button,
.hp-faqs .listing-faq .accordion .description .cta > .h3 + .button {
    margin-top: 23px;
}
.hp-faqs .listing-faq .accordion .description .cta > .button {
        margin-top: 33px;
    display: inline-block;
    padding: 17px 31px 16.5px;
    font-size: 16px;
    line-height: 1.38;
}

.hp-faqs .listing-faq .accordion .description .cta .button:before {
    background-color: var(--secondary);
    opacity: .5;
}

.rounded .hp-faqs .listing-faq .accordion .description .cta  {
    border-radius: 30px;
}

/* @media max-width 768 — replicado de template-modules.css linhas 1490-1516 */
@media (max-width: 768px) {
    .hp-faqs .listing-faq .accordion .description .cta {
        padding: 55px 22px;
    }
    .hp-faqs .listing-faq .accordion .description .cta h3,
    .hp-faqs .listing-faq .accordion .description .cta .h3 {
        font-size: 28px;
        line-height: 1.29;
        letter-spacing: normal;
    }
    .hp-faqs .listing-faq .accordion .description .cta p {
        max-width: unset;
    }
    .hp-faqs .listing-faq .accordion .description .cta .h3 + p {
        margin-top: 30px;
    }
    .hp-faqs .listing-faq .accordion .description .cta .button {
        padding: 9.5px 20px;
        display: block;
    }
}

@media (min-width: 768px) {
    /* Restrito ao .cta — antes estava a afectar TODOS os h3/.h3 do
       .description, alterando tambem o conteudo normal das FAQs. */
    .hp-faqs .listing-faq .accordion .description .cta h3,
    .hp-faqs .listing-faq .accordion .description .cta .h3 {
        line-height: 1.14;
        letter-spacing: -0.42px;
        font-size: 36px;
    }

    .hp-faqs .listing-faq .accordion .description .cta > p + .button,
    .hp-faqs .listing-faq .accordion .description .cta > h3 + .button,
    .hp-faqs .listing-faq .accordion .description .cta > .h3 + .button {
        margin-top: 35px;
    }
}

@media (min-width: 992px) {
    .hp-faqs .listing-faq .accordion .description .cta  {
        padding: 60px 40px 70px;
    }
}


.hp-faqs .listing-faq .accordion .fullscreen-container iframe, 
.hp-faqs .listing-faq .accordion .fullscreen-container video, 
.hp-faqs .listing-faq .accordion .template-module .video iframe, 
.hp-faqs .listing-faq .accordion .template-module .video video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border: 0;
    opacity: 0;
    pointer-events: none;
    z-index: 2;
}

.hp-faqs .listing-faq .template-module:not(.module3, .module2 ) .image {
    position: relative;
    aspect-ratio: 16 / 8.99;
    background-color: unset;
}

/******************************************************************/
/********** MODULE 12: VIDEO & MODULE 1: SLIDER w/ video **********/
/* Selectors prefixados com .hp-faqs .listing-faq .accordion .description */
/* (.fullscreen-container fica global: e overlay fixed injetado no body)  */
/******************************************************************/

.hp-faqs .listing-faq .accordion .description .template-module .video::before {
    content: "";
    position: absolute;
    top: 0;bottom: 0;
    left: 0;right: 0;
	mix-blend-mode: multiply;
    background-color: rgba(1, 1, 1, .2);
    z-index: 1;
}


.hp-faqs .listing-faq .accordion .description .template-module.module2 .video > div::before,
.hp-faqs .listing-faq .accordion .description .template-module.module3 .video > div::before {
    content: "";
    position: absolute;
    top: 0;bottom: 0;
    left: 0;right: 0;
	border-radius: 0;
    mix-blend-mode: multiply;
  	background-color: #b6b4b4;
    z-index: 1;
}

.hp-faqs .listing-faq .accordion .description .template-module.module2 .video::before,
.hp-faqs .listing-faq .accordion .description .template-module.module3 .video::before {
	content: none;
	display: none;
}

.hp-faqs .listing-faq .accordion .description .template-module.round-corners .video iframe,
.hp-faqs .listing-faq .accordion .description .template-module.round-corners .video video,
.hp-faqs .listing-faq .accordion .description .template-module.round-corners .video::before {
    border-radius: 50px;
}

.hp-faqs .listing-faq .accordion .description .template-module.circle .video iframe,
.hp-faqs .listing-faq .accordion .description .template-module.circle .video video,
.hp-faqs .listing-faq .accordion .description .template-module.circle .video::before {
	border-radius: 500px;
}

.hp-faqs .listing-faq .accordion .description .template-module .video.open::before {
    background-color:	black;
}


.fullscreen-container iframe,
.fullscreen-container video,
.hp-faqs .listing-faq .accordion .description .template-module .video iframe,
.hp-faqs .listing-faq .accordion .description .template-module .video video {
	position: absolute;
	top: 0;bottom: 0;
	left: 0;right: 0;
	width: 100%;
	height: 100%;
    border: 0;
    opacity: 0;
    pointer-events: none;
    z-index: 2;
}

.hp-faqs .listing-faq .accordion .description .template-module .video.open iframe,
.hp-faqs .listing-faq .accordion .description .template-module .video.open video {
	opacity: 1;
	pointer-events: auto;
	/* object-fit: contain; */
}


.fullscreen-container {
	height: 100vh;
    width: 100vw;
    background-color: rgba(0, 0, 0, .9);
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 999;
	opacity: 0;
	pointer-events: none;
}

.fullscreen-container.open {
	opacity: 1;
	pointer-events: all;
}

.fullscreen-container iframe,
.fullscreen-container video {
	display: none;
	opacity: 1;
	pointer-events: all;
	padding-block: 50px;
}

.fullscreen-container .close {
    position: absolute;
    top: 20px;
    right: 20px;
    padding: 15px;
    z-index: 10;
    cursor: pointer;
}

.fullscreen-container .close::after,
.fullscreen-container .close::before {
    content: "";
    position: absolute;
    top: 10px;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 2px;
    transform: rotate(45deg);
    background-color: #fff;
}

.fullscreen-container .close::after {
    transform: rotate(-45deg);
}
.hp-faqs .listing-faq .accordion .description .template-module .video.open + .legend {
	opacity: 0;
}

@supports(object-fit: cover) {
	.hp-faqs .listing-faq .accordion .description .template-module .image.video img {
		top: 0;left: 0;
		transform: none;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

.hp-faqs .listing-faq .accordion .description .template-module .video a.play {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 94px;
    height: 94px;
    z-index: 1;
	display: flex;
    align-items: center;
    justify-content: center;
}

.hp-faqs .listing-faq .accordion .description .template-module .video a.play:before {
	content: "";
	position: absolute;
	top: auto;bottom: auto;
    left: auto;right: auto;
    width: 25px;
    height: 25px;
	margin: auto;
	-webkit-mask-image: url("/bluesky/assets/img/template/play_icon.svg");
	mask-image: url("/bluesky/assets/img/template/play_icon.svg");
	mask-position: right;
	-webkit-mask-position: right;
    mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-size: contain;
	-webkit-mask-size:contain;
	background-color: white;
	transition: var(--transition);
	z-index: 2;
}

.hp-faqs .listing-faq .accordion .description .template-module .video a.play:after {
	content: "";
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: calc(100% - 8px);
    height: calc(100% - 8px);
	transition: var(--transition);
    border-radius: 100%;
    z-index: 1;
    background-color: transparent;
    border: 4px solid white;
}

.hp-faqs .listing-faq .accordion .description .template-module .video a.play:hover {
	transform: scale(1.05);
}

.hp-faqs .listing-faq .accordion .description .template-module .video + p.text-center {
    position: absolute;
    bottom: 0;
    left: 20px;right: 20px;
    margin: 1em auto;
    color: white;
    z-index: 1;
}

.hp-faqs .listing-faq .accordion .description .template-module a + p.text-center,
.hp-faqs .listing-faq .accordion .description .template-module img + p.text-center {
	margin-top: 25px;
}

.hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image.video,
.hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image.video {
	width: 100%;
	padding: 0;
}


@media(max-width: 768px) {
	.hp-faqs .listing-faq .accordion .description .template-module .video + p.text-center {
		font-size: 10px;
	}

	.hp-faqs .listing-faq .accordion .description .template-module a + p.text-center,
	.hp-faqs .listing-faq .accordion .description .template-module img + p.text-center {
		margin-top: 10px;
	}

	.hp-faqs .listing-faq .accordion .description .template-module .video a.play {
		max-height: 41px;
		max-width: 41px;
	}

	.hp-faqs .listing-faq .accordion .description .template-module .video a.play:before {
		width: 14px;
        height: 14px;
	}

	.hp-faqs .listing-faq .accordion .description .template-module .video a.play:after {
        border: 2px solid white;
        width: calc(100% - 4px);
        height: calc(100% - 4px);
    }

}

.hp-faqs .listing-faq .accordion .description .template-module .image.video + small {
	z-index: 1;
	font-size: 16px;
	font-weight: 300;
}

@media(min-width: 768px) {
	.hp-faqs .listing-faq .accordion .description .template-module .video a {
		width: 70px;
		height: 70px;
		border-width: 4px
	}

	.hp-faqs .listing-faq .accordion .description .template-module .video a.play {
		width: 93px;
		height: 93px;
	}

	/* .hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image.video,
	.hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image.video {
		max-width: 50%;
	} */

	.hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image.video {
		margin-bottom: 25px;
		/* margin-right: 55px; */
		float: left;
		padding-top: 0;
	}
	.hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image.video img,
	.hp-faqs .listing-faq .accordion .description .template-module.module3.wrap .image.video img {
		padding: 0;
	}

	.hp-faqs .listing-faq .accordion .description .template-module.module2.wrap .image.video {
		margin-bottom: 25px;
		/* margin-left: 55px; */
		float: right;
		padding-top: 0;
	}

	.fullscreen-container iframe,
	.fullscreen-container video {
		padding: 50px;
	}

	.hp-faqs .listing-faq .accordion .description .template-module .image.video + small {
		color: #ffffff;
		position: absolute;
		margin-bottom: 23px;
		bottom: 0;
		z-index: 1;
		left: 0;
		right: 0;
	}
}

@media(min-width: 992px) {
	.hp-faqs .listing-faq .accordion .description .template-module .video a {
		width: 95px;
		height: 95px;
	}
}


/* =========================================================================
   Listing-button (botoes de modulo)
   ========================================================================= */
.hp-faqs .listing-faq .accordion .description .listing.listing-button {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    margin: 30px 0;
}
.hp-faqs .listing-faq .accordion .description .listing.listing-button.left {
    justify-content: flex-start;
}
.hp-faqs .listing-faq .accordion .description .listing.listing-button.center {
    justify-content: center;
}
.hp-faqs .listing-faq .accordion .description .listing.listing-button.right {
    justify-content: flex-end;
}


/* =========================================================================
   TABS normais (.tabs.listing) — replicado de hp.css que tinha
   `.index .listing .accordion ...` (regras genericas que entretanto foram
   removidas durante a limpeza dos conflitos com FAQs).
   ---------------------------------------------------------------------
   Estrutura:
       <section class="tabs listing">
           <div class="container">
               <h2>...</h2>
               <div class="items">
                   <div class="accordion">
                       <div role="button">
                           <p class="h3">...</p>
                           <div class="toggle"></div>
                       </div>
                       <div class="description">...</div>
                   </div>
               </div>
           </div>
       </section>
   ========================================================================= */
.index .tabs.listing .accordion {
    background-color: white;
    box-shadow: 0px 17px 29px 0 rgba(0, 0, 0, 0.04);
}
.index .tabs.listing .accordion + .accordion {
    margin-top: 9px;
}
.index.rounded .tabs.listing .accordion {
    border-radius: 30px;
}
.index .tabs.listing .accordion > div:first-of-type > .h3 {
    font-size: 20.5px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: normal;
    text-align: left;
    color: var(--secondary);
    margin: 0;
    transition: var(--transition);
    -webkit-transition: var(--transition);
    text-transform: none;
}
.index .tabs.listing .accordion.open > div:first-of-type > .h3 {
    color: var(--primary);
}
.index .tabs.listing .accordion > div {
    position: relative;
    padding: 20px 25px;
    cursor: pointer;
    transition: var(--transition);
    -webkit-transition: var(--transition);
}
.index .tabs.listing .accordion > div:first-of-type > .h3 {
    padding-right: 33px;
    max-width: 760px;
    pointer-events: none;
}
.index .tabs.listing .accordion .toggle {
    height: 14px;
    width: 14px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 23px;
    margin: auto;
    transition: var(--transition);
    -webkit-transition: var(--transition);
    pointer-events: none;
}
.index .tabs.listing .accordion .toggle:hover {
    transform: rotate(90deg);
}
.index .tabs.listing .accordion.open .toggle:hover {
    transform: rotate(0);
}
.index .tabs.listing .accordion .toggle::after {
    content: "";
    position: absolute;
    top: 2px;
    bottom: 0;
    mask-image: url(/bluesky/assets/img/template/arrow.svg);
    -webkit-mask-image: url(/bluesky/assets/img/template/arrow.svg);
    mask-repeat: no-repeat;
    mask-size: contain;
    mask-position: center center;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    -webkit-mask-position: center center;
    margin: auto;
    height: 9px;
    width: 100%;
    background-color: var(--secondary);
    transition: var(--transition);
    -webkit-transition: var(--transition);
}
.index .tabs.listing .accordion.open .toggle::after,
.index .tabs.listing .accordion.active .toggle::after {
    transform: rotate(180deg);
    background-color: var(--primary);
}

.index .tabs.listing .accordion .description {
    padding: 0 25px;
    max-height: 0;
    overflow: hidden;
    transition: var(--transition);
    cursor: default;
}

.index .tabs.listing .accordion.open .description {
    padding: 0 25 20px;
}
.index .tabs.listing .accordion.active .description {
    max-height: none;
}
.index .tabs.listing .accordion .description p,
.index .tabs.listing .accordion .description ul,
.index .tabs.listing .accordion .description ol {
    font-size: 18px;
    font-weight: 300;
    line-height: 1.36;
    letter-spacing: normal;
    text-align: left;
    color: var(--third);
}
.index .tabs.listing .accordion .description strong {
    font-weight: 600;
}
.index .tabs.listing .accordion .description > *:first-child {
    margin-top: 5px !important;
}
.index .tabs.listing .accordion .description > *:last-child {
    margin-bottom: 30px !important;
}
.index .tabs.listing .accordion .description a {
    color: var(--primary);
    font-weight: 600;
    border-bottom: 1px dotted transparent;
}
.index .tabs.listing .accordion .description a:hover {
    border-bottom: 1px dotted currentColor;
}



@media (min-width: 768px) {
    .index .tabs.listing .accordion > div:first-of-type:hover > .h3 {
        color: var(--primary);
    }
    .index .tabs.listing .accordion > div:hover .toggle::after {
        background-color: var(--primary);
    }

    .index .tabs.listing .container > h2 {
        font-size: 40px;
        line-height: 1.13;
        letter-spacing: normal;
        margin-bottom: 60px;
    }
    .index .tabs.listing .accordion > div:first-of-type > .h3 {
        font-size: 22px;
        line-height: 1.34;
    }
    .index .tabs.listing .accordion > div {
        padding: 42px 50px;
    }
    .index .tabs.listing .accordion .toggle {
        height: 34px;
        width: 34px;
        right: 40px;
    }
    .index .tabs.listing .accordion .description {
        padding: 0 50px;
    }
    .index .tabs.listing .accordion.open .description {
        padding: 0 50px 42px;
    }
    .index .tabs.listing .accordion .description > *:first-child {
        margin-top: 0 !important;
    }
    .index .tabs.listing .accordion .description > *:last-child {
        margin-bottom: 47px !important;
    }
    .index .tabs.listing .accordion .description p,
    .index .tabs.listing .accordion .description ul,
    .index .tabs.listing .accordion .description ol {
        font-size: 20.5px;
        line-height: 1.44;
    }
}



/************************************/
/********** BUTTON LISTING **********/
/* Replicado de listings.css 1317-1358 com prefixo .hp-faqs ... */
/************************************/

.hp-faqs .listing-faq .accordion .description .listing.listing-button .items {
	font-size: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.hp-faqs .listing-faq .accordion .description .listing.listing-button .button {
	padding: 17px 31px 16.5px;
}

.hp-faqs .listing-faq .accordion .description .listing.listing-button .items.text-left {
	justify-content: flex-start;
}

.hp-faqs .listing-faq .accordion .description .listing.listing-button.center .items,
.hp-faqs .listing-faq .accordion .description .listing.listing-button .items.text-center {
	justify-content: center;
}

.hp-faqs .listing-faq .accordion .description .listing.listing-button.right .items,
.hp-faqs .listing-faq .accordion .description .listing.listing-button .items.text-right {
	justify-content: flex-end;
}

@media (max-width: 768px) {
	.hp-faqs .listing-faq .accordion .description .listing.listing-button h3 {
		font-size: 1.75rem;
		line-height: 1.14;
	}

	.hp-faqs .listing-faq .accordion .description .listing.listing-button .button {
		font-size: 14px;
        padding: 10px 20px;
        line-height: 1.43;
		letter-spacing: normal;
	}

	.hp-faqs .listing-faq .accordion .description .listing.listing-button .items {
		gap: 9px;
	}
}


/* =========================================================================
   Blockquote / p big / ul / ol — replicado de template.css linhas 663-806
   ---------------------------------------------------------------------
   No template original os seletores sao `.template blockquote`, `.template p big`,
   `.template ul`, `.template ol`, `.listing .accordion .description ul li::before`
   e `.listing .accordion .description ol li::before`. Como o hp.css carrega antes
   e tem regras `.index .listing .accordion .description > *` com `!important`
   nas margens, precisamos de prefixar tudo com
   `.hp-faqs .listing-faq .accordion .description` para vencer specificity + ordem.
   ========================================================================= */

.hp-faqs .listing-faq .accordion .description blockquote > *,
.hp-faqs .listing-faq .accordion .description p big {
    font-family: var(--font-family-2);
    position: relative;
    display: block;
    font-size: 1.375rem;
    font-weight: 600;
    line-height: 1.45;
    text-align: left;
    padding: 0 0 0 85px;
    letter-spacing: normal;
    color: var(--secondary);
}

.hp-faqs .listing-faq .accordion .description blockquote,
.hp-faqs .listing-faq .accordion .description p big {
    padding-right: 60px;
}

.hp-faqs .listing-faq .accordion .description p big,
.hp-faqs .listing-faq .accordion .description blockquote {
    position: relative;
    padding-block: 40px;
}

.hp-faqs .listing-faq .accordion .description p:has(> big),
.hp-faqs .listing-faq .accordion .description blockquote {
    margin-inline: 0;
    margin-block: 50px;
    margin-bottom: 50px;
}

.hp-faqs .listing-faq .accordion .description p:has(> big) {
    margin-top: 47px;
}

.hp-faqs .listing-faq .accordion .description blockquote::after,
.hp-faqs .listing-faq .accordion .description p big::before {
    content: ' ';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: var(--primary);
    opacity: 0.07;
}

.rounded .hp-faqs .listing-faq .accordion .description blockquote::after,
.rounded .hp-faqs .listing-faq .accordion .description p big::before {
    border-radius: 30px;
}

.hp-faqs .listing-faq .accordion .description big::after {
    content: ' ';
    background-color: var(--primary);
    width: 5px;
    height: calc(100% - 80px);
    display: block;
    position: absolute;
    top: 35px;
    left: 60px;
    margin-block: 5px;
    border-radius: 2.5px;
}

.hp-faqs .listing-faq .accordion .description blockquote::before {
    content: '';
    -webkit-mask-image: url(/bluesky/assets/img/template/quote.svg);
    mask-image: url(/bluesky/assets/img/template/quote.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
    display: block;
    width: 37px;
    height: 30px;
    position: absolute;
    top: 35px;
    left: 27px;
}

.hp-faqs .listing-faq .accordion .description blockquote p {
    padding-top: 0;
    margin: 0;
}

.hp-faqs .listing-faq .accordion .description .template-module blockquote small,
.hp-faqs .listing-faq .accordion .description blockquote small {
    color: var(--primary);
    font-weight: bold;
}

/* ---- Listas (ul / ol) ---- */
.hp-faqs .listing-faq .accordion .description ul,
.hp-faqs .listing-faq .accordion .description ol {
    list-style-type: none;
    margin: 0;
    padding-block: 0px;
    margin-block: 30px;
    counter-reset: item;
    padding-left: 2em;
}

.hp-faqs .listing-faq .accordion .description ul li::before {
    content: "";
    display: inline-block;
    height: 16px;
    width: 1.25rem;
    margin-left: -1.9em;
    margin-right: 1rem;
    -webkit-mask-image: url(/bluesky/assets/img/template/bullet.svg);
    mask-image: url(/bluesky/assets/img/template/bullet.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: var(--primary);
    align-items: center;
}

.hp-faqs .listing-faq .accordion .description ol li::before {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: normal;
    text-align: left;
    color: var(--primary);
    counter-increment: item;
    content: counter(item) ".";
    display: inline-block;
    margin-left: -35px;
    margin-right: 18px;
    width: 16px;
}


/* =========================================================================
   @media (max-width: 768px) — replicado de template.css linhas 1057-1131
   ========================================================================= */
@media (max-width: 768px) {
    .hp-faqs .listing-faq .accordion .description big::after {
        left: 0px;
        margin-block: 0;
        height: calc(100% - 70px);
    }

    .hp-faqs .listing-faq .accordion .description blockquote p,
    .hp-faqs .listing-faq .accordion .description p big {
        font-size: 19px;
        padding: 30px 0 30px 30px;
        line-height: 1.37;
    }

    .rounded .hp-faqs .listing-faq .accordion .description blockquote::after,
    .rounded .hp-faqs .listing-faq .accordion .description p big::before {
        border-radius: 0;
    }

    .hp-faqs .listing-faq .accordion .description blockquote::after,
    .hp-faqs .listing-faq .accordion .description p big::before {
        width: 100vw;
        z-index: -1;
        left: 50%;
        transform: translateX(-50%);
    }

    .hp-faqs .listing-faq .item.accordion blockquote::after,
    .hp-faqs .listing-faq .item.accordion p big::before {
        width: calc(100vw - 40px);
        z-index: 1;
    }

    .hp-faqs .listing-faq .accordion .description blockquote p {
        padding: 0 0 0 30px;
    }

    .hp-faqs .listing-faq .accordion .description p big {
        padding: 30px 0px 30px 30px;
    }

    .hp-faqs .listing-faq .accordion .description ul,
    .hp-faqs .listing-faq .accordion .description ol {
        counter-reset: item;
        padding-left: 2em;
    }

    .hp-faqs .listing-faq .accordion .description ul li::before {
        height: 14px;
        width: 18px;
        margin-right: 11px;
        margin-left: -30px;
    }

    .hp-faqs .listing-faq .accordion .description blockquote::before {
        top: 40px;
        left: -5px;
        width: 26px;
        height: 21px;
    }

    .hp-faqs .listing-faq .accordion .description blockquote {
        padding-right: 25px;
    }

    .hp-faqs .listing-faq .accordion .description ol li::before {
        margin-left: -30px;
        margin-right: 14px;
        font-size: 18px;
    }
}


.cta .container h2,
.cta .container h3,
.cta .container h4,
.cta .container h5,
.cta .container .h3 {
	font-size: 26px;
	font-weight: normal;
	font-stretch: normal;
	font-style: normal;
	line-height: 1.28;
	text-align: center;
	max-width: 730px;
	margin: 0 auto 18px;
	color: var(--white);
        font-family: var(--font-family-2);
}

.cta.transparent .container h2,
.cta.transparent .container h3,
.cta.transparent .container h4,
.cta.transparent .container h5,
.cta.transparent .container .h3,
.cta.grey .container h2,
.cta.grey .container h3,
.cta.grey .container h4,
.cta.grey .container h5,
.cta.grey .container .h3 {
	color: var(--secondary);
}


.template-module .cta {
	overflow: hidden;
}

.template-module .cta.transparent,
.template-module .cta.grey {
	background-color: transparent;
}

.template-module .cta.transparent::before,
.template-module .cta.grey::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	pointer-events: none;
}

.template-module .cta.transparent::before {
	background: var(--primary);
	opacity: .1;
}

.template-module .cta.grey::before {
	background: #f8f8f8;
}

.template-module .cta > *:not(.image) {
	position: relative;
}

.template-module .cta.transparent h2,
.template-module .cta.transparent h3,
.template-module .cta.transparent h4,
.template-module .cta.transparent h5,
.template-module .cta.transparent .h3,
.template-module .cta.transparent p,
.template-module .cta.grey h2,
.template-module .cta.grey h3,
.template-module .cta.grey h4,
.template-module .cta.grey h5,
.template-module .cta.grey .h3,
.template-module .cta.grey p {
	color: var(--secondary);
}

.template-module .cta > .image {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	padding: 0;
	aspect-ratio: auto;
}

.template-module .cta > .image img {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.template-module .cta.image {
	aspect-ratio: auto;
}

@media (min-width: 992px) {
	.template-module .cta.image {
		min-height: 352px;
	}
}

.template-module .cta.image {
	display: grid;
	align-content: center;
}


.template-module .cta.image > .button {
	justify-self: center;
}


/* ------------------------------------------------------------------
   Banner da Landing Page (.banners-lp): imagem de um lado, texto do
   outro, como nas LPs do Instituto de Implantologia. As medidas abaixo
   vêm do estilos.css deles (.banners), não são inventadas.

   NÃO mexer no `display` do .slide: o tiny-slider põe-nos lado a lado no
   carrossel e, ao forçar flex, empilham-se e a página fica em branco.
   ------------------------------------------------------------------ */
.banners-lp .slider .slide {
    position: relative;
}

/* a caixa tem sempre a proporcao do recorte da LP (1000x883): num website as imagens vem
   com o recorte da homepage (2000x1250) e o banner ficava baixo */
.banners-lp .slider .slide .img {
    width: 50%;
    margin-left: 50%;
    height: auto;
    aspect-ratio: 1000 / 883;
}

.banners-lp .slider .slide .img img {
    height: 100%;
    object-fit: cover;
}

.banners-lp .slider .slide .img.video {
    aspect-ratio: 1000 / 883;
}

.rounded .banners-lp .slider .slide .img,
.rounded .banners-lp .slider .slide .img img {
    border-radius: 0;
    border-bottom-left-radius: 50px;
}

.banners-lp .slider .slide .img::before,
.banners-lp .slider .slide:has(.subtitle) .img::before {
    display: none;
}

.banners-lp .slider .slide .subtitle {
    left: 0;
    right: auto;
    width: 50%;
    max-width: none;
    margin: 0;
    padding: 50px 0 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
}

.banners-lp .slider .slide .subtitle > * {
    width: 100%;
    max-width: 500px;
}

.banners-lp .slider .slide .subtitle h2 {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.07;
    letter-spacing: -0.3px;
    text-transform: none;
    text-align: center;
    color: var(--secondary);
    margin: 0 0 30px;
}

.banners-lp .slider .slide .subtitle p {
    font-size: 16px;
    font-weight: 300;
    line-height: 1.38;
    text-align: center;
    color: var(--third);
    margin: 0 0 29px;
}

.banners-lp .slider .slide .subtitle div {
    justify-content: center;
    margin-top: 0;
}

.banners-lp .button.button-fill::before {
    background-color: var(--primary);
    border: 0;
}

@media (min-width: 1024px) {
    .banners-lp .slider .slide .subtitle {
        padding: 90px 80px 30px;
    }
    .banners-lp .slider .slide .subtitle h2 {
        font-size: 50px;
        line-height: 1;
        letter-spacing: -0.5px;
        text-align: left;
    }
    .banners-lp .slider .slide .subtitle p {
        font-size: 18px;
        line-height: 1.56;
        text-align: left;
    }
    .banners-lp .slider .slide .subtitle div {
        justify-content: flex-start;
    }
}

@media (min-width: 1200px) {
    .banners-lp .slider .slide .subtitle {
        padding: 80px 130px 85px;
    }
}

@media (min-width: 1024px) and (max-height: 800px) {
    .banners-lp .slider .slide .subtitle {
        padding: 80px 70px 85px;
    }
}

.banners-lp .tns-nav {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    right: auto;
    width: auto;
    background: transparent;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 35px;
    padding: 20px 20px 32px 41px;
    z-index: 2;
}

@media (max-width: 1023px) {
    .banners-lp .slider .slide .img {
        width: 100%;
        margin-left: 0;
    }
    .banners-lp .slider .slide .subtitle {
        position: static;
        width: 100%;
        padding: 32px 16px;
    }
    .banners-lp .slider .slide .subtitle h2 {
        font-size: 24px;
    }
    .banners-lp .tns-nav {
        top: auto;
        bottom: 12px;
        left: 0;
        right: 0;
        margin: 0;
        width: auto;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding: 0;
        gap: 12px;
    }
}

@media (max-width: 767px) {
    body.landing-page header .header-content > div:not(.header-menu) > .button {
        display: inline-block;
    }
}

.side-pp {
    position: fixed;
    top: 0;
    right: -100%;
    height: 100vh;
    width: 90%;
    max-width: 485px;
    background-color: white;
    transition: var(--transition);
    display: flex;
    z-index: 1000;
}

.side-pp.opened {
    right: 0;
}

.side-pp > div {
    width: 100%;
    height: 100%;
    overflow-y: auto;
    padding: 50px 20px;
}

.side-pp .close {
    position: absolute;
    top: 20px;
    right: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    transform: rotate(45deg);
    z-index: 12;
}

.side-pp .close:hover {
    transform: rotate(-45deg);
}

.side-pp .close::before,
.side-pp .close::after {
    content: "";
    position: absolute;
    border-radius: 2px;
    background-color: var(--primary);
}

.side-pp .close::before {
    width: 100%;
    height: 2px;
}

.side-pp .close::after {
    width: 2px;
    height: 100%;
}

.side-form a.pp {
    cursor: pointer;
}

@media (min-width: 768px) {
    .side-pp {
        width: 100%;
        max-width: 525px;
        padding: 95px 35px;
    }
}

/* ==============================================================================
   10. TIPOGRAFIA ZEPLIN (CAIS 0. Homepage - Desktop) - 26/10/2026
   Só no site CAIS (não mexe nos microsites vars_b / vars_c).
   ============================================================================== */

/* Texto corrido em Gotham */
html:not(.vars_b, .vars_c) .hp_texto .container p,
html:not(.vars_b, .vars_c) :is(.template, .index :where(main)) p:not(:where(section:not(.content,.related-section)) *),
html:not(.vars_b, .vars_c) .banners .slider .slide .subtitle p,
html:not(.vars_b, .vars_c) footer .container,
html:not(.vars_b, .vars_c) footer .container a,
html:not(.vars_b, .vars_c) .hp-faqs .listing-faq .accordion > div:first-of-type > h3,
html:not(.vars_b, .vars_c) .hp-faqs .listing-faq .accordion > div:first-of-type > .h3,
html:not(.vars_b, .vars_c) .list-article .list-bot-content > h2 > a,
html:not(.vars_b, .vars_c) .list-article .list-bot-content > h3 > a,
html:not(.vars_b, .vars_c) .list-article .list-bot-content > a,
html:not(.vars_b, .vars_c) :is(.index, .template) section.colunas .itens h3 {
    font-family: var(--font-family-2);
}

/* Pesos (todas as larguras) */
html:not(.vars_b, .vars_c) .banners .slider .slide .subtitle h2 { font-weight: normal; }
html:not(.vars_b, .vars_c) .cta .container p,
html:not(.vars_b, .vars_c) .hp-faqs .header h2,
html:not(.vars_b, .vars_c) .hp-faqs .header .h2,
html:not(.vars_b, .vars_c) .hp-list .header h2,
html:not(.vars_b, .vars_c) footer > .newsletter .container h2,
html:not(.vars_b, .vars_c) .hp-faqs .listing-faq .accordion > div:first-of-type > h3,
html:not(.vars_b, .vars_c) .hp-faqs .listing-faq .accordion > div:first-of-type > .h3,
html:not(.vars_b, .vars_c) .list-article .list-bot-content > h2 > a,
html:not(.vars_b, .vars_c) .list-article .list-bot-content > h3 > a,
html:not(.vars_b, .vars_c) .list-article .list-bot-content > a,
html:not(.vars_b, .vars_c) :is(.index, .template) section.colunas .itens h3,
html:not(.vars_b, .vars_c) header .header-content .button,
html:not(.vars_b, .vars_c) header .header-content div .select-wrapper .custom-select .placeholder,
html:not(.vars_b, .vars_c) .list-article .list-bot-content span { font-weight: 400; }
html:not(.vars_b, .vars_c) :is(.banners, .hp_texto, .cta) .button,
/* html:not(.vars_b, .vars_c) :is(.index, .template) section.colunas.icon .itens p + .button { font-weight: 300; } */
html:not(.vars_b, .vars_c) .hp_texto .container .header h2, html:not(.vars_b, .vars_c) .hp_texto .container .header > h3:not(.h4) {font-weight: 300; }

/* Tamanhos desktop */
@media(min-width: 992px) {
    html:not(.vars_b, .vars_c) .banners .slider .slide .subtitle h2 { font-size: 60px; line-height: 1; }
    html:not(.vars_b, .vars_c) .cta .container p { font-size: 60px; line-height: 1; }
    html:not(.vars_b, .vars_c) .hp_texto .container .header h2, html:not(.vars_b, .vars_c) .hp_texto .container .header > h3:not(.h4) { font-size: 90px; }
    html:not(.vars_b, .vars_c) .hp_texto .container p { line-height: 28px; }
    html:not(.vars_b, .vars_c) :is(.template, .index :where(main)) p:not(:where(section:not(.content,.related-section)) *) { font-size: 18px; line-height: 28px; }
    html:not(.vars_b, .vars_c) .list-article .list-bot-content > h2 > a,
    html:not(.vars_b, .vars_c) .list-article .list-bot-content > h3 > a,
    html:not(.vars_b, .vars_c) .list-article .list-bot-content > a { line-height: 29.5px; }
    html:not(.vars_b, .vars_c) :is(.index, .template) section.colunas .itens h3 { line-height: 26px; }
    html:not(.vars_b, .vars_c) header .header-content>div>.header-menu > ul > li > a { font-size: 16px; }
    html:not(.vars_b, .vars_c) .list-article .list-bot-content span { font-size: 12px; }
    html:not(.vars_b, .vars_c) header .header-content div .select-wrapper .custom-select .placeholder { line-height: 18px; }
    html:not(.vars_b, .vars_c) :is(.banners, .hp_texto, .cta) .button,
    html:not(.vars_b, .vars_c) :is(.index, .template) section.colunas.icon .itens p + .button { font-size: 13px; }
    html:not(.vars_b, .vars_c) .banners .slider .btn-video { font-size: 10px; line-height: 18px; }
}

/* Ajustes após medição no site de desenvolvimento (seletores reais) */
html:not(.vars_b, .vars_c) footer > .newsletter .container h2 { font-family: var(--font-family); }
html:not(.vars_b, .vars_c) .listing-tabs .accordion > div > h3,
html:not(.vars_b, .vars_c) .listing-tabs .accordion > div > .h3 { font-family: var(--font-family-2); font-weight: 400; }
/* html:not(.vars_b, .vars_c) .listing-tabs .header h2,
html:not(.vars_b, .vars_c) .listing-tabs .header .h2,
html:not(.vars_b, .vars_c) .template-module.colunas .itens h2 { font-weight: 400; } */
html:not(.vars_b, .vars_c) .banners .video-button a { font-weight: 300; }
html:not(.vars_b, .vars_c) .hp-list .header a { font-weight: normal;text-transform: uppercase; }

@media(min-width: 992px) {
    html:not(.vars_b, .vars_c) header .header-content .header-menu > ul > li > a { font-size: 16px; }
    html:not(.vars_b, .vars_c) .listing-tabs .header h2,
    html:not(.vars_b, .vars_c) .listing-tabs .header .h2,
    html:not(.vars_b, .vars_c) .template-module.colunas .itens h2 {         font-size: 40px;
        line-height: 40px; }
    html:not(.vars_b, .vars_c) .listing-tabs .accordion > div > h3,
    html:not(.vars_b, .vars_c) .listing-tabs .accordion > div > .h3 { font-size: 22px; line-height: 29.5px; }
    html:not(.vars_b, .vars_c) .banners .video-button a { font-size: 10px; line-height: 18px; }
    html:not(.vars_b, .vars_c) .hp-list .header a { font-size: 13px; }
    html:not(.vars_b, .vars_c) .list-article .list-bot-content span,
    html:not(.vars_b, .vars_c) .list-article .list-bot-content span * { line-height: 20px; }
    html:not(.vars_b, .vars_c) footer > .newsletter .container h2 { line-height: 40px; }
}
html:not(.vars_b, .vars_c) .listing.listing-tabs .accordion > div:first-of-type > h3,
html:not(.vars_b, .vars_c) .listing.listing-tabs .accordion > div:first-of-type > .h3 { font-weight: 400; }

/* Header: botão "Fale connosco" e seletor de idioma (Zeplin: caixas 31px, contorno branco 1px, sem fundo) */
@media(min-width: 992px) {
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content .button {
        height: 31px;
        padding: 6px 20px;
        border: 1px solid var(--white);
        font-size: 12px;
        font-weight: 400;
        line-height: 18px;
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content .button::before {
        background-color: transparent;
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content .select-wrapper,
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content .select-wrapper .custom-select {
        height: 31px;
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select > .placeholder,
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select.isSelected > .placeholder {
        height: 31px;
        padding: 6px 0 6px 20px;
        border: 1px solid var(--white);
        background-color: transparent;
        line-height: 18px;
    }
}

@media(min-width: 992px) {
    /* Dropdown de idioma aberto: continua a caixa (mesma largura, contorno branco, sem linha a separar) */
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select.isSelected.open > div {
        background: rgba(255, 255, 255, .15); /* branco transparente sobre o banner */
        backdrop-filter: blur(4px);
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select.isSelected.open > .placeholder {
        border-bottom-color: transparent;
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select.open .options-wrapper {
        border: 1px solid var(--white);
        border-top: none;
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .custom-select .options > div {
        padding: 0 0 7px;
        font-weight: 400;
        line-height: 18px;
        letter-spacing: normal;
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .custom-select.custom-select.isSelected.open .options > div:hover {
        color: var(--white);
        opacity: .6;
    }

    /* Pesquisa na barra: lupa 15px a 20px do seletor */
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content > div > .search-form + .select-wrapper {
        margin-left: 20px;
    }

    /* Header fixo (fundo branco): contornos e texto passam a preto */
    html:not(.vars_b, .vars_c) body:not(.landing-page) header.fixed .header-content .button,
    html:not(.vars_b, .vars_c) body:not(.landing-page) header.fixed .header-content div .select-wrapper .custom-select > .placeholder,
    html:not(.vars_b, .vars_c) body:not(.landing-page) header.fixed .header-content div .select-wrapper .custom-select.isSelected > .placeholder,
    html:not(.vars_b, .vars_c) body:not(.landing-page) header.fixed .header-content div .select-wrapper .custom-select.open .options-wrapper {
        border-color: var(--black);
        color: var(--black);
    }
    /* aberto: sem linha entre o idioma escolhido e a lista (a regra de cima punha o contorno preto a toda a volta) */
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select.open > .placeholder,
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select.isSelected.open > .placeholder {
        border-bottom-color: transparent;
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header.fixed .header-content div .select-wrapper .custom-select.isSelected.open > div {
        background: var(--white);
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header.fixed .header-content div .custom-select.custom-select.isSelected.open .options > div:hover {
        color: var(--black);
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header.fixed .header-content > div > .search-form button::before {
        background-color: var(--black);
    }
}

/* Galeria + texto (M10): títulos e texto iguais aos módulos de colunas */
html:not(.vars_b, .vars_c) .galeria_txt .container h2 { font-family: var(--font-family); font-weight: 400; letter-spacing: normal; }
html:not(.vars_b, .vars_c) .galeria_txt .container p,
html:not(.vars_b, .vars_c) .galeria_txt .container .cont > div { font-family: var(--font-family-2); font-weight: 300; letter-spacing: normal; color: rgb(113, 113, 113); }
@media(min-width: 992px) {
    html:not(.vars_b, .vars_c) .galeria_txt .container h2 { font-size: 40px; line-height: 45px; }
    html:not(.vars_b, .vars_c) .galeria_txt .container p,
    html:not(.vars_b, .vars_c) .galeria_txt .container .cont > div { font-size: 18px; line-height: 28px; }
}

/* Barra newsletter (Zeplin): fundo bege, texto/logo/seta escuros. A cor de fundo pode vir do BO (style inline) */
html:not(.vars_b, .vars_c) footer > .newsletter { background-color: #EEECE8; }
html:not(.vars_b, .vars_c) footer > .newsletter .container > *,
html:not(.vars_b, .vars_c) footer > .newsletter .container h2,
html:not(.vars_b, .vars_c) footer > .newsletter .container p { color: var(--primary); }
html:not(.vars_b, .vars_c) footer > .newsletter .container > div img { filter: brightness(0); }
html:not(.vars_b, .vars_c) footer .newsletter a:before { background-color: var(--primary); }
html:not(.vars_b, .vars_c) footer > .newsletter .container h2 { font-weight: 400; }
@media(min-width: 768px) {
    html:not(.vars_b, .vars_c) footer > .newsletter { padding-block: 38px; }
    html:not(.vars_b, .vars_c) footer > .newsletter .container { gap: 74px; }
    html:not(.vars_b, .vars_c) footer > .newsletter .container > div:last-of-type div p { margin-top: 5px; }
}

/* Miniaturas numeradas (M20): círculo preto, número "01." em Plex Mono branco, título em Plex Mono maiúsculas */
html:not(.vars_b, .vars_c) .listing.module20 { counter-reset: cais-num; }
html:not(.vars_b, .vars_c) .listing.module20 .image-item.number { counter-increment: cais-num; }
html:not(.vars_b, .vars_c) .listing.module20 .image-item.number .image > div::before { background: var(--black); opacity: 1; }
html:not(.vars_b, .vars_c) .listing.module20 .image-item.number .image span { font-size: 0; }
html:not(.vars_b, .vars_c) .listing.module20 .image-item.number .image span::after {
    content: counter(cais-num, decimal-leading-zero) ".";
    font-family: var(--font-family);
    font-size: 16px;
    font-weight: 300;
    line-height: 1;
    letter-spacing: normal;
    color: var(--white);
}
html:not(.vars_b, .vars_c) .listing.module20 .image-item.number .right p strong {
    display: block;
    margin-bottom: 15px;
    font-family: var(--font-family);
    font-size: 20px;
    font-weight: 400;
    line-height: 1.3;
    text-transform: uppercase;
    color: var(--black);
}
html:not(.vars_b, .vars_c) .listing.module20 .image-item.number .right p strong + br { display: none; }
@media(min-width: 992px) {
    html:not(.vars_b, .vars_c) .listing.module20 .image-item.number .image,
    html:not(.vars_b, .vars_c) .listing.module20 .image-item.number .image > div { width: 135px; height: 135px; }
    html:not(.vars_b, .vars_c) .listing.module20 .image-item.number .image span::after { font-size: 44px; }
    html:not(.vars_b, .vars_c) .listing.module20 .image-item.number .right p strong { font-size: 26px; margin-bottom: 20px; }
    html:not(.vars_b, .vars_c) .listing.module20 .image-item.number .right p { line-height: 28px; }
}


/* Seletor de idioma (sites): abrir e fechar suave - o fundo e o contorno acompanham a lista */
@media(min-width: 992px) {
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select > div,
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select > .placeholder {
        transition: background-color .35s ease, border-color .35s ease, backdrop-filter .35s ease;
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select .options-wrapper {
        transition: max-height .35s ease, opacity .25s ease, background-color .35s ease;
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select .options > div {
        opacity: 0;
        transform: translateY(-4px);
        transition: opacity .25s ease, transform .25s ease;
    }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content div .select-wrapper .custom-select.open .options > div {
        opacity: 1;
        transform: none;
        transition-delay: .1s;
    }
}

/* Botão "Fale connosco" do header (sites): o contorno passa para o ::before para crescer no hover como os outros botões */
@media(min-width: 992px) {
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content .button { border-color: transparent !important; }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header .header-content .button::before { border: 1px solid var(--white); }
    html:not(.vars_b, .vars_c) body:not(.landing-page) header.fixed .header-content .button::before { border-color: var(--black); }
}

/* FAQs (sites): lista com 980px de largura, como no Zeplin */
@media(min-width: 992px) {
    html:not(.vars_b, .vars_c) body:not(.landing-page) .listing.listing-tabs > .container-sm,
    html:not(.vars_b, .vars_c) body:not(.landing-page) .listing.listing-tabs .container.container-sm {
        max-width: calc(980px + 2 * 20px) !important; /* 980px de conteúdo + o padding lateral do container */
    }
}

/* Cartões com "Brevemente" (toggle do item no BO): imagem escurecida e aviso centrado */
.card-item .img.brevemente { position: relative; }
.card-item .img.brevemente::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, .45);
    pointer-events: none;
    z-index: 1;
}
.card-item .img.brevemente .brevemente-label {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-family);
    font-size: 22px;
    font-weight: 400;
    line-height: 1.2;
    text-transform: uppercase;
    color: var(--white);
    pointer-events: none;
}

/* Página Subscrever Newsletter (sites): tamanhos iguais aos do formulário de Contactos.
   !important: as regras do formulário no bluesky.css são mais específicas */
@media(min-width: 992px) {
    html:not(.vars_b, .vars_c) body.newsletter main .form :is(input, label:not(.privacy)) { font-size: 16px !important; line-height: 19.2px !important; }
    html:not(.vars_b, .vars_c) body.newsletter main .form .button { font-size: 13px !important; line-height: 19.5px !important; }
}

/* Formulários (Contactos e Newsletter, sites): aviso de campos obrigatórios e política iguais nos dois (Zeplin) */
html:not(.vars_b, .vars_c) body:not(.landing-page) main :is(.form, .module28) p:has(> small) { line-height: 11px !important; }
html:not(.vars_b, .vars_c) body:not(.landing-page) main :is(.form, .module28) p > small {
    font-family: var(--font-family-2) !important;
    font-size: 11px !important;
    font-weight: 300 !important;
    line-height: 11px !important;
    color: var(--black) !important;
}
html:not(.vars_b, .vars_c) body:not(.landing-page) main :is(.form, .module28) .checkbox-wrapper p,
html:not(.vars_b, .vars_c) body:not(.landing-page) main :is(.form, .module28) .checkbox-wrapper p * {
    font-size: 16px !important;
    line-height: 24px !important;
}
