@font-face{font-family:"Playfair Display";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fuentes/playfair-display-latin-ext.woff2?v=56285678) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Playfair Display";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fuentes/playfair-display-latin.woff2?v=5d91eb5d) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Playfair Display";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fuentes/playfair-display-latin-ext.woff2?v=56285678) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Playfair Display";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fuentes/playfair-display-latin.woff2?v=5d91eb5d) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Playfair Display";font-style:italic;font-weight:500;font-display:swap;src:url(/assets/fuentes/playfair-display-italic-latin-ext.woff2?v=4d6a5616) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Playfair Display";font-style:italic;font-weight:500;font-display:swap;src:url(/assets/fuentes/playfair-display-italic-latin.woff2?v=c6853004) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:300;font-display:swap;src:url(/assets/fuentes/inter-latin-ext.woff2?v=a28eb6d3) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:300;font-display:swap;src:url(/assets/fuentes/inter-latin.woff2?v=c9407645) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fuentes/inter-latin-ext.woff2?v=a28eb6d3) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fuentes/inter-latin.woff2?v=c9407645) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fuentes/inter-latin-ext.woff2?v=a28eb6d3) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fuentes/inter-latin.woff2?v=c9407645) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fuentes/inter-latin-ext.woff2?v=a28eb6d3) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fuentes/inter-latin.woff2?v=c9407645) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Calendario de reservas de Varani. A la izquierda, de qué va la llamada; a la derecha, una pregunta por pantalla y, al final, el día y la hora.
   Un solo aspecto, el de la marca: azul marino, blanco quirúrgico y dorado; Playfair Display en los titulares e Inter en el texto. */
:root{
  color-scheme: light;
  --ink:#0A192F; --ink-deep:#06101F; --ink-raise:#112742;
  --paper:#F8FAFC; --white:#FFFFFF; --warm:#EDF1F6;
  --gold:#C5A059; --gold-light:#DFC38C; --gold-deep:#8A6B2E;
  --mute:#4A5F7A; --faint:#7D8FA8; --line:#D8E0EA; --line-dark:#1C3352;
  --on-dark:#F1F5FA; --on-dark-mute:#A9B8CC;
  --err:#A4262C; --ok:#1F6B4A;
  --display:"Playfair Display","Iowan Old Style",Georgia,serif;
  --body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
button,input,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.rv{min-height:100%;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
/* ── izquierda ── */
.rv-info{background:var(--ink);color:var(--on-dark);padding:clamp(28px,5vw,64px) clamp(20px,4.5vw,56px);display:flex;flex-direction:column;gap:26px;position:relative;overflow:hidden}
.rv-info::before{content:"";position:absolute;left:-20%;bottom:-30%;width:90%;aspect-ratio:1;background:radial-gradient(circle,rgba(197,160,89,.13),transparent 65%);pointer-events:none}
.rv-mark{font-family:var(--display);font-weight:600;font-size:20px;letter-spacing:.25em;text-decoration:none;color:var(--on-dark);position:relative}
.rv-eyebrow{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:500;display:flex;align-items:center;gap:12px;margin:0;position:relative}
.rv-eyebrow::before{content:"";width:26px;height:1px;background:var(--gold);flex:none}
.rv-h1{font-family:var(--display);font-weight:500;font-size:clamp(28px,3.6vw,42px);line-height:1.12;letter-spacing:-.01em;margin:0;text-wrap:balance;position:relative}
.rv-h1 em{color:var(--gold);font-style:italic}
.rv-lede{color:var(--on-dark-mute);font-weight:300;font-size:16.5px;line-height:1.65;margin:0;max-width:46ch;position:relative}
.rv-points{list-style:none;margin:0;padding:0;display:grid;gap:1px;background:var(--line-dark);border:1px solid var(--line-dark);position:relative}
.rv-points li{background:var(--ink-deep);padding:14px 18px;display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:baseline;font-size:14.5px;color:var(--on-dark)}
.rv-points li span:first-child{color:var(--gold);font-family:var(--display)}
.rv-points li.aviso{color:var(--gold-light)}
.rv-who{display:flex;align-items:center;gap:14px;margin-top:auto;position:relative}
.rv-who img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:1px solid var(--gold);flex:none}
.rv-who b{display:block;font-weight:500;font-size:15px}
.rv-who small{display:block;color:var(--on-dark-mute);font-size:12.5px;line-height:1.45}
/* ── derecha ── */
.rv-side{padding:clamp(20px,4vw,56px) clamp(16px,4vw,56px);display:flex;flex-direction:column;align-items:center;gap:18px}
.rv-card{width:100%;max-width:600px;background:var(--white);border:1px solid var(--line);box-shadow:0 1px 0 0 var(--gold) inset,0 22px 50px rgba(10,25,47,.07);display:flex;flex-direction:column}
.rv-bar{height:3px;background:var(--warm)}
.rv-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--gold-deep),var(--gold));transition:width .5s var(--ease)}
.rv-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px clamp(18px,3vw,32px) 0;min-height:44px}
.rv-back{background:none;border:0;padding:11px 12px 11px 0;margin:-5px 0;color:var(--mute);font-size:14px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.rv-back:hover{color:var(--ink)}
.rv-count{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);font-variant-numeric:tabular-nums}
.rv-body{padding:10px clamp(18px,3vw,32px) clamp(22px,3vw,32px);display:flex;flex-direction:column;gap:20px;min-height:340px}
.rv-q{font-family:var(--display);font-weight:500;font-size:clamp(22px,2.6vw,28px);line-height:1.2;margin:0;text-wrap:balance}
.rv-help{color:var(--mute);font-size:14.5px;margin:-10px 0 0}
.rv-fields{display:grid;gap:16px}
.rv-f label{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-bottom:7px;font-weight:500}
.rv-f input{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:2px;background:var(--paper);font-size:16px;transition:border-color .2s,background .2s}
.rv-f input:focus{border-color:var(--ink);background:var(--white);outline:none}
.rv-f small{display:block;color:var(--faint);font-size:12.5px;margin-top:6px;line-height:1.45}
.rv-f textarea{display:block;width:100%;min-height:132px;padding:13px 14px;border:1px solid var(--line);border-radius:2px;background:var(--paper);font-size:16px;line-height:1.55;resize:vertical;transition:border-color .2s,background .2s}
.rv-f textarea:focus{border-color:var(--ink);background:var(--white);outline:none}
.rv-opts{display:grid;gap:10px}
.rv-opt{width:100%;text-align:left;padding:15px 16px;border:1px solid var(--line);border-radius:2px;background:var(--paper);cursor:pointer;display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:center;font-size:15.5px;transition:border-color .2s,background .2s,transform .2s}
.rv-opt:hover{border-color:var(--ink)}
.rv-opt[disabled]{cursor:default;opacity:.6}
.rv-opt[disabled]:hover{border-color:var(--line)}
.rv-opt i{width:18px;height:18px;border:1px solid var(--faint);border-radius:50%;display:grid;place-items:center;flex:none;transition:border-color .2s,background .2s}
.rv-opt.multi i{border-radius:2px}
.rv-opt[aria-pressed="true"],.rv-opt[aria-checked="true"]{border-color:var(--gold-deep);background:#FBF6EA}
.rv-opt[aria-pressed="true"] i,.rv-opt[aria-checked="true"] i{border-color:var(--gold-deep);background:var(--gold)}
.rv-opt[aria-pressed="true"] i::after,.rv-opt[aria-checked="true"] i::after{content:"";width:6px;height:6px;background:var(--ink);border-radius:inherit}
.rv-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 26px;background:var(--gold);color:var(--ink);font-weight:600;font-size:15.5px;border:1px solid var(--gold);border-radius:2px;cursor:pointer;transition:transform .3s var(--ease),box-shadow .3s var(--ease);align-self:flex-start;margin-top:auto}
.rv-cta:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(197,160,89,.3)}
.rv-cta[disabled]{opacity:.55;cursor:default;transform:none;box-shadow:none}
.rv-ghost{background:none;border:1px solid var(--line);border-radius:2px;padding:13px 20px;cursor:pointer;font-size:15px}
.rv-ghost:hover{border-color:var(--ink)}
.rv-err{color:var(--err);font-size:14px;margin:0;min-height:0}
.rv-err:empty{display:none}
/* ── calendario ── */
.rv-cal{display:grid;gap:14px}
.rv-month{display:flex;align-items:center;justify-content:space-between;gap:10px}
.rv-month b{font-family:var(--display);font-weight:500;font-size:19px}
.rv-month button{width:36px;height:36px;border:1px solid var(--line);background:var(--white);border-radius:2px;cursor:pointer}
.rv-month button[disabled]{opacity:.35;cursor:default}
.rv-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
.rv-grid span{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);padding:4px 0}
.rv-day{aspect-ratio:1;max-height:52px;border:1px solid transparent;border-radius:2px;background:none;font-size:15px;font-variant-numeric:tabular-nums;color:var(--faint);display:grid;place-items:center;padding:0}
.rv-day.on{color:var(--ink);background:var(--paper);border-color:var(--line);cursor:pointer;font-weight:500}
.rv-day.on:hover{border-color:var(--ink)}
.rv-day.sel{background:var(--ink);color:var(--on-dark);border-color:var(--ink)}
.rv-times-t{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin:6px 0 0;font-weight:500}
.rv-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}
.rv-time{padding:11px 6px;border:1px solid var(--line);background:var(--white);border-radius:2px;cursor:pointer;font-variant-numeric:tabular-nums;font-size:15.5px;font-weight:500}
.rv-time:hover{border-color:var(--ink)}
.rv-time.sel{background:var(--gold);border-color:var(--gold)}
.rv-zona{font-size:12.5px;color:var(--faint);margin:0}
.rv-load{color:var(--mute);font-size:15px;display:flex;align-items:center;gap:10px}
.rv-load::before{content:"";width:16px;height:16px;border:2px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:giro .8s linear infinite}
@keyframes giro{to{transform:rotate(360deg)}}
/* ── resumen ── */
.rv-sum{border:1px solid var(--line);background:var(--paper);padding:16px 18px;display:grid;gap:4px}
.rv-sum b{font-family:var(--display);font-weight:500;font-size:20px;line-height:1.3}
.rv-sum span{color:var(--mute);font-size:14.5px}
.rv-legal{font-size:12.5px;line-height:1.55;color:var(--faint);margin:0}
.rv-legal a{color:var(--mute)}
.rv-check{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;padding:16px;border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:2px;font-size:15.5px;line-height:1.55}
.rv-check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--gold-deep)}
.rv-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:auto}
.rv-row .rv-cta{margin-top:0}
.rv-done{text-align:center;align-items:center;justify-content:center}
.rv-done .tick{width:54px;height:54px;border-radius:50%;border:1px solid var(--gold);display:grid;place-items:center;color:var(--gold-deep);font-size:24px}
.rv-lede-m{display:none;width:100%;max-width:600px;margin:0;color:var(--mute);font-size:15px;line-height:1.6}
.rv-foot{font-size:12.5px;color:var(--faint);text-align:center;max-width:600px;margin:0}
.rv-foot a{color:var(--mute)}
.rv-demo{width:100%;max-width:600px;border:1px dashed var(--gold-deep);background:#FBF6EA;color:var(--ink);padding:10px 14px;font-size:13.5px;line-height:1.5}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.fade{animation:entra .35s var(--ease) both}
@keyframes entra{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (max-width:860px){
  .rv{grid-template-columns:minmax(0,1fr)}
  .rv-info{gap:18px;padding-block:24px}
  .rv-who{margin-top:0}
  .rv-points li:not(:first-child){display:none}
  .rv-info .rv-lede,.rv-who{display:none}
  .rv-lede-m{display:block}
  .rv-body{min-height:300px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
html,body{height:100%}
