/* Portohome · diseño nuevo (estilo Casa Cook) · colores de marca: negro #000, blanco #fff, gris #878787 */
body .ph{--paper:#ffffff;--surface:#f4f4f4;--ink:#000000;--ink-soft:#313131;--muted:#595959;--line:#e5e5e5;--pizarra:#000000;--piedra:#d9d9d9;--ocre:#878787;--gris:#878787;
  /* Letra del sistema: San Francisco en iPhone/iPad/Mac, Segoe UI en Windows, Roboto en Android */
  --f-title:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--f-title-w:600;--f-title-tt:none;--f-title-ls:-.015em;--f-title-k:.92;
  --f-ui:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--f-body:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  display:block;width:100%;background:var(--paper);color:var(--ink);font-family:var(--f-body);font-weight:400;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body .ph *{box-sizing:border-box}
body .ph h1,body .ph h2,body .ph p,body .ph blockquote{margin:0;padding:0;border:0;color:inherit;font-family:inherit;font-weight:inherit;line-height:inherit}
body .ph a{color:inherit;text-decoration:none}
body .ph .cond{font-family:var(--f-ui);font-weight:400;letter-spacing:.14em;text-transform:uppercase}
body .ph .ph-h{font-size:40px;line-height:1.15}
body .ph :focus-visible{outline:2px solid currentColor;outline-offset:3px}
body .ph button{font:inherit;color:inherit;border:0;border-radius:0;background:transparent;cursor:pointer;padding:0}

/* Portada */
body .ph .ph-hero{position:relative;display:block;height:640px;overflow:hidden;background:#1a1a1a;color:var(--paper)}
body .ph .ph-hero-img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
body .ph .ph-hero-veil{position:absolute;inset:0}
/* Barra superior fija: al bajar, el logo de la portada sube, se encoge y se encaja en ella */
body .ph{--bar-h:76px;--bar-top:var(--wp-admin--admin-bar--height,0px)}
body .ph .ph-topbar{position:fixed;z-index:40;top:var(--bar-top);left:0;right:0;height:var(--bar-h);background:var(--paper);border-bottom:1px solid var(--line);opacity:0;transform:translateY(-100%);transition:opacity .35s,transform .35s;pointer-events:none}
body .ph.is-docked .ph-topbar{opacity:1;transform:none}
body .ph .ph-hero-logo{position:fixed;z-index:41;top:var(--bar-top);left:50%;width:min(360px,70vw);transform:translate3d(-50%,var(--logo-y0,220px),0);transform-origin:50% 0;will-change:transform;backface-visibility:hidden;pointer-events:none}
body .ph .ph-hero-logo-img{display:block;width:100%;height:auto;transition:filter .35s}
body .ph.is-docked .ph-hero-logo-img{filter:invert(1)}
body .ph .ph-menu{position:fixed;z-index:45;top:calc(var(--bar-top) + (var(--bar-h) - 44px)/2);left:24px;width:44px;height:44px;padding:10px;display:flex;flex-direction:column;justify-content:center;gap:6px}
body .ph .ph-menu-line{display:block;height:1.5px;width:100%;background:var(--paper);transition:background .35s}
body .ph.is-docked .ph-menu-line{background:var(--ink)}
body .ph .ph-menu[aria-expanded="true"] .ph-menu-line{background:var(--paper)}
body .ph .ph-nav{position:fixed;z-index:44;top:var(--bar-top);left:0;bottom:0;width:min(380px,90vw);background:var(--ink);padding:96px 40px;display:flex;flex-direction:column;gap:18px;transform:translateX(-100%);transition:transform .3s}
body .ph .ph-nav.is-open{transform:none}
body .ph .ph-nav-link{font-size:26px;color:var(--paper)}

body .ph .ph-hero-book{position:relative;flex:0 0 auto;margin-left:8px;padding:11px 20px;border:1px solid var(--paper);color:var(--paper);font-size:14px;line-height:18px;letter-spacing:.16em;transition:background .35s,color .35s,border-color .35s}
body .ph .ph-hero-book:hover{background:var(--paper);color:var(--ink)}
body .ph.is-docked .ph-hero-book{border-color:var(--ink);color:var(--ink)}
body .ph.is-docked .ph-hero-book:hover{background:var(--ink);color:var(--paper)}
body .ph .ph-topnav{position:fixed;z-index:42;top:var(--bar-top);left:0;right:0;height:var(--bar-h);display:grid;grid-template-columns:minmax(0,1fr) 240px minmax(0,1fr);align-items:center;padding:0 32px;pointer-events:none}
body .ph .ph-topnav-l,body .ph .ph-topnav-r{display:flex;align-items:center;gap:32px;pointer-events:auto}
body .ph .ph-topnav-r{justify-content:flex-end}
body .ph .ph-top-link{position:relative;font-size:14px;letter-spacing:.16em;color:var(--paper);white-space:nowrap;padding:8px 0;transition:color .35s}
body .ph .ph-top-link:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}
body .ph .ph-top-link:hover:after{transform:scaleX(1)}
body .ph.is-docked .ph-top-link{color:var(--ink)}
body .ph .ph-hero-veil{background:linear-gradient(to bottom,rgba(0,0,0,.45),rgba(0,0,0,.18) 30%,rgba(0,0,0,.28))}
@media (min-width:1181px){body .ph .ph-menu,body .ph .ph-nav{display:none}}
@media (max-width:1180px){
  body .ph .ph-topnav{grid-template-columns:1fr auto;padding:0 16px}
  body .ph .ph-topnav-l,body .ph .ph-topnav-gap,body .ph .ph-top-link{display:none}
  body .ph .ph-topnav-r{grid-column:2}
  body .ph .ph-hero-book{padding:8px 12px;font-size:12px;letter-spacing:.12em}
}

/* Reserva */
body .ph .ph-book{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:stretch;background:var(--surface);padding:0 48px;color:var(--ink)}
body .ph .ph-field{display:flex;flex-direction:column;gap:4px;padding:18px 24px;border-right:1px solid var(--line)}
body .ph .ph-lbl{font-family:var(--f-ui);font-weight:600;font-size:12px;letter-spacing:.16em;color:var(--muted)}
body .ph .ph-val{font-family:var(--f-ui);font-weight:500;font-size:15px;letter-spacing:.08em;text-transform:uppercase}
body .ph .ph-btn-dark{align-self:center;margin:14px 0 14px 24px;background:var(--pizarra);color:var(--paper);font-family:var(--f-ui);font-weight:600;font-size:15px;letter-spacing:.12em;padding:0 28px;height:56px;display:flex;align-items:center;transition:background .2s}
body .ph .ph-book:hover .ph-btn-dark{background:var(--ink-soft)}

body .ph .ph-book-lodgify{display:flex}
body .ph section.ph-book{display:flex;align-items:center;gap:24px;grid-template-columns:none;padding:14px 48px}
body .ph .ph-book-t{flex:0 0 auto;font-family:var(--f-ui);font-weight:500;font-size:15px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
body .ph .ph-lodgify{flex:1;min-width:0;min-height:56px}
:root{--ldg-psb-background:transparent;--ldg-psb-border-radius:0;--ldg-psb-box-shadow:none;--ldg-psb-padding:0;--ldg-psb-input-background:transparent;--ldg-psb-button-border-radius:0;
  --ldg-psb-color-primary:#000000;--ldg-psb-color-primary-lighter:#313131;--ldg-psb-color-primary-darker:#000000;--ldg-psb-color-primary-contrast:#ffffff;
  --ldg-semantic-color-primary:#000000;--ldg-semantic-color-primary-lighter:#313131;--ldg-semantic-color-primary-darker:#000000;--ldg-semantic-color-primary-contrast:#ffffff;--ldg-component-modal-z-index:999}
#lodgify-search-bar{position:relative;z-index:5;width:100%}
/* Botón de Lodgify: la regla general de enlaces le quitaba el color al texto */
body .ph #lodgify-search-bar a.primary{color:var(--paper);font-family:var(--f-ui);font-weight:600;letter-spacing:.14em;text-transform:uppercase}
body .ph #lodgify-search-bar a.primary svg{color:var(--paper);fill:currentColor}

/* Introducción */
body .ph .ph-intro{display:block;padding:72px 48px 80px;border-bottom:1px solid var(--line)}
body .ph .ph-intro-p{margin-top:20px;max-width:62em;color:var(--ink-soft)}
body .ph .ph-intro-p p+p{margin-top:14px}
body .ph .ph-intro-p strong{font-weight:500;color:var(--ink)}

/* Secciones */
body .ph .ph-sec{display:block;padding:96px 48px}
body .ph .ph-casas{padding-right:0}
body .ph .ph-ofertas{padding-bottom:128px}
body .ph .ph-wrap{display:block;max-width:1344px;margin:0 auto}
body .ph .ph-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:32px}
body .ph .ph-casas .ph-head{padding-right:48px}
body .ph .ph-arrows{display:flex;gap:8px}
body .ph .ph-arrow{width:44px;height:44px;font-size:22px;display:flex;align-items:center;justify-content:center}

/* Tarjetas */
body .ph .ph-slider{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
body .ph .ph-slider::-webkit-scrollbar{display:none}
body .ph .ph-slider .ph-card{flex:0 0 calc((100% - 48px)/3.2);min-width:280px;scroll-snap-align:start}
body .ph .ph-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
body .ph .ph-card{display:flex;flex-direction:column;gap:12px;color:var(--ink)}
body .ph .ph-pic{position:relative;display:block;overflow:hidden;background:var(--piedra);width:100%}
body .ph .ph-r43{aspect-ratio:4/3}
body .ph .ph-r56{aspect-ratio:5/6}
body .ph .ph-r11{aspect-ratio:1/1}
body .ph .ph-pic-img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;transition:transform .8s}
body .ph .ph-card:hover .ph-pic-img{transform:scale(1.03)}
body .ph .ph-hold{position:absolute;left:12px;bottom:12px;background:var(--paper);color:var(--ink-soft);font-size:12px;padding:6px 8px}
body .ph .ph-card-t{font-size:26px;line-height:1.15}
body .ph .ph-card-t-s{font-size:24px}
body .ph .ph-loc{display:flex;align-items:center;gap:6px;font-size:14px;color:var(--ink-soft)}
body .ph .ph-loc:before{content:"";width:14px;height:14px;flex:0 0 14px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.5'%3E%3Cpath d='M12 22s7-6.2 7-12a7 7 0 1 0-14 0c0 5.8 7 12 7 12z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E")}
body .ph .ph-card-d{font-size:15px;line-height:1.6;color:var(--ink-soft)}
body .ph .ph-meta{font-size:14px;font-weight:500;color:var(--ink);border-top:1px solid var(--line);padding-top:12px}
body .ph .ph-price{font-family:var(--f-ui);font-weight:500;font-size:16px;letter-spacing:.06em;color:var(--pizarra)}
body .ph .ph-tag{position:absolute;top:12px;left:12px;background:var(--paper);color:var(--ink);font-size:12px;letter-spacing:.18em;padding:5px 10px}
body .ph .ph-more{font-size:14px;letter-spacing:.14em;color:var(--pizarra);white-space:nowrap}

/* Opiniones */
body .ph .ph-rev{display:block;background:var(--ink);color:var(--paper);padding:140px 48px 56px;text-align:center}
body .ph .ph-quote{display:none}
body .ph .ph-quote.is-active{display:block}
body .ph .ph-quote-t{max-width:900px;margin:0 auto;font-size:30px;line-height:1.35}
body .ph .ph-who{margin-top:28px;font-size:14px;color:#cfcfcf}
body .ph .ph-src{display:inline-block;margin-top:12px;font-size:14px;text-decoration:underline;color:var(--paper)}
body .ph .ph-bar{display:flex;align-items:center;justify-content:space-between;margin-top:72px;font-size:14px;color:#cfcfcf}
body .ph .ph-rev .ph-arrow{color:var(--paper)}
body .ph .ph-score:first-letter{color:var(--ocre)}

/* Destacado */
body .ph .ph-feat{position:relative;min-height:760px;overflow:hidden;background:#1a1a1a;color:var(--paper);display:flex;align-items:center;justify-content:flex-end}
body .ph .ph-feat-img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
body .ph .ph-feat-veil{position:absolute;inset:0;background:rgba(0,0,0,.5)}
body .ph .ph-feat-txt{position:relative;z-index:1;max-width:420px;margin:0 96px 0 48px;padding:48px 0;display:flex;flex-direction:column;gap:24px}
body .ph .ph-feat-p{color:var(--surface)}
body .ph .ph-btn-light{align-self:flex-start;background:var(--paper);color:var(--ink);font-family:var(--f-ui);font-weight:600;font-size:15px;letter-spacing:.12em;padding:16px 24px}
body .ph .ph-btn-light:hover{background:var(--surface)}

/* Blog */
body .ph .ph-blog-sub{max-width:44em;margin:-16px 0 28px;color:var(--ink-soft)}
body .ph .ph-filt{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:40px}
body .ph .ph-chip{padding:9px 16px;border:1px solid var(--line);font-size:13px;letter-spacing:.14em;color:var(--ink-soft);transition:background .2s,color .2s,border-color .2s}
body .ph .ph-chip:hover{border-color:var(--ink);color:var(--ink)}
body .ph .ph-chip.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
body .ph .ph-jgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 24px}
body .ph .ph-post[hidden]{display:none}
body .ph .ph-post-body{display:flex;flex-direction:column;gap:8px;flex:1}
body .ph .ph-post-cat{font-size:12px;letter-spacing:.18em;color:var(--muted)}
body .ph .ph-post-t{margin:0;font-size:22px;line-height:1.2;font-weight:400;color:var(--ink)}
body .ph .ph-post .ph-card-d{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
body .ph .ph-post-more{margin-top:auto;padding-top:6px;font-size:13px;letter-spacing:.14em;color:var(--ink)}
body .ph .ph-post:hover .ph-post-more{text-decoration:underline;text-underline-offset:4px}
body .ph .ph-blog:not(.is-filtered) .ph-post-lead{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:40px;align-items:center}
body .ph .ph-blog:not(.is-filtered) .ph-post-lead .ph-pic{aspect-ratio:16/9}
body .ph .ph-blog:not(.is-filtered) .ph-post-lead .ph-post-t{font-size:34px}
body .ph .ph-loadmore{display:flex;margin:56px auto 0;padding:16px 32px;border:1px solid var(--ink);font-size:14px;letter-spacing:.14em;color:var(--ink);transition:background .2s,color .2s}
body .ph .ph-loadmore:hover{background:var(--ink);color:var(--paper)}
body .ph .ph-loadmore[hidden]{display:none}

/* Pie */
body .ph .ph-foot{display:block;background:var(--ink);color:var(--paper);padding:72px 48px 32px}
body .ph .ph-foot-top{display:flex;flex-wrap:wrap;align-items:flex-start;gap:48px 64px}
body .ph .ph-foot-logo{height:56px;width:auto;margin-right:auto}
body .ph .ph-foot-nav{display:flex;flex-direction:column;gap:6px;font-size:14px}
body .ph .ph-foot-link{color:var(--paper)}
body .ph .ph-foot-link:hover{color:#cfcfcf}
body .ph .ph-foot-h{font-size:12px;letter-spacing:.2em;color:#878787;margin-bottom:6px}
body .ph .ph-foot-txt{color:#cfcfcf;max-width:22em}
body .ph .ph-kit{margin-top:72px;background:#fff;color:var(--ink-soft);padding:20px 24px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}
body .ph .ph-kit-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px 40px}
body .ph .ph-kit-img{height:44px;width:auto}
body .ph .ph-kit-t{font-size:11px;letter-spacing:.06em;text-transform:uppercase}
body .ph .ph-wa{position:fixed;z-index:50;right:20px;bottom:20px;width:52px;height:52px;border-radius:999px;background:var(--ink);box-shadow:0 0 0 1px rgba(255,255,255,.45);color:transparent!important;overflow:hidden;font-size:0}
body .ph .ph-wa:before{content:"";position:absolute;inset:13px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.6' stroke-linejoin='round'%3E%3Cpath d='M3.5 20.5l1.3-4.2A8.5 8.5 0 1 1 8 19.4z'/%3E%3Cpath d='M9 8.5c0 3.5 3 6.5 6.5 6.5l1-1.5-2-1-1 .8c-1-.4-2.4-1.8-2.8-2.8l.8-1-1-2z' fill='%23ffffff' stroke='none'/%3E%3C/svg%3E")}
body .ph .ph-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px;margin-top:96px;font-size:13px}
body .ph .ph-legal-link{color:#cfcfcf}
body .ph .ph-copy{margin-top:24px;text-align:center;font-size:12px;color:#878787}

/* Móvil */
@media (max-width:900px){
  body .ph{--bar-h:64px}
  body .ph .ph-menu{left:12px}
  body .ph .ph-hero{height:520px}
  body .ph .ph-book{grid-template-columns:1fr 1fr;padding:0 16px}
  body .ph .ph-field{border-right:0;border-bottom:1px solid var(--line);padding:14px 8px}
  body .ph .ph-btn-dark{grid-column:1/-1;margin:12px 0 16px;justify-content:center}
  body .ph .ph-intro{padding:48px 16px 56px}
  body .ph .ph-sec{padding:64px 16px}
  body .ph .ph-casas{padding-right:0}
  body .ph .ph-casas .ph-head{padding-right:16px}
  body .ph .ph-h{font-size:28px}
  body .ph .ph-arrows{gap:0}
  body .ph .ph-grid{grid-template-columns:1fr}
  body .ph .ph-slider .ph-card{flex-basis:80%}
  body .ph .ph-rev{padding:88px 16px 40px}
  body .ph .ph-quote-t{font-size:22px}
  body .ph .ph-feat{min-height:600px;justify-content:flex-start}
  body .ph .ph-feat-txt{margin:0 16px}
  body .ph .ph-foot{padding:56px 16px 28px}
  body .ph section.ph-book{flex-direction:column;align-items:stretch;padding:16px}
  body .ph .ph-hero-book{right:16px}
  body .ph .ph-head{flex-wrap:wrap}
  body .ph .ph-kit-img{height:32px}
  body .ph .ph-jgrid{grid-template-columns:1fr;gap:40px}
  body .ph .ph-blog:not(.is-filtered) .ph-post-lead{display:flex;gap:12px}
  body .ph .ph-blog:not(.is-filtered) .ph-post-lead .ph-pic{aspect-ratio:4/3}
  body .ph .ph-blog:not(.is-filtered) .ph-post-lead .ph-post-t{font-size:26px}
  body .ph .ph-filt{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -16px 32px;padding:0 16px}
  body .ph .ph-filt::-webkit-scrollbar{display:none}
  body .ph .ph-chip{flex:0 0 auto}
}

/* Tipografía: títulos con --f-title, etiquetas/botones/menú con --f-ui, texto con --f-body */
body .ph strong{font-weight:500}
body .ph .ph-top-link,body .ph .ph-chip,body .ph .ph-post-cat,body .ph .ph-post-more,body .ph .ph-more,body .ph .ph-tag,body .ph .ph-foot-h,body .ph .ph-hero-book,body .ph .ph-loadmore{font-size:12px;letter-spacing:.2em;font-weight:400}
body .ph .ph-h,body .ph .ph-card-t,body .ph .ph-post-t,body .ph .ph-quote-t,body .ph .ph-nav-link,body .ph .ph-feat-txt h2{font-family:var(--f-title);font-weight:var(--f-title-w);text-transform:var(--f-title-tt);letter-spacing:var(--f-title-ls);line-height:1.1}
body .ph .ph-h{font-size:calc(40px*var(--f-title-k))}
body .ph .ph-card-t{font-size:calc(26px*var(--f-title-k))}
body .ph .ph-post-t{font-size:calc(22px*var(--f-title-k))}
body .ph .ph-blog:not(.is-filtered) .ph-post-lead .ph-post-t{font-size:calc(34px*var(--f-title-k))}
body .ph .ph-quote-t{font-size:calc(30px*var(--f-title-k));line-height:1.3}
body .ph .ph-nav-link{font-size:calc(26px*var(--f-title-k))}
@media (max-width:900px){
  body .ph .ph-h{font-size:calc(28px*var(--f-title-k))}
  body .ph .ph-quote-t{font-size:calc(22px*var(--f-title-k))}
  body .ph .ph-blog:not(.is-filtered) .ph-post-lead .ph-post-t{font-size:calc(26px*var(--f-title-k))}
}
/* Lodgify oculto para leer precios */
body .ph .ph-ldg-hold{position:absolute;left:-10000px;top:0;width:360px;height:1px;overflow:hidden}
html:has(.ph){scroll-behavior:smooth}
body .ph [id]{scroll-margin-top:calc(var(--bar-top) + var(--bar-h) + 16px)}

/* ===== Ficha de casa ===== */
body .ph .ph-hero-ficha{height:78vh;height:78svh;min-height:560px;max-height:820px}
body .ph .ph-hero-cap{position:absolute;z-index:1;left:48px;right:48px;bottom:48px;color:var(--paper)}
body .ph .ph-hero-kicker{font-size:12px;letter-spacing:.2em;margin-bottom:12px}
body .ph .ph-hero-h{margin:0;text-transform:var(--f-title-tt);letter-spacing:var(--f-title-ls);font-family:var(--f-title);font-weight:var(--f-title-w);font-size:calc(64px*var(--f-title-k));line-height:1.05;color:var(--paper)}
body .ph .ph-prop{display:block;padding:72px 48px 96px}
body .ph .ph-prop-grid{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:72px;align-items:start}
body .ph .ph-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
body .ph .ph-fact{display:flex;flex-direction:column;gap:6px;padding:20px 0}
body .ph .ph-fact+.ph-fact{padding-left:24px;border-left:1px solid var(--line)}
body .ph .ph-fact-n{font-family:var(--f-title);font-size:36px;line-height:1}
body .ph .ph-fact-l{font-size:11px;letter-spacing:.2em;color:var(--muted)}
body .ph .ph-prop-lead{margin-top:40px;font-family:var(--f-title);font-size:24px;line-height:1.45;color:var(--ink)}
body .ph .ph-prop-body{margin-top:20px;color:var(--ink-soft)}
body .ph .ph-prop-body p{margin:0 0 12px}
body .ph .ph-prop-body ul{margin:0;padding-left:18px}
body .ph .ph-prop-body li{margin-bottom:6px}
body .ph .ph-blk{margin-top:72px}
body .ph .ph-blk .ph-h{font-size:calc(30px*var(--f-title-k));margin-bottom:24px}
body .ph .ph-gal{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:0!important;padding:0!important;list-style:none}
body .ph .ph-gal>*{position:relative;margin:0!important;padding:0!important;width:auto!important;aspect-ratio:1/1;overflow:hidden;background:var(--piedra)}
body .ph .ph-gal>*:first-child{grid-column:span 2;grid-row:span 2}
body .ph .ph-gal>*:nth-child(n+7){display:none}
body .ph .ph-gal figure,body .ph .ph-gal a{display:block;width:100%;height:100%;margin:0}
body .ph .ph-gal img{display:block;width:100%!important;height:100%!important;object-fit:cover;transition:transform .8s}
body .ph .ph-gal a:hover img{transform:scale(1.03)}
body .ph .ph-gal-all{margin-top:16px;padding:12px 20px;border:1px solid var(--ink);font-size:12px;letter-spacing:.2em}
body .ph .ph-gal-all:hover{background:var(--ink);color:var(--paper)}
body .ph .ph-amen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px}
body .ph .ph-amen-l,body .ph .ph-rule-l{font-size:11px;letter-spacing:.2em;color:var(--muted);margin-bottom:6px}
body .ph .ph-amen-v,body .ph .ph-rule-v{color:var(--ink-soft)}
body .ph .ph-rules{border-top:1px solid var(--line)}
body .ph .ph-rule{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;padding:16px 0;border-bottom:1px solid var(--line)}
body .ph .ph-rule-l{margin:3px 0 0}
body .ph .ph-addr{margin-bottom:12px;color:var(--ink-soft)}
body .ph .ph-prop-side{position:sticky;top:calc(var(--bar-top) + var(--bar-h) + 24px)}
body .ph .ph-bookcard{border:1px solid var(--line);padding:28px;background:var(--paper)}
body .ph .ph-bookcard-k{font-size:11px;letter-spacing:.2em;color:var(--muted)}
body .ph .ph-bookcard-price{margin:6px 0 20px;font-family:var(--f-title);font-size:28px;line-height:1.2}
body .ph .ph-bookbox{min-height:190px}
body .ph #lodgify-book-now-box{width:100%}
body .ph .ph-bookbox #lodgify-book-now-box div{box-shadow:none!important}
body .ph .ph-bookbox #lodgify-book-now-box>div,body .ph .ph-bookbox #lodgify-book-now-box>div>div{padding:0!important;margin:0!important;width:100%!important;max-width:none!important;border:0!important;border-radius:0!important}
body .ph #lodgify-book-now-box button{border-radius:0}
body .ph .ph-trust{list-style:none;margin:20px 0 0;padding:16px 0 0;border-top:1px solid var(--line);display:grid;gap:8px;font-size:14px;color:var(--ink-soft)}
body .ph .ph-trust li{position:relative;padding-left:22px}
body .ph .ph-trust li:before{content:"";position:absolute;left:2px;top:6px;width:10px;height:6px;border-left:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);transform:rotate(-45deg)}
body .ph .ph-ask{display:inline-block;margin-top:16px;font-size:14px;text-decoration:underline;text-underline-offset:4px}
body .ph .ph-otras{border-top:1px solid var(--line)}
body .ph .ph-otras .ph-card[hidden]{display:none}
body .ph .ph-mbar{display:none}
@media (max-width:1100px){
  body .ph .ph-prop-grid{grid-template-columns:minmax(0,1fr) 340px;gap:40px}
}
@media (max-width:900px){
  body .ph.ph-ficha{padding-bottom:72px}
  body .ph .ph-hero-cap{left:16px;right:16px;bottom:32px}
  body .ph .ph-hero-h{font-size:calc(40px*var(--f-title-k))}
  body .ph .ph-prop{padding:40px 16px 64px}
  body .ph .ph-prop-grid{grid-template-columns:1fr;gap:48px}
  body .ph .ph-prop-side{position:static;order:-1}
  body .ph .ph-prop-main{order:0}
  body .ph .ph-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  body .ph .ph-fact:nth-child(3){padding-left:0;border-left:0}
  body .ph .ph-fact:nth-child(n+3){border-top:1px solid var(--line)}
  body .ph .ph-gal{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body .ph .ph-gal>*:nth-child(n+6){display:none}
  body .ph .ph-amen{grid-template-columns:1fr}
  body .ph .ph-rule{grid-template-columns:1fr;gap:4px}
  body .ph .ph-mbar{display:flex;position:fixed;z-index:48;left:0;right:0;bottom:0;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:var(--paper);border-top:1px solid var(--line)}
  body .ph .ph-mbar-p{font-family:var(--f-title);font-size:18px}
  body .ph .ph-mbar-btn{background:var(--ink);color:var(--paper);padding:12px 20px;font-size:12px;letter-spacing:.2em}
  body .ph.ph-ficha .ph-wa{bottom:84px}
}

/* ===== Común a todas las páginas ===== */
body.ph-body{margin:0;background:#fff}
body.ph-body .brx-popup,body.ph-body #brx-header,body.ph-body #brx-footer{display:none!important}
body .ph img{max-width:100%}
body .ph main{display:block}
body .ph.ph-nohero main{padding-top:var(--bar-h)}
body .ph h3,body .ph h4,body .ph ul,body .ph ol,body .ph figure{margin:0;padding:0}
body .ph .ph-hero-s{height:60vh;height:60svh;min-height:440px;max-height:620px}
body .ph .ph-sub{margin-top:14px;max-width:40em;font-size:17px;color:var(--surface)}
body .ph .ph-pagehead{max-width:1344px;margin:0 auto;padding:72px 48px 8px}
body .ph .ph-pagehead .ph-h{font-size:calc(52px*var(--f-title-k))}
body .ph .ph-kicker{display:block;margin-bottom:14px;font-size:12px;letter-spacing:.2em;color:var(--muted)}

/* Texto largo (artículos, páginas legales) */
body .ph .ph-prose{max-width:760px;margin:0 auto;padding:64px 24px 16px;color:var(--ink-soft);font-size:17px;line-height:1.75}
body .ph .ph-prose h1,body .ph .ph-prose h2,body .ph .ph-prose h3,body .ph .ph-prose h4,body .ph .ph-prose h5,body .ph .ph-prose h6{margin:48px 0 16px;font-family:var(--f-title);font-weight:var(--f-title-w);line-height:1.2;color:var(--ink);text-transform:none;letter-spacing:0}
body .ph .ph-prose h1{font-size:34px}
body .ph .ph-prose h2{font-size:30px}
body .ph .ph-prose h3{font-size:24px}
body .ph .ph-prose h4,body .ph .ph-prose h5,body .ph .ph-prose h6{font-size:20px}
body .ph .ph-prose>*:first-child{margin-top:0}
body .ph .ph-prose p{margin:0 0 18px}
body .ph .ph-prose a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
body .ph .ph-prose strong,body .ph .ph-prose b{font-weight:500;color:var(--ink)}
body .ph .ph-prose ul,body .ph .ph-prose ol{margin:0 0 18px;padding-left:22px}
body .ph .ph-prose li{margin-bottom:8px}
body .ph .ph-prose figure{margin:32px 0}
body .ph .ph-prose img{display:block;height:auto}
body .ph .ph-prose .wp-block-image img{width:100%}
body .ph .ph-prose figcaption{margin-top:8px;font-size:13px;color:var(--muted)}
body .ph .ph-prose blockquote{margin:28px 0;padding-left:20px;border-left:2px solid var(--ink);font-family:var(--f-title);font-size:22px;line-height:1.45;color:var(--ink)}
body .ph .ph-prose table{width:100%;border-collapse:collapse;font-size:15px;margin:0 0 24px}
body .ph .ph-prose td,body .ph .ph-prose th{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
body .ph .ph-prose .wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}
body .ph .ph-prose .wp-block-button__link{display:inline-block;padding:14px 24px;background:var(--ink);color:var(--paper);text-decoration:none;border-radius:0;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
body .ph .ph-art-meta{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:16px;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--surface)}
body .ph .ph-cta{max-width:760px;margin:32px auto 0;padding:32px;border:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
body .ph .ph-cta-t{font-family:var(--f-title);font-size:26px;line-height:1.2;color:var(--ink)}
body .ph .ph-cta-p{margin-top:6px;color:var(--ink-soft)}
body .ph .ph-btn{display:inline-block;padding:15px 26px;background:var(--ink);color:var(--paper);font-size:12px;letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--ink);transition:background .2s,color .2s}
body .ph .ph-btn:hover{background:var(--paper);color:var(--ink)}
body .ph .ph-btn-line{background:transparent;color:var(--ink)}
body .ph .ph-btn-line:hover{background:var(--ink);color:var(--paper)}

/* Secciones de páginas */
body .ph .ph-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
body .ph .ph-split-img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--piedra)}
body .ph .ph-txt{color:var(--ink-soft);font-size:17px;line-height:1.75}
body .ph .ph-txt p{margin:0 0 16px}
body .ph .ph-txt strong,body .ph .ph-txt b{font-weight:500;color:var(--ink)}
body .ph .ph-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px}
body .ph .ph-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
body .ph .ph-col{border-top:1px solid var(--ink);padding-top:20px}
body .ph .ph-col-n{display:block;font-size:12px;letter-spacing:.2em;color:var(--muted);margin-bottom:12px}
body .ph .ph-col-t{font-family:var(--f-title);font-size:24px;line-height:1.2;color:var(--ink);margin-bottom:8px}
body .ph .ph-col-p{color:var(--ink-soft)}
body .ph .ph-band{background:var(--ink);color:var(--paper);padding:96px 48px;text-align:center}
body .ph .ph-band .ph-h{max-width:900px;margin:0 auto}
body .ph .ph-band-p{max-width:46em;margin:20px auto 0;color:#cfcfcf}
body .ph .ph-band .ph-btn{margin-top:32px;background:var(--paper);color:var(--ink);border-color:var(--paper)}
body .ph .ph-band .ph-btn:hover{background:transparent;color:var(--paper)}
body .ph .ph-band-tel{display:inline-block;margin-top:20px;font-family:var(--f-title);font-size:40px;color:var(--paper)}

/* Contacto */
body .ph .ph-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:72px;align-items:start}
body .ph .ph-info{display:grid;gap:28px}
body .ph .ph-info-l{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
body .ph .ph-info-v{font-family:var(--f-title);font-size:22px;line-height:1.35;color:var(--ink)}
body .ph .ph-info-v a{color:var(--ink)}
body .ph .ph-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
body .ph .ph-form label{display:flex;flex-direction:column;gap:6px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
body .ph .ph-form input[type=text],body .ph .ph-form input[type=email],body .ph .ph-form textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:0;background:#fff;font:400 16px/1.5 var(--f-body);color:var(--ink);text-transform:none;letter-spacing:0}
body .ph .ph-form input:focus,body .ph .ph-form textarea:focus{outline:2px solid var(--ink);outline-offset:0;border-color:var(--ink)}
body .ph .ph-form textarea{min-height:160px;resize:vertical}
body .ph .ph-form .ph-full{grid-column:1/-1}
body .ph .ph-form .ph-check{flex-direction:row;align-items:flex-start;gap:10px;font-size:14px;letter-spacing:0;text-transform:none;color:var(--ink-soft)}
body .ph .ph-form .ph-check a{text-decoration:underline}
body .ph .ph-form .ph-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
body .ph .ph-form button{justify-self:start;cursor:pointer}
body .ph .ph-notice{grid-column:1/-1;padding:14px 16px;border:1px solid var(--ink);color:var(--ink)}
body .ph .ph-notice-err{border-color:#a4262c;color:#a4262c}

/* Visor de fotos */
body .ph .ph-gal a{cursor:zoom-in}
body .ph .ph-lb{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.94)}
body .ph .ph-lb[hidden]{display:none}
body .ph .ph-lb img{max-width:88vw;max-height:84vh;width:auto;height:auto;object-fit:contain}
body .ph .ph-lb button{position:absolute;color:#fff;font-size:28px;width:56px;height:56px;display:flex;align-items:center;justify-content:center}
body .ph .ph-lb-x{top:16px;right:16px}
body .ph .ph-lb-p{left:12px;top:50%;transform:translateY(-50%)}
body .ph .ph-lb-s{right:12px;top:50%;transform:translateY(-50%)}
body .ph .ph-lb-n{position:absolute;bottom:20px;left:0;right:0;text-align:center;color:#cfcfcf;font-size:13px;letter-spacing:.2em}

@media (max-width:900px){
  body .ph .ph-pagehead{padding:48px 16px 0}
  body .ph .ph-pagehead .ph-h{font-size:calc(36px*var(--f-title-k))}
  body .ph .ph-prose{padding:40px 16px 8px;font-size:16px}
  body .ph .ph-prose h1{font-size:28px}
  body .ph .ph-prose h2{font-size:25px}
  body .ph .ph-prose h3{font-size:21px}
  body .ph .ph-cta{margin:24px 16px 0;padding:24px}
  body .ph .ph-split,body .ph .ph-two{grid-template-columns:1fr;gap:40px}
  body .ph .ph-cols,body .ph .ph-cols-3{grid-template-columns:1fr 1fr;gap:28px}
  body .ph .ph-band{padding:64px 16px}
  body .ph .ph-band-tel{font-size:30px}
  body .ph .ph-form{grid-template-columns:1fr}
}
@media (max-width:560px){
  body .ph .ph-cols,body .ph .ph-cols-3{grid-template-columns:1fr}
}

/* Logo enlazado al inicio (se puede pulsar cuando ya está en la barra) */
body .ph a.ph-hero-logo{display:block}
body .ph.is-docked a.ph-hero-logo{pointer-events:auto}
body .ph .ph-skip{position:fixed;z-index:60;left:16px;top:-80px;padding:10px 16px;background:var(--ink);color:var(--paper);font-size:14px}
body .ph .ph-skip:focus{top:calc(var(--bar-top) + 12px)}
body .ph .ph-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
body .ph .ph-pages{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:0 48px 96px}
body .ph .ph-pages .page-numbers{min-width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);font-size:14px}
body .ph .ph-pages .page-numbers.current{background:var(--ink);color:var(--paper);border-color:var(--ink)}
@media (max-width:1100px){body .ph .ph-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){body .ph .ph-grid-4{grid-template-columns:1fr}}

/* Fuera del diseño (aviso de cookies, etc.): misma letra */
body.ph-body{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}

/* Logo que se encaja al bajar: lo anima el propio navegador con el desplazamiento (fluido también en móvil).
   Si el navegador no lo admite, lo mueve portohome.js. */
@keyframes ph-logo{
  from{transform:translate3d(-50%,var(--logo-y0),0) scale(1)}
  to{transform:translate3d(-50%,var(--logo-y1),0) scale(var(--logo-s1))}
}
@supports (animation-timeline: scroll()){
  body .ph.ph-sda .ph-hero-logo{animation:ph-logo linear both;animation-timeline:scroll(root block);animation-range:0px var(--dock-end,564px)}
}
@media (prefers-reduced-motion:reduce){
  body .ph .ph-topbar,body .ph .ph-hero-logo-img{transition:none}
}

/* Calendario de disponibilidad y precios (ficha de casa) */
body .ph .ph-cal-ayuda{margin:-12px 0 20px;color:var(--ink-soft)}
body .ph .ph-cal{position:relative}
body .ph .ph-cal-nav{position:absolute;top:-4px;right:0;display:flex;gap:4px}
body .ph .ph-cal-nav button{width:40px;height:40px;border:1px solid var(--line);font-size:18px;display:flex;align-items:center;justify-content:center}
body .ph .ph-cal-nav button:disabled{opacity:.3;cursor:default}
body .ph .ph-cal-meses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
body .ph .ph-cal-tit{height:40px;display:flex;align-items:center;font-family:var(--f-title);font-weight:var(--f-title-w);font-size:18px;text-transform:capitalize;color:var(--ink)}
body .ph .ph-cal-sem,body .ph .ph-cal-dias{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
body .ph .ph-cal-sem span{padding:8px 0;text-align:center;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
body .ph .ph-cal-d{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:54px;border:1px solid transparent;color:var(--ink);transition:background .15s}
body .ph .ph-cal-d:hover:not(:disabled){border-color:var(--ink)}
body .ph .ph-cal-n{font-size:15px;line-height:1}
body .ph .ph-cal-p{font-size:11px;line-height:1;color:var(--muted)}
body .ph .ph-cal-d.is-fuera{color:#c4c4c4}
body .ph .ph-cal-d.is-ocupado .ph-cal-n{color:#b5b5b5;text-decoration:line-through}
body .ph .ph-cal-d:disabled{cursor:default}
body .ph .ph-cal-d.is-rango{background:var(--surface)}
body .ph .ph-cal-d.is-ini,body .ph .ph-cal-d.is-fin{background:var(--ink);color:var(--paper)}
body .ph .ph-cal-d.is-ini .ph-cal-p,body .ph .ph-cal-d.is-fin .ph-cal-p,body .ph .ph-cal-d.is-ini .ph-cal-n,body .ph .ph-cal-d.is-fin .ph-cal-n{color:var(--paper);text-decoration:none}
body .ph .ph-cal-ley{display:flex;gap:20px;margin-top:16px;font-size:13px;color:var(--ink-soft)}
body .ph .ph-cal-ley span{display:flex;align-items:center;gap:8px}
body .ph .ph-cal-k{display:inline-block;width:14px;height:14px;border:1px solid var(--ink)}
body .ph .ph-cal-k.is-ocupado{border-color:#c4c4c4;background:repeating-linear-gradient(45deg,#fff 0 3px,#d9d9d9 3px 4px)}
body .ph .ph-cal-msg{margin-top:20px;color:var(--ink-soft)}
body .ph .ph-cal-res{margin-top:24px;padding:24px;border:1px solid var(--line);display:grid;gap:20px}
body .ph .ph-cal-fechas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;color:var(--ink)}
body .ph .ph-cal-l{display:block;margin-bottom:4px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
body .ph .ph-cal-hues{display:flex;align-items:center;gap:14px}
body .ph .ph-cal-hues .ph-cal-l{margin:0 auto 0 0}
body .ph .ph-cal-hues button{width:36px;height:36px;border:1px solid var(--line);font-size:18px}
body .ph .ph-cal-hues button:disabled{opacity:.3}
body .ph .ph-cal-total{display:flex;align-items:baseline;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px}
body .ph .ph-cal-total strong{font-family:var(--f-title);font-weight:var(--f-title-w);font-size:28px;color:var(--ink)}
body .ph .ph-cal-res .ph-btn{text-align:center}
body .ph .ph-cal-nota{font-size:13px;color:var(--muted)}
@media (max-width:759px){
  body .ph .ph-cal-meses{grid-template-columns:1fr}
  body .ph .ph-cal-d{height:48px}
}
body .ph .ph-bookbox-btn{display:block;text-align:center}
body .ph .ph-bookbox:has(.ph-bookbox-btn){min-height:0}

/* Resultados de la búsqueda (/propiedades/?arrival=…) */
body .ph .ph-res-n{margin-bottom:32px;font-family:var(--f-title);font-weight:var(--f-title-w);font-size:22px;color:var(--ink)}
body .ph .ph-res .ph-card-t a{color:var(--ink)}
body .ph .ph-res-box{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
body .ph .ph-res-ok{font-size:11px;letter-spacing:.2em;color:#2b6b45}
body .ph .ph-res-no{font-size:11px;letter-spacing:.2em;color:var(--muted)}
body .ph .ph-res-total strong{font-family:var(--f-title);font-weight:var(--f-title-w);font-size:26px;color:var(--ink)}
body .ph .ph-res-total span{color:var(--ink-soft);font-size:14px}
body .ph .ph-res .ph-btn{text-align:center}
body .ph .ph-res-ver{font-size:14px;text-decoration:underline;text-underline-offset:4px;color:var(--ink)}
body .ph .ph-res.is-no .ph-pic-img{filter:grayscale(1);opacity:.6}
body .ph .ph-res-nota{margin-top:40px;font-size:13px;color:var(--muted)}

/* Introducción de la portada (rediseño) */
body .ph .ph-intro2{padding:128px 48px 120px;border-bottom:1px solid var(--line);text-align:center}
body .ph .ph-intro2-in{max-width:1040px;margin:0 auto}
body .ph .ph-intro2 .ph-kicker{margin-bottom:24px}
body .ph .ph-intro2-h{margin:0 auto;max-width:16em;font-family:var(--f-title);font-weight:var(--f-title-w);letter-spacing:var(--f-title-ls);font-size:calc(58px*var(--f-title-k));line-height:1.05;color:var(--ink)}
body .ph .ph-intro2-lead{margin:36px auto 0;max-width:34em;font-size:23px;line-height:1.5;color:var(--ink)}
body .ph .ph-intro2-p{margin:18px auto 0;max-width:40em;color:var(--ink-soft)}
body .ph .ph-intro2-p a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
body .ph .ph-cifras{list-style:none;margin:72px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left}
body .ph .ph-cifras li{display:flex;flex-direction:column;gap:8px;padding:28px 24px}
body .ph .ph-cifras li+li{border-left:1px solid var(--line)}
body .ph .ph-cifras strong{font-family:var(--f-title);font-weight:var(--f-title-w);font-size:38px;line-height:1;color:var(--ink)}
body .ph .ph-cifras span{font-size:14px;line-height:1.45;color:var(--ink-soft)}
body .ph .ph-intro2-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:48px}
@media (max-width:900px){
  body .ph .ph-intro2{padding:72px 16px 64px}
  body .ph .ph-intro2-h{font-size:calc(36px*var(--f-title-k))}
  body .ph .ph-intro2-lead{font-size:19px}
  body .ph .ph-cifras{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:48px}
  body .ph .ph-cifras li{padding:20px 16px}
  body .ph .ph-cifras li:nth-child(3){border-left:0}
  body .ph .ph-cifras li:nth-child(n+3){border-top:1px solid var(--line)}
  body .ph .ph-cifras strong{font-size:30px}
  body .ph .ph-intro2-cta .ph-btn{flex:1 1 100%;text-align:center}
}

/* Logos del Kit Digital integrados en el pie negro (versiones para fondo oscuro) */
body .ph .ph-kit{margin-top:80px;padding:48px 0 0;background:transparent;border-top:1px solid #262626;color:#878787;display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center}
body .ph .ph-kit-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:28px 64px}
body .ph .ph-kit-img{height:40px;width:auto}
body .ph .ph-kit-blanco{filter:brightness(0) invert(1);opacity:.92}
body .ph .ph-ue{display:flex;align-items:center;gap:12px;text-align:left}
body .ph .ph-ue-flag{display:block;height:40px;width:auto}
body .ph .ph-ue-t{font-size:13px;line-height:1.2;font-weight:600;color:#fff}
body .ph .ph-ue-t span{display:block;margin-top:3px;font-size:11px;font-weight:400;color:#cfcfcf}
body .ph .ph-kit-t{max-width:56em;font-size:11px;letter-spacing:.12em;text-transform:uppercase;line-height:1.6;color:#878787}
@media (max-width:900px){
  body .ph .ph-kit{margin-top:56px;padding-top:36px}
  body .ph .ph-kit-logos{gap:24px 36px}
  body .ph .ph-kit-img,body .ph .ph-ue-flag{height:32px}
}

/* Mapa de Google en el pie */
body .ph .ph-foot-marca{display:flex;flex-direction:row;align-items:flex-start;gap:32px;margin-right:auto}
body .ph .ph-foot-mapa{width:300px;max-width:100%}
body .ph .ph-foot-marca .ph-foot-logo{margin-right:0;align-self:flex-start}
body .ph .ph-foot-mapa{position:relative}
body .ph .ph-foot-mapa iframe{display:block;width:100%;height:220px;border:1px solid #262626;filter:grayscale(1) invert(.92) contrast(.9);transition:filter .4s}
body .ph .ph-foot-mapa:hover iframe{filter:none}
body .ph .ph-foot-mapa-link{display:inline-block;margin-top:10px;font-size:13px;color:#cfcfcf;text-decoration:underline;text-underline-offset:4px}
@media (max-width:900px){
  body .ph .ph-foot-marca{width:100%;flex-direction:column;gap:28px}
  body .ph .ph-foot-mapa{width:100%}
  body .ph .ph-foot-mapa iframe{height:200px}
}

/* Título «Alojamientos» de la portada */
body .ph .ph-casas-head{padding-right:48px;text-align:center;margin-bottom:56px}
body .ph .ph-titulo-anim{margin:18px 0 0;font-family:var(--f-title);font-weight:200;font-size:clamp(46px,8.4vw,128px);line-height:1;letter-spacing:.16em;padding-left:.16em;text-transform:uppercase;color:var(--ink);white-space:nowrap}
body .ph .ph-titulo-anim span{display:inline-block}
body .ph.ph-anim-on .ph-titulo-anim span{opacity:0;transform:translateY(.35em);filter:blur(6px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.2,1),filter .8s ease;transition-delay:calc(var(--i) * 55ms)}
body .ph.ph-anim-on .ph-titulo-anim.is-visible span{opacity:1;transform:none;filter:none}
body .ph .ph-casas-sub{margin-top:22px;font-size:18px;color:var(--ink-soft)}
body .ph .ph-head-flechas{justify-content:flex-end;margin-bottom:20px}
@media (max-width:900px){
  body .ph .ph-casas-head{padding-right:16px;margin-bottom:36px}
  body .ph .ph-titulo-anim{font-size:clamp(30px,10vw,56px);letter-spacing:.08em;padding-left:.08em}
  body .ph .ph-casas-sub{font-size:16px}
}

/* «Alojamientos» · versión 2: tamaño contenido, la palabra sube y se dibuja una línea debajo */
body .ph .ph-titulo-b{margin:14px 0 0;font-family:var(--f-title);font-weight:600;font-size:calc(56px*var(--f-title-k));line-height:1.05;letter-spacing:-.02em;color:var(--ink)}
body .ph .ph-titulo-linea{display:block;width:72px;height:2px;margin:22px auto 0;background:var(--ink);transform-origin:50% 50%}
body .ph.ph-anim-on .ph-reveal .ph-kicker,body .ph.ph-anim-on .ph-reveal .ph-titulo-b,body .ph.ph-anim-on .ph-reveal .ph-casas-sub{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
body .ph.ph-anim-on .ph-reveal .ph-titulo-b{transition-delay:.12s}
body .ph.ph-anim-on .ph-reveal .ph-casas-sub{transition-delay:.45s}
body .ph.ph-anim-on .ph-reveal .ph-titulo-linea{transform:scaleX(0);transition:transform .9s cubic-bezier(.65,0,.35,1) .3s}
body .ph.ph-anim-on .ph-reveal.is-visible .ph-kicker,body .ph.ph-anim-on .ph-reveal.is-visible .ph-titulo-b,body .ph.ph-anim-on .ph-reveal.is-visible .ph-casas-sub{opacity:1;transform:none}
body .ph.ph-anim-on .ph-reveal.is-visible .ph-titulo-linea{transform:scaleX(1)}
@media (max-width:900px){
  body .ph .ph-titulo-b{font-size:calc(38px*var(--f-title-k))}
  body .ph .ph-titulo-linea{width:56px;margin-top:18px}
}

/* Idioma: ES / EN en la barra (en móvil, junto al botón del menú) */
body .ph .ph-lang{font-weight:500}
body .ph .ph-lang-m{display:none}
@media (max-width:1180px){
  body .ph .ph-lang-m{display:flex;align-items:center;position:fixed;z-index:45;top:calc(var(--bar-top) + (var(--bar-h) - 44px)/2);left:72px;height:44px;padding:0 8px;font-size:12px;letter-spacing:.16em;font-weight:500;color:var(--paper);transition:color .35s}
  body .ph.is-docked .ph-lang-m{color:var(--ink)}
}
@media (max-width:900px){body .ph .ph-lang-m{left:58px}}

/* Mosaico de fotos de las casas (portada): la del centro aparece primero y las de los lados se abren hacia fuera */
body .ph .ph-mos{padding:112px 0 96px;text-align:center;overflow:hidden}
body .ph .ph-mos-head{padding:0 24px;margin-bottom:72px}
body .ph .ph-mos-h{margin:14px 0 0;font-weight:600;font-size:calc(56px*var(--f-title-k));line-height:1.05;letter-spacing:-.02em}
body .ph .ph-mos-grid{display:grid;grid-template-columns:13.2fr 20.2fr 33.2fr 20.2fr 13.2fr;column-gap:20px;align-items:center}
body .ph .ph-mos-item{display:flex;flex-direction:column;gap:20px}
body .ph .ph-mos-foto{display:block;overflow:hidden;background:var(--surface)}
body .ph .ph-mos-foto img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.19,1,.22,1)}
body .ph .ph-mos-foto:hover img{transform:scale(1.04)}
body .ph .ph-mos-izq .ph-mos-foto,body .ph .ph-mos-der .ph-mos-foto{aspect-ratio:215/315}
body .ph .ph-mos-izq2 .ph-mos-foto,body .ph .ph-mos-der2 .ph-mos-foto{aspect-ratio:1}
body .ph .ph-mos-centro .ph-mos-foto{aspect-ratio:545/794}
body .ph .ph-mos-p{max-width:560px;margin:64px auto 0;padding:0 24px;color:var(--muted);font-size:18px;line-height:1.6}
/* Animación al llegar (mismos tiempos y curva que la web de referencia) */
body .ph.ph-anim-on .ph-mos-head,body .ph.ph-anim-on .ph-mos-p{opacity:0;transform:translateY(100px);transition:opacity 3s cubic-bezier(.19,1,.22,1),transform 3s cubic-bezier(.19,1,.22,1)}
body .ph.ph-anim-on .ph-mos-p{transition-delay:1.2s}
body .ph.ph-anim-on .ph-mos-item{opacity:0;transition:opacity 1s cubic-bezier(.19,1,.22,1),transform 1s cubic-bezier(.19,1,.22,1)}
body .ph.ph-anim-on .ph-mos-centro{transition-delay:1s}
body .ph.ph-anim-on .ph-mos-izq2,body .ph.ph-anim-on .ph-mos-der2{transition-delay:1.2s}
body .ph.ph-anim-on .ph-mos-izq,body .ph.ph-anim-on .ph-mos-der{transition-delay:1.4s}
body .ph.ph-anim-on .ph-mos-izq,body .ph.ph-anim-on .ph-mos-izq2{transform:translateX(100px)}
body .ph.ph-anim-on .ph-mos-der,body .ph.ph-anim-on .ph-mos-der2{transform:translateX(-100px)}
body .ph.ph-anim-on .ph-mos.is-visible .ph-mos-head,body .ph.ph-anim-on .ph-mos.is-visible .ph-mos-p,body .ph.ph-anim-on .ph-mos.is-visible .ph-mos-item{opacity:1;transform:none}
@media (max-width:760px){
  body .ph .ph-mos{padding:72px 0 64px}
  body .ph .ph-mos-head{margin-bottom:40px}
  body .ph .ph-mos-h{font-size:34px}
  body .ph .ph-mos-grid{grid-template-columns:1fr 1fr;gap:12px;padding:0 16px}
  body .ph .ph-mos-item{display:contents}
  body .ph .ph-mos-centro .ph-mos-foto{grid-column:1/-1;order:-1;aspect-ratio:4/5}
  body .ph .ph-mos-izq .ph-mos-foto,body .ph .ph-mos-der .ph-mos-foto{order:2}
  body .ph.ph-anim-on .ph-mos-item{opacity:1;transform:none}
  body .ph.ph-anim-on .ph-mos-foto{opacity:0;transform:translateY(40px);transition:opacity 1s cubic-bezier(.19,1,.22,1),transform 1.4s cubic-bezier(.19,1,.22,1)}
  body .ph.ph-anim-on .ph-mos-izq2 .ph-mos-foto,body .ph.ph-anim-on .ph-mos-der2 .ph-mos-foto{transition-delay:.2s}
  body .ph.ph-anim-on .ph-mos-izq .ph-mos-foto,body .ph.ph-anim-on .ph-mos-der .ph-mos-foto{transition-delay:.35s}
  body .ph.ph-anim-on .ph-mos.is-visible .ph-mos-foto{opacity:1;transform:none}
}

/* Cajón de reserva propio (sustituye a la barra de Lodgify) */
body .ph section.ph-book{display:block;background:var(--paper);padding:40px 48px}
/* El cajón va debajo de la foto (no encima): así el logo, al subir hacia la barra, no pasa por encima de él */
body .ph section.ph-book-sobre{background:transparent;padding:36px 48px 0;position:relative;z-index:6;margin-top:0}
body .ph .ph-rsv{position:relative;max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr 1.25fr;background:var(--paper);color:var(--ink);box-shadow:0 30px 70px -24px rgba(0,0,0,.38),0 2px 6px rgba(0,0,0,.06);text-align:left}
body .ph section.ph-book:not(.ph-book-sobre) .ph-rsv{box-shadow:none;border:1px solid var(--line)}
body .ph .ph-rsv-intro{padding:26px 28px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;gap:4px}
body .ph .ph-rsv-k{font-size:11px;letter-spacing:.22em;color:var(--muted)}
body .ph .ph-rsv-t{font-family:var(--f-title);font-weight:600;font-size:21px;line-height:1.15;letter-spacing:-.01em}
body .ph .ph-rsv-s{font-size:13px;color:var(--muted)}
body .ph .ph-rsv-f{position:relative;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:22px 26px;border:0;border-right:1px solid var(--line);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .25s}
body .ph .ph-rsv-f:hover{background:#f6f6f6}
body .ph .ph-rsv-f:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.19,1,.22,1)}
body .ph .ph-rsv-f.is-on:after{transform:scaleX(1)}
body .ph .ph-rsv-g{cursor:default}
body .ph .ph-rsv-g:hover{background:none}
body .ph .ph-rsv-l{font-size:11px;letter-spacing:.2em;color:var(--muted)}
body .ph .ph-rsv-v{display:flex;align-items:center;gap:10px;min-height:44px}
body .ph .ph-rsv-vacio{font-size:17px;color:#9a9a9a}
body .ph .ph-rsv-dia{font-family:var(--f-title);font-weight:600;font-size:40px;line-height:1;letter-spacing:-.03em}
body .ph .ph-rsv-mes{display:flex;flex-direction:column;font-size:13px;line-height:1.3;color:var(--muted);text-transform:capitalize}
body .ph .ph-rsv-mes b{font-weight:600;color:var(--ink)}
body .ph .ph-rsv-step{display:flex;align-items:center;gap:14px;min-height:44px}
body .ph .ph-rsv-step button{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:var(--paper);font-size:18px;line-height:1;color:var(--ink);cursor:pointer;transition:border-color .2s,background .2s}
body .ph .ph-rsv-step button:hover:not(:disabled){border-color:var(--ink)}
body .ph .ph-rsv-step button:disabled{opacity:.3;cursor:default}
body .ph .ph-rsv-n{min-width:2ch;text-align:center;font-family:var(--f-title);font-weight:600;font-size:40px;line-height:1;letter-spacing:-.03em}
body .ph .ph-rsv-go{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 30px;border:0;background:var(--ink);color:var(--paper);font:inherit;text-align:left;cursor:pointer}
body .ph .ph-rsv-go:before{content:"";position:absolute;inset:0;background:#2a2a2a;transform:translateX(-101%);transition:transform .5s cubic-bezier(.19,1,.22,1)}
body .ph .ph-rsv-go:hover:before{transform:none}
body .ph .ph-rsv-go>*{position:relative}
body .ph .ph-rsv-go-in{display:flex;flex-direction:column;gap:6px}
body .ph .ph-rsv-go-t{font-size:13px;letter-spacing:.2em;font-weight:600;white-space:nowrap}
body .ph .ph-rsv-go-s{font-size:13px;color:rgba(255,255,255,.65)}
body .ph .ph-rsv-go-a{font-size:26px;line-height:1;transition:transform .4s cubic-bezier(.19,1,.22,1)}
body .ph .ph-rsv-go:hover .ph-rsv-go-a{transform:translateX(6px)}
body .ph .ph-rsv.is-listo .ph-rsv-go-s{color:var(--paper)}
/* Calendario */
body .ph .ph-rsv-cal{position:absolute;z-index:20;top:calc(100% + 10px);left:calc(100% * 1.25 / 5.5);width:min(720px,calc(100vw - 32px));background:var(--paper);box-shadow:0 30px 70px -20px rgba(0,0,0,.35),0 2px 8px rgba(0,0,0,.08);padding:22px 26px 18px;animation:ph-rsv-in .35s cubic-bezier(.19,1,.22,1)}
@keyframes ph-rsv-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
body .ph .ph-rsv-calhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
body .ph .ph-rsv-ayuda{font-size:14px;color:var(--muted)}
body .ph .ph-rsv-nav{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:var(--paper);font-size:16px;cursor:pointer}
body .ph .ph-rsv-nav:hover:not(:disabled){border-color:var(--ink)}
body .ph .ph-rsv-nav:disabled{opacity:.3;cursor:default}
body .ph .ph-rsv-meses{display:grid;grid-template-columns:1fr 1fr;gap:36px}
body .ph .ph-rsv-mestit{font-weight:600;font-size:16px;text-transform:capitalize;margin-bottom:10px;text-align:center}
body .ph .ph-rsv-sem,body .ph .ph-rsv-dias{display:grid;grid-template-columns:repeat(7,1fr)}
body .ph .ph-rsv-sem span{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center;padding:4px 0}
body .ph .ph-rsv-d{position:relative;height:42px;border:0;background:none;font:inherit;font-size:15px;color:var(--ink);cursor:pointer}
body .ph .ph-rsv-d:hover:not(:disabled){outline:1px solid var(--ink);outline-offset:-3px}
body .ph .ph-rsv-d:disabled{color:#c9c9c9;cursor:default;text-decoration:line-through}
body .ph .ph-rsv-d.is-hoy{font-weight:700}
body .ph .ph-rsv-d.is-rango,body .ph .ph-rsv-d.is-previo{background:#efefef}
body .ph .ph-rsv-d.is-ini,body .ph .ph-rsv-d.is-fin{background:var(--ink);color:var(--paper);font-weight:600}
body .ph .ph-rsv-calpie{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
body .ph .ph-rsv-borrar{border:0;background:none;font:inherit;font-size:14px;text-decoration:underline;color:var(--muted);cursor:pointer}
body .ph .ph-rsv-noches{font-size:14px;font-weight:600}
body .ph .ph-rsv-listo{border:0;background:var(--ink);color:var(--paper);font:inherit;font-size:12px;letter-spacing:.2em;text-transform:uppercase;padding:12px 22px;cursor:pointer}
@media (max-width:1100px){
  body .ph .ph-rsv{grid-template-columns:1fr 1fr 1fr}
  body .ph .ph-rsv-intro{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--line);padding:20px 26px}
  body .ph .ph-rsv-go{grid-column:1/-1}
  body .ph .ph-rsv-g{border-right:0}
  body .ph .ph-rsv-cal{left:0}
}
@media (max-width:760px){
  body .ph section.ph-book,body .ph section.ph-book-sobre{padding:0 12px}
  body .ph section.ph-book:not(.ph-book-sobre){padding:24px 12px}
  body .ph section.ph-book-sobre{margin-top:0;padding-top:16px}
  body .ph .ph-rsv{grid-template-columns:1fr 1fr}
  body .ph .ph-rsv-intro{padding:18px 20px}
  body .ph .ph-rsv-t{font-size:19px}
  body .ph .ph-rsv-f{padding:16px 20px;border-bottom:1px solid var(--line)}
  body .ph .ph-rsv-f[data-campo="out"]{border-right:0}
  body .ph .ph-rsv-g{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between}
  body .ph .ph-rsv-dia,body .ph .ph-rsv-n{font-size:32px}
  body .ph .ph-rsv-go{padding:18px 20px}
  body .ph .ph-rsv-cal{position:fixed;top:auto;bottom:0;left:0;right:0;width:auto;max-height:85vh;overflow:auto;padding:18px 16px calc(14px + env(safe-area-inset-bottom));animation-name:ph-rsv-sube}
  body .ph .ph-rsv-meses{grid-template-columns:1fr}
  body .ph .ph-rsv-d{height:46px}
}
@keyframes ph-rsv-sube{from{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}

/* Opiniones (estilo carrusel de tarjetas) */
body .ph .ph-ops{padding:120px 0 112px;text-align:center;background:var(--paper);overflow:hidden}
body .ph .ph-ops-head{padding:0 24px;margin-bottom:56px}
body .ph .ph-ops-h{max-width:20em;margin:14px auto 0;font-weight:600;font-size:calc(44px*var(--f-title-k));line-height:1.1;letter-spacing:-.02em}
body .ph .ph-ops-nota{margin:18px 0 0;font-size:16px;color:var(--ink-soft)}
body .ph .ph-ops-est{letter-spacing:.08em;margin-right:6px}
body .ph .ph-ops-sep{margin:0 8px;color:var(--muted)}
body .ph .ph-ops-wrap{position:relative}
body .ph .ph-ops-pista{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 max(24px,calc((100vw - 1240px)/2));padding:0 max(24px,calc((100vw - 1240px)/2)) 8px;scrollbar-width:none;text-align:left}
body .ph .ph-ops-pista::-webkit-scrollbar{display:none}
body .ph .ph-op{flex:0 0 340px;scroll-snap-align:start;display:flex;flex-direction:column;min-height:360px;margin:0;padding:30px 28px 26px;background:#f2f2f2;color:var(--ink);transition:transform .5s cubic-bezier(.19,1,.22,1)}
body .ph .ph-op:hover{transform:translateY(-6px)}
body .ph .ph-op-1{background:#e4e4e4}
body .ph .ph-op-2{background:var(--ink);color:var(--paper)}
body .ph .ph-op-3{background:var(--paper);border:1px solid var(--line)}
body .ph .ph-op-est{font-size:26px;letter-spacing:.06em;line-height:1}
body .ph .ph-op-nombre{margin-top:14px;font-weight:600;font-size:17px}
body .ph .ph-op-t{flex:1;margin:14px 0 24px;font-size:17px;line-height:1.55}
body .ph .ph-op-pie{display:flex;align-items:center;gap:10px;font-size:13px;opacity:.8}
body .ph .ph-op-g{flex:0 0 22px;width:22px;height:22px;padding:3px;border-radius:50%;background:#fff;box-sizing:content-box}
body .ph .ph-ops-flecha{position:absolute;z-index:2;top:50%;width:54px;height:54px;margin-top:-27px;border:0;border-radius:50%;background:var(--paper);color:var(--ink);font-size:20px;box-shadow:0 8px 24px rgba(0,0,0,.18);cursor:pointer;transition:opacity .3s,transform .3s}
body .ph .ph-ops-flecha:hover{transform:scale(1.06)}
body .ph .ph-ops-flecha[disabled]{opacity:0;pointer-events:none}
body .ph .ph-ops-prev{left:16px}
body .ph .ph-ops-next{right:16px}
@media (max-width:760px){
  body .ph .ph-ops{padding:80px 0 72px}
  body .ph .ph-ops-head{margin-bottom:36px}
  body .ph .ph-ops-h{font-size:28px}
  body .ph .ph-ops-pista{gap:14px;padding:0 16px 8px;scroll-padding:0 16px}
  body .ph .ph-op{flex-basis:82vw;min-height:320px;padding:26px 22px 22px}
  body .ph .ph-op-t{font-size:16px}
  body .ph .ph-ops-flecha{display:none}
}
body .ph .ph-ops-nota{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px}
body .ph .ph-ops-dato b{font-weight:700}
body .ph .ph-op-nota{font-size:15px;line-height:26px}
body .ph .ph-op-nota b{display:inline-block;min-width:34px;margin-right:4px;padding:0 6px;background:#003580;color:#fff;font-size:15px;text-align:center}
body .ph .ph-op-2 .ph-op-nota b{background:#fff;color:#003580}
body .ph .ph-op-casa{display:block;margin-top:2px;font-weight:400;font-size:12px;letter-spacing:.14em;text-transform:uppercase;opacity:.6}
body .ph .ph-op-logo{flex:0 0 28px;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-weight:700;font-size:13px}
body .ph .ph-op-logo-b{background:#003580;color:#fff;border-radius:6px}
body .ph .ph-op-logo-a{background:#fff;color:#FF385C}
body .ph .ph-op-logo-a svg{width:18px;height:18px}
body .ph .ph-op-3 .ph-op-logo-a{background:#fff5f6}
/* Reseñas largas: se cortan a 6 líneas (el texto completo sigue en la página para Google) y se pueden abrir con «Leer más» */
body .ph .ph-op{min-height:0;height:410px}
body .ph .ph-op-t{flex:none;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden;margin-bottom:6px}
body .ph .ph-op.is-abierta{height:auto}
body .ph .ph-op.is-abierta .ph-op-t{-webkit-line-clamp:unset;display:block}
body .ph .ph-op-mas{align-self:flex-start;margin:0 0 auto;padding:0;border:0;background:none;color:inherit;font:inherit;font-size:13px;font-weight:600;text-decoration:underline;cursor:pointer}
body .ph .ph-op-pie{margin-top:auto;padding-top:16px}
@media (max-width:760px){body .ph .ph-op{height:380px}}

/* Portada: la foto ocupa toda la primera pantalla menos el sitio del cajón de reserva, que queda a la vista justo debajo */
body .ph .ph-hero-inicio{height:calc(100vh - 150px);height:calc(100svh - 150px);min-height:540px;max-height:1100px}
body .ph section.ph-book-sobre{padding-top:20px}
body .ph .ph-intro2{padding-top:96px}
@media (max-width:760px){
  body .ph .ph-hero-inicio{height:78vh;height:78svh;min-height:460px}
  body .ph .ph-intro2{padding-top:64px}
}

/* Botones flotantes de abajo: WhatsApp (derecha, con su verde) y preferencias de cookies (izquierda), mismo tamaño y misma altura */
body .ph .ph-wa{right:20px;bottom:20px;width:54px;height:54px;background:#25D366;box-shadow:0 6px 18px rgba(0,0,0,.22)}
body .ph .ph-wa:before{inset:13px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413z'/%3E%3C/svg%3E")}
body .ph .ph-wa:hover{background:#1ebe5b}
body.ph-body .cky-btn-revisit-wrapper{left:20px!important;bottom:20px!important;width:54px!important;height:54px!important;display:flex!important;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.22)}
body.ph-body .cky-btn-revisit-wrapper .cky-btn-revisit,body.ph-body .cky-btn-revisit-wrapper .cky-btn-revisit img{width:32px!important;height:32px!important}
@media (max-width:900px){body.ph-body:has(.ph-ficha) .cky-btn-revisit-wrapper{bottom:84px!important}}

/* Mapa del pie: se carga al pulsar (Google pone cookies) */
body .ph .ph-mapa-caja{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:220px;padding:16px;border:1px solid #262626;background:#111 center/cover;text-align:center}
body .ph .ph-mapa-ver{padding:11px 20px;border:1px solid #fff;background:none;color:#fff;font:inherit;font-size:12px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:background .25s,color .25s}
body .ph .ph-mapa-ver:hover{background:#fff;color:#000}
body .ph .ph-mapa-aviso{margin:0;font-size:12px;color:#9a9a9a}
@media (max-width:900px){body .ph .ph-mapa-caja{height:200px}}
/* Información básica de protección de datos junto al formulario */
body .ph .ph-rgpd{margin:0;font-size:12px;line-height:1.5;color:var(--muted)}
body .ph .ph-reat{max-width:1100px;margin:24px auto 0;padding:0 24px;font-size:12px;line-height:1.6;color:#9a9a9a;text-align:center}
/* Páginas legales: tablas legibles */
body .ph .ph-prose table{width:100%;border-collapse:collapse;margin:20px 0;font-size:14px}
body .ph .ph-prose th,body .ph .ph-prose td{padding:10px 12px;border:1px solid var(--line);text-align:left;vertical-align:top}
body .ph .ph-prose th{background:var(--surface);font-weight:600}
@media (max-width:760px){body .ph .ph-prose table{display:block;overflow-x:auto}}

/* Opiniones: cinta sin fin que empieza pegada al borde izquierdo */
body .ph .ph-ops-pista{display:block;overflow:hidden;padding:0 0 8px;scroll-padding:0}
body .ph .ph-ops-tira{display:flex;width:max-content;animation:ph-ops-rueda var(--ph-ops-dur,120s) linear infinite}
body .ph .ph-ops-tira .ph-op{margin-right:24px}
body .ph .ph-ops-pista:hover .ph-ops-tira,body .ph .ph-ops-pista.is-parada .ph-ops-tira,body .ph .ph-ops-pista.is-tocada .ph-ops-tira,body .ph .ph-ops-pista:focus-within .ph-ops-tira{animation-play-state:paused}
@keyframes ph-ops-rueda{from{transform:translateX(0)}to{transform:translateX(-50%)}}
body .ph .ph-ops-flecha{display:none}
@media (max-width:760px){body .ph .ph-ops-pista{padding:0 0 8px}body .ph .ph-ops-tira .ph-op{margin-right:14px}}
@media (prefers-reduced-motion:reduce){body .ph .ph-ops-tira{animation:none}body .ph .ph-ops-pista{overflow-x:auto}}
/* La cinta la mueve ahora portohome.js (para poder arrastrarla con el ratón o el dedo) */
body .ph .ph-ops-tira{animation:none;will-change:transform}
body .ph .ph-ops-pista{touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}
body .ph .ph-ops-pista.is-arrastrando{cursor:grabbing}
body .ph .ph-ops-pista img,body .ph .ph-ops-pista svg{pointer-events:none}
@media (prefers-reduced-motion:reduce){body .ph .ph-ops-pista{overflow:hidden}}

/* Pie: logo grande en el centro, frase y accesos directos; debajo, cuatro columnas iguales (enlaces, contacto y mapa) */
body .ph .ph-foot{padding-top:88px}
body .ph .ph-foot-cabeza{display:flex;flex-direction:column;align-items:center;text-align:center;padding-bottom:56px;border-bottom:1px solid #262626}
body .ph .ph-foot-logo-c{display:block;width:180px;transition:opacity .3s}
body .ph .ph-foot-logo-c:hover{opacity:.85}
body .ph .ph-foot-logo-c img{display:block;width:100%;height:auto}
body .ph .ph-foot-lema{margin:22px 0 0;font-size:15px;letter-spacing:.04em;color:#cfcfcf}
body .ph .ph-foot-botones{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}
body .ph .ph-foot-boton{padding:11px 20px;border:1px solid #3a3a3a;color:var(--paper);font-size:13px;letter-spacing:.06em;transition:border-color .25s,background .25s,color .25s}
body .ph .ph-foot-boton:hover{border-color:var(--paper);background:var(--paper);color:var(--ink)}
body .ph .ph-foot-top{display:grid;grid-template-columns:1fr 1fr 1fr 1.25fr;gap:40px 48px;max-width:1240px;margin:56px auto 0;align-items:start}
body .ph .ph-foot-top .ph-foot-mapa{width:auto}
body .ph .ph-foot-top .ph-mapa-caja{height:180px}
body .ph .ph-legal{margin-top:72px}
@media (max-width:900px){
  body .ph .ph-foot{padding-top:64px}
  body .ph .ph-foot-logo-c{width:140px}
  body .ph .ph-foot-top{grid-template-columns:1fr 1fr;gap:36px 24px}
  body .ph .ph-foot-top .ph-foot-mapa{grid-column:1/-1}
}
@media (max-width:560px){
  body .ph .ph-foot-boton{flex:1 1 calc(50% - 12px);text-align:center}
}
body .ph .ph-legal{justify-content:center;gap:10px 36px}

/* Pie en un solo bloque: Alojamientos · PortoHome · [logo en el centro] · Dónde estamos · Mapa */
body .ph .ph-foot-top{grid-template-columns:1fr 1fr 1.5fr 1fr 1.2fr;gap:40px 40px;max-width:1320px;margin:0 auto;align-items:center}
body .ph .ph-foot-top>.ph-foot-nav{align-self:start}
body .ph .ph-foot-top .ph-foot-cabeza{padding:0;border:0}
body .ph .ph-foot-top .ph-foot-logo-c{width:170px}
body .ph .ph-foot-top .ph-foot-lema{font-size:14px;margin-top:18px}
body .ph .ph-foot-top .ph-foot-botones{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px;width:100%;max-width:330px}
body .ph .ph-foot-top .ph-foot-boton{padding:10px 8px;font-size:12px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:1100px){
  body .ph .ph-foot-top{grid-template-columns:1fr 1fr}
  body .ph .ph-foot-top .ph-foot-cabeza{grid-column:1/-1;order:-1}
  body .ph .ph-foot-top .ph-foot-mapa{grid-column:1/-1}
}
body .ph .ph-foot-top .ph-foot-boton:nth-child(3){grid-column:1/-1;order:2}
body .ph .ph-foot-top .ph-foot-mapa{align-self:start}
body .ph .ph-foot-top .ph-foot-botones{grid-template-columns:repeat(3,1fr)}
body .ph .ph-foot-top .ph-foot-botones{grid-template-columns:1fr 1fr}
body .ph .ph-foot-top .ph-foot-boton:nth-child(2){grid-column:1/-1;order:1}
body .ph .ph-foot-top .ph-foot-boton:nth-child(3){grid-column:1/-1;order:2}

/* Menú de idiomas (ES · EN · IT · PT) */
body .ph .ph-idiomas{position:relative}
body .ph .ph-idiomas-btn{display:flex;align-items:center;gap:6px;padding:8px 0;border:0;background:none;color:var(--paper);font:inherit;font-size:12px;letter-spacing:.2em;cursor:pointer;transition:color .35s}
body .ph .ph-idiomas-btn span{font-size:9px;letter-spacing:0;transition:transform .25s}
body .ph.is-docked .ph-idiomas-btn{color:var(--ink)}
body .ph .ph-idiomas.is-open .ph-idiomas-btn span{transform:rotate(180deg)}
body .ph .ph-idiomas-lista{position:absolute;z-index:60;top:100%;right:-14px;min-width:170px;margin:10px 0 0;padding:6px 0;list-style:none;background:var(--paper);box-shadow:0 18px 40px -12px rgba(0,0,0,.35),0 1px 4px rgba(0,0,0,.08);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s,transform .25s,visibility .25s}
body .ph .ph-idiomas.is-open .ph-idiomas-lista{opacity:1;visibility:visible;transform:none}
body .ph .ph-idiomas-lista a{display:flex;align-items:baseline;gap:12px;padding:10px 18px;color:var(--ink);font-size:14px;letter-spacing:0;text-transform:none;white-space:nowrap}
body .ph .ph-idiomas-lista a span{width:22px;font-size:11px;letter-spacing:.14em;color:var(--muted)}
body .ph .ph-idiomas-lista a:hover{background:var(--surface)}
body .ph .ph-idiomas-lista a[aria-current]{font-weight:600}
body .ph .ph-idiomas-m{display:none}
body .ph .ph-nav-idiomas{display:flex;gap:20px;margin-top:28px}
body .ph .ph-nav-idioma{color:#8a8a8a;font-size:14px;letter-spacing:.2em}
body .ph .ph-nav-idioma.is-on{color:var(--paper);text-decoration:underline;text-underline-offset:6px}
@media (max-width:1180px){
  body .ph .ph-idiomas-top{display:none}
  body .ph .ph-idiomas-m{display:block;position:fixed;z-index:45;top:calc(var(--bar-top) + (var(--bar-h) - 44px)/2);left:72px;height:44px}
  body .ph .ph-idiomas-m .ph-idiomas-btn{height:44px;padding:0 8px}
  body .ph .ph-idiomas-m .ph-idiomas-lista{left:0;right:auto}
  body .ph .ph-lang-m{display:none!important}
}
@media (max-width:900px){body .ph .ph-idiomas-m{left:58px}}
