
/* ==================================================
   PTI — CONTACT FORM 7 (LUXURY)
   Fondo negro FULL WIDTH + formulario centrado
   ================================================== */


/* ==================================================
   FORMULARIO — ESTILO NEGRO (OPEN COLOR)
   ================================================== */



/* CONTENEDOR */
.wpcf7.pti-form-lux.pti-form-full form,
form.pti-form-lux.pti-form-full{
  position: relative;
  z-index: 1;

  width: min(680px, 92vw);
  max-width: 680px;
  margin: 0 auto;
  padding: 34px 26px;

  border-radius: 24px;
  border: 1px solid rgba(207,168,74,.70);

  background: linear-gradient(180deg, #fbf8f1 0%, #f3efe6 100%);
  /* Si quieres efecto cristal: */
  backdrop-filter: blur(10px);

  box-shadow:
    0 30px 80px rgba(0,0,0,.55),
    inset 0 0 0 1px rgba(255,255,255,.04);
}

/* FONDO FULL WIDTH */
.wpcf7.pti-form-lux.pti-form-full form::before,
form.pti-form-lux.pti-form-full::before{
  content:"";
  position:absolute;
  z-index:-1;

  top:-80px;
  bottom:-80px;
  left:50%;
  transform:translateX(-50%);
  width:100vw;

  background: linear-gradient(180deg, #fbf8f1 0%, #f3efe6 100%);
}

/* ESPACIADO */
.pti-form-lux p{ margin: 0 0 16px; }

/* LABELS (cambié a oscuro para fondo claro) */
.pti-form-lux label{
  display:block;
  margin:0 0 10px;

  font-size:12px;
  font-weight:800;
  letter-spacing:.8px;
  text-transform:uppercase;

  color: rgba(20,20,20,.85);
}

/* CAMPOS */
.pti-form-lux input[type="text"],
.pti-form-lux input[type="email"],
.pti-form-lux input[type="tel"],
.pti-form-lux input[type="url"],
.pti-form-lux input[type="number"],
.pti-form-lux input[type="date"],
.pti-form-lux textarea,
.pti-form-lux select{
  width:100%;
  box-sizing:border-box;

  background: rgba(0,0,0,.08);
  color: rgba(10,10,10,.88);

  border:1px solid rgba(0,0,0,.12);
  border-radius:14px;

  padding:14px 15px;
  line-height:1.2;
}

/* Placeholder */
.pti-form-lux ::placeholder{ color: rgba(0,0,0,.35); }

/* Focus dorado */
.pti-form-lux input:focus,
.pti-form-lux textarea:focus,
.pti-form-lux select:focus{
  outline:none !important;
  border-color: rgba(207,168,74,.85);
  box-shadow: 0 0 0 3px rgba(207,168,74,.25);
  background: rgba(0,0,0,.04);
}

/* Textarea */
.pti-form-lux textarea{
  min-height:120px;
  resize:vertical;
}

/* BOTÓN */
.pti-form-lux input[type="submit"],
.pti-form-lux button{
  width:100%;
  padding:15px 18px;

  border-radius:16px;
  border:1px solid rgba(240,210,124,.95);

  background: linear-gradient(180deg, rgba(240,210,124,.55), rgba(207,168,74,.28));
  color: #111;

  font-weight:900;
  letter-spacing:.9px;
  text-transform:uppercase;

  cursor:pointer;

  box-shadow:
    0 18px 45px rgba(0,0,0,.25),
    inset 0 1px 0 rgba(255,255,255,.45);

  transition: transform .18s ease, box-shadow .18s ease;
}

.pti-form-lux input[type="submit"]:hover,
.pti-form-lux button:hover{
  transform: translateY(-2px);
  box-shadow:
    0 26px 70px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.55);
}

/* PRIVACIDAD */
.pti-form-lux .pti-form-privacy{
  margin-top:16px;
  font-size:12px;
  line-height:1.55;
  color: rgba(20,20,20,.60);
}

.pti-form-lux .pti-form-privacy a{
  color: rgba(207,168,74,.95);
  text-decoration:none;
}

.pti-form-lux .pti-form-privacy a:hover{ text-decoration:underline; }












































/* ==================================================
   iOS — quitar azul
   ================================================== */

.pti-form-lux,
.pti-form-lux *{
  -webkit-tap-highlight-color: rgba(0,0,0,0) !important;
  -webkit-touch-callout:none;
}


/* ==================================================
   MOBILE
   ================================================== */

@media (max-width:900px){
  form.pti-form-lux.pti-form-full{
    padding:22px 16px;
    border-radius:18px;
  }

  form.pti-form-lux.pti-form-full::before{
    top:-28px;
    bottom:-28px;
  }
}


/* ==================================================
   FOCUS AMARILLO FINAL
   ================================================== */

.pti-form-lux *:focus-visible{
  outline: none !important;
  box-shadow: none !important;
}


/* ==================================================
   FULL WIDTH WRAPPER (transport-ibiza)
   ================================================== */

#transport-ibiza{
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  max-width: none !important;
  border-radius: 0 !important;
}


/* ==================================================
   FONDO GENERAL (tal cual lo tenías)
   ================================================== */

body{
  background: radial-gradient(
    1200px 600px at 50% -10%,
    #0d0f12,
    #050506
  );
}


/* ==================================================
   ASTRA — OCULTAR HEADER + FOOTER
   ================================================== */

#masthead,
header.site-header,
.site-header,
#colophon,
footer.site-footer,
.site-footer,
.site-below-footer-wrap,
.site-info,
.ast-footer-copyright,
.ast-small-footer{
  display: none !important;
}


/* ==================================================
   ASTRA — FULL WIDTH REAL
   ================================================== */

html, body{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: hidden !important;
}

.site,
.site-content,
.ast-container,
.content-area,
main,
article,
.entry-content{
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.entry-content{
  padding-top: 0 !important;
}

@media (min-width: 783px){
  .entry-content > *{
    max-width: none !important;
  }
}







/* === PTI MINIHEADER (FORCE FRONTEND) === */
#pti-miniheader{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  background:#f3efe6 !important;
}

#pti-miniheader .pti-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;

  width:min(1180px, calc(100% - 36px)) !important;
  margin:0 auto !important;
  padding:18px 0 !important;

  background:transparent !important;
}

#pti-miniheader .pti-logo{
  height:46px !important;
  width:auto !important;
  display:block !important;
}

#pti-miniheader a{
  color:#0f0f10 !important;
  text-decoration:none !important;
}

#pti-miniheader .pti-back-home{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  padding:10px 14px !important;
  border-radius:12px !important;

  background:rgba(255,255,255,.80) !important;
  border:1px solid rgba(212,175,55,.55) !important;
  box-shadow:0 14px 30px rgba(0,0,0,.10) !important;

  font-weight:800 !important;
}

#pti-miniheader .pti-back-home:hover{
  text-decoration:underline !important;
}

@media (max-width:520px){
  #pti-miniheader .pti-nav{ padding:14px 0 !important; }
  #pti-miniheader .pti-logo{ height:40px !important; }
  #pti-miniheader .pti-back-home{ padding:9px 12px !important; font-size:14px !important; }
}





/* ===========================
   PTI MINIHEADER — HARD FORCE VISIBILITY
   (no rompe el resto)
=========================== */
#pti-miniheader{
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
  position:relative !important;
  z-index:2147483647 !important; /* por encima de todo */
}

#pti-miniheader *{
  visibility:visible !important;
  opacity:1 !important;
}

/* Si algún contenedor de Astra lo corta */
.entry-content,
.site-content,
.content-area,
main,
article{
  overflow: visible !important;
}









