:root{--pm-title-font:"Agatha","Cormorant Garamond",Georgia,serif;--pm-body-font:"Helvetica Neue","HelveticaNeue",Helvetica,Arial,sans-serif}
/* PERIGON MOTION 1.0 — interactive layer for the accompanying Elementor page */
.perigon-page{--pm-cream:#f8f6f1;--pm-gold:#b49a65;--pm-green:#21302c;--pm-timing:cubic-bezier(.22,1,.36,1);overflow:clip}
.perigon-page .pg-hero,.perigon-page .pg-wide-photo,.perigon-page .pg-split-image,.perigon-page .pg-view{background-position:center calc(50% + var(--pm-parallax,0px))!important;will-change:background-position}
.perigon-page .pg-hero{background-size:cover!important}
/* Scroll-triggered reveals: only enabled after JS initializes. */
/* 1.1.1: FAIL-OPEN REVEALS. Images and texts are always visible by default.
   When IntersectionObserver reports visibility, animate with keyframes instead
   of leaving a full-height clip/opacity 0 that might never be removed. */
.perigon-page.pm-enabled .pm-reveal{opacity:1;transform:none;filter:none}
.perigon-page.pm-enabled .pm-reveal.pm-visible{animation:pm-safe-text-reveal 950ms var(--pm-timing) both}
@keyframes pm-safe-text-reveal{from{opacity:.08;transform:translate3d(0,48px,0);filter:blur(7px)}to{opacity:1;transform:none;filter:none}}
.perigon-page.pm-enabled .pm-image-reveal{clip-path:none;visibility:visible;opacity:1}
.perigon-page.pm-enabled .pm-image-reveal.pm-visible{animation:pm-safe-image-reveal 1250ms var(--pm-timing) both}
@keyframes pm-safe-image-reveal{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0)}}
/* Elementor editor: keep content shown even when its iframe is resized or re-rendered. */
body.elementor-editor-active .perigon-page.pm-enabled .pm-image-reveal,
body.elementor-editor-active .perigon-page.pm-enabled .pm-reveal,
body.elementor-editor-preview .perigon-page.pm-enabled .pm-image-reveal,
body.elementor-editor-preview .perigon-page.pm-enabled .pm-reveal{animation:none!important;clip-path:none!important;opacity:1!important;filter:none!important;transform:none!important;visibility:visible!important}
@media (prefers-reduced-motion:reduce){.perigon-page.pm-enabled .pm-reveal.pm-visible,.perigon-page.pm-enabled .pm-image-reveal.pm-visible{animation:none!important}}
.perigon-page.pm-enabled .pg-hero-title{animation:pm-hero-title 1.5s .25s both var(--pm-timing)}
.perigon-page.pm-enabled .pg-hero-caption{animation:pm-hero-title 1.5s .05s both var(--pm-timing)}
@keyframes pm-hero-title{from{opacity:0;transform:translateY(35px);filter:blur(6px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
/* Thin scrolling progress indicator. */
.pm-progress{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:#c1a86b;z-index:10050;pointer-events:none;will-change:transform}
/* Floating menu that takes over when original nav scrolls away. */
.pm-floating-nav{display:flex;align-items:center;justify-content:space-between;position:fixed;z-index:10020;top:18px;left:50%;transform:translate(-50%,-110px);width:min(92%,1180px);height:61px;border:1px solid rgba(255,255,255,.25);padding:0 20px;background:rgba(30,42,40,.93);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:white;box-shadow:0 12px 35px rgba(0,0,0,.1);transition:transform .55s var(--pm-timing)}
.pm-floating-nav.pm-show{transform:translate(-50%,0)}
.pm-floating-nav .pm-nav-logo{font:400 24px/.9 var(--pm-title-font);letter-spacing:.13em;color:#e9daba;text-decoration:none}.pm-floating-nav .pm-nav-logo small{display:block;margin-top:4px;font:400 8px/1.3 var(--pm-body-font);letter-spacing:.28em;text-align:center}
.pm-floating-nav .pm-nav-actions{display:flex;align-items:center;gap:26px}.pm-floating-nav .pm-nav-actions a,.pm-floating-nav .pm-nav-actions button{font:500 10px var(--pm-body-font);letter-spacing:.18em;color:white;text-decoration:none;text-transform:uppercase;background:transparent;border:0;cursor:pointer}
.pm-main-toggle{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:0 6px;background:transparent;border:0;color:#fff;cursor:pointer;font:500 11px var(--pm-body-font);letter-spacing:.2em}
.pm-main-toggle::before{content:'☰';font-size:19px;line-height:1}
.perigon-page.pm-enabled .pg-nav-menu,.perigon-page.pm-enabled .pg-mobile-menu{display:none!important}
.pm-hero-menu-button{margin-left:15px!important}
/* Modal menu with staggered links and background image. */
.pm-menu-overlay{position:fixed;inset:0;z-index:10040;background:#21302c;color:#fff;display:grid;grid-template-columns:1fr 43%;opacity:0;pointer-events:none;transition:opacity .5s ease}
.pm-menu-overlay.pm-open{opacity:1;pointer-events:auto}
.pm-menu-overlay .pm-menu-inner{padding:clamp(34px,6vw,108px);display:flex;flex-direction:column;justify-content:center;min-height:100%;gap:10px}
.pm-menu-overlay .pm-menu-note{letter-spacing:.25em;text-transform:uppercase;font:500 11px var(--pm-body-font);color:#c5af83;margin-bottom:35px}
.pm-menu-overlay .pm-menu-links{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.pm-menu-overlay .pm-menu-links a{display:block;font:300 clamp(42px,6.5vw,112px)/1.05 var(--pm-title-font);color:#f8f6ee;text-decoration:none;transform:translateY(18px);opacity:0;transition:transform .6s var(--pm-timing),opacity .5s ease,color .3s ease}
.pm-menu-overlay.pm-open .pm-menu-links a{transform:translateY(0);opacity:1;transition-delay:calc(var(--i)*75ms)}
.pm-menu-overlay .pm-menu-links a:hover,.pm-menu-overlay .pm-menu-links a:focus-visible{color:#ceb27c}
.pm-menu-overlay .pm-menu-visual{background-size:cover;background-position:center;position:relative;filter:saturate(.8);transition:transform 1s var(--pm-timing)}
.pm-menu-overlay .pm-menu-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(33,48,44,.23),transparent)}
.pm-menu-overlay .pm-menu-close{position:absolute;z-index:2;top:25px;right:35px;display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.45);border-radius:0;background:transparent;color:#fff;font:500 11px var(--pm-body-font);letter-spacing:.15em;padding:15px 20px;cursor:pointer}
body.pm-lock{overflow:hidden!important}
/* Gallery lightbox */
.pm-gallery-trigger{position:absolute!important;z-index:4;bottom:20px;right:20px;display:flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.8);padding:13px 16px;color:#fff;background:rgba(21,31,28,.56);font:500 10px var(--pm-body-font);letter-spacing:.13em;cursor:pointer;backdrop-filter:blur(8px)}
.perigon-page .pg-gallery-image,.perigon-page .pg-split-image,.perigon-page .pg-wide-photo{position:relative}
.pm-lightbox{position:fixed;inset:0;z-index:10055;background:rgba(17,26,24,.98);display:none;align-items:center;justify-content:center;color:white}
.pm-lightbox.pm-open{display:flex}
.pm-lightbox figure{width:min(90vw,1550px);margin:0;display:flex;flex-direction:column;gap:18px}
.pm-lightbox img{object-fit:contain;width:100%;height:min(77vh,850px);opacity:1}
.pm-lightbox figcaption{font:500 11px var(--pm-body-font);letter-spacing:.22em;text-transform:uppercase;color:#d1c3a7}
.pm-lightbox button{position:absolute;z-index:1;min-width:46px;min-height:46px;border:1px solid #b4a98c;color:white;background:rgba(27,38,34,.7);font-size:26px;cursor:pointer}
.pm-lightbox .pm-lightbox-close{top:20px;right:20px}.pm-lightbox .pm-lightbox-prev{left:15px;top:50%;transform:translateY(-50%)}.pm-lightbox .pm-lightbox-next{right:15px;top:50%;transform:translateY(-50%)}
/* Scroll-controlled horizontal cinematic gallery */
.perigon-page .pg-motion-gallery{height:330vh!important;display:block!important;position:relative;width:100%;background:#21302c}
.pg-motion-gallery .pm-stage{position:sticky;top:0;width:100%;height:100vh;height:100svh;overflow:hidden;background:#21302c;color:white}
.pg-motion-gallery .pm-gallery-heading{position:absolute;z-index:3;left:6vw;top:clamp(25px,8vh,105px);font:500 10px var(--pm-body-font);letter-spacing:.28em;color:#fff;text-transform:uppercase}
.pg-motion-gallery .pm-track{width:300vw;height:100%;display:flex;transform:translate3d(calc(var(--pm-slide,0) * -100vw),0,0);will-change:transform}
.pg-motion-gallery .pm-slide{width:100vw;height:100%;position:relative;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:10vh 8vw;background-size:cover;background-position:center;isolation:isolate}
.pg-motion-gallery .pm-slide::before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,29,31,.74),rgba(13,29,31,.12) 75%);z-index:-1}
.pg-motion-gallery .pm-slide-content{max-width:900px}.pg-motion-gallery .pm-slide-num{font:500 11px var(--pm-body-font);letter-spacing:.25em;color:#ebddbf}.pg-motion-gallery .pm-slide h2{font:300 clamp(54px,8vw,150px)/.95 var(--pm-title-font);letter-spacing:-.03em;color:#fff;margin:12px 0 15px}
.pg-motion-gallery .pm-slide p{font:400 14px/1.7 var(--pm-body-font);max-width:420px;color:#f3f3ee}
.pg-motion-gallery .pm-gallery-counter{position:absolute;z-index:3;bottom:30px;right:6vw;font:500 11px var(--pm-body-font);letter-spacing:.2em}.pg-motion-gallery .pm-gallery-bar{height:2px;position:absolute;z-index:3;bottom:0;left:0;background:#cfb377;width:100%;transform:scaleX(calc(var(--pm-slide,0)/2));transform-origin:left}
.pg-motion-gallery .pm-skip{position:absolute;z-index:3;right:6vw;top:7vh;border:1px solid #e7d8bb;background:rgba(24,39,34,.4);color:white;padding:12px 18px;font:500 10px var(--pm-body-font);letter-spacing:.15em;cursor:pointer}
/* Hands-on views switcher */
.perigon-page .pg-interactive-views{position:relative;min-height:90vh;display:block;width:100%;background:#192927;color:white;overflow:hidden}
.pg-interactive-views .pm-views-scene{position:absolute;inset:0;background-size:cover;background-position:calc(50% + var(--pm-drag-x,0px)) center;transition:opacity .45s ease,background-position .22s linear;filter:saturate(.83)}
.pg-interactive-views .pm-views-scene::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(19,30,28,.62),rgba(19,30,28,0) 90%)}
.pg-interactive-views .pm-views-ui{position:relative;z-index:2;min-height:90vh;display:flex;flex-direction:column;justify-content:space-between;padding:8vh 7vw;pointer-events:none}
.pg-interactive-views .pm-views-ui>*{pointer-events:auto}.pg-interactive-views .pm-views-intro{font:500 11px var(--pm-body-font);letter-spacing:.22em;text-transform:uppercase}
.pg-interactive-views h2{font:300 clamp(50px,8vw,130px)/1 var(--pm-title-font);max-width:720px;color:white;margin:0 0 25px}
.pg-interactive-views .pm-views-choices{display:flex;gap:10px;flex-wrap:wrap}.pg-interactive-views .pm-views-choices button{background:transparent;color:white;border:1px solid rgba(255,255,255,.55);padding:13px 20px;font:500 11px var(--pm-body-font);letter-spacing:.16em;cursor:pointer}.pg-interactive-views .pm-views-choices button[aria-pressed=true]{background:#efe7d7;color:#25332f}
.pg-interactive-views .pm-views-hint{font:400 11px var(--pm-body-font);letter-spacing:.14em;color:#e1d8c3;padding-top:18px}
/* Real 360 equirectangular viewer: appears after user supplies 2:1 panorama. */
.perigon-page .pg-tour-section{background:#efece4;padding:105px 6vw;min-height:620px!important;display:block;width:100%}
.pg-tour-section .pm-tour-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:30px}.pg-tour-section h2{font:300 clamp(46px,5vw,88px)/1.02 var(--pm-title-font);color:#25332f;margin:8px 0}.pg-tour-section .pm-tour-kicker{font:500 11px var(--pm-body-font);letter-spacing:.25em;color:#a38a5a}
.pg-tour-section .pm-tour-panel{position:relative;background:#26342f;min-height:450px;overflow:hidden;color:white}
.pg-tour-section .pm-tour-placeholder{min-height:450px;display:grid;place-items:center;padding:35px;text-align:center;background:linear-gradient(rgba(18,30,27,.7),rgba(18,30,27,.7)),var(--pm-tour-placeholder,linear-gradient(120deg,#536e67,#1b3232));background-position:center;background-size:cover}
.pg-tour-section .pm-tour-placeholder p{font:400 15px/1.8 var(--pm-body-font);max-width:620px}.pg-tour-section .pm-tour-placeholder strong{font:300 56px var(--pm-title-font);display:block;color:white}
.pg-tour-section .pm-panorama-host{width:100%;height:450px}.pg-tour-section .pm-panorama-host:empty{display:none}
.pg-tour-section .pm-tour-note{font:400 12px/1.6 var(--pm-body-font);color:#53635d;margin-top:14px;max-width:900px}
/* Floorplan single grounded reference viewer */
.perigon-page .pg-floorplan-demo{padding:110px 6vw;background:#f7f5f0;color:#26312f;display:grid;grid-template-columns:40% 1fr;gap:45px;min-height:620px}
.pg-floorplan-demo h2{font:300 clamp(44px,5vw,86px)/1 var(--pm-title-font);margin:10px 0 22px}.pg-floorplan-demo .pm-floor-kicker{font:500 11px var(--pm-body-font);letter-spacing:.22em;color:#a89261}.pg-floorplan-demo .pm-floor-details{font:400 14px/2 var(--pm-body-font);color:#49534d}.pg-floorplan-demo .pm-floor-tabs{display:flex;gap:8px;margin-top:24px}.pg-floorplan-demo .pm-floor-tabs button{cursor:pointer;border:1px solid #9d9d8e;padding:12px 18px;background:transparent;color:#26312f}.pg-floorplan-demo .pm-floor-tabs button[aria-selected=true]{background:#26312f;color:#fff}.pg-floorplan-demo .pm-floor-output{background:#edeae2;min-height:400px;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.pg-floorplan-demo .pm-floor-output img{width:100%;max-height:560px;object-fit:contain}.pg-floorplan-demo .pm-floor-output[data-mode=details] img{display:none}.pg-floorplan-demo .pm-floor-output .pm-floor-extra{display:none;padding:34px;font:400 16px/2 var(--pm-body-font)}.pg-floorplan-demo .pm-floor-output[data-mode=details] .pm-floor-extra{display:block}
@media(max-width:800px){.pm-menu-overlay{grid-template-columns:1fr}.pm-menu-overlay .pm-menu-visual{display:none}.pm-menu-overlay .pm-menu-inner{padding:30px}.pm-menu-overlay .pm-menu-links a{font-size:clamp(42px,10vw,70px)}.pm-menu-overlay .pm-menu-close{right:18px;top:18px}.pg-motion-gallery .pm-slide{padding:12vh 8vw}.perigon-page .pg-floorplan-demo{grid-template-columns:1fr;padding:70px 24px}.pg-tour-section .pm-tour-head{display:block}.perigon-page .pg-tour-section{padding:75px 24px}.pm-lightbox figure{width:94vw}.pm-lightbox .pm-lightbox-prev{left:0}.pm-lightbox .pm-lightbox-next{right:0}}
@media(prefers-reduced-motion:reduce){.perigon-page.pm-enabled .pm-reveal,.perigon-page.pm-enabled .pm-image-reveal{opacity:1!important;filter:none!important;clip-path:none!important;transform:none!important;transition:none!important}.perigon-page.pm-enabled .pg-hero-title,.perigon-page.pm-enabled .pg-hero-caption{animation:none!important}.pm-menu-overlay .pm-menu-links a{transform:none!important;opacity:1!important;transition:none!important}.pg-motion-gallery .pm-track{transition:none!important}}
/* Elementor HTML widget wrappers must span the full viewport width. */
.perigon-page .pm-experience-widget,.perigon-page .pm-experience-widget>.elementor-widget-container{width:100%!important;max-width:100%!important;align-self:stretch!important}
.perigon-page .pg-tour-section .pm-tour-placeholder[hidden]{display:none!important}
.perigon-page .pg-floorplan-demo .pm-tour-note{color:#6c756f;font:400 12px/1.75 var(--pm-body-font);margin-top:25px}
/* Safe visual fallback if remote editorial imagery is unavailable. */
.perigon-page .pg-hero{background-color:#536a6b!important}
.perigon-page .pg-split-image,.perigon-page .pg-wide-photo{background-color:#a6b2aa!important}
.perigon-page .pg-view{background-color:#405c60!important}
@media(max-width:700px){
 .perigon-page .pg-motion-gallery{height:90svh!important}
 .pg-motion-gallery .pm-stage{height:90svh!important;position:relative!important}
 .pg-motion-gallery .pm-track{width:100vw!important;transform:none!important;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x}
 .pg-motion-gallery .pm-slide{width:100vw!important;scroll-snap-align:start;padding:12vh 8vw 16vh}
 .pg-motion-gallery .pm-gallery-heading{top:26px}
 .pg-motion-gallery .pm-skip{display:none}
 .pg-motion-gallery .pm-slide h2{font-size:clamp(50px,11vw,85px)}
 .pg-motion-gallery .pm-slide p{font-size:13px}
 .pg-motion-gallery .pm-gallery-counter{bottom:20px}
}

/* Brand image is cloned from the Elementor image widget (no duplicated logo URL to maintain). */
.pm-floating-nav .pm-nav-logo{display:inline-flex;justify-content:flex-start;align-items:center;min-width:0;text-decoration:none}
.pm-floating-nav .pm-nav-logo img{display:block;width:clamp(130px,16vw,215px);height:auto;max-height:43px;max-width:100%;object-fit:contain;object-position:left center}
.pm-menu-overlay .pm-menu-note{display:flex;align-items:center;min-height:48px}
.pm-menu-overlay .pm-menu-note img{width:clamp(170px,23vw,300px);max-height:75px;height:auto;object-fit:contain;object-position:left center}
.pm-menu-overlay .pm-menu-links a,.pg-motion-gallery .pm-slide h2,.pg-interactive-views h2,.pg-tour-section h2,.pg-floorplan-demo h2,.pg-tour-section .pm-tour-placeholder strong{font-family:var(--pm-title-font)!important}
.pm-floating-nav,.pm-menu-overlay,.pm-lightbox,.pg-motion-gallery,.pg-interactive-views,.pg-tour-section,.pg-floorplan-demo{font-family:var(--pm-body-font)!important}
@media(max-width:767px){.pm-floating-nav .pm-nav-logo img{width:clamp(112px,31vw,170px);max-height:37px}}


/* v1.1.2: Elementor's inline template defines .perigon-page { overflow:hidden; }.
   That creates a non-scrolling overflow ancestor and breaks position:sticky.
   The gallery's vertical scroll space must remain in normal page flow. */
html body .perigon-page {
  overflow: visible !important;
}
html body .perigon-page .elementor-widget-html.pm-experience-widget,
html body .perigon-page .elementor-widget-html.pm-experience-widget > .elementor-widget-container {
  overflow: visible !important;
}
@media (min-width: 701px) {
  html body .perigon-page .pg-motion-gallery {
    position: relative !important;
    height: 330vh !important;
    min-height: 330vh !important;
    overflow: visible !important;
  }
  html body .perigon-page .pg-motion-gallery > .pm-stage {
    position: sticky !important;
    top: 0 !important;
    height: 100vh !important;
    overflow: hidden !important;
    z-index: 1;
  }
  html body .perigon-page .pg-motion-gallery .pm-track {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: 300vw !important;
    height: 100% !important;
  }
  html body .perigon-page .pg-motion-gallery .pm-slide {
    flex: 0 0 100vw !important;
    width: 100vw !important;
    min-width: 100vw !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
  }
}

/* Keep gallery utilities unobscured by the fixed IZCACUYO navigation. */
@media (min-width: 701px) {
  .pg-motion-gallery .pm-gallery-heading,
  .pg-motion-gallery .pm-skip {
    top: max(102px, 12vh) !important;
  }
}

/* v1.2.0 — seven selectable apartment types, editable via WordPress Settings. */
.perigon-page .pg-floorplan-demo.pm-floor-multi{grid-template-columns:minmax(320px,41%) minmax(0,1fr);gap:clamp(28px,4.5vw,72px);align-items:center;padding-top:clamp(76px,7vw,112px);padding-bottom:clamp(76px,7vw,112px)}
.pg-floorplan-demo.pm-floor-multi .pm-floor-info{min-width:0}
.pg-floorplan-demo.pm-floor-multi h2{font-size:clamp(45px,5.2vw,84px);line-height:1.02;margin-bottom:28px}
.pg-floorplan-demo.pm-floor-multi .pm-floor-navigation{margin:8px 0 24px}
.pg-floorplan-demo.pm-floor-multi .pm-floor-nav-label{font:600 10px/1.5 var(--pm-body-font);letter-spacing:.19em;color:#978564;margin:0 0 14px}
.pg-floorplan-demo.pm-floor-multi .pm-floor-types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:520px}
.pg-floorplan-demo.pm-floor-multi .pm-floor-type{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;background:#eceae2;border:1px solid transparent;color:#26312f;padding:11px 12px;min-height:70px;min-width:0;cursor:pointer;text-align:left;transition:background .22s ease,color .22s ease,border .22s ease,transform .22s ease}
.pg-floorplan-demo.pm-floor-multi .pm-floor-type:hover{border-color:#b5a47f;transform:translateY(-1px)}
.pg-floorplan-demo.pm-floor-multi .pm-floor-type[aria-selected="true"]{background:#26352f;color:#fff;border-color:#26352f}
.pg-floorplan-demo.pm-floor-multi .pm-floor-type:focus-visible,.pg-floorplan-demo.pm-floor-multi .pm-floor-arrow:focus-visible,.pg-floorplan-demo.pm-floor-multi .pm-floor-tabs button:focus-visible{outline:2px solid #ad8d55;outline-offset:3px}
.pg-floorplan-demo.pm-floor-multi .pm-floor-type-number{font:400 25px/1 var(--pm-title-font);letter-spacing:-.025em}
.pg-floorplan-demo.pm-floor-multi .pm-floor-type-name{font:600 9px/1.25 var(--pm-body-font);letter-spacing:.05em;text-transform:uppercase;overflow-wrap:anywhere}
.pg-floorplan-demo.pm-floor-multi .pm-floor-pagination{display:flex;align-items:center;gap:12px;margin-top:14px}
.pg-floorplan-demo.pm-floor-multi .pm-floor-arrow{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;border:1px solid #9e9d90;background:transparent;color:#2b3932;cursor:pointer;font:400 28px/1 Georgia,serif;padding:0;transition:background .22s ease,color .22s ease}
.pg-floorplan-demo.pm-floor-multi .pm-floor-arrow:hover{background:#25352e;color:#fff}
.pg-floorplan-demo.pm-floor-multi .pm-floor-page-count{font:600 11px/1 var(--pm-body-font);letter-spacing:.15em;color:#63736a;white-space:nowrap}
.pg-floorplan-demo.pm-floor-multi .pm-floor-arrow-label{font:600 9px/1 var(--pm-body-font);letter-spacing:.13em;color:#a08d6b;margin-left:auto;white-space:nowrap}
.pg-floorplan-demo.pm-floor-multi .pm-floor-selected-name{font:400 clamp(22px,2.7vw,37px)/1.2 var(--pm-title-font);color:#293630;margin:22px 0 8px}
.pg-floorplan-demo.pm-floor-multi .pm-floor-details{white-space:pre-line;line-height:1.8;min-height:90px;margin:0 0 12px;color:#52605a}
.pg-floorplan-demo.pm-floor-multi .pm-floor-tabs{margin-top:18px}
.pg-floorplan-demo.pm-floor-multi .pm-floor-tabs button{font:600 11px/1.3 var(--pm-body-font);transition:background .25s ease}
.pg-floorplan-demo.pm-floor-multi .pm-tour-note{max-width:480px;margin-top:18px}
.pg-floorplan-demo.pm-floor-multi .pm-floor-output{height:clamp(380px,42vw,650px);min-height:380px;max-width:100%;background:#eeece6;overflow:hidden;position:relative}
.pg-floorplan-demo.pm-floor-multi .pm-floor-output img{display:block;width:100%;max-height:100%;height:100%;object-fit:contain;padding:clamp(12px,2vw,32px)}
.pg-floorplan-demo.pm-floor-multi .pm-floor-output img[hidden],.pg-floorplan-demo.pm-floor-multi .pm-floor-empty[hidden],.pg-floorplan-demo.pm-floor-multi .pm-floor-more[hidden]{display:none!important}
.pg-floorplan-demo.pm-floor-multi .pm-floor-empty{display:grid;place-items:center;width:100%;min-height:300px;padding:44px;text-align:center;max-width:560px;color:#77847b;font:400 15px/1.8 var(--pm-body-font)}
.pg-floorplan-demo.pm-floor-multi .pm-floor-output[data-mode="details"] .pm-floor-empty{display:none!important}
.pg-floorplan-demo.pm-floor-multi .pm-floor-output[data-mode="details"] .pm-floor-extra{display:block;max-height:100%;overflow-y:auto;width:100%;padding:clamp(22px,3.5vw,60px)}
.pg-floorplan-demo.pm-floor-multi .pm-floor-output .pm-floor-extra strong{font:400 clamp(28px,3vw,46px)/1.15 var(--pm-title-font);color:#26352f}
.pg-floorplan-demo.pm-floor-multi .pm-floor-output .pm-floor-extra p{white-space:pre-line;color:#4c5a52;font:400 15px/1.9 var(--pm-body-font);margin:18px 0 22px}
.pg-floorplan-demo.pm-floor-multi .pm-floor-more{display:inline-flex;font:600 11px/1.3 var(--pm-body-font);letter-spacing:.12em;color:#26352f;text-decoration:none;border-bottom:1px solid #af996d;padding:0 0 8px}
.pg-floorplan-demo.pm-floor-multi .pm-floor-output.pm-floor-enter img:not([hidden]){animation:pm-floor-image-in .6s ease both}
@keyframes pm-floor-image-in{from{opacity:.28;transform:translateY(8px) scale(.987)}to{opacity:1;transform:none}}
@media(max-width:1050px){.perigon-page .pg-floorplan-demo.pm-floor-multi{grid-template-columns:minmax(0,1fr);gap:30px}.pg-floorplan-demo.pm-floor-multi .pm-floor-types{grid-template-columns:repeat(7,minmax(0,1fr));max-width:none}}
@media(max-width:800px){.perigon-page .pg-floorplan-demo.pm-floor-multi{padding:72px 24px;grid-template-columns:minmax(0,1fr)}.pg-floorplan-demo.pm-floor-multi h2{font-size:clamp(44px,9vw,72px)}.pg-floorplan-demo.pm-floor-multi .pm-floor-output{height:480px}}
@media(max-width:600px){.pg-floorplan-demo.pm-floor-multi .pm-floor-types{display:flex;gap:8px;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding-bottom:5px}.pg-floorplan-demo.pm-floor-multi .pm-floor-type{min-width:96px;scroll-snap-align:start}.pg-floorplan-demo.pm-floor-multi .pm-floor-type-name{max-width:85px}.pg-floorplan-demo.pm-floor-multi .pm-floor-output{height:400px;min-height:330px}.pg-floorplan-demo.pm-floor-multi .pm-floor-arrow-label{display:none}}
@media(prefers-reduced-motion:reduce){.pg-floorplan-demo.pm-floor-multi .pm-floor-output.pm-floor-enter img:not([hidden]){animation:none!important}.pg-floorplan-demo.pm-floor-multi .pm-floor-type,.pg-floorplan-demo.pm-floor-multi .pm-floor-arrow{transition:none!important}}

/* v1.3.0 — 7 tours 360° in a dedicated responsive modal; no duplicated details panel. */
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-tabs,
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-extra,
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-tour-note{display:none!important}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-output{overflow:hidden!important;display:flex!important;align-items:center!important;justify-content:center!important}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-output img{max-width:100%;width:100%;height:100%;object-fit:contain}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-details{margin-bottom:14px;min-height:0}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-description{font:400 13px/1.7 var(--pm-body-font);color:#67736b;max-width:525px;margin:0 0 18px;white-space:pre-line}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-description[hidden]{display:none!important}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-actions{display:flex;flex-wrap:wrap;align-items:center;gap:11px;margin-top:20px}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-360-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:48px;padding:12px 20px;background:#26372f;color:#fff;border:1px solid #26372f;border-radius:0;font:600 11px/1.3 var(--pm-body-font);letter-spacing:.08em;cursor:pointer;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-360-button:hover:not(:disabled){background:#34493e;transform:translateY(-1px);box-shadow:0 7px 18px rgba(20,35,30,.15)}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-360-button:focus-visible,
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-spec-link:focus-visible{outline:2px solid #ad8d55;outline-offset:4px}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-360-button:disabled{background:#e6e4dc;border-color:#d6d4cc;color:#818680;cursor:not-allowed;box-shadow:none}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-spec-link{font:600 10px/1.3 var(--pm-body-font);letter-spacing:.1em;color:#2c3b35;text-decoration:none;border-bottom:1px solid #b69a68;padding:13px 0 8px}
.perigon-page .pg-floorplan-demo.pm-floor-tours .pm-floor-spec-link[hidden]{display:none!important}

body.pm-360-locked{overflow:hidden!important}
.pm-360-modal{box-sizing:border-box;position:fixed!important;inset:0!important;z-index:10090!important;display:flex;align-items:center;justify-content:center;padding:clamp(8px,2vw,26px);background:rgba(9,19,17,.88);color:#fff;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.pm-360-modal[hidden]{display:none!important}
.pm-360-modal *, .pm-360-modal *::before,.pm-360-modal *::after{box-sizing:border-box}
.pm-360-dialog{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;width:min(1550px,100%);height:min(94dvh,960px);min-height:0;background:#172722;border:1px solid rgba(255,255,255,.25);box-shadow:0 20px 80px rgba(0,0,0,.38)}
.pm-360-header{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:80px;padding:14px clamp(18px,2vw,36px);background:#24352e}
.pm-360-headings{min-width:0}
.pm-360-eyebrow{display:block;font:600 10px/1.5 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.14em;color:#cebe9e}
.pm-360-title{font:400 clamp(23px,2.45vw,37px)/1.05 "Agatha",Georgia,serif;color:#fff!important;margin:5px 0 0!important;overflow-wrap:anywhere}
.pm-360-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.pm-360-modal .pm-360-header-actions button,.pm-360-modal .pm-360-external{display:inline-flex;justify-content:center;align-items:center;min-height:42px;white-space:nowrap;padding:10px 15px;background:transparent;border:1px solid rgba(255,255,255,.57);border-radius:0;color:#fff!important;font:600 10px/1.2 "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.055em;text-decoration:none!important;cursor:pointer;transition:background .2s ease}
.pm-360-modal .pm-360-header-actions button:hover,.pm-360-modal .pm-360-external:hover{background:rgba(255,255,255,.13)}
.pm-360-modal :is(button,a):focus-visible{outline:3px solid #e5c681;outline-offset:2px}
.pm-360-viewport{position:relative;min-height:0;background:#101b18;overflow:hidden}
.pm-360-iframe{display:block;width:100%;height:100%;border:0;background:transparent;position:relative;z-index:2}
.pm-360-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:16px;padding:25px;color:#e0d5bc;font:500 12px "Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:.12em;text-align:center}
.pm-360-loading[hidden]{display:none!important}
.pm-360-loading::before{content:"";width:23px;height:23px;border:2px solid rgba(225,209,174,.25);border-top-color:#dfc793;border-radius:50%;animation:pm-360-spin .9s linear infinite}
@keyframes pm-360-spin{to{transform:rotate(360deg)}}
.pm-360-footer{padding:10px 25px 12px;background:#24352e;color:#d6d9d0;font:400 11px/1.6 "Helvetica Neue",Helvetica,Arial,sans-serif}
.pm-360-modal:fullscreen{padding:0;background:#101b18}
.pm-360-modal:fullscreen .pm-360-dialog{width:100vw;height:100dvh;max-width:none;border:none}
@media(max-width:850px){
 .pm-360-modal{padding:0}
 .pm-360-dialog{width:100%;height:100dvh;max-height:none;border:0}
 .pm-360-header{gap:8px;min-height:72px;padding:12px 14px}
 .pm-360-title{font-size:clamp(20px,5vw,30px)}
 .pm-360-header-actions{gap:6px}
 .pm-360-modal .pm-360-header-actions button,.pm-360-modal .pm-360-external{min-height:38px;font-size:9px;padding:8px 10px}
 .pm-360-fullscreen{display:none!important}
 .pm-360-eyebrow{font-size:9px}
 .pm-360-footer{padding:9px 14px;font-size:10px}
}
@media(max-width:480px){
 .pm-360-eyebrow{letter-spacing:.06em}
 .pm-360-header{flex-wrap:wrap;align-content:center}
 .pm-360-header-actions{width:100%;justify-content:flex-end}
 .pm-360-footer{display:none}
}
@media(prefers-reduced-motion:reduce){.pm-360-loading::before{animation:none!important}.pm-floor-360-button{transition:none!important}}

/* IZCACUYO v1.4.0: galería de planos por tipo con niveles / miniaturas, sin panel duplicado. */
.perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-floor-output{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  align-items:stretch!important;justify-content:stretch!important;
  min-width:0;overflow:hidden!important;
}
.pg-floorplan-demo.pm-floor-images-v2 .pm-floor-stage{position:relative;display:grid;place-items:center;min-height:0;min-width:0;overflow:hidden}
.perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-floor-output .pm-floor-stage .pm-floor-main-img{
  display:block;width:100%!important;height:100%!important;max-height:none!important;
  object-fit:contain!important;padding:clamp(14px,2.5vw,36px)!important;margin:0!important;
}
.perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-floor-output .pm-floor-stage .pm-floor-main-img[hidden]{display:none!important}
.pg-floorplan-demo.pm-floor-images-v2 .pm-floor-stage .pm-floor-empty{min-height:100%;width:100%;display:grid;place-items:center;color:#68746c;text-align:center;padding:35px}
.pg-floorplan-demo.pm-floor-images-v2 .pm-floor-stage .pm-floor-empty[hidden]{display:none!important}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-arrow{
  position:absolute;z-index:2;top:50%;transform:translateY(-50%);
  display:grid;place-items:center;width:42px;height:58px;border:1px solid rgba(38,55,47,.32);
  color:#26372f;background:rgba(247,246,242,.92);border-radius:0;
  cursor:pointer;font:400 34px/1 Georgia,serif;transition:background .18s ease;
}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-arrow:hover{background:#fff}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-arrow[hidden]{display:none!important}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-prev{left:8px}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-next{right:8px}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-footer{
  min-height:90px;display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;
  gap:12px;padding:10px 18px;background:#e7e5dc;border-top:1px solid #d4d1c6;
}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-footer[hidden]{display:none!important}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-label{font:600 11px/1.4 var(--pm-body-font);color:#26372f;max-width:130px;min-width:55px;word-break:break-word}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-counter{font:600 10px/1.2 var(--pm-body-font);letter-spacing:.09em;color:#667269;white-space:nowrap}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-thumbs{display:flex;justify-content:flex-end;gap:7px;min-width:0;overflow-x:auto;padding:4px 1px;scrollbar-width:thin}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-thumb{flex:0 0 72px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;padding:4px;background:transparent;border:1px solid transparent;cursor:pointer;color:#34453a;opacity:.65;min-width:0}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-thumb[aria-pressed="true"]{background:#f5f3ec;border-color:#958362;opacity:1}
.perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-floor-output .pm-image-thumb .pm-image-thumb-img{
  display:block;width:62px!important;height:43px!important;max-height:43px!important;padding:0!important;
  object-fit:contain!important;background:#f4f2ed;flex-shrink:0
}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-thumb-label{font:600 8px/1.2 var(--pm-body-font);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:62px}
.pg-floorplan-demo.pm-floor-images-v2 .pm-image-thumb:focus-visible,.pg-floorplan-demo.pm-floor-images-v2 .pm-image-arrow:focus-visible{outline:2px solid #a88e61;outline-offset:2px}
@keyframes pm-floor-v14-in{from{opacity:.5;transform:scale(.985)}to{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:no-preference){.pg-floorplan-demo.pm-floor-images-v2 .pm-floor-stage.pm-floor-image-in .pm-floor-main-img{animation:pm-floor-v14-in .38s ease both}}
@media(max-width:700px){
 .pg-floorplan-demo.pm-floor-images-v2 .pm-image-footer{grid-template-columns:auto 1fr;gap:5px;padding:8px 10px}
 .pg-floorplan-demo.pm-floor-images-v2 .pm-image-counter{justify-self:end}
 .pg-floorplan-demo.pm-floor-images-v2 .pm-image-thumbs{grid-column:1/-1;justify-content:flex-start;max-width:100%}
 .pg-floorplan-demo.pm-floor-images-v2 .pm-image-arrow{height:48px;width:36px;font-size:28px}
 .pg-floorplan-demo.pm-floor-images-v2 .pm-image-prev{left:3px}
 .pg-floorplan-demo.pm-floor-images-v2 .pm-image-next{right:3px}
 .perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-floor-output{height:480px}
}


/* IZCACUYO v1.5.0 — Planos completos, sin marco gris ni recortes. */
.perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-floor-output {
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:stretch!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  overflow:visible!important;
}
.perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-floor-stage {
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:relative!important;
  flex:0 0 auto!important;
  width:100%!important;
  min-width:0!important;
  height:clamp(400px,43vw,710px)!important;
  min-height:0!important;
  max-height:none!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  overflow:hidden!important;
}
/* El tamaño de la imagen respeta SU relación de aspecto (sin cover ni zoom). */
.perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-floor-output .pm-floor-stage > img.pm-floor-main-img {
  display:block!important;
  position:static!important;
  inset:auto!important;
  flex:0 1 auto!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  min-width:0!important;
  min-height:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  aspect-ratio:auto!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-floor-output .pm-floor-stage > img.pm-floor-main-img[hidden]{display:none!important}
.perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-image-footer {
  flex:0 0 auto!important;
  border-top:1px solid rgba(38,49,47,.12)!important;
  background:transparent!important;
}
.perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-image-thumb[aria-pressed="true"] {background:rgba(38,49,47,.06)!important}
.perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-image-thumb-img {background:transparent!important}
@media(max-width:700px) {
  .perigon-page .pg-floorplan-demo.pm-floor-images-v2 .pm-floor-stage {
    height:clamp(270px,80vw,490px)!important;
  }
}

/* IZCACUYO v1.5.0 — Modal limpio: iframe únicamente, cierre FUERA del tour. */
.pm-360-modal.pm-360-clean {
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:stretch!important;
  gap:0!important;
  padding:54px clamp(8px,1.4vw,22px) clamp(8px,1.4vw,22px)!important;
  background:rgba(9,19,17,.94)!important;
}
.pm-360-modal.pm-360-clean[hidden]{display:none!important}
.pm-360-modal.pm-360-clean > .pm-360-dialog {
  display:block!important;
  position:relative!important;
  flex:1 1 auto!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  max-height:none!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
  background:#000!important;
}
.pm-360-modal.pm-360-clean > .pm-360-dialog > iframe.pm-360-iframe {
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:#000!important;
}
.pm-360-modal.pm-360-clean > button.pm-360-exit {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:absolute!important;
  z-index:2!important;
  top:8px!important;
  right:clamp(8px,1.4vw,22px)!important;
  width:auto!important;
  height:38px!important;
  min-height:38px!important;
  padding:0 16px!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.55)!important;
  background:transparent!important;
  border-radius:0!important;
  color:#fff!important;
  font:600 11px/1 "Helvetica Neue",Helvetica,Arial,sans-serif!important;
  letter-spacing:.08em!important;
  text-decoration:none!important;
  cursor:pointer!important;
  transition:background .2s ease!important;
}
.pm-360-modal.pm-360-clean > button.pm-360-exit:hover{background:rgba(255,255,255,.14)!important}
.pm-360-modal.pm-360-clean > button.pm-360-exit:focus-visible{outline:2px solid #ddc99a!important;outline-offset:2px!important}
@media(max-width:850px) {
  .pm-360-modal.pm-360-clean {padding:53px 0 0!important}
  .pm-360-modal.pm-360-clean > button.pm-360-exit {right:12px!important;top:6px!important;height:40px!important}
}


/* IZCACUYO v1.6.0 — portada personalizable + overlay oscuro para tour principal */
.perigon-page .pg-tour-section.pm-tour-featured .pm-tour-panel {
  width:100%!important; min-height:0!important; overflow:hidden!important;
  background:transparent!important; color:#fff; border:0; padding:0!important;
}
.perigon-page .pg-tour-section.pm-tour-featured .pm-featured-cover {
  position:relative; width:100%; height:clamp(360px,37vw,630px);
  background:linear-gradient(135deg,#233a34,#15251f); overflow:hidden; isolation:isolate;
}
.perigon-page .pg-tour-section.pm-tour-featured .pm-featured-image {
  display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;
  object-fit:cover;object-position:center;z-index:0;
}
.perigon-page .pg-tour-section.pm-tour-featured .pm-featured-image[hidden] {display:none!important}
.perigon-page .pg-tour-section.pm-tour-featured .pm-featured-shade {
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:rgba(0,0,0,.49);
}
.perigon-page .pg-tour-section.pm-tour-featured .pm-featured-center {
  position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;padding:24px;
}
.perigon-page .pg-tour-section.pm-tour-featured .pm-featured-tour-button {
  appearance:none;display:inline-flex;align-items:center;justify-content:center;
  min-height:60px;padding:18px clamp(24px,3vw,48px);background:rgba(0,0,0,.2);
  border:1px solid rgba(255,255,255,.93);border-radius:0;
  color:#fff!important;text-align:center;text-decoration:none;
  font:600 12px/1.25 var(--pm-body-font,"Helvetica Neue",Helvetica,Arial,sans-serif);
  letter-spacing:.18em;cursor:pointer;transition:background .3s ease,transform .3s ease;
  max-width:100%;white-space:normal;
}
.perigon-page .pg-tour-section.pm-tour-featured .pm-featured-tour-button:hover:not(:disabled) {
  background:rgba(255,255,255,.17);transform:translateY(-2px);
}
.perigon-page .pg-tour-section.pm-tour-featured .pm-featured-tour-button:focus-visible {
  outline:3px solid #dfc48f;outline-offset:5px;
}
.perigon-page .pg-tour-section.pm-tour-featured .pm-featured-tour-button:disabled {
  opacity:.72;cursor:not-allowed;
}
.perigon-page .pg-tour-section.pm-tour-featured .pm-tour-placeholder,
.perigon-page .pg-tour-section.pm-tour-featured .pm-panorama-host,
.perigon-page .pg-tour-section.pm-tour-featured .pm-tour-note {display:none!important}
@media(max-width:700px){
  .perigon-page .pg-tour-section.pm-tour-featured .pm-featured-cover{height:clamp(340px,70vh,620px)}
  .perigon-page .pg-tour-section.pm-tour-featured .pm-featured-tour-button{font-size:11px;min-height:55px;letter-spacing:.11em}
}
@media(prefers-reduced-motion:reduce){
  .perigon-page .pg-tour-section.pm-tour-featured .pm-featured-tour-button{transition:none!important}
}
/* IZCACUYO v1.6.1 — correcciones de navegación y controles táctiles.
   Solo afecta al encabezado / botones del plugin; no modifica tours ni planos. */

/* Elementor y algunos temas aplican sus botones de acento a botones HTML nativos.
   Declarar el diseño completo evita el fondo rosa, bordes redondeados y las
   transformaciones de Elementor en MENÚ y VER IMAGEN. */
html body .perigon-page button.pm-hero-menu-button,
html body button.pm-main-toggle,
html body .pm-floating-nav button.pm-main-toggle {
  -webkit-appearance: none !important;
  appearance: none !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  position: relative !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  flex-direction: row !important;
  gap: 8px !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 5px 7px !important;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline-offset: 3px;
  color: #fff !important;
  font: 600 10px/1.2 var(--pm-body-font,'Helvetica Neue',Helvetica,Arial,sans-serif) !important;
  letter-spacing: .11em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  opacity: 1 !important;
  transform: none !important;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
html body button.pm-main-toggle::before {
  content: '' !important;
  display: block !important;
  flex: none !important;
  width: 16px !important;
  height: 12px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: linear-gradient(to bottom,
    #fff 0, #fff 1.5px, transparent 1.5px, transparent 5px,
    #fff 5px, #fff 6.5px, transparent 6.5px, transparent 10px,
    #fff 10px, #fff 11.5px) !important;
}
html body .perigon-page button.pm-hero-menu-button:hover,
html body button.pm-main-toggle:hover,
html body .perigon-page button.pm-hero-menu-button:focus-visible,
html body button.pm-main-toggle:focus-visible {
  color:#dfcfaf!important;
  background:transparent!important;
}

html body .perigon-page button.pm-gallery-trigger {
  -webkit-appearance: none !important;
  appearance: none !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  position: absolute !important;
  z-index: 6 !important;
  right: 16px !important;
  bottom: 16px !important;
  left: auto !important;
  top: auto !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: calc(100% - 32px) !important;
  min-width: 0 !important;
  min-height: 40px !important;
  padding: 10px 14px !important;
  margin: 0 !important;
  background: rgba(22, 35, 32, .78) !important;
  background-image: none !important;
  border: 1px solid rgba(255,255,255,.82) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #fff !important;
  font: 600 10px/1.25 var(--pm-body-font,'Helvetica Neue',Helvetica,Arial,sans-serif) !important;
  letter-spacing: .13em !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  text-shadow: none !important;
  white-space: nowrap !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  cursor: pointer;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  -webkit-tap-highlight-color: transparent;
}
html body .perigon-page button.pm-gallery-trigger:hover,
html body .perigon-page button.pm-gallery-trigger:focus-visible {
  background: #26352f !important;
  border-color: #fff !important;
  color: #fff !important;
}

@media(max-width:767px){
  /* Sobrescribe los anchos de columna de escritorio (18% + 24% + 58%) que
     Elementor puede conservar en móvil, provocando que MENÚ quede cortado. */
  html body .perigon-page .pg-hero{
    padding-left:clamp(14px,4vw,22px)!important;
    padding-right:clamp(14px,4vw,22px)!important;
  }
  html body .perigon-page .pg-hero .pg-nav{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    min-height:66px!important;
    height:auto!important;
    padding:0!important;
    margin:0!important;
    box-sizing:border-box!important;
  }
  html body .perigon-page .pg-hero .pg-nav>.pg-nav-left{
    display:none!important;
  }
  html body .perigon-page .pg-hero .pg-nav>.pg-nav-brand{
    display:flex!important;
    flex:0 1 auto!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    align-self:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:min(40vw,175px)!important;
    padding:0!important;
    margin:0!important;
  }
  html body .perigon-page .pg-nav-brand .pg-brand-logo,
  html body .perigon-page .pg-nav-brand .pg-brand-logo .elementor-widget-container,
  html body .perigon-page .pg-nav-brand .pg-brand-logo a{
    display:flex!important;
    justify-content:flex-start!important;
    align-items:center!important;
    width:auto!important;
    max-width:100%!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
  }
  html body .perigon-page .pg-nav-brand .pg-brand-logo img{
    display:block!important;
    width:clamp(110px,32vw,160px)!important;
    height:auto!important;
    max-width:100%!important;
    max-height:43px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }
  html body .perigon-page .pg-hero .pg-nav>.pg-nav-right{
    display:flex!important;
    flex:0 0 auto!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    align-self:center!important;
    gap:clamp(4px,1.4vw,10px)!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
  }
  html body .perigon-page .pg-nav-right>.pg-nav-menu,
  html body .perigon-page .pg-nav-right>.pg-mobile-menu{
    display:none!important;
  }
  html body .perigon-page .pg-nav-right>.elementor-widget-button{
    display:block!important;
    flex:0 0 auto!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
  }
  html body .perigon-page .pg-nav-right .elementor-button-wrapper{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  html body .perigon-page .pg-nav-right .elementor-button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-height:36px!important;
    padding:8px 9px!important;
    margin:0!important;
    border:1px solid rgba(255,255,255,.65)!important;
    border-radius:0!important;
    background:transparent!important;
    color:white!important;
    font:600 9px/1.2 var(--pm-body-font,'Helvetica Neue',Helvetica,Arial,sans-serif)!important;
    letter-spacing:.04em!important;
    white-space:nowrap!important;
  }
  html body .perigon-page .pg-nav-right .elementor-button:hover{
    background:rgba(255,255,255,.12)!important;
    color:white!important;
  }
  html body .perigon-page .pg-nav .pm-hero-menu-button{
    flex:0 0 auto!important;
    min-height:36px!important;
    gap:6px!important;
    padding:6px 3px!important;
    margin:0!important;
    font-size:9px!important;
  }
  html body .pm-floating-nav{
    top:10px!important;
    width:calc(100% - 24px)!important;
    max-width:calc(100% - 24px)!important;
    height:57px!important;
    padding:0 12px!important;
    gap:8px!important;
  }
  html body .pm-floating-nav .pm-nav-actions{
    display:flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
  }
  html body .pm-floating-nav .pm-nav-logo img{
    width:clamp(106px,30vw,150px)!important;
    max-height:36px!important;
  }
  html body .pm-floating-nav .pm-nav-actions a{
    font-size:9px!important;
    letter-spacing:.03em!important;
    white-space:nowrap!important;
  }
  html body .pm-floating-nav .pm-nav-actions button.pm-main-toggle{
    font-size:9px!important;
    padding:7px 3px!important;
    min-height:36px!important;
  }
  html body .perigon-page button.pm-gallery-trigger{
    right:12px!important;
    bottom:12px!important;
    max-width:calc(100% - 24px)!important;
    padding:10px 12px!important;
    font-size:10px!important;
    min-height:38px!important;
  }
}
@media(max-width:360px){
  html body .perigon-page .pg-nav-right>.elementor-widget-button{display:none!important;}
  html body .pm-floating-nav .pm-nav-actions>a{display:none!important;}
}

/* Unificar CTA del encabezado fuera del breakpoint móvil (tabletas/desktop). */
html body .perigon-page .pg-nav-right .elementor-button{
  background:transparent!important;
  background-image:none!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#fff!important;
}
html body .perigon-page .pg-nav-right .elementor-button:hover,
html body .perigon-page .pg-nav-right .elementor-button:focus-visible{
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
}
/* Botones adicionales del plugin: impedir la herencia del acento del tema. */
html body .pm-menu-overlay button.pm-menu-close,
html body .pm-lightbox button.pm-lightbox-close,
html body .pm-lightbox button.pm-lightbox-prev,
html body .pm-lightbox button.pm-lightbox-next{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(25,39,35,.75)!important;
  background-image:none!important;
  color:white!important;
  border:1px solid rgba(255,255,255,.6)!important;
  border-radius:0!important;
  box-shadow:none!important;
  opacity:1!important;
  visibility:visible!important;
  cursor:pointer;
}
html body .pm-menu-overlay button.pm-menu-close{
  padding:11px 16px!important;
  min-height:44px!important;
  width:auto!important;
  font:600 10px/1.2 var(--pm-body-font,'Helvetica Neue',Helvetica,Arial,sans-serif)!important;
  letter-spacing:.09em!important;
}
html body .pg-motion-gallery button.pm-skip{
  appearance:none!important;
  background:rgba(24,39,34,.56)!important;
  background-image:none!important;
  color:#fff!important;
  border:1px solid #e7d8bb!important;
  border-radius:0!important;
  box-shadow:none!important;
  font:600 10px/1.2 var(--pm-body-font,'Helvetica Neue',Helvetica,Arial,sans-serif)!important;
  letter-spacing:.12em!important;
}
