/* =========================================================
   Dra. Laguado — Landing de campaña
   Paleta y tipografía basadas en el Brandbook 2026
   Serif: Fraunces (sustituto de "Tenez" hasta licenciar la webfont)
   Mono:  Roboto Mono (kickers / etiquetas)
   ========================================================= */

:root{
  --ink:        #12475e;   /* azul petróleo — color de marca (logo) */
  --ink-deep:   #0d3547;   /* fondo oscuro / footer */
  --sage:       #5f6e4f;   /* verde salvia */
  --sand:       #e7ded0;   /* arena / papel cálido */
  --sand-soft:  #f4efe6;   /* arena muy claro (fondo de página) */
  --taupe:      #c7b299;
  --mocha:      #c69c6d;
  --sky:        #cfe0e2;   /* azul polvo */
  --mist:       #d9e0d4;   /* gris-verde */
  --paper:      #faf7f1;
  --white:      #ffffff;

  --text:       #2c3b3a;   /* cuerpo sobre claro */
  --text-soft:  #55635f;
  --line:       #d8cfbf;

  --maxw: 1140px;
  --gap: clamp(1.5rem, 4vw, 3rem);
  --radius: 14px;
  --radius-lg: 22px;
  --shadow: 0 18px 50px -24px rgba(18,71,94,.35);
  --ease: cubic-bezier(.2,.7,.2,1);

  --font-serif: "Fraunces", Georgia, "Times New Roman", serif;
  --font-mono: "Roboto Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto; } }

body{
  margin:0;
  background:var(--sand-soft);
  color:var(--text);
  font-family:var(--font-serif);
  font-optical-sizing:auto;
  font-weight:400;
  font-size:clamp(1rem, .96rem + .3vw, 1.12rem);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img,svg,video,iframe{ max-width:100%; display:block; }
[hidden]{ display:none !important; }
a{ color:var(--ink); text-underline-offset:.16em; }

.wrap{ width:100%; max-width:var(--maxw); margin-inline:auto; padding-inline:clamp(1.1rem, 4vw, 2.5rem); position:relative; z-index:1; }

/* ---------- Texturas de fondo (formas orgánicas del branding) ---------- */
.bg-shape{ position:absolute; z-index:0; max-width:none; pointer-events:none; user-select:none; }
.bg-shape--hero{ top:8%; right:-14%; width:min(620px,52vw); opacity:.4; mix-blend-mode:multiply; }
.bg-shape--tst{ top:-14%; right:-10%; width:min(640px,60vw); opacity:.55; mix-blend-mode:multiply; transform:rotate(-6deg); }
.bg-shape--sint{ bottom:-16%; left:-14%; width:min(560px,55vw); opacity:.3; mix-blend-mode:multiply; transform:rotate(10deg); }
.bg-shape--frm{ top:6%; right:-16%; width:min(560px,55vw); opacity:.4; mix-blend-mode:multiply; transform:rotate(-4deg); }
.bg-shape--dif-a{ top:-12%; left:-10%; width:min(440px,45vw); opacity:.08; }
.bg-shape--dif-b{ bottom:-16%; right:-10%; width:min(400px,42vw); opacity:.07; transform:scaleX(-1); }
@media (max-width:720px){
  .bg-shape{ opacity:.22 !important; }
}
.wrap--narrow{ max-width:760px; }

.skip-link{
  position:absolute; left:-999px; top:0; z-index:200;
  background:var(--ink); color:#fff; padding:.7rem 1rem; border-radius:0 0 8px 0;
}
.skip-link:focus{ left:0; }

/* ---------- Tipografía de apoyo ---------- */
.kicker{
  font-family:var(--font-mono);
  font-size:.72rem; letter-spacing:.18em; text-transform:uppercase;
  color:var(--sage); margin:0 0 1rem;
}
.kicker.topp{margin-top: -10px}
.kicker--light{ color:var(--sky); }

.section__title{
  font-weight:500; line-height:1.12;
  font-size:clamp(1.7rem, 1.2rem + 2.4vw, 2.9rem);
  letter-spacing:-.01em;
  color:var(--ink);
  margin:0 0 1.4rem;
}
.section__title--light{ color:var(--white); }
.section__title em, .hero__title em{ font-style:italic; font-weight:400; }

.lead{ font-size:1.12em; color:var(--text-soft); max-width:52ch; }
.muted{ color:var(--text-soft); font-size:.85em; }

/* ---------- Botones ---------- */
.btn{
  --btn-bg:var(--ink); --btn-fg:#fff;
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  font-family:var(--font-mono); font-size:.82rem; letter-spacing:.06em;
  text-transform:uppercase; text-decoration:none; font-weight:500;
  padding:.85rem 1.4rem; border-radius:999px; border:1.5px solid transparent;
  background:var(--btn-bg); color:var(--btn-fg); cursor:pointer;
  transition:transform .18s var(--ease), box-shadow .18s var(--ease), background .18s, color .18s;
}
.btn:hover{ transform:translateY(-2px); box-shadow:0 12px 28px -14px rgba(18,71,94,.6); }
.btn:focus-visible{ outline:3px solid var(--mocha); outline-offset:2px; }
.btn--solid{ --btn-bg:var(--ink); --btn-fg:#fff; }
.btn--ghost{ --btn-bg:transparent; --btn-fg:var(--ink); border-color:currentColor; }
.btn--wa{ --btn-bg:#25d366; --btn-fg:#0b3d25; }
.btn--lg{ padding:1rem 1.7rem; font-size:.86rem; }

/* ---------- Header ---------- */
.site-header{
  position:sticky; top:0; z-index:100;
  transition:background .25s, box-shadow .25s, border-color .25s;
  border-bottom:1px solid transparent;
}
.site-header.is-stuck{
  background:rgba(250,247,241,.9);
  backdrop-filter:blur(10px);
  border-color:var(--line);
  box-shadow:0 8px 30px -20px rgba(18,71,94,.4);
}
.site-header__inner{ display:flex; align-items:center; justify-content:space-between; padding-block:.55rem; overflow:visible; }
.site-header__logo{ display:block; overflow:visible; }
.site-header__logo img{ height:clamp(58px,7vw,84px); width:auto; margin-bottom:-6px; display:block; position:relative; z-index:2; }
.site-header__actions{ display:flex; gap:.6rem; align-items:center; }
.site-header__wa{ display:none; }

/* ---------- Hero ---------- */
.hero{ position:relative; padding-block:clamp(2rem,6vw,4.5rem) clamp(3rem,8vw,6rem); overflow:hidden; }
.hero::before{
  content:""; position:absolute; inset:auto -10% -30% 40%;
  background:url("../img/forma1.png") center/contain no-repeat;
  opacity:.5; z-index:0; pointer-events:none;
}
.hero__grid{
  position:relative; z-index:1;
  display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(2rem,5vw,4rem); align-items:center;
}
.hero__title{
  font-weight:500; letter-spacing:-.015em; line-height:1.04;
  font-size:clamp(2.5rem, 1.5rem + 5vw, 4.6rem);
  color:var(--ink); margin:0 0 1.3rem;
}
.hero__lead{ font-size:1.16em; color:var(--text-soft); max-width:46ch; margin:0 0 1.8rem; }
.hero__cta{ display:flex; flex-wrap:wrap; gap:.8rem; margin-bottom:1.5rem; }
.hero__signature{ margin:40px 0 1rem 0; }
.hero__signature span{
  display:block; font-family:var(--font-mono); font-weight:500;
  font-size:.72rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--ink); margin-bottom:.2rem;
  letter-spacing: 3.5px;
}
.hero__signature strong{
  display:block; font-family:var(--font-serif); font-style:italic;
  font-size:1.3rem; color:var(--text-soft);
}
.trust{
  list-style:none; margin:0; padding:1.1rem 0 0; border-top:1px solid var(--line);
  display:flex; flex-wrap:wrap; gap:.4rem 1.4rem;
  font-family:var(--font-mono); font-size:.76rem; letter-spacing:.02em; color:var(--text-soft);
}
.trust strong{ color:var(--ink); }

.hero__media{
  margin:0; position:relative; border-radius:var(--radius-lg); overflow:hidden;
  box-shadow:var(--shadow);
  background:var(--ink) url("../img/retrato-dra-laguado.jpg") center/cover no-repeat;
  aspect-ratio:3/4;
}
.hero__media video,.hero__media iframe{ width:100%; height:100%; object-fit:cover; border:0; background:transparent; }
.hero__sound{
  position:absolute; right:.7rem; bottom:.7rem; z-index:2;
  display:inline-flex; align-items:center; gap:0;
  padding:.5rem; border-radius:999px; border:1px solid rgba(255,255,255,.35);
  background:rgba(13,53,71,.6); backdrop-filter:blur(6px);
  color:#fff; font-family:var(--font-mono); font-size:.6rem; line-height:1;
  letter-spacing:.09em; text-transform:uppercase;
  cursor:pointer; overflow:hidden;
  transition:background .18s var(--ease), padding .22s var(--ease);
}
.hero__sound .ic{ flex:none; width:15px; height:15px; }
.hero__sound [data-sound-label]{
  max-width:0; opacity:0; overflow:hidden; white-space:nowrap;
  transition:max-width .24s var(--ease), opacity .16s var(--ease), margin-left .24s var(--ease);
}
.hero__sound:hover,
.hero__sound:focus-visible,
.hero__sound:focus-within{ background:rgba(13,53,71,.88); padding-inline:.7rem .55rem; }
.hero__sound:hover [data-sound-label],
.hero__sound:focus-visible [data-sound-label],
.hero__sound:focus-within [data-sound-label]{ max-width:7rem; opacity:1; margin-left:.4rem; }
.hero__sound:focus-visible{ outline:2px solid #fff; outline-offset:2px; }
@media (prefers-reduced-motion:reduce){
  .hero__sound, .hero__sound [data-sound-label]{ transition:none; }
}
/* En móvil el pie del vídeo lleva el nombre: subimos el botón a la esquina superior izquierda y expande hacia la derecha */
@media (max-width:720px){
  .hero__sound{ top:.6rem; left:.6rem; right:auto; bottom:auto; }
}
.hero__media-cap{
  position:absolute; left:0; right:0; bottom:0; margin:0;
  padding:2.2rem 1.1rem .9rem; color:#fff;
  font-family:var(--font-mono); font-size:.72rem; letter-spacing:.12em; text-transform:uppercase;
  background:linear-gradient(to top, rgba(13,53,71,.75), transparent);
}

/* ---------- Secciones ---------- */
.section{ padding-block:clamp(2.4rem,6vw,4rem); position:relative; overflow:hidden; }
.section--sand{ background:var(--sand); }
.section--sky{ background:var(--sky); }
.section--ink{ background:var(--ink-deep); color:#e8eef0; }
.section--ink .lead{ color:#b9cdd4; }
.section__cta{ margin-top:2.5rem; }

/* ---------- Grids ---------- */
.grid{ display:grid; gap:1.1rem; }
.grid--sym{ grid-template-columns:1fr; gap:1rem; }
.grid--3{ grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:1.4rem; }
@media (min-width:680px){ .grid--sym{ grid-template-columns:repeat(2,1fr); gap:1.25rem; } }

/* Card horizontal: la imagen es una ilustración pequeña, el texto manda */
.symcard{
  display:flex; flex-direction:row; align-items:flex-start; gap:1.1rem;
  background:var(--paper); border:1px solid var(--line); border-radius:var(--radius);
  padding:1.1rem 1.2rem;
  transition:transform .18s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease);
}
.symcard:hover{ transform:translateY(-3px); box-shadow:var(--shadow); border-color:transparent; }
.symcard__img{
  flex:none; width:80px; height:80px; border-radius:12px;
  object-fit:cover; object-position:center 22%;
  background:var(--mist);
}
.symcard__body{ display:flex; flex-direction:column; gap:.3rem; min-width:0; }
.symcard__body h3{ font-size:1.03rem; font-weight:500; margin:0; color:var(--ink); line-height:1.32; }
.symcard__desc{ margin:0; color:var(--text-soft); font-size:.9rem; line-height:1.5; }
.symcard__tag{
  align-self:flex-start; margin-top:.4rem;
  font-family:var(--font-mono); font-size:.65rem; letter-spacing:.05em; text-transform:uppercase;
  color:var(--ink); text-decoration:none;
  border-bottom:1.5px solid var(--mocha); padding-bottom:.12rem;
  transition:color .18s, border-color .18s;
}
.symcard__tag:hover{ color:var(--sage); border-color:var(--sage); }
.symcard__tag:focus-visible{ outline:3px solid var(--mocha); outline-offset:3px; }
.symcard--flag{ border-color:var(--ink); background:color-mix(in srgb, var(--ink) 5%, var(--paper)); }
.symcard--flag .symcard__tag{ border-color:var(--ink); }
@media (max-width:420px){
  .symcard__img{ width:64px; height:64px; }
}

.dcard{ padding:.4rem 0; }
.dcard__num{ font-family:var(--font-mono); font-size:.9rem; color:var(--mocha); letter-spacing:.1em; }
.dcard h3{ font-size:1.3rem; font-weight:500; margin:.5rem 0 .6rem; color:#fff; }
.dcard p{ margin:0; color:#c3d4d9; }

/* ---------- Formación / timeline ---------- */
.frm{ display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(2rem,5vw,4rem); align-items:start; }
.frm__intro .section__title{ color:var(--ink); }
.frm__colegiada{ font-family:var(--font-mono); font-size:.78rem; letter-spacing:.06em; color:var(--ink); margin-top:1.4rem; }
.timeline{ list-style:none; margin:0; padding:0; border-left:2px solid rgba(18,71,94,.25); }
.timeline li{ position:relative; padding:.55rem 0 .9rem 1.4rem; }
.timeline li::before{
  content:""; position:absolute; left:-7px; top:1rem;
  width:12px; height:12px; border-radius:50%; background:var(--ink); border:2px solid var(--sky);
}
.timeline__yr{ display:block; font-family:var(--font-mono); font-size:.72rem; letter-spacing:.08em; color:var(--sage); }
.timeline p{ margin:.2rem 0 0; }

/* ---------- Formulario de consultas (dentro de Formación) ---------- */
.consulta{
  margin-top:2rem; padding:1.5rem; border-radius:var(--radius-lg);
  background:var(--paper); border:1px solid var(--line);
  display:flex; flex-direction:column; gap:.9rem; max-width:460px;
}
.consulta__intro{ margin:0 0 .2rem; font-size:.98rem; color:var(--text-soft); line-height:1.5; }
.consulta__intro strong{ color:var(--ink); }
.consulta__row{ display:grid; grid-template-columns:1fr 1fr; gap:.9rem; }
.consulta__field{
  display:flex; flex-direction:column; gap:.32rem;
  font-family:var(--font-mono); font-size:.63rem; letter-spacing:.09em; text-transform:uppercase; color:var(--sage);
}
.consulta__field span{ text-transform:none; letter-spacing:0; color:var(--text-soft); }
.consulta input, .consulta textarea{
  font-family:var(--font-serif); font-size:1rem; color:var(--text);
  padding:.6rem .7rem; border:1px solid var(--line); border-radius:10px; background:#fff; width:100%;
}
.consulta input:focus, .consulta textarea:focus{ outline:2px solid var(--ink); outline-offset:1px; border-color:transparent; }
.consulta textarea{ resize:vertical; min-height:96px; }
.consulta__hint{ margin:-.4rem 0 0; font-size:.82rem; color:var(--text-soft); line-height:1.45; }
.consulta__consent{ display:flex; align-items:flex-start; gap:.55rem; font-size:.85rem; color:var(--text-soft); line-height:1.45; }
.consulta__consent input{ width:auto; flex:none; margin-top:.15rem; }
.consulta .hp{ position:absolute !important; left:-9999px !important; width:1px; height:1px; overflow:hidden; }
.consulta button{ align-self:flex-start; }
.consulta__status{ margin:0; font-size:.9rem; min-height:1.1em; }
.consulta__status.is-ok{ color:var(--sage); }
.consulta__status.is-err{ color:#b23b3b; }
.consulta.is-sending button{ opacity:.6; pointer-events:none; }
@media (max-width:520px){ .consulta__row{ grid-template-columns:1fr; } }

/* ---------- Proceso ---------- */
.steps{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1.6rem; counter-reset:s; }
.step{ position:relative; padding-top:.5rem; }
.step__n{
  display:inline-grid; place-items:center; width:2.4rem; height:2.4rem; margin-bottom:.8rem;
  border-radius:50%; background:var(--ink); color:#fff;
  font-family:var(--font-mono); font-size:1rem;
}
.step h3{ font-size:1.12rem; font-weight:500; margin:0 0 .4rem; color:var(--ink); }
.step p{ margin:0; color:var(--text-soft); font-size:.98em; }

/* ---------- Testimonios / carrusel (2 por vista en desktop, 1 en móvil) ---------- */
.carousel{ margin-top:2rem; --tst-gap:1.25rem; }
.carousel__track{
  display:flex; gap:var(--tst-gap);
  overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth;
  scrollbar-width:none; -webkit-overflow-scrolling:touch;
}
.carousel__track::-webkit-scrollbar{ display:none; }
.tcard{
  scroll-snap-align:start; flex:0 0 100%;
  display:flex; flex-direction:column; justify-content:center;
  min-height:210px;
  background:var(--paper); border:1px solid var(--line); border-radius:var(--radius-lg);
  padding:1.9rem 1.7rem;
}
@media (min-width:720px){
  .tcard{ flex-basis:calc(50% - (var(--tst-gap) / 2)); }
}
@media (prefers-reduced-motion:reduce){ .carousel__track{ scroll-behavior:auto; } }
.stars{ color:var(--mocha); letter-spacing:.15em; font-size:.95rem; }
.stars--lg{ font-size:1.15rem; }
.tcard__text{ font-size:1.08rem; line-height:1.55; margin:.7rem 0 1.1rem; color:var(--ink); }
.tcard__meta{ margin:0; font-family:var(--font-mono); font-size:.74rem; letter-spacing:.04em; text-transform:uppercase; color:var(--text-soft); }
.tcard__meta strong{ color:var(--ink); }
.carousel__nav{ display:flex; align-items:center; justify-content:center; gap:1rem; margin-top:1.4rem; }
.carousel__btn{
  display:grid; place-items:center;
  width:2.6rem; height:2.6rem; border-radius:50%; border:1.5px solid var(--ink);
  background:transparent; color:var(--ink); font-size:1.15rem; line-height:1; cursor:pointer;
  transition:background .18s var(--ease), color .18s var(--ease);
}
.carousel__btn:hover{ background:var(--ink); color:#fff; }
.carousel__btn:focus-visible{ outline:3px solid var(--mocha); outline-offset:2px; }
.carousel__dots{ display:flex; align-items:center; gap:.45rem; }
.carousel__dots button{
  width:.55rem; height:.55rem; padding:0; border-radius:50%; border:0;
  background:var(--line); cursor:pointer; transition:background .18s, transform .18s;
}
.carousel__dots button[aria-current="true"]{ background:var(--ink); transform:scale(1.25); }
.tst-rating{ margin-top:1.8rem; font-family:var(--font-mono); font-size:.82rem; letter-spacing:.03em; }

/* ---------- Cita / formulario ---------- */
.cita{ display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(2rem,5vw,3.5rem); align-items:start; }
.cita__list{ list-style:none; margin:1.4rem 0 0; padding:0; display:grid; gap:.7rem; font-size:.95em; }
.cita__form{ background:var(--paper); border:1px solid var(--line); border-radius:var(--radius-lg); padding:1rem; }
.cita__form #mop_iframe{ border-radius:12px; }
.cita__legal{ font-size:.8rem; color:var(--text-soft); margin:.9rem .3rem 0; }
.cita__map{ margin-top:2.5rem; border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow); }

/* ---------- FAQ ---------- */
.faq{ margin-top:2rem; border-top:1px solid var(--line); }
.faq__item{ border-bottom:1px solid var(--line); }
.faq__item summary{
  list-style:none; cursor:pointer; padding:1.1rem 2.5rem 1.1rem 0; position:relative;
  font-size:1.08rem; font-weight:500; color:var(--ink);
}
.faq__item summary::-webkit-details-marker{ display:none; }
.faq__item summary::after{
  content:"+"; position:absolute; right:.2rem; top:50%; transform:translateY(-50%);
  font-family:var(--font-mono); font-size:1.3rem; color:var(--sage); transition:transform .2s;
}
.faq__item[open] summary::after{ content:"–"; }
.faq__body{ padding:0 0 1.2rem; color:var(--text-soft); }
.faq__body p{ margin:0; }

/* ---------- Footer ---------- */
.site-footer{ background:var(--ink-deep); color:#c3d4d9; padding-block:3rem 1.5rem; }
.site-footer__inner{ display:flex; flex-wrap:wrap; gap:2rem; justify-content:space-between; }
.site-footer__logo{ filter:brightness(0) invert(1); opacity:.92; margin-bottom:1rem; }
.site-footer__brand p{ margin:.2rem 0; font-size:.9rem; }
.site-footer__col{ font-family:var(--font-mono); font-size:.75rem; letter-spacing:.05em; opacity:.8; }
.site-footer__nav{ display:flex; flex-direction:column; gap:.6rem; }
.site-footer__nav a{ color:#c3d4d9; text-decoration:none; font-family:var(--font-mono); font-size:.8rem; letter-spacing:.05em; text-transform:uppercase; }
.site-footer__nav a:hover{ color:#fff; text-decoration:underline; }
.site-footer__legal{ margin-top:2.5rem; padding-top:1.3rem; border-top:1px solid rgba(255,255,255,.12); }
.site-footer__legal p{ margin:0; font-size:.78rem; opacity:.7; }

/* ---------- CTA sticky móvil ---------- */
.mobile-cta{
  position:fixed; left:0; right:0; bottom:0; z-index:90;
  display:none; gap:.6rem; padding:.7rem clamp(.8rem,4vw,1.2rem);
  background:rgba(250,247,241,.95); backdrop-filter:blur(10px);
  border-top:1px solid var(--line);
  transform:translateY(120%); transition:transform .3s var(--ease);
}
.mobile-cta.is-visible{ transform:translateY(0); }
.mobile-cta .btn{ flex:1; }

/* ---------- FAB WhatsApp ---------- */
.wa-fab{
  position:fixed; right:1rem; bottom:1rem; z-index:88;
  width:3.4rem; height:3.4rem; border-radius:50%;
  display:grid; place-items:center; color:#fff; background:#25d366;
  box-shadow:0 12px 28px -10px rgba(37,211,102,.7);
  transition:transform .2s var(--ease);
}
.wa-fab:hover{ transform:scale(1.06); }

/* ---------- Cookie banner ---------- */
.cookie{
  position:fixed; left:1rem; right:1rem; bottom:1rem; z-index:120;
  max-width:520px; margin-inline:auto;
  background:var(--white); border:1px solid var(--line); border-radius:var(--radius);
  box-shadow:0 20px 50px -20px rgba(18,71,94,.5);
  padding:1.1rem 1.2rem;
}
.cookie p{ margin:0 0 .9rem; font-size:.86rem; color:var(--text-soft); }
.cookie__btns{ display:flex; gap:.6rem; justify-content:flex-end; }
.cookie__btns .btn{ padding:.6rem 1.1rem; font-size:.75rem; }

/* ---------- Reveal on scroll ---------- */
.section__title,.symcard,.dcard,.step,.timeline li,.tcard{ opacity:1; }
@media (prefers-reduced-motion:no-preference){
  .reveal{ opacity:0; transform:translateY(18px); transition:opacity .6s var(--ease), transform .6s var(--ease); }
  .reveal.is-in{ opacity:1; transform:none; }
}

/* ---------- Responsive ---------- */
@media (max-width:960px){
  .hero__grid{ grid-template-columns:1fr; }
  .hero__media{ aspect-ratio:3/4; order:-1; background-image:url("../img/retrato-dra-laguado-movil.jpg"); }
  .frm{ grid-template-columns:1fr; }
  .cita{ grid-template-columns:1fr; }
}
@media (min-width:721px){
  .site-header__wa{ display:inline-flex; }
}
@media (max-width:720px){
  .mobile-cta{ display:flex; }
  .wa-fab{ display:none; }
  body{ padding-bottom:4.5rem; }
  .site-header__actions .btn--solid{ font-size:.76rem; padding:.7rem 1.1rem; }
  .hero::before{ inset:auto -20% -10% 20%; opacity:.35; }
}
