/*
Theme Name: Diva Elegante
Theme URI: https://divaelegante.co
Description: Tema de Diva Elegante — cierre definitivo. Hijo de Hello Elementor. Paleta Tocador (ciruela + malva sobre lino), aprobada por Leonardo Ramirez el 2026-09-04.
Author: TorchFrame
Author URI: https://torchframe.com
Template: hello-elementor
Version: 1.0.0
Text Domain: divaelegante
*/

/* ============================================================
   SISTEMA — paleta Tocador. Los contrastes estan medidos:
   tinta/superficie 12.95 · acento/superficie 4.83 · inverso/acento 5.15
   El oro (#C9A227) da 2.17 sobre lino: NUNCA como texto sobre claro.
   ============================================================ */
:root{
  --superficie:#F7F2EC;
  --superficie-alta:#FFF9F4;
  --superficie-suave:#EDE2E8;
  --tinta:#3A2233;
  --tinta-media:#6B5361;
  --acento:#8E5A7C;          /* relleno de botones: blanco encima da 5.15 */
  --acento-texto:#824F70;    /* texto pequeño sobre superficies claras: >=5.04 en las tres */
  --acento-hover:#7A4A69;
  --ornamento:#C9A227;
  --inverso:#FFF9F4;
  --linea:#DCCED6;

  --display:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --body:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif;

  --ancho:1280px;
  --gutter:clamp(20px,5vw,64px);
  --radio:2px;

  --paso:cubic-bezier(.22,.61,.36,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--superficie);color:var(--tinta);
  font-family:var(--body);font-weight:400;font-size:16.5px;line-height:1.62;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}

/* foco visible en todo lo interactivo — accesibilidad, no decoracion */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:2px solid var(--acento);outline-offset:3px;border-radius:var(--radio);
}

.de-envoltura{max-width:var(--ancho);margin-inline:auto;padding-inline:var(--gutter)}

/* ---------- tipografia ---------- */
.de-display{
  font-family:var(--display);font-weight:400;line-height:.98;
  letter-spacing:-.018em;color:var(--tinta);margin:0;
}
.de-display em{font-style:italic}
h1.de-display{font-size:clamp(40px,7.4vw,86px)}
h2.de-display{font-size:clamp(31px,5vw,60px)}
h3.de-display{font-size:clamp(23px,2.6vw,32px)}

.de-antetitulo{
  font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;
  color:var(--acento-texto);display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;
}
.de-antetitulo::before{content:"";width:26px;height:1px;background:currentColor;flex:none}
.de-bajada{color:var(--tinta-media);font-size:clamp(15.5px,1.35vw,17.5px);max-width:56ch;margin:18px 0 0}

/* ---------- botones ---------- */
.de-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  padding:15px 28px;border-radius:var(--radio);border:1px solid transparent;
  cursor:pointer;transition:background .28s var(--paso),color .28s var(--paso),
    border-color .28s var(--paso),transform .28s var(--paso);
  min-height:48px;                       /* objetivo tactil */
}
.de-btn--principal{background:var(--acento);color:var(--inverso)}
.de-btn--principal:hover{background:var(--acento-hover);transform:translateY(-2px)}
.de-btn--fantasma{border-color:var(--linea);color:var(--tinta)}
.de-btn--fantasma:hover{border-color:var(--acento);color:var(--acento)}
.de-btn--tinta{background:var(--tinta);color:var(--inverso)}
.de-btn--tinta:hover{background:#4B2E42;transform:translateY(-2px)}

/* ---------- revelado al entrar en viewport ---------- */
.de-rev{opacity:0;transform:translateY(22px);
  transition:opacity .8s var(--paso),transform .8s var(--paso)}
.de-rev.de-visible{opacity:1;transform:none}
.de-rev[data-retardo="1"]{transition-delay:.08s}
.de-rev[data-retardo="2"]{transition-delay:.16s}
.de-rev[data-retardo="3"]{transition-delay:.24s}
.de-rev[data-retardo="4"]{transition-delay:.32s}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important}
  .de-rev{opacity:1;transform:none}
}
