/* Página «Está quase a chegar» (só enquanto o site não está público — ver middleware.js) */
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:500;font-display:swap;src:url(/fontes/playfair-display-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:500;font-display:swap;src:url(/fontes/playfair-display-latin-500-italic.woff2) format('woff2')}

:root{
  --ouro:#C29A45;--ouro-claro:#E4C984;--rio:#16241F;--rio-3:#0F1915;
  --creme:#F8F5EF;--wa:#25D366;--wa-texto:#0B2A17;
  --serif:'Playfair Display',Georgia,'Times New Roman',serif;
  --sans:-apple-system,BlinkMacSystemFont,'SF Pro Text','Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --mola:cubic-bezier(.2,.7,.2,1);
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;background:var(--rio-3);color:var(--creme);
  font-family:var(--sans);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:clip}

/* Fundo: foto do Douro a aproximar-se devagar, com véu verde-rio */
.fundo{position:fixed;inset:0;z-index:-1;overflow:hidden;background:var(--rio)}
.fundo img{width:100%;height:100%;object-fit:cover;transform:scale(1.12);animation:aproximar 28s var(--mola) forwards}
.fundo::after{content:"";position:absolute;inset:0;
  background:
    radial-gradient(ellipse 70% 60% at 50% 42%,rgba(15,25,21,.35),rgba(15,25,21,.78) 70%),
    linear-gradient(180deg,rgba(15,25,21,.55) 0%,rgba(22,36,31,.35) 40%,rgba(15,25,21,.92) 100%)}
@keyframes aproximar{to{transform:scale(1)}}

/* Conteúdo */
.palco{flex:1;width:100%;max-width:640px;margin:0 auto;padding:clamp(32px,7vh,72px) 16px 24px;
  display:flex;flex-direction:column;align-items:center;text-align:center}
.palco>*{opacity:0;transform:translateY(14px);animation:subir .9s var(--mola) forwards}
.palco>:nth-child(1){animation-delay:.15s}.palco>:nth-child(2){animation-delay:.3s}
.palco>:nth-child(3){animation-delay:.42s}.palco>:nth-child(4){animation-delay:.54s}
.palco>:nth-child(5){animation-delay:.66s}.palco>:nth-child(6){animation-delay:.74s}
.palco>:nth-child(7){animation-delay:.86s}.palco>:nth-child(8){animation-delay:.94s}
.palco>:nth-child(9){animation-delay:1.05s}
@keyframes subir{to{opacity:1;transform:none}}

.logo{width:clamp(104px,22vw,136px);height:auto;margin-bottom:22px;filter:drop-shadow(0 8px 24px rgba(0,0,0,.45))}

.etiqueta{display:flex;align-items:center;gap:12px;font-size:.78rem;letter-spacing:.26em;text-transform:uppercase;color:var(--ouro-claro);margin-bottom:14px}
.etiqueta span{display:block;width:32px;height:1px;background:linear-gradient(90deg,transparent,var(--ouro))}
.etiqueta span:last-child{transform:scaleX(-1)}

h1{font-family:var(--serif);font-weight:500;font-size:clamp(2.6rem,9vw,4.6rem);line-height:1.04;letter-spacing:-.01em;
  text-shadow:0 4px 30px rgba(0,0,0,.35)}
h1 em{display:block;font-style:italic;
  background:linear-gradient(100deg,var(--ouro) 0%,var(--ouro-claro) 35%,#fff3d1 50%,var(--ouro-claro) 65%,var(--ouro) 100%);
  background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:brilho 7s ease-in-out 1.4s infinite}
@keyframes brilho{0%,100%{background-position:100% 0}50%{background-position:0 0}}

.en{font-family:var(--serif);font-style:italic;font-size:1.15rem;color:rgba(248,245,239,.7);margin:8px 0 26px}

.texto{max-width:34em;font-size:1.05rem;color:rgba(248,245,239,.92)}
.texto strong{color:var(--ouro-claro);font-weight:600}
.en-texto{font-size:.92rem;color:rgba(248,245,239,.62);margin-top:10px}

.wa{display:inline-flex;align-items:center;gap:10px;margin-top:30px;padding:15px 28px;border-radius:999px;
  background:var(--wa);color:var(--wa-texto);font-weight:700;font-size:1.05rem;text-decoration:none;
  box-shadow:0 14px 34px -12px rgba(37,211,102,.6);transition:transform .25s var(--mola),box-shadow .25s}
.wa:hover{transform:translateY(-2px);box-shadow:0 18px 40px -12px rgba(37,211,102,.75)}
.wa:focus-visible{outline:3px solid var(--creme);outline-offset:3px}
.tel{margin-top:12px;font-size:.9rem;color:rgba(248,245,239,.65)}
.tel a{color:var(--creme);text-decoration:none;border-bottom:1px solid rgba(228,201,132,.5)}

/* Acesso reservado: discreto, abre ao tocar */
.acesso{width:100%;max-width:360px;margin-top:clamp(36px,7vh,64px)}
.acesso summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;
  font-size:.82rem;letter-spacing:.06em;color:rgba(248,245,239,.6);padding:8px 14px;border-radius:999px;
  border:1px solid rgba(248,245,239,.18);transition:color .2s,border-color .2s}
.acesso summary::-webkit-details-marker{display:none}
.acesso summary::before{content:"";width:12px;height:12px;flex:none;
  background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17 9V7a5 5 0 0 0-10 0v2H5v13h14V9h-2Zm-8-2a3 3 0 0 1 6 0v2H9V7Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17 9V7a5 5 0 0 0-10 0v2H5v13h14V9h-2Zm-8-2a3 3 0 0 1 6 0v2H9V7Z'/%3E%3C/svg%3E") center/contain no-repeat}
.acesso summary:hover,.acesso[open] summary{color:var(--ouro-claro);border-color:rgba(228,201,132,.5)}
.acesso summary:focus-visible{outline:2px solid var(--ouro-claro);outline-offset:3px}

.acesso form{margin-top:14px;display:grid;gap:6px;text-align:left;padding:22px;border-radius:20px;
  background:rgba(15,25,21,.62);border:1px solid rgba(228,201,132,.22);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:subir .45s var(--mola) both}
.acesso label{font-size:.82rem;font-weight:600;color:rgba(248,245,239,.8);margin-top:6px}
.acesso input{font:inherit;font-size:16px;padding:12px 14px;border-radius:12px;width:100%;
  background:rgba(248,245,239,.08);border:1px solid rgba(248,245,239,.2);color:var(--creme)}
.acesso input:focus{outline:2px solid var(--ouro);outline-offset:1px;border-color:var(--ouro)}
.acesso button{margin-top:14px;font:inherit;font-weight:700;padding:13px;border:0;border-radius:999px;
  background:var(--ouro);color:var(--rio);cursor:pointer;transition:background .2s}
.acesso button:hover{background:var(--ouro-claro)}
.erro{background:rgba(196,72,52,.18);border:1px solid rgba(232,120,100,.45);color:#ffd9d1;border-radius:10px;padding:10px 12px;font-size:.88rem;margin-bottom:4px}

.rodape{text-align:center;font-size:.76rem;color:rgba(248,245,239,.45);padding:18px 16px calc(18px + env(safe-area-inset-bottom))}

@media (prefers-reduced-motion:reduce){
  .fundo img{animation:none;transform:none}
  .palco>*,.acesso form{animation:none;opacity:1;transform:none}
  h1 em{animation:none}
}
