/* Panther Home Core */
:root{
  --ph-ink:#14120F;--ph-ink2:#1D1A16;--ph-paper:#FAF7F2;--ph-bone:#F2ECE2;--ph-sand:#E5DBCC;
  --ph-stone:#6F675C;--ph-stone2:#A2998C;--ph-albero:#A57335;--ph-albero2:#C9A06A;
  --ph-line:rgba(20,18,15,.12);--ph-line-l:rgba(255,255,255,.16);
  --ph-serif:'Cormorant Garamond',Georgia,serif;--ph-sans:'Jost',system-ui,-apple-system,'Segoe UI',sans-serif;
  --ph-r:14px;--ph-r-sm:10px;--ph-shadow:0 4px 47px rgba(20,18,15,.08);--ph-shadow-lg:0 30px 70px -30px rgba(20,18,15,.45);
  --ph-ease:cubic-bezier(.2,.7,.2,1);
}
.phc-i{width:1.15em;height:1.15em;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.2em}
.phc-i--fill{fill:currentColor;stroke:none}
html.phc-lock{overflow:hidden}
.phc-eyebrow{font:500 11.5px/1.4 var(--ph-sans);letter-spacing:.22em;text-transform:uppercase;color:var(--ph-albero);display:inline-flex;align-items:center;gap:12px}
.phc-eyebrow::before{content:"";width:24px;height:1px;background:currentColor;opacity:.7}
.phc-h3{font:500 28px/1.15 var(--ph-serif);color:var(--ph-ink);margin:0 0 8px}

/* Botones */
.phc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:500 12.5px/1 var(--ph-sans);letter-spacing:.14em;text-transform:uppercase;padding:17px 26px;border-radius:12px;border:1px solid transparent;cursor:pointer;transition:background .3s var(--ph-ease),color .3s,border-color .3s,transform .2s;text-decoration:none!important;white-space:nowrap}
.phc-btn:active{transform:translateY(1px)}
.phc-btn--accent{background:var(--ph-albero);color:#fff!important}
.phc-btn--accent:hover{background:var(--ph-ink)}
.phc-btn--dark{background:var(--ph-ink);color:#fff!important}
.phc-btn--dark:hover{background:var(--ph-albero)}
.phc-btn--line{background:transparent;color:var(--ph-ink)!important;border-color:var(--ph-line)}
.phc-btn--line:hover{border-color:var(--ph-ink)}
.phc-btn--full{width:100%}
.phc-btn .phc-i{font-size:16px}
.phc-link{font:500 12px/1 var(--ph-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ph-ink)!important;border-bottom:1px solid currentColor;padding-bottom:4px;text-decoration:none!important}
.phc-link:hover{color:var(--ph-albero)!important}
.phc-tag{position:absolute;left:14px;top:14px;background:var(--ph-paper);color:var(--ph-ink);font:500 10.5px/1 var(--ph-sans);letter-spacing:.16em;text-transform:uppercase;padding:7px 10px;border-radius:6px}

/* Campos */
.phc-field{position:relative;display:flex;flex-direction:column;gap:4px;min-width:0}
.phc-field>span,.phc-range-btn small{font:500 10.5px/1.2 var(--ph-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ph-stone)}
.phc-field select{appearance:none;-webkit-appearance:none;border:0;background:transparent;font:500 19px/1.25 var(--ph-serif);color:var(--ph-ink);padding:2px 26px 2px 0;width:100%;cursor:pointer;outline:0;box-shadow:none;min-height:0;height:auto}
.phc-field>.phc-i{position:absolute;right:0;bottom:6px;color:var(--ph-stone);pointer-events:none}
.phc-range-btn{all:unset;box-sizing:border-box;display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;cursor:pointer}
.phc-range-btn>span{display:flex;flex-direction:column;gap:4px;min-width:0}
.phc-range-btn b{font:500 19px/1.25 var(--ph-serif);color:var(--ph-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.phc-field:focus-within,.phc-range-btn:focus-visible{outline:none}
.phc-range-btn:focus-visible b,.phc-field select:focus-visible{text-decoration:underline;text-decoration-color:var(--ph-albero);text-underline-offset:5px}

/* Buscador */
.phc-search{display:grid;grid-template-columns:1.1fr 1.6fr .9fr auto;align-items:stretch;background:var(--ph-paper);border-radius:var(--ph-r);box-shadow:var(--ph-shadow-lg);position:relative}
.phc-search>.phc-field{padding:18px 24px;border-right:1px solid var(--ph-line);justify-content:center}
.phc-search .phc-btn{border-radius:0 var(--ph-r) var(--ph-r) 0;padding:0 34px;height:auto}
.phc-search--compacto{box-shadow:none;border:1px solid var(--ph-line)}
.phc-search--modal{grid-template-columns:1fr;box-shadow:none;border:1px solid var(--ph-line);margin:22px 0 18px}
.phc-search--modal>.phc-field{border-right:0;border-bottom:1px solid var(--ph-line)}
.phc-search--modal .phc-btn{border-radius:0 0 var(--ph-r) var(--ph-r);padding:20px}
@media (max-width:960px){
  .phc-search{grid-template-columns:1fr 1fr}
  .phc-search>.phc-field--dates{grid-column:1/-1;order:-1;border-right:0;border-bottom:1px solid var(--ph-line)}
  .phc-search>.phc-field--dest{border-bottom:0}
  .phc-search>.phc-field--guests{border-right:0}
  .phc-search .phc-btn{grid-column:1/-1;border-radius:0 0 var(--ph-r) var(--ph-r);padding:20px;border-top:1px solid var(--ph-line)}
}

/* Calendario */
.phc-cal{position:absolute;z-index:60;top:calc(100% + 10px);left:0;background:#fff;border-radius:var(--ph-r);box-shadow:0 30px 80px -20px rgba(20,18,15,.35),0 0 0 1px var(--ph-line);padding:18px 20px;width:max-content;max-width:min(680px,92vw);color:var(--ph-ink)}
.phc-book .phc-cal{right:0;left:auto}
.phc-cal__top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}
.phc-cal__hint{font:400 13.5px/1.3 var(--ph-sans);color:var(--ph-stone);text-align:center}
.phc-cal__hint.is-err{color:#9B2C1F}
.phc-cal__nav{all:unset;cursor:pointer;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-size:24px;line-height:1;border:1px solid var(--ph-line)}
.phc-cal__nav:hover{border-color:var(--ph-ink)}
.phc-cal__nav:disabled{opacity:.25;cursor:default}
.phc-cal__months{display:flex;gap:28px}
.phc-cal__m{width:296px}
.phc-cal__mt{font:500 20px/1 var(--ph-serif);text-transform:capitalize;text-align:center;margin:8px 0 12px!important}
.phc-cal__g{display:grid;grid-template-columns:repeat(7,1fr);gap:2px 0}
.phc-cal__dw{font:500 11px/1 var(--ph-sans);color:var(--ph-stone2);text-align:center;padding:6px 0}
.phc-cal__d{all:unset;box-sizing:border-box;height:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;font:400 14.5px/1 var(--ph-sans);color:var(--ph-ink);border-radius:10px;position:relative}
.phc-cal__d small{font-size:10px;color:var(--ph-stone);margin-top:3px;letter-spacing:.02em}
.phc-cal__d:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--ph-ink)}
.phc-cal__d:disabled{color:#C9C3BA;cursor:default}
.phc-cal__d.is-busy span{text-decoration:line-through;text-decoration-color:#C9C3BA}
.phc-cal__d.is-today span{font-weight:600}
.phc-cal__d.is-in{background:var(--ph-bone);border-radius:0}
.phc-cal__d.is-start,.phc-cal__d.is-end{background:var(--ph-ink);color:#fff}
.phc-cal__d.is-start small,.phc-cal__d.is-end small{color:#D8CFC2}
.phc-cal__foot{display:flex;justify-content:space-between;align-items:center;margin-top:14px;padding-top:14px;border-top:1px solid var(--ph-line)}
.phc-cal__clear{all:unset;cursor:pointer;font:500 12px var(--ph-sans);letter-spacing:.1em;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px;color:var(--ph-stone)}
.phc-cal__ok{padding:13px 20px}
@media (max-width:720px){
  .phc-cal{position:fixed;left:0!important;right:0!important;top:auto;bottom:0;width:100%;max-width:none;border-radius:20px 20px 0 0;padding:18px 16px calc(18px + env(safe-area-inset-bottom));max-height:88vh;overflow:auto}
  html.phc-cal-open::after{content:"";position:fixed;inset:0;background:rgba(12,10,8,.45);z-index:59}
  .phc-cal__m{width:100%}
}

/* Tarjeta de reserva */
.phc-book{background:#fff;border-radius:var(--ph-r);box-shadow:var(--ph-shadow),0 0 0 1px var(--ph-line);position:relative}
.phc-book__head{padding:24px 26px 18px;border-bottom:1px solid var(--ph-line)}
.phc-book__price{margin:10px 0 0!important;font:500 34px/1 var(--ph-serif);color:var(--ph-ink)}
.phc-book__price small{font:400 14px var(--ph-sans);color:var(--ph-stone)}
.phc-book__body{padding:20px 26px 26px;display:grid;gap:12px}
.phc-book .phc-field{border:1px solid var(--ph-line);border-radius:var(--ph-r-sm);padding:12px 14px}
.phc-book .phc-field>.phc-i{right:14px;bottom:14px}
.phc-book__promo{margin:0!important;background:var(--ph-bone);border-radius:var(--ph-r-sm);padding:10px 14px;font:500 14px/1.4 var(--ph-sans);color:var(--ph-ink)}
.phc-book__quote{display:flex;justify-content:space-between;gap:12px;font:400 14px/1.4 var(--ph-sans);color:var(--ph-stone)}
.phc-book__quote:empty{display:none}
.phc-book__quote b{color:var(--ph-ink);font-weight:500}
.phc-book__quote.is-err{color:#9B2C1F;justify-content:flex-start}
.phc-book__ut{margin:0 0 6px!important;font:500 10.5px var(--ph-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ph-stone)}
.phc-book__units:empty{display:none}
.phc-unit{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--ph-line);border-radius:var(--ph-r-sm);margin-top:6px;cursor:pointer;font:400 14px/1.3 var(--ph-sans)}
.phc-unit input{accent-color:var(--ph-albero)}
.phc-unit span{flex:1}
.phc-unit small{color:var(--ph-stone)}
.phc-unit b{font-weight:500;white-space:nowrap}
.phc-unit.is-off{opacity:.5;cursor:default}
.phc-unit:has(input:checked){border-color:var(--ph-ink)}
.phc-perks{list-style:none;margin:6px 0 0!important;padding:0!important;display:grid;gap:8px}
.phc-perks li{display:flex;gap:10px;align-items:center;font:400 14px/1.35 var(--ph-sans);color:var(--ph-stone);margin:0}
.phc-perks .phc-i{color:var(--ph-albero)}
.phc-perks--fila{display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:center}
.phc-perks--fila li{font-size:13px}

/* Ficha */
.phc-intro{font:400 clamp(17px,1.4vw,20px)/1.6 var(--ph-sans);color:var(--ph-stone);margin:0}
.phc-prose{font:400 17px/1.8 var(--ph-sans);color:var(--ph-stone)}
.phc-prose p{margin:0 0 16px}
.phc-prose p:first-child{color:var(--ph-ink);font-size:18.5px}
.phc-facts{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin:0!important;padding:0!important;border-block:1px solid var(--ph-line)}
.phc-facts li{display:flex;gap:12px;align-items:center;padding:20px 16px 20px 0;margin:0;font:400 13.5px/1.3 var(--ph-sans);color:var(--ph-stone)}
.phc-facts li+li{padding-left:18px;border-left:1px solid var(--ph-line)}
.phc-facts .phc-i{font-size:24px;color:var(--ph-albero)}
.phc-facts b{display:block;color:var(--ph-ink);font:500 21px/1.1 var(--ph-serif)}
.phc-amen{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:0 32px;margin:0!important;padding:0!important}
.phc-amen li{display:flex;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--ph-line);font:400 15.5px/1.35 var(--ph-sans);color:var(--ph-ink);margin:0}
.phc-amen .phc-i{font-size:21px;color:var(--ph-albero)}
.phc-info{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.phc-info>div{background:var(--ph-bone);border-radius:var(--ph-r-sm);padding:20px;display:grid;gap:4px;align-content:start}
.phc-info .phc-i{color:var(--ph-albero);font-size:20px;margin-bottom:6px}
.phc-info small{font:500 10.5px var(--ph-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--ph-stone)}
.phc-info b{font:500 21px/1.2 var(--ph-serif);color:var(--ph-ink)}
.phc-rules{list-style:none;margin:0!important;padding:0!important;display:grid;gap:10px}
.phc-rules li{display:flex;gap:12px;align-items:flex-start;font:400 15.5px/1.5 var(--ph-sans);color:var(--ph-stone);margin:0}
.phc-rules .phc-i{color:var(--ph-albero);margin-top:3px}
.phc-lead-sm{font:400 16.5px/1.75 var(--ph-sans);color:var(--ph-stone);margin:0 0 16px}
.phc-addr{display:flex;gap:10px;align-items:center;font:500 15px var(--ph-sans);color:var(--ph-ink);margin:0 0 18px}
.phc-addr .phc-i{color:var(--ph-albero)}
.phc-map{border-radius:var(--ph-r);overflow:hidden;aspect-ratio:16/8;background:var(--ph-sand)}
.phc-map iframe{width:100%;height:100%;border:0;display:block;filter:grayscale(.85) contrast(1.05)}
.phc-price{font:400 13px var(--ph-sans);color:var(--ph-stone)}
.phc-price b{font:500 20px var(--ph-serif);color:var(--ph-ink)}
.phc-price--grande b{font-size:30px}
.phc-price--none{font-style:italic}

.phc-meta{font:400 13.5px/1.5 var(--ph-sans);color:var(--ph-stone);margin:0!important;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center}
.phc-meta__tipo{font:500 10.5px/1 var(--ph-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ph-albero)}
/* Galería */
.phc-gal{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:repeat(2,minmax(170px,29vh));gap:10px;border-radius:var(--ph-r);overflow:hidden}
.phc-gal__item{all:unset;position:relative;overflow:hidden;cursor:zoom-in;background:var(--ph-sand)}
.phc-gal__item:first-child{grid-row:span 2}
.phc-gal__item img{width:100%!important;height:100%!important;object-fit:cover;display:block;transition:transform 1.1s var(--ph-ease)}
.phc-gal__item:hover img{transform:scale(1.04)}
.phc-gal__more{position:absolute;right:14px;bottom:14px;background:var(--ph-paper);color:var(--ph-ink);font:500 11px/1 var(--ph-sans);letter-spacing:.14em;text-transform:uppercase;padding:11px 14px;border-radius:8px;display:flex;gap:8px;align-items:center}
.phc-gal__more svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5}
.phc-gal--n1{grid-template-columns:1fr;grid-template-rows:60vh}
.phc-gal--n2,.phc-gal--n3{grid-template-columns:2fr 1fr}
@media (max-width:900px){
  .phc-gal{grid-template-columns:1fr 1fr;grid-template-rows:56vw 28vw;border-radius:0}
  .phc-gal__item:first-child{grid-column:1/-1;grid-row:auto}
  .phc-gal__item:nth-child(n+4){display:none}
  .phc-gal__item:nth-child(3) .phc-gal__more,.phc-gal--n3 .phc-gal__item:nth-child(3) .phc-gal__more{display:flex}
}
.phc-lb{position:fixed;inset:0;z-index:100000;background:rgba(12,10,8,.96);display:flex;align-items:center;justify-content:center}
.phc-lb[hidden]{display:none}
.phc-lb figure{margin:0;max-width:92vw;max-height:86vh}
.phc-lb img{max-width:92vw;max-height:86vh;object-fit:contain;display:block}
.phc-lb button{all:unset;cursor:pointer;color:#fff;position:absolute;width:56px;height:56px;display:grid;place-items:center;font-size:40px;line-height:1}
.phc-lb__x{top:12px;right:12px;font-size:20px!important}
.phc-lb__x .phc-i{width:26px;height:26px}
.phc-lb__pv{left:8px;top:calc(50% - 28px)}.phc-lb__nx{right:8px;top:calc(50% - 28px)}
.phc-lb__cnt{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#fff;font:400 13px var(--ph-sans);letter-spacing:.14em}

/* Destinos */
.phc-dests{display:grid;grid-template-columns:repeat(6,1fr);gap:clamp(12px,1.5vw,20px)}
.phc-dest{position:relative;overflow:hidden;border-radius:var(--ph-r);min-height:400px;display:flex;align-items:flex-end;color:#fff!important;text-decoration:none!important;background:var(--ph-ink2);isolation:isolate}
.phc-dest img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1.3s var(--ph-ease)}
.phc-dest::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(10,9,7,.78));z-index:-1}
.phc-dest:hover img{transform:scale(1.06)}
.phc-dest:nth-child(1),.phc-dest:nth-child(2){grid-column:span 3;min-height:540px}
.phc-dest:nth-child(n+3){grid-column:span 2}
.phc-dest__in{padding:26px;width:100%;display:grid;gap:6px}
.phc-dest__n{font:400 11.5px var(--ph-sans);letter-spacing:.2em;text-transform:uppercase;opacity:.85}
.phc-dest__t{font:500 clamp(30px,3vw,42px)/1 var(--ph-serif)}
.phc-dest__row{display:flex;justify-content:space-between;align-items:center;font:400 14px var(--ph-sans);opacity:.92}
@media (max-width:960px){.phc-dests{grid-template-columns:1fr 1fr}.phc-dest{grid-column:auto!important;min-height:320px!important}.phc-dest:first-child{grid-column:1/-1!important}}
@media (max-width:600px){.phc-dests{grid-template-columns:1fr}}

/* Listado completo (pop-up) */
.phc-list{color:var(--ph-ink)}
.phc-list__top{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:18px}
.phc-list__title{font:500 clamp(30px,3vw,42px)/1.05 var(--ph-serif);margin:10px 0 0!important}
.phc-list__title em{font-weight:400}
.phc-list__search{display:flex;align-items:center;gap:10px;border:1px solid var(--ph-line);border-radius:40px;padding:10px 16px;min-width:min(320px,100%);color:var(--ph-stone)}
.phc-list__search input{border:0!important;outline:0;background:transparent!important;font:400 15px var(--ph-sans);width:100%;padding:0!important;box-shadow:none!important;color:var(--ph-ink)}
.phc-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.phc-chips button{all:unset;cursor:pointer;font:500 11.5px/1 var(--ph-sans);letter-spacing:.14em;text-transform:uppercase;padding:11px 16px;border:1px solid var(--ph-line);border-radius:40px;color:var(--ph-ink)}
.phc-chips button small{opacity:.6;letter-spacing:0;margin-left:2px}
.phc-chips button.is-on{background:var(--ph-ink);color:#fff;border-color:var(--ph-ink)}
.phc-list__group{margin-top:22px}
.phc-list__group header{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--ph-ink);padding-bottom:8px}
.phc-list__group h3{font:500 24px/1 var(--ph-serif)!important;margin:0!important;color:var(--ph-ink)}
.phc-list__group header a{font:500 11px var(--ph-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ph-stone)!important;display:flex;gap:6px;align-items:center;text-decoration:none!important}
.phc-list ul{list-style:none;margin:0!important;padding:0!important;display:grid;grid-template-columns:1fr 1fr;column-gap:28px}
.phc-list li{margin:0;border-bottom:1px solid var(--ph-line)}
.phc-list li[hidden],.phc-list__group[hidden]{display:none}
.phc-list li a{display:flex;align-items:center;gap:14px;padding:10px 0;color:var(--ph-ink)!important;text-decoration:none!important;transition:color .25s}
.phc-list li a:hover{color:var(--ph-albero)!important}
.phc-list li img,.phc-list__ph{width:56px;height:56px;border-radius:8px;object-fit:cover;flex:none;background:var(--ph-sand)}
.phc-list__name{flex:1;min-width:0;display:grid}
.phc-list__name b{font:500 19px/1.15 var(--ph-serif)}
.phc-list__name small{font:400 12.5px/1.4 var(--ph-sans);color:var(--ph-stone);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.phc-list__price{font:500 15px var(--ph-sans);white-space:nowrap}
.phc-list__price small{font-weight:400;color:var(--ph-stone);font-size:11.5px}
.phc-list li a>.phc-i{color:var(--ph-stone2)}
.phc-list__empty{color:var(--ph-stone);padding:30px 0;text-align:center}
@media (max-width:760px){.phc-list ul{grid-template-columns:1fr}}

/* Resultados */
.phc-results__search{margin-bottom:28px}
.phc-results__head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:0 0 24px;border-bottom:1px solid var(--ph-line);margin-bottom:32px}
.phc-results__count{font:400 16px var(--ph-sans);color:var(--ph-stone);margin:0!important}
.phc-results__count b{font:500 26px var(--ph-serif);color:var(--ph-ink)}
.phc-results__note{display:flex;gap:8px;align-items:center;font:400 13px var(--ph-sans);color:var(--ph-stone);margin:0!important}
.phc-results__note .phc-i{color:var(--ph-albero)}
.phc-results__empty{background:var(--ph-bone);border-radius:var(--ph-r);padding:40px;text-align:center;margin-bottom:32px}
.phc-results__empty p{color:var(--ph-stone);max-width:520px;margin:0 auto 20px}
.phc-results__no{margin-top:40px;border-top:1px solid var(--ph-line);padding-top:16px;font:400 15px var(--ph-sans);color:var(--ph-stone)}
.phc-results__no summary{cursor:pointer;font-weight:500;color:var(--ph-ink)}
.phc-results__no ul{columns:2;margin-top:12px}
.phc-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.4vw,32px)}
@media (max-width:1024px){.phc-cards{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.phc-cards{grid-template-columns:1fr}.phc-results__no ul{columns:1}}
.phc-card__img{display:block;position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:var(--ph-r);background:var(--ph-sand)}
.phc-card__img img{width:100%;height:100%!important;object-fit:cover;transition:transform 1.1s var(--ph-ease)}
.phc-card:hover .phc-card__img img{transform:scale(1.05)}
.phc-card__body{padding-top:16px}
.phc-card h3{font:500 25px/1.12 var(--ph-serif)!important;margin:0 0 6px!important}
.phc-card h3 a{color:var(--ph-ink)!important;text-decoration:none!important}
.phc-card__meta{font:400 13.5px/1.4 var(--ph-sans);color:var(--ph-stone);margin:0 0 12px!important}
.phc-card__total{margin:0 0 14px!important;font:400 13px var(--ph-sans);color:var(--ph-stone)}
.phc-card__total b{font:500 24px var(--ph-serif);color:var(--ph-ink)}
.phc-card__cta{display:flex;gap:18px;align-items:center}

/* Flotantes */
.phc-float{position:fixed;right:22px;bottom:22px;z-index:9990;display:flex;align-items:center;gap:4px;background:var(--ph-ink);color:#fff;border-radius:40px;padding:6px;box-shadow:0 18px 40px -14px rgba(0,0,0,.55);transition:transform .4s var(--ph-ease),opacity .4s}
.phc-float.is-low{transform:translateY(0)}
.phc-float__book{all:unset;cursor:pointer;display:flex;align-items:center;gap:9px;background:var(--ph-albero);color:#fff;border-radius:34px;padding:12px 18px;font:500 12px/1 var(--ph-sans);letter-spacing:.14em;text-transform:uppercase;transition:background .3s}
.phc-float__book:hover{background:#B9833F}
.phc-float__sep{width:1px;height:22px;background:var(--ph-line-l);margin:0 4px}
.phc-float__ico{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#fff!important;transition:background .3s}
.phc-float__ico:hover{background:rgba(255,255,255,.1)}
.phc-float__ico .phc-i{font-size:18px}
.phc-float--single .phc-float__book{display:none}
.phc-float--single .phc-float__sep{display:none}
.phc-mbar{display:none}
@media (max-width:820px){
  .phc-float{display:none}
  .phc-mbar{position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:9990;display:flex;align-items:center;gap:10px;background:var(--ph-ink);color:#fff;border-radius:16px;padding:8px 8px 8px 16px;box-shadow:0 18px 40px -14px rgba(0,0,0,.6);transition:transform .35s var(--ph-ease),opacity .35s}
  .phc-mbar.is-hidden{transform:translateY(140%);opacity:0}
  .phc-mbar__price{flex:1;font:400 12px var(--ph-sans);color:#D8CFC2}
  .phc-mbar__price b{font:500 22px var(--ph-serif);color:#fff}
  .phc-mbar .phc-btn{padding:14px 18px}
  .phc-mbar__wa,.phc-mbar__ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#fff!important;border:1px solid var(--ph-line-l)}
  .phc-mbar--site{padding-left:8px}
  .phc-mbar--site .phc-btn{flex:1}
  body{padding-bottom:84px}
}

/* Ventana de reserva */
.phc-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px}
.phc-modal[hidden]{display:none}
.phc-modal__bg{position:absolute;inset:0;background:rgba(12,10,8,.6);backdrop-filter:blur(4px)}
.phc-modal__box{position:relative;background:var(--ph-paper);border-radius:20px;padding:clamp(24px,4vw,44px);width:min(560px,100%);max-height:92vh;overflow:visible;box-shadow:var(--ph-shadow-lg);animation:phcIn .35s var(--ph-ease)}
@keyframes phcIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.phc-modal__x{all:unset;cursor:pointer;position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--ph-line)}
.phc-modal__t{font:500 clamp(34px,4vw,46px)/1 var(--ph-serif);color:var(--ph-ink);margin:12px 0 0!important}
.phc-modal__t em{font-weight:400}
.phc-modal__help{text-align:center;font:400 13.5px var(--ph-sans);color:var(--ph-stone);margin:16px 0 0!important}
.phc-modal__help a{color:var(--ph-ink)!important}
.phc-modal .phc-cal{left:-1px;right:-1px;width:auto;max-width:none}
.phc-modal .phc-cal__months{justify-content:center}
@media (max-width:720px){.phc-modal{align-items:flex-end;padding:0}.phc-modal__box{border-radius:20px 20px 0 0}}

/* --- Blindaje frente a los estilos globales de botones (Elementor Kit / Astra) --- */
body .phc-range-btn,body .phc-cal__nav,body .phc-cal__d,body .phc-cal__clear,body .phc-chips button,body .phc-gal__item,body .phc-lb button,body .phc-modal__x,body .phc-float__book,body .phc-unit{box-shadow:none!important;text-transform:none!important;letter-spacing:normal!important;min-height:0!important;line-height:inherit}
body .phc-range-btn{background:transparent!important;color:var(--ph-ink)!important;border:0!important;padding:0!important;border-radius:0!important;font:inherit!important;width:100%}
body .phc-cal__nav{background:transparent!important;color:var(--ph-ink)!important;border:1px solid var(--ph-line)!important;padding:0!important;border-radius:50%!important;font:400 24px/1 var(--ph-sans)!important;width:38px;height:38px}
body .phc-cal__nav:hover:not(:disabled){border-color:var(--ph-ink)!important}
body .phc-cal__d{background:transparent!important;color:var(--ph-ink)!important;border:0!important;padding:0!important;border-radius:10px!important;font:400 14.5px/1 var(--ph-sans)!important}
body .phc-cal__d:disabled{color:#C9C3BA!important;background:transparent!important}
body .phc-cal__d.is-in{background:var(--ph-bone)!important;border-radius:0!important}
body .phc-cal__d.is-start,body .phc-cal__d.is-end{background:var(--ph-ink)!important;color:#fff!important}
body .phc-cal__clear{background:transparent!important;color:var(--ph-stone)!important;border:0!important;padding:0!important;font:500 12px var(--ph-sans)!important;letter-spacing:.1em!important;text-transform:uppercase!important}
body .phc-chips button{background:transparent!important;color:var(--ph-ink)!important;border:1px solid var(--ph-line)!important;border-radius:40px!important;padding:11px 16px!important;font:500 11.5px/1 var(--ph-sans)!important;letter-spacing:.14em!important;text-transform:uppercase!important}
body .phc-chips button.is-on{background:var(--ph-ink)!important;color:#fff!important;border-color:var(--ph-ink)!important}
body .phc-gal__item{background:var(--ph-sand)!important;border:0!important;padding:0!important;border-radius:0!important}
body .phc-lb button{background:transparent!important;color:#fff!important;border:0!important;padding:0!important}
body .phc-modal__x{background:transparent!important;color:var(--ph-ink)!important;border:1px solid var(--ph-line)!important;border-radius:50%!important;padding:0!important}
body .phc-float__book{background:var(--ph-albero)!important;color:#fff!important;border:0!important;border-radius:34px!important;padding:12px 18px!important;font:500 12px/1 var(--ph-sans)!important;letter-spacing:.14em!important;text-transform:uppercase!important}
body .phc-float__book:hover{background:#B9833F!important}
body .phc-unit{background:#fff;color:var(--ph-ink)}

/* --- Piezas de la web (Elementor) --- */
.phc-num{font:500 clamp(48px,4.6vw,64px)/1 var(--ph-serif);color:var(--ph-ink);margin:0!important}
.phc-num--light{color:#fff}
.ph-chips .elementor-widget-container,.ph-chips>p,.ph-chips{display:flex;flex-wrap:wrap;gap:8px}
.ph-chips a{font:500 11.5px/1 var(--ph-sans);letter-spacing:.14em;text-transform:uppercase;padding:12px 18px;border:1px solid var(--ph-line);border-radius:40px;color:var(--ph-ink)!important;text-decoration:none!important;transition:.25s}
.ph-chips a:hover{border-color:var(--ph-ink)}
.ph-chips a.is-on{background:var(--ph-ink);color:#fff!important;border-color:var(--ph-ink)}
.elementor-widget-heading .elementor-heading-title em{font-style:italic;font-weight:400}
.ph-dark .elementor-heading-title em{color:var(--ph-albero2)}
.ph-dark a:not(.elementor-button){color:var(--ph-albero2)}
.ph-header .elementor-nav-menu--dropdown a{white-space:nowrap}
.ph-header .elementor-nav-menu .sub-menu .ph-menu-all a,.ph-header .menu-item.ph-menu-all>a{font-weight:500;color:var(--ph-albero)!important;border-top:1px solid var(--ph-line)}
body.admin-bar .ph-header.elementor-sticky--active{top:32px!important}
.ph-header.elementor-sticky--effects .ph-header-card{box-shadow:0 10px 40px -12px rgba(20,18,15,.25)}
.ph-footer a{color:inherit}
.ph-prose .elementor-widget-container>*+*{margin-top:1.1em}
.ph-prose h2{font:500 clamp(28px,3vw,38px)/1.12 var(--ph-serif);color:var(--ph-ink);margin:2em 0 .6em}
.ph-prose h3{font:500 25px/1.2 var(--ph-serif);color:var(--ph-ink);margin:1.6em 0 .5em}
.ph-prose a{color:var(--ph-albero);text-decoration:underline;text-underline-offset:3px}
.ph-prose ul,.ph-prose ol{padding-left:1.2em}
.ph-prose li{margin:.4em 0}
.ph-prose blockquote{border-left:2px solid var(--ph-albero);margin:1.6em 0;padding:.4em 0 .4em 1.2em;font:italic 400 24px/1.4 var(--ph-serif);color:var(--ph-ink)}
.ph-formcard .elementor-field-group .elementor-field{border-radius:10px;border-color:var(--ph-line);background:#fff;font-family:var(--ph-sans)}
.ph-formcard .elementor-field-label,.elementor-form .elementor-field-label{font:500 10.5px/1.3 var(--ph-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ph-stone)}
.elementor-form .elementor-field-textual{border-radius:10px;border:1px solid var(--ph-line);background:#fff;font-family:var(--ph-sans);min-height:48px}
.ph-card .elementor-widget-image img,.ph-post-card .elementor-widget-image img{transition:transform 1.1s var(--ph-ease)}
.ph-card .elementor-widget-image,.ph-post-card .elementor-widget-image{overflow:hidden;border-radius:14px}
.ph-card:hover .elementor-widget-image img,.ph-post-card:hover .elementor-widget-image img{transform:scale(1.05)}
.ph-card .elementor-heading-title a,.ph-post-card .elementor-heading-title a{color:inherit}