:root{--cor-principal:navy;--cor-fundo-1:#FFF;--cor-fundo-2:#F4F7F9;--cor-texto:#1A1A24;--cor-texto-mutado:#5A6070;--accent-laranja:#FF6B35;--accent-ciano:#00C2D1;--accent-verde:#06D6A0;--accent-amarelo:#FFB703;--accent-roxo:#9D4EDD;--menu-height:80px;--azul-oceano:#0042b6;--dark-blue-purple:#1f1f6b;--primary-green:#4daf7c;--secondary-green-light:#4daf7c1a;--text-grey:#6c757d;--badge-purple:#6565c0;--badge-bg-purple:#6565c00d;--dot-green:#4daf7c;--play-icon-green:#16a085;--cert-icon-purple:#6565c0}
html{scroll-behavior:smooth!important}
em,i{margin-left:.25rem!important}
.font-raleway{font-family:'Raleway',Arial}
@keyframes balancar {
from{transform:rotate(-2deg)}
to{transform:rotate(2deg)}
}
@keyframes fadeIn {
from{opacity:0;transform:translateY(-5px)}
to{opacity:1;transform:translateY(0)}
}
@keyframes fadeUp {
to{opacity:1;transform:translateY(0)}
}
@keyframes zoomHero {
from{transform:scale(1.05)}
to{transform:scale(1.15)}
}
@keyframes zoomContinuo {
0%{transform:scale(1)}
50%{transform:scale(1.15)}
100%{transform:scale(1)}
}
@keyframes bounceArrow {
0%,100%{transform:translateY(0)}
50%{transform:translateY(8px)}
}
.elemento-rotacionando{animation:balancar 2s ease-in-out infinite alternate;transform-origin:center}
.fade-up{opacity:0;transform:translateY(50px);animation:fadeUp 3s ease forwards}
.img-zoom-animado{animation:zoomContinuo 20s ease-in-out infinite}
.rotate-hover{transition:transform .5s ease,box-shadow .5s ease}
.rotate-hover:hover{transform:rotate(1deg)}
.zoom-hover{transition:transform .3s ease,box-shadow .3s ease}
.zoom-hover:hover{transform:scale(1.05) translateY(-4px)}
.bg-light-soft{background-color:#f7f7f7}
.bg-gradient-amarelo-soft{background:linear-gradient(135deg,#FFF9DB,#FFF3BF,#FFEC99)}
.bg-gradient-azul-verde{background:linear-gradient(135deg,#0097DC 20%,#00BFD1 80%);box-shadow:0 20px 60px #0097dc40}
.bg-gradient-soft{background:linear-gradient(135deg,#00008014,#00bfd114)}
.bg-berry{background-color:#940074!important}
.bg-magenta{background-color:#D7005C!important}
.bg-coral{background-color:#FB6945!important}
.bg-laranja{background-color:#FFB343!important}
.bg-lima{background-color:#E9F871!important}
.text-azul-oceano{color:#00bfd1!important}
.text-berry{color:#940074!important}
.text-coral{color:#FB6945!important}
.text-laranja{color:#FFB343!important}
.text-lima{color:#cddc5a}
.text-magenta{color:#D7005C!important}
.text-gradient-azul-verde{background:linear-gradient(90deg,#0097DC,#00BFD1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:transparent}
.text-gradient{background:linear-gradient(90deg,navy,#00bfd1);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.alert-berry{color:#940074;background-color:#9400741a;border-color:#94007433!important}
.alert-coral{background-color:#9400741a;border-color:#94007433!important}
.alert-laranja{color:#484848;background-color:#ffb3434d;border-color:#ffb34380!important}
.alert-lima{background-color:#e9f8714d;border-color:#e9f87180!important}
.btn-magenta{background-color:#D7005C;border-color:#D7005C;color:#fff}
.btn-magenta:hover{background-color:#b8004e;border-color:#b8004e;color:#fff}
.btn-coral{background-color:#FB6945;border-color:#FB6945;color:#fff}
.btn-coral:hover{background-color:#e55532;border-color:#e55532;color:#fff}
.btn-laranja{background-color:#FFB343;border-color:#FFB343;color:#212529}
.btn-laranja:hover{background-color:#e69c2e;border-color:#e69c2e;color:#212529}
.btn-lima{background-color:#E9F871;border-color:#E9F871;color:#212529}
.btn-lima:hover{background-color:#d4e35c;border-color:#d4e35c;color:#212529}
.badge-custom{background:#dfe6ff;color:#1c2a5c;font-size:.75rem;padding:6px 12px}
.badge-top{position:absolute;top:-10px;left:50%;transform:translateX(-50%);padding:6px 14px;font-size:.7rem;border-radius:50px;z-index:10}
.hero-section{padding:20px 0}
.hero-section .small{font-size:.8rem!important}
.hero-wrapper{display:flex;justify-content:space-between;align-items:center;gap:40px}
.hero-full{min-height:55vh;background:url(./../assets/img/medicina-veterinaria/vet_17.jpg) center center no-repeat;background-size:cover;position:relative;overflow:hidden}
.hero-full::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#000080b3,#00008040)}
.hero-zoom{position:relative;background-color:#2a65b2}
.hero-zoom::before{content:"";position:absolute;inset:0;background:linear-gradient(#000080d9,#000080cc),url(./../assets/img/medicina-veterinaria/vet_17.jpg) no-repeat center center;background-size:cover;transform:scale(1.5);animation:zoomHero 8s ease-in-out infinite alternate;z-index:0}
.hero-zoom > *{position:relative;z-index:2}
.hero-title{font-size:48px;font-weight:700;line-height:1.15;margin-bottom:20px;color:var(--dark-blue-purple)}
.hero-title .green-text{color:var(--primary-green)}
.hero-description{font-size:16px;color:var(--text-grey);margin-bottom:35px;font-weight:400}
.button-group{display:flex;gap:15px;margin-bottom:50px}
.image-stack{position:relative;max-width:500px;width:100%}
.image-wrapper{overflow:hidden;border-radius:6px;box-shadow:0 15px 50px #0003;background-color:#e0e0e0}
.main-image{width:100%;height:auto;display:block;aspect-ratio:1.1 / 1;object-fit:cover}
.info-card{position:absolute;background-color:var(--white);padding:10px 18px;border-radius:8px;box-shadow:0 8px 30px #00000014;display:flex;align-items:center;gap:12px;min-width:190px;z-index:2}
.info-card .card-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%}
.icon-lab{background-color:var(--secondary-green-light);color:var(--primary-green)}
.info-card .card-text{display:flex;flex-direction:column}
.info-card .card-title{font-size:15px;font-weight:600;margin:0;line-height:1.2}
.info-card .card-subtitle{font-size:13px;color:var(--text-grey);margin:0;white-space:nowrap}
.card-top-left{bottom:20px;left:20px}
.card-bottom-right{bottom:30px;right:20px}
.media-card{overflow:hidden;border-radius:6px;box-shadow:0 10px 25px #00000014;transition:transform .3s ease,box-shadow .3s ease}
.media-card img{transition:transform .4s ease}
.media-card:hover{transform:translateY(-6px);box-shadow:0 15px 35px #0000001f}
.media-card:hover img{transform:scale(1.05)}
.media-card::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#0000808c 0%,#0000808c 20%,#ffffff26 60%,transparent 100%);pointer-events:none}
.iframe-responsivo{width:100%;height:auto;aspect-ratio:16 / 9;overflow:hidden;border:none!important;box-shadow:0 10px 25px #00000014}
.accordion-moderno .card{margin-bottom:12px;overflow:hidden;box-shadow:0 5px 15px #0000000d;transition:all .3s ease}
.accordion-moderno .card-header{background-color:#fff!important;border:1px solid #cdcdcd;border-radius:10px}
.accordion-moderno .card-body{background:#f8f9fa;padding:20px;animation:fadeIn .3s ease}
.accordion-btn{width:100%;background:#fff;border:none;text-align:left;font-size:1.05rem;color:navy;display:flex;justify-content:space-between;align-items:center;position:relative;transition:all .3s ease}
.accordion-btn::before{content:"";position:absolute;left:0;top:0;height:100%;width:4px;background:transparent;transition:background .3s ease}
.icon-plus{width:18px;height:18px;position:relative;transition:transform .3s ease}
.icon-plus::before,.icon-plus::after{content:"";position:absolute;background:#002877;transition:all .3s ease}
.icon-plus::before{width:100%;height:2px;top:8px;left:0}
.icon-plus::after{width:2px;height:100%;left:8px;top:0}
.accordion-btn:not(.collapsed) .icon-plus::after{transform:scaleY(0)}
.accordion-btn:not(.collapsed) .icon-plus{transform:rotate(180deg)}
.accordion-custom{background:#fff;font-size:1rem;color:#333;text-decoration:none;box-shadow:none;transition:all .2s ease}
.accordion-custom:hover{background:#e2e2e2;text-decoration:none}
.accordion-custom:focus{box-shadow:none;outline:none}
#mensalidades .accordion .card{border:0}
#mensalidades .accordion .card-header{border:0;padding:0}
.bento-grid{height:31.25rem}
.bento-grid_shorts{height:auto}
:first-child > .shorts:after{content:"";background:none}
.bento-card{border-radius:6px;overflow:hidden;position:relative;box-shadow:0 4px 15px #0000001a;background-color:#eee;height:80%}
.bento-card:hover img{transform:scale(1.05)}
.bento-card::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,#000080bf 0%,#0000808c 30%,#ffffff26 60%,transparent 100%);pointer-events:none}
.bento-content,.legenda-foto{position:absolute;bottom:10px;left:20px;right:20px;color:#fff;z-index:2}
.bento-content p{opacity:.9}
.bento-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.carousel-wrapper{overflow:hidden;position:relative}
.carousel-track{display:flex;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;cursor:grab;-ms-overflow-style:none;scrollbar-width:none;user-select:none}
.carousel-track::-webkit-scrollbar{display:none}
.carousel-track.active,.carousel-track.dragging{cursor:grabbing}
.carousel-track.dragging *{pointer-events:none}
.carousel-item-custom{flex:0 0 45%;margin-right:16px;scroll-snap-align:start}
#atividades .carousel-item-custom p{font-size:.75rem!important}
.carousel-arrows{align-items:center}
.carousel-btn{width:42px;height:42px;border-radius:50%;border:1px solid #e5e7eb;background:#fff;color:#0a1a60;display:flex;align-items:center;justify-content:center;transition:all .2s ease;cursor:pointer}
.carousel-btn:hover{background:#0a1a60;color:#fff;border-color:#0a1a60}
.carousel-btn:focus{outline:none}
.carousel-card{background-color:#EFF6FF}
.card-info{background:#fff;padding:18px 20px;transition:all .2s ease}
.card-info:hover{box-shadow:0 8px 20px #0000000d}
.icon-circle{width:45px;height:45px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.scroll-indicator{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);text-align:center;color:#fff;font-size:.85rem;text-decoration:none;opacity:.9;transition:opacity .3s ease}
.scroll-indicator:hover{opacity:1;text-decoration:none;color:#fff}
.scroll-indicator i{display:block;font-size:1.4rem;margin-top:6px;animation:bounceArrow 2s infinite}
@media (min-width: 992px) {
.carousel-item-custom{flex:0 0 30%}
}
@media (max-width: 991px) {
.carousel-card .d-flex{flex-direction:column;text-align:left}
.carousel-card .d-flex > div{margin-right:0!important;margin-bottom:12px}
.atividades-carousel .carousel-item-custom,.infraestrutura-carousel .carousel-item-custom{flex:0 0 85%;width:85%}
.atividades-carousel,.infraestrutura-carousel{padding-left:16px}
.atividades-carousel::after,.infraestrutura-carousel::after{content:"";position:absolute;right:0;top:0;width:40px;height:100%;background:linear-gradient(to right,transparent,#fff);pointer-events:none}
}
@media (max-width: 992px) {
.shorts > .embed-shorts-container{height:19rem}
.hero-wrapper{flex-direction:column-reverse;gap:60px}
.hero-title{font-size:38px}
.card-top-left{top:20px;left:10px}
.card-bottom-right{bottom:20px;right:10px}
}
@media (max-width: 768px) {
.bento-grid{height:auto}
.bento-card{height:250px;margin-bottom:1rem}
.col-md-6 .row{margin:0}
.card-info{padding:15px}
}
@media (max-width: 576px) {
.hero-title{font-size:32px}
.button-group{flex-direction:column;width:100%;margin-bottom:40px}
.button-group .btn{width:100%}
.info-card{padding:10px 14px;min-width:160px;gap:8px}
.info-card .card-icon{width:38px;height:38px}
.info-card .card-title{font-size:14px}
.info-card .card-subtitle{font-size:12px}
}
.card-localidades p{font-size:.8rem!important;color:#4B4B4B}
.localidades-card{box-shadow:0 2px 10px #0000001a;color:#444}
.localidades-info{display:flex;font-size:.82rem}
.localidades-info i{font-size:1.2rem;margin-right:10px;margin-top:2px}
.btn-warning-pulse-border{position:relative;border:1px solid #ffc107;animation:pulseBorder 2s infinite}
@keyframes pulseBorder {
0%{box-shadow:0 0 0 0 #ffe400cc}
70%{box-shadow:0 0 0 8px #ffe40014}
100%{box-shadow:0 0 0 0 #ffe40000}
}
.btn-azul-naval-pulse-border{position:relative;border:1px solid #0000f8;animation:pulseBorder2 2s infinite}
@keyframes pulseBorder2 {
0%{box-shadow:0 0 0 0 #000080cc}
70%{box-shadow:0 0 0 8px #00008014}
100%{box-shadow:0 0 0 0 #00008000}
}
.slide-in-right{animation:slideInRight .8s ease forwards}
@keyframes slideInRight {
from{opacity:0;transform:translateX(40px)}
to{opacity:1;transform:translateX(0)}
}
@media (min-width:992px) and (max-width: 1200px) {
.hero-section .display-4{font-size:2.5rem!important}
#cta-OV .h4{font-size:1.2rem!important}
}
.ov-image{border-radius:8px;max-width:320px;width:100%}
.video-wrapper{position:relative;overflow:hidden;border-radius:8px}
.video-thumb{position:relative;cursor:pointer;border-radius:8px}
.video-overlay{position:absolute;inset:0;background:#00000059;transition:.3s ease;border-radius:8px}
.play-cta{background:#fffffff2;padding:10px 20px;border-radius:50px;font-weight:600;color:navy;font-size:15px;transition:.3s ease}
.play-cta i{font-size:19px}
.video-thumb:hover .video-overlay{background:#00000080}
.video-thumb:hover .play-cta{transform:scale(1.05)}
@media (max-width: 440px) {
.play-cta i{font-size:16px!important}
.play-cta{font-size:12px;font-weight:400}
h2{font-size:1.7rem}
.hero-section .h2{font-size:1.9rem!important}
.hero-section .display-4{font-size:2.1rem!important}
#video-MV .h3{font-size:1.5rem!important}
#praticas .h6{font-size:.9rem!important}
.accordion-btn{font-size:.94rem!important}
}
.fade-up-praticas{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}
.fade-up-praticas.visible{opacity:1;transform:translateY(0)}
.fade-up-praticas:nth-child(1){transition-delay:.1s}
.fade-up-praticas:nth-child(2){transition-delay:.2s}
.fade-up-praticas:nth-child(3){transition-delay:.3s}
.fade-up-praticas:nth-child(4){transition-delay:.4s}
.carousel-btn{border:2px solid #ccc;background:#fff;border-radius:50%;padding:8px 12px;transition:all .3s ease;animation:borderPulse 2.8s ease-in-out infinite}
@keyframes borderPulse {
0%{border-color:#ccc}
50%{border-color:#ffca28}
100%{border-color:#ccc}
}
.bento-video-wrapper{position:relative;overflow:hidden;display:flex;flex-direction:column;height:100%}
.embed-shorts-container{position:relative;width:100%;height:100%;flex-grow:1;overflow:hidden}
@media (max-width: 768px) {
.embed-shorts-container{height:19rem}
}
.embed-shorts-container iframe{position:absolute;top:50%;left:50%;width:100%;height:100%;min-width:100%;min-height:100%;object-fit:cover;transform:translate(-50%,-50%);border:0}
.praticas-img{object-fit:cover;width:15.9375rem;height:15.9375rem}
.card-rounded{border-radius:12px}
.destaque-linha-amarela{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.5px;text-transform:uppercase;margin:0 0 10px;color:inherit}
.destaque-linha-amarela::before{content:"";width:24px;height:4px;border-radius:2px;display:inline-block;background:#ffd400}
.card-dest-beneficios:hover{text-decoration:none!important}
.card-dest-beneficios { position: relative; overflow: hidden; background-position: bottom; background-size: cover; background-repeat: no-repeat; background-image: linear-gradient(90deg, rgba(0, 0, 128, .95) 0, rgba(0, 16, 115, .85) 35%, rgba(0, 42, 133, .1) 100%), url('/beneficios/assets/img/banner_unip.jpg')}
.card-dest-beneficios::before {content: "";  position: absolute;  inset: 0;  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0, rgba(0, 0, 40, .16) 100%);  pointer-events: none;}
.card-dest-beneficios > *{position:relative;z-index:1}
.fonte-raleway{font-family:'Raleway','Rubik',Arial}
.text-warning{color:#ffd200!important}