
/* MASKOTIZATE WEB V6 CEO - refinamiento visual */
:root{
  --v6-lila:#8f6fd1;
  --v6-rosa:#ef9fc0;
  --v6-crema:#fff3df;
}
header{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.hero,.services-video-hero{isolation:isolate}
.hero video,.services-video-hero video{filter:saturate(1.04) contrast(1.02)}
.services-video-hero{min-height:clamp(420px,62vh,650px);overflow:hidden}
.services-video-hero video{width:100%;height:100%;object-fit:cover;object-position:center}
.services-video-overlay{background:linear-gradient(90deg,rgba(62,35,91,.72),rgba(111,53,181,.28) 55%,rgba(239,159,192,.18))}
.spa-service-card,.care-card,.extras-grid article{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.72);box-shadow:0 18px 45px rgba(93,58,130,.14)}
.spa-service-card:hover,.care-card:hover,.extras-grid article:hover{transform:translateY(-6px);box-shadow:0 24px 55px rgba(93,58,130,.20)}
.btn{transition:transform .25s ease,box-shadow .25s ease,filter .25s ease}
.btn:hover{transform:translateY(-2px) scale(1.02);filter:saturate(1.05)}
.paw-photo-frame{overflow:visible}
.paw-photo-frame img{transition:transform .45s ease,filter .45s ease}
.paw-photo-frame:hover img{transform:scale(1.025);filter:saturate(1.05)}
@media (max-width:760px){
  .services-video-hero{min-height:500px}
  .services-hero-copy{padding-top:110px;padding-bottom:70px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}


/* V6.1 - Servicio puerta a puerta restaurado */
.door-to-door-section{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff8ec 0%,#f8eafa 48%,#eee6ff 100%)}
.door-to-door-section::before,.door-to-door-section::after{content:"";position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}
.door-to-door-section::before{width:240px;height:240px;left:-90px;top:45px;background:rgba(239,159,192,.18)}
.door-to-door-section::after{width:300px;height:300px;right:-120px;bottom:-100px;background:rgba(143,111,209,.16)}
.door-to-door-card{position:relative;z-index:1;overflow:hidden;border:1px solid rgba(255,255,255,.9);border-radius:34px;background:rgba(255,255,255,.78);box-shadow:0 26px 70px rgba(93,58,130,.16);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.pet-ride{padding:30px 28px 0;background:linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,243,223,.65))}
.ride-track{position:relative;height:165px;overflow:hidden;border-radius:26px 26px 0 0;background:linear-gradient(180deg,#dff7ff 0 62%,#dff0d3 62% 78%,#d8d1d6 78% 100%)}
.ride-track::before{content:"";position:absolute;left:0;right:0;top:34px;height:52px;background:radial-gradient(circle at 12% 100%,#fff 0 22px,transparent 23px),radial-gradient(circle at 29% 100%,#fff 0 30px,transparent 31px),radial-gradient(circle at 54% 100%,#fff 0 24px,transparent 25px),radial-gradient(circle at 78% 100%,#fff 0 32px,transparent 33px),radial-gradient(circle at 94% 100%,#fff 0 23px,transparent 24px);opacity:.82}
.road-line{height:10px;margin:0 28px 28px;border-radius:0 0 18px 18px;background:repeating-linear-gradient(90deg,#fff 0 42px,transparent 42px 78px),#6f6570}
.pet-car{position:absolute;left:-150px;bottom:19px;width:140px;height:88px;animation:petDoorRide 9s linear infinite;filter:drop-shadow(0 10px 8px rgba(57,35,72,.22))}
.car-body{position:absolute;left:0;bottom:0;font-size:76px;line-height:1;transform:scaleX(-1)}
.happy-dog{position:absolute;z-index:2;left:41px;top:0;font-size:43px;animation:happyDogBounce .75s ease-in-out infinite alternate}
.road-paw,.road-heart{position:absolute;z-index:2;opacity:0;animation:rideSparkle 9s linear infinite;color:#8f6fd1;font-size:24px}
.road-heart{color:#ef78aa}.paw-one{left:18%;bottom:48px;animation-delay:1.6s}.heart-one{left:38%;top:35px;animation-delay:3s}.paw-two{left:63%;bottom:47px;animation-delay:5.1s}.heart-two{left:82%;top:48px;animation-delay:6.7s}
.transport-copy{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:28px;padding:32px;align-items:center}
.transport-copy h3{margin:.6rem 0 .65rem;font-size:clamp(1.45rem,2.4vw,2.1rem)}
.transport-copy p{margin:0;color:var(--muted,#665d6b)}
.transport-badge{display:inline-flex;padding:.45rem .8rem;border-radius:999px;background:#f4e7ff;color:#6f35b5;font-weight:800;font-size:.86rem}
.transport-rates{display:grid;gap:10px}
.transport-rates article{display:flex;justify-content:space-between;gap:18px;padding:15px 17px;border-radius:18px;background:linear-gradient(135deg,#fff,#fff3df);border:1px solid rgba(143,111,209,.18);box-shadow:0 9px 25px rgba(93,58,130,.08)}
.transport-rates span{font-weight:700}.transport-rates strong{white-space:nowrap;color:#6f35b5}
.transport-button{grid-column:1/-1;justify-self:center;margin-top:2px}
@keyframes petDoorRide{0%{left:-150px;transform:translateY(0)}45%{transform:translateY(-2px)}100%{left:calc(100% + 20px);transform:translateY(0)}}
@keyframes happyDogBounce{from{transform:translateY(1px) rotate(-3deg)}to{transform:translateY(-5px) rotate(3deg)}}
@keyframes rideSparkle{0%,12%,100%{opacity:0;transform:translateY(8px) scale(.6)}18%,28%{opacity:.85;transform:translateY(0) scale(1)}34%{opacity:0;transform:translateY(-8px) scale(.8)}}
@media (max-width:800px){.transport-copy{grid-template-columns:1fr}.pet-ride{padding:18px 14px 0}.road-line{margin:0 14px 18px}.ride-track{height:145px}.pet-car{animation-duration:7.5s}.transport-copy{padding:24px}.transport-button{width:100%;text-align:center}}
@media (prefers-reduced-motion:reduce){.pet-car{left:50%;transform:translateX(-50%);animation:none}.happy-dog,.road-paw,.road-heart{animation:none}.road-paw,.road-heart{opacity:.55}}

/* V6.2 CEO - logo original unificado */
.services-video-hero{position:relative;overflow:hidden}
.services-hero-watermark{
  position:absolute;left:72%;top:52%;transform:translate(-50%,-50%);
  width:min(620px,48vw);max-height:82%;object-fit:contain;
  opacity:.10;filter:grayscale(1) brightness(2.5);
  pointer-events:none;user-select:none;z-index:1;
}
.services-video-overlay{z-index:1}
.services-hero-copy{position:relative;z-index:2}
@media (max-width:900px){
  .services-hero-watermark{left:68%;width:min(520px,70vw);opacity:.085}
}
@media (max-width:640px){
  .services-hero-watermark{left:50%;top:44%;width:92vw;opacity:.07}
}

/* V6.3 CEO - subtitulos legibles en banners y fondos oscuros */
.hero .kicker,
.page-hero .kicker,
.services-video-hero .kicker,
.portfolio-video-hero .kicker,
.booking-hero .kicker,
.contact .kicker,
.portfolio-cta .kicker {
  color:#fff3df !important;
  font-weight:900;
  font-size:clamp(12px,1.05vw,15px);
  letter-spacing:.22em;
  line-height:1.55;
  text-shadow:0 2px 10px rgba(32,12,48,.78),0 0 18px rgba(255,243,223,.30);
}

.hero .kicker::before,
.page-hero .kicker::before,
.services-video-hero .kicker::before,
.portfolio-video-hero .kicker::before,
.booking-hero .kicker::before {
  content:"🐾";
  display:inline-block;
  margin-right:.55rem;
  letter-spacing:0;
  filter:drop-shadow(0 2px 5px rgba(32,12,48,.55));
  animation:v63PawPulse 2.6s ease-in-out infinite;
}

@keyframes v63PawPulse {
  0%,100%{transform:translateY(0) rotate(-6deg);opacity:.82}
  50%{transform:translateY(-2px) rotate(5deg);opacity:1}
}

@media (max-width:640px){
  .hero .kicker,
  .page-hero .kicker,
  .services-video-hero .kicker,
  .portfolio-video-hero .kicker,
  .booking-hero .kicker,
  .contact .kicker,
  .portfolio-cta .kicker {
    letter-spacing:.14em;
    font-size:12px;
  }
}

@media (prefers-reduced-motion:reduce){
  .hero .kicker::before,
  .page-hero .kicker::before,
  .services-video-hero .kicker::before,
  .portfolio-video-hero .kicker::before,
  .booking-hero .kicker::before{animation:none}
}


/* V6.4 CEO — Tarifas por raza, tamaño y pelaje */
.rates-section{background:linear-gradient(180deg,#fffafd 0%,#fbf1ff 55%,#fff9ed 100%);position:relative;overflow:hidden}
.rates-section:before,.rates-section:after{content:"";position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}
.rates-section:before{width:260px;height:260px;background:rgba(211,151,235,.18);top:5%;left:-90px}
.rates-section:after{width:320px;height:320px;background:rgba(255,216,170,.18);right:-120px;bottom:3%}
.rates-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:38px;position:relative;z-index:1}
.rate-card{background:rgba(255,255,255,.82);border:1px solid rgba(157,91,189,.18);border-radius:28px;padding:24px;box-shadow:0 20px 60px rgba(91,49,111,.09);backdrop-filter:blur(12px);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.rate-card:hover{transform:translateY(-6px);box-shadow:0 26px 70px rgba(91,49,111,.15);border-color:rgba(188,104,213,.38)}
.rate-card-head{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px dashed rgba(111,53,181,.2)}
.rate-card-head>span{display:grid;place-items:center;width:48px;height:48px;border-radius:17px;background:linear-gradient(135deg,#ead1ff,#ffd8ec);font-size:24px;box-shadow:0 8px 24px rgba(148,73,180,.16)}
.rate-card-head small{display:block;color:#8b55a7;text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:.72rem;margin-bottom:2px}
.rate-card-head h3{margin:0;color:#4b2c59;font-size:1.24rem;line-height:1.15}
.price-list{list-style:none;margin:0;padding:0;display:grid;gap:0}
.price-list li{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:10px 0;border-bottom:1px solid rgba(86,50,101,.09);font-size:.95rem}
.price-list li:last-child{border-bottom:0}
.price-list span{color:#5e5264;line-height:1.35}
.price-list strong{color:#7b319c;white-space:nowrap;font-size:.92rem}
.rates-bottom{margin-top:28px;padding:22px 24px;border-radius:24px;background:linear-gradient(135deg,rgba(111,53,181,.10),rgba(240,159,200,.15));display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:1}
.rates-bottom p{margin:0;max-width:760px;color:#594d60}
@media(max-width:1050px){.rates-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.rates-grid{grid-template-columns:1fr;gap:16px;margin-top:26px}.rate-card{padding:20px;border-radius:23px}.price-list li{font-size:.92rem;gap:10px}.price-list strong{font-size:.88rem}.rates-bottom{align-items:stretch;flex-direction:column}.rates-bottom .btn{text-align:center;width:100%}}

/* V6.5 CEO PREMIUM — Portafolio Luxury Experience */
.v65-hero{min-height:clamp(500px,72vh,760px);position:relative;overflow:hidden;isolation:isolate}
.v65-hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.04) contrast(1.03)}
.v65-hero .portfolio-video-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(38,18,50,.80) 0%,rgba(76,32,96,.52) 50%,rgba(239,159,192,.18) 100%);z-index:1}
.v65-watermark{position:absolute;z-index:1;right:3%;top:50%;transform:translateY(-50%);width:min(540px,42vw);opacity:.09;filter:grayscale(1) brightness(3);pointer-events:none}
.v65-hero .portfolio-hero-copy{position:relative;z-index:2;max-width:760px;padding-top:clamp(130px,19vh,205px);padding-bottom:90px}
.v65-hero h1{font-size:clamp(2.7rem,6vw,5.4rem);line-height:.98;max-width:820px;margin:.8rem 0 1.15rem;color:#fff}
.v65-hero p{font-size:clamp(1rem,1.7vw,1.28rem);max-width:650px;color:rgba(255,255,255,.91)}
.v65-intro{background:linear-gradient(180deg,#fffaf4,#fff 72%)}
.v65-stats article{border-radius:24px;background:rgba(255,255,255,.88);border:1px solid rgba(143,111,209,.15);box-shadow:0 16px 45px rgba(76,42,92,.08)}
.v65-marquee{overflow:hidden;padding:18px 0 34px;background:#fff}
.v65-marquee-track{display:flex;width:max-content;gap:18px;animation:v65Marquee 34s linear infinite}
.v65-marquee img{width:260px;height:180px;object-fit:cover;border-radius:25px;box-shadow:0 13px 32px rgba(66,35,80,.14)}
.v65-filters{justify-content:center;flex-wrap:wrap;margin:28px 0 34px}
.v65-masonry{grid-auto-rows:14px;gap:20px}
.v65-masonry .portfolio-card{position:relative;overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.9);box-shadow:0 18px 50px rgba(72,39,88,.13);background:#fff;transition:transform .38s ease,box-shadow .38s ease}
.v65-masonry .portfolio-card:hover{transform:translateY(-7px) scale(1.012);box-shadow:0 28px 68px rgba(72,39,88,.22)}
.v65-masonry .portfolio-card img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .45s ease}
.v65-masonry .portfolio-card:hover img{transform:scale(1.055);filter:saturate(1.06)}
.v65-masonry .portfolio-card-overlay{background:linear-gradient(180deg,transparent 35%,rgba(44,20,57,.90));padding:28px 20px 19px}
.corner-paw{position:absolute;z-index:3;font-size:22px;color:#fff;filter:drop-shadow(0 3px 7px rgba(54,22,70,.45));opacity:.85;pointer-events:none}.paw-a{top:14px;left:15px;transform:rotate(-18deg)}.paw-b{right:15px;bottom:15px;transform:rotate(17deg)}
.v65-cta{background:linear-gradient(135deg,#f3e7ff,#fff1dc)}
.v65-cta .portfolio-cta-box{background:linear-gradient(135deg,#6f35b5,#b563c8 55%,#e891b5);box-shadow:0 26px 70px rgba(111,53,181,.23)}
#modal::backdrop{background:rgba(22,10,29,.88);backdrop-filter:blur(7px)}
#modal{border:0;border-radius:26px;padding:14px;background:#fff;max-width:min(94vw,1100px);max-height:92vh;box-shadow:0 30px 100px rgba(0,0,0,.35)}
#modal img{display:block;max-width:100%;max-height:84vh;object-fit:contain;border-radius:18px}
@keyframes v65Marquee{to{transform:translateX(calc(-50% - 9px))}}
@media(max-width:760px){.v65-hero{min-height:590px}.v65-watermark{width:88vw;right:-24%;opacity:.055}.v65-hero .portfolio-hero-copy{padding-top:145px}.v65-marquee img{width:210px;height:145px}.v65-masonry{gap:14px}.v65-masonry .portfolio-card{border-radius:22px}}
@media(prefers-reduced-motion:reduce){.v65-marquee-track{animation:none}.v65-masonry .portfolio-card:hover{transform:none}}

/* V6.6 — módulo Nosotros: contenido ampliado sin alterar la identidad visual */
.about-copy-full{
  max-width: 980px;
  margin-inline: auto;
}
.about-copy-full h2{
  max-width: 820px;
}
.about-copy-full .lead{
  max-width: 940px;
  margin-top: 1rem;
  line-height: 1.8;
}
.about-copy-full blockquote{
  margin-top: 1.8rem;
}

/* =========================================================
   MASKOTIZATE WEB V7.0 CEO PREMIUM
   Navegacion rectangular crema con huellas tipo calcomania
   ========================================================= */
:root{
  --nav-cream:#fff4e8;
  --nav-cream-soft:rgba(255,244,232,.96);
  --nav-lilac-border:rgba(164,91,205,.26);
}

header{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:10px 0 8px;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

header.scrolled{
  background:transparent!important;
  box-shadow:none!important;
}

header nav.wrap{
  position:relative;
  width:min(1180px,calc(100% - 34px));
  padding:0 34px;
  background:var(--nav-cream-soft);
  border:1px solid var(--nav-lilac-border);
  border-radius:24px;
  box-shadow:0 12px 34px rgba(80,42,94,.12),inset 0 1px 0 rgba(255,255,255,.8);
  backdrop-filter:blur(18px) saturate(135%);
  -webkit-backdrop-filter:blur(18px) saturate(135%);
  overflow:visible;
  transition:padding .3s ease,min-height .3s ease,box-shadow .3s ease,transform .3s ease;
}

header.scrolled nav.wrap{
  box-shadow:0 12px 34px rgba(80,42,94,.18),inset 0 1px 0 rgba(255,255,255,.84);
  transform:translateY(-2px);
}

.nav-paw{
  position:absolute;
  z-index:5;
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  font-size:34px;
  line-height:1;
  border-radius:18px;
  border:3px solid rgba(255,255,255,.94);
  box-shadow:0 8px 18px rgba(76,38,91,.2);
  pointer-events:none;
  user-select:none;
  filter:saturate(.92);
}
.nav-paw.paw-tl{left:-20px;top:-20px;color:#8b4bb8;background:#f2e3fa;transform:rotate(-16deg)}
.nav-paw.paw-tr{right:-20px;top:-20px;color:#a15bc8;background:#fff1df;transform:rotate(15deg)}
.nav-paw.paw-bl{left:-20px;bottom:-20px;color:#c864a8;background:#ffe2ef;transform:rotate(14deg)}
.nav-paw.paw-br{right:-20px;bottom:-20px;color:#7d42ad;background:#eee0fa;transform:rotate(-14deg)}

.links{
  padding:8px 10px;
  border-radius:18px;
}
.links a:not(.pill){
  padding:10px 4px;
  border-radius:14px;
}
.links a:not(.pill):hover{
  color:var(--purple-dark)!important;
  transform:translateY(-1px);
}
.links .pill{
  border-radius:999px!important;
  padding:14px 24px!important;
  box-shadow:0 9px 22px rgba(168,91,212,.26);
}

.menu{
  border-radius:14px!important;
  background:#f0ddf6!important;
  color:#562f68!important;
  box-shadow:0 7px 18px rgba(80,42,94,.12);
}

@media(max-width:900px){
  header{padding:8px 0 6px}
  header nav.wrap{
    width:calc(100% - 26px);
    padding:0 22px;
    border-radius:20px;
  }
  .nav-paw{width:46px;height:46px;font-size:27px;border-radius:15px;border-width:2px}
  .nav-paw.paw-tl{left:-13px;top:-13px}
  .nav-paw.paw-tr{right:-13px;top:-13px}
  .nav-paw.paw-bl{left:-13px;bottom:-13px}
  .nav-paw.paw-br{right:-13px;bottom:-13px}
  .links{
    top:calc(100% + 12px)!important;
    left:8px!important;
    right:8px!important;
    padding:18px!important;
    background:rgba(255,244,232,.98)!important;
    border:1px solid var(--nav-lilac-border);
    border-radius:20px!important;
    box-shadow:0 18px 42px rgba(80,42,94,.18)!important;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
  }
  .links a{width:100%;text-align:center;padding:11px 14px!important}
  .links a:not(.pill):hover{background:rgba(168,91,212,.08)}
}

@media(max-width:520px){
  header nav.wrap{width:calc(100% - 18px);padding:0 16px}
  .nav-paw{width:38px;height:38px;font-size:22px;border-radius:12px}
  .nav-paw.paw-tl{left:-8px;top:-9px}
  .nav-paw.paw-tr{right:-8px;top:-9px}
  .nav-paw.paw-bl{left:-8px;bottom:-9px}
  .nav-paw.paw-br{right:-8px;bottom:-9px}
}

