/* ---- pagina Contacto y reserva ---- */
html{scroll-behavior:smooth}
.cfrase{padding-block:38px 6px;text-align:center}
.cfrase h1{font-size:clamp(26px,3.1vw,42px);font-weight:600;margin:0 auto;max-width:30ch}
.cfrase .rule{margin:18px auto 0}
.cintro2{padding-block:26px 44px}
.introgrid2{display:grid;grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr);gap:48px;align-items:center}
.cintro2 .frame{max-width:290px;margin:0 auto 14px}
.cintro2 .frame img{aspect-ratio:1/1;object-fit:cover}
.cintro2 .lead{margin:0;font-family:'Caveat',cursive;font-weight:500;font-size:clamp(26px,2.6vw,34px);line-height:1.35;color:var(--title)}.cgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:56px;align-items:center}
.cdatos h2,.sec#normas h2{font-size:clamp(38px,4.6vw,58px)}
.cdatos .rule{margin-bottom:22px}
.cdato{display:flex;align-items:center;gap:18px;padding:18px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}
.cdato svg{flex:none;padding:10px;box-sizing:content-box;width:26px;height:26px;border:1px solid var(--gold);border-radius:50%}
.cdato span{display:grid;gap:2px}
.cdato small{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--label)}
.cdato b{font-family:var(--serif);font-size:clamp(26px,3vw,34px);line-height:1.1;color:var(--title);font-weight:700;overflow-wrap:anywhere}
.cdato[href^="mailto:"] b{font-size:clamp(17px,2.4vw,30px);white-space:nowrap;overflow-wrap:normal}
@media (max-width:860px){.cdato[href^="mailto:"] b{font-size:clamp(15px,calc((100vw - 113px)/12.4),28px)}}
.cdato em{font-style:normal;font-family:var(--serif);font-size:24px;line-height:1.2;color:var(--title);font-weight:600}
a.cdato:hover b{color:var(--gold-dark)}
.mapaph{min-height:340px;background:repeating-linear-gradient(135deg,var(--bg-alt) 0 14px,var(--line) 14px 15px);display:grid;place-content:center;text-align:center;padding:24px;border:1px solid var(--line)}
.mapaph b{font-family:var(--serif);font-size:28px;color:var(--title)}
.sec#normas .rule{margin-bottom:28px}
.serv{background:var(--card);border:1px solid var(--line);border-top:3px solid var(--gold);padding:30px 34px}
.serv ul{list-style:none;margin:0;padding:0}
.serv li{position:relative;padding-left:26px;font-size:16.5px;line-height:1.5}
.serv li::before{content:"";position:absolute;left:3px;top:.55em;width:8px;height:8px;background:var(--gold);transform:rotate(45deg)}
.normas ul{columns:2;column-gap:56px}
.normas li{break-inside:avoid;margin:0 0 16px}
.normas li b{color:var(--title)}
#contacto,#normas{scroll-margin-top:130px}
@media (max-width:860px){
  .cfrase{padding-block:28px 4px}
  .cintro2{padding-block:20px 30px}
  .introgrid2,.cgrid{grid-template-columns:minmax(0,1fr);gap:28px}
  .cintro2 .frame{max-width:230px}
  .cintro2 .lead{font-size:27px}
  .normas ul{columns:1}
  .serv{padding:24px 22px}
  #contacto,#normas{scroll-margin-top:84px}
}