/* Carmen e Ignacio · estilo común de la web pública, el cuestionario y el login
   «Rústico elegante · verde floral suave»: loza verde salvia sobre crema, lino,
   toile de Jouy en verde con mesura y un toque rosa toile. */
:root{
  /* Paleta común con la página privada (diseno/README.md) */
  --verde-oscuro:#3F5A40;--verde:#5E7D5C;--salvia:#8FA88A;--salvia-palido:#DCE5D6;
  --crema:#F7F3E8;--lino:#EFE8D8;--madera:#E4EAE6;--rosa-toile:#BE6E80;
  --fondo:#E9EFE4;--fondo2:#DDE7D6;--salvia-fuerte:#7F9A78;
  --texto:#2F3B2E;--texto-suave:#6B7768;
  /* Alias usados por las páginas */
  --paper:var(--fondo);--paper2:var(--fondo2);--card:#FBF8EF;--navy:var(--verde-oscuro);--blue:var(--verde);--blue2:var(--salvia);
  --sky:#E4ECDF;--sky2:var(--salvia-palido);--line:#BFCDB6;--pink:var(--rosa-toile);--pink2:#E3B5BF;--rose:#F6E6E9;
  --ok:#5E8F72;--muted:var(--texto-suave);--bad:#B0566A;
  --display:'Cormorant Garamond',Georgia,serif;--script:'Pinyon Script','Cormorant Garamond',serif;--body:Jost,system-ui,sans-serif;
  --r:16px;--shadow:0 10px 30px rgba(74,70,42,.08),0 1px 2px rgba(74,70,42,.05);
  --toile:url("/assets/toile-verde.webp");--toile-rosa:url("/assets/toile-rosa.webp");
  /* Borde festoneado como el del plato: ondas + filete interior */
  --feston:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36'%3E%3Cpath d='M6 6A6 6 0 0 1 18 6A6 6 0 0 1 30 6A6 6 0 0 1 30 18A6 6 0 0 1 30 30A6 6 0 0 1 18 30A6 6 0 0 1 6 30A6 6 0 0 1 6 18A6 6 0 0 1 6 6Z' fill='%23FBF8EF' stroke='%237F9A78' stroke-width='1.3'/%3E%3Cpath d='M10.5 10.5H25.5V25.5H10.5Z' fill='%23FBF8EF' stroke='%238FA88A' stroke-width='.7' opacity='.8'/%3E%3C/svg%3E");
  color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;letter-spacing:.01em;word-spacing:.1em;background:var(--fondo);color:var(--texto);font-family:var(--body);font-size:16px;line-height:1.6;font-weight:400;overflow-x:hidden}
img,svg{max-width:100%}
a{color:var(--verde);text-underline-offset:3px}
h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.1;margin:0;color:var(--verde-oscuro);letter-spacing:.015em}
.wrap{width:100%;max-width:1080px;margin:0 auto;padding:0 24px}
.kicker{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--verde);font-weight:500}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-weight:500;letter-spacing:.05em;border-radius:999px;padding:14px 28px;border:1px solid var(--verde-oscuro);background:var(--verde-oscuro);color:#FFFDF8;text-decoration:none;cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s;box-shadow:inset 0 0 0 3px var(--verde-oscuro),inset 0 0 0 4px rgba(255,253,248,.35)}
.btn:hover{background:#324A33;transform:translateY(-1px);box-shadow:inset 0 0 0 3px #324A33,inset 0 0 0 4px rgba(255,253,248,.35),0 8px 20px rgba(63,90,64,.2)}
.btn.ghost{background:transparent;color:var(--verde-oscuro);box-shadow:none}
.btn.ghost:hover{background:var(--sky);box-shadow:none}
.btn:disabled{opacity:.6;cursor:default;transform:none}
.flor{display:block;margin:0 auto;width:58px;height:40px}
.sep{display:flex;align-items:center;justify-content:center;gap:14px;margin:0 auto;color:var(--salvia)}
.sep::before,.sep::after{content:"";height:3px;width:min(90px,22vw);border-top:1px solid var(--salvia);border-bottom:1px solid var(--salvia);opacity:.8}
.sep svg{width:22px;height:22px}
.card{background:var(--card);border:1px solid var(--line);border-top:2px solid var(--salvia);border-radius:var(--r);box-shadow:var(--shadow)}
/* Bloque importante con borde de plato festoneado */
.feston{border:12px solid transparent;border-image:var(--feston) 12 round;border-radius:0;background:#FBF8EF;background-clip:padding-box;box-shadow:none;filter:drop-shadow(0 8px 18px rgba(74,70,42,.08))}
/* Ramita bajo los títulos de sección */
.ramita{display:block;width:120px;height:22px;margin:12px auto 0}
/* Toile en cabeceras y bandas: siempre suave y con fundido */
.toile-bg{position:relative;isolation:isolate}
.toile-bg::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--toile) 0 0/460px repeat;opacity:.24;pointer-events:none}
.cinta{position:relative;isolation:isolate;height:68px;border-top:3px double var(--salvia-fuerte);border-bottom:3px double var(--salvia-fuerte);background:var(--salvia-palido)}
.cinta::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--toile) center/380px repeat;opacity:.45}
.fade{opacity:0;transform:translateY(14px);transition:opacity .8s ease,transform .8s ease}
.fade.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fade{opacity:1;transform:none;transition:none}}
.cromo{margin:0;background:#FBF8EF;padding:7px 7px 18px;border-radius:4px;box-shadow:0 6px 16px rgba(90,74,40,.16),0 1px 2px rgba(90,74,40,.10)}
.cromo img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center top;border-radius:2px}
:focus-visible{outline:2px solid var(--verde);outline-offset:2px}
@media (max-width:600px){.wrap{padding:0 16px}body{font-size:15.5px}.feston{border-width:10px}}
/* Marco de cuadro: moldura verde con bisel (luz arriba-izquierda), junquillo dorado apagado,
   paspartú crema y sombra de cuadro colgado. Esquinas a inglete. */
.marco{position:relative;background:#FBF8EF;background-clip:padding-box;border-radius:0;border:16px solid #3F5A40;
  border-top-color:#58775A;border-left-color:#4B6A4D;border-right-color:#2E4430;border-bottom-color:#273B29;
  outline:1px solid rgba(255,253,240,.18);outline-offset:-6px;
  box-shadow:inset 0 0 0 2px #B9A774,inset 0 0 0 3px #8E8256,inset 0 0 0 13px #F1EBDA,inset 1px 1px 0 13px rgba(63,58,30,.18),inset -1px -1px 0 13px rgba(255,255,255,.7),
    0 0 0 1px #1F2F20,0 2px 3px rgba(30,30,15,.25),0 16px 34px -6px rgba(40,38,18,.32),0 34px 60px -24px rgba(40,38,18,.28);
  padding:calc(13px + 22px) calc(13px + 22px) calc(13px + 18px)}
@media (max-width:600px){.marco{border-width:11px;outline-offset:-4px;padding:calc(9px + 16px) calc(9px + 8px) calc(9px + 12px);
  box-shadow:inset 0 0 0 2px #B9A774,inset 0 0 0 3px #8E8256,inset 0 0 0 9px #F1EBDA,inset 1px 1px 0 9px rgba(63,58,30,.18),inset -1px -1px 0 9px rgba(255,255,255,.7),
    0 0 0 1px #1F2F20,0 2px 3px rgba(30,30,15,.25),0 14px 28px -6px rgba(40,38,18,.3)}}

/* Banda verde del plato con texto crema (cabeceras y pie) */
.banda-verde{position:relative;isolation:isolate;background:var(--verde-oscuro);color:#F3EEDD}
.banda-verde::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--toile) center/420px repeat;filter:brightness(3.2) saturate(.6);opacity:.13;pointer-events:none}
.banda-verde h1,.banda-verde h2,.banda-verde h3{color:#F7F3E8}
.banda-verde a{color:#E9EFE4}
