/* ══════════════════════════════════════════════════════════════════════
   V43 · Página de contacto: Nueva York + Barcelona, carta escrita a mano
   y buzón americano de Inquiii
   ══════════════════════════════════════════════════════════════════════ */
.ct43{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;color:#FAFAF7;isolation:isolate;margin-top:0;
  background:linear-gradient(180deg,#081230 0%,#13265A 34%,#3C5BA3 62%,#9AA8D6 80%,#F1C0A2 93%,#F6D2B4 100%)}
.ct43-cielo{position:absolute;inset:0;z-index:-1;pointer-events:none}
.ct43-cielo::before{content:'';position:absolute;inset:0 0 45% 0;opacity:.55;
  background-image:radial-gradient(1px 1px at 12% 18%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 28% 8%,#fff 50%,transparent 51%),
  radial-gradient(1.4px 1.4px at 46% 22%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 63% 12%,#fff 50%,transparent 51%),
  radial-gradient(1px 1px at 78% 26%,#fff 50%,transparent 51%),radial-gradient(1.4px 1.4px at 88% 9%,#fff 50%,transparent 51%),
  radial-gradient(1px 1px at 6% 40%,#fff 50%,transparent 51%),radial-gradient(1px 1px at 54% 38%,#fff 50%,transparent 51%)}
.ct43-cielo::after{content:'';position:absolute;left:50%;bottom:-18%;width:120vw;height:60%;transform:translateX(-50%);
  background:radial-gradient(closest-side,rgba(255,179,192,.2),rgba(255,179,192,0))}
.ct43-nube{position:absolute;border-radius:50%;background:rgba(255,255,255,.55);filter:blur(28px);animation:ct43Nube 60s linear infinite alternate}
.ct43-nube.n1{width:360px;height:90px;top:16%;left:62%}
.ct43-nube.n2{width:280px;height:70px;top:30%;left:8%;opacity:.6;animation-duration:80s}
.ct43-nube.n3{width:420px;height:110px;top:46%;left:70%;opacity:.45;animation-duration:70s}
@keyframes ct43Nube{to{transform:translateX(-60px)}}
.ct43-sky{position:absolute;left:0;right:0;bottom:0;width:100%;height:max(150px,22.5vw);z-index:0;pointer-events:none}
.ct43-ciudad{font:500 11px -apple-system,BlinkMacSystemFont,system-ui;fill:rgba(250,250,247,.42);text-anchor:middle;letter-spacing:.02em}

.ct43-wrap{position:relative;z-index:1;width:100%;max-width:1220px;margin:0 auto;padding:clamp(110px,14vh,140px) 24px clamp(56px,9vh,96px);
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(24px,5vw,72px);align-items:center}
.ct43-eti{font:600 .8rem -apple-system,BlinkMacSystemFont,system-ui;color:#FFB3C0;margin-bottom:14px}
.ct43 h1{font:700 clamp(2.4rem,4.8vw,4.1rem)/.98 -apple-system,BlinkMacSystemFont,system-ui;letter-spacing:-.05em;color:#FAFAF7;text-wrap:balance}
.ct43 h1 em{display:block;font:italic 400 clamp(1.5rem,2.6vw,2.2rem)/1.1 var(--serif);letter-spacing:-.01em;color:#FFB3C0;margin-top:12px}
.ct43-sub{margin-top:16px;max-width:30rem;font-size:1rem;line-height:1.55;color:rgba(250,250,247,.78)}
.ct43-alt{margin-top:14px;font-size:.88rem;color:rgba(250,250,247,.7)}
.ct43-alt a{color:#FAFAF7;text-decoration:underline;text-underline-offset:3px}

/* Formulario: tarjeta de cristal blanca */
.ct43-form{margin-top:22px;max-width:470px;padding:22px;border-radius:24px;color:#0A0A0A;
  background:rgba(255,255,255,.94);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);
  box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 30px 60px -24px rgba(5,10,30,.6),0 8px 20px -10px rgba(5,10,30,.35);
  transition:opacity .4s,transform .4s cubic-bezier(.16,1,.3,1)}
.ct43-form.bloqueado{opacity:.75}
.ct43-form-tit{font:650 1rem -apple-system,BlinkMacSystemFont,system-ui;letter-spacing:-.02em;margin-bottom:12px}
.ct43-perfil{display:flex;gap:3px;padding:3px;border-radius:13px;background:#EFEFEA;margin-bottom:12px;overflow-x:auto;scrollbar-width:none}
.ct43-perfil button{flex:1 0 auto;border:0;background:transparent;border-radius:10px;padding:.5rem .7rem;font:550 .8rem -apple-system,BlinkMacSystemFont,system-ui;color:#6B6B66;cursor:pointer;transition:background-color .2s,color .2s,box-shadow .2s}
.ct43-perfil button.on{background:#7A1B2B;color:#fff;box-shadow:0 2px 8px -3px rgba(122,27,43,.55)}
.ct43-campo{display:block;margin-bottom:10px}
.ct43-campo span{display:block;font:600 .74rem -apple-system,BlinkMacSystemFont,system-ui;color:#6B6B66;margin:0 0 5px 2px}
.ct43-campo span i{font-style:normal;font-weight:500;color:#9A9A94}
.ct43-campo input,.ct43-campo textarea{width:100%;border:1px solid transparent;background:#F3F3EF;border-radius:12px;padding:.7rem .85rem;font:500 .95rem -apple-system,BlinkMacSystemFont,system-ui;color:#0A0A0A;outline:0;resize:none;
  transition:border-color .2s,background-color .2s,box-shadow .2s}
.ct43-campo input:focus,.ct43-campo textarea:focus{background:#fff;border-color:#0A0A0A;box-shadow:0 0 0 4px rgba(122,27,43,.28)}
.ct43-dos{display:grid;grid-template-columns:1.3fr 1fr;gap:10px}
.ct43-trampa{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.ct43-pie{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px}
.ct43-pie span{font-size:.76rem;color:#9A9A94;font-variant-numeric:tabular-nums}
.ct43-enviar{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;padding:.78rem 1.25rem;background:#0A0A0A;color:#FAFAF7;font:600 .92rem -apple-system,BlinkMacSystemFont,system-ui;cursor:pointer;
  box-shadow:0 10px 24px -10px rgba(10,10,10,.7);transition:transform .2s cubic-bezier(.16,1,.3,1),background-color .2s}
.ct43-enviar:hover{transform:translateY(-1px)}
.ct43-enviar:active{transform:scale(.97)}
.ct43-enviar svg{color:#FFB3C0}
.ct43-enviar:disabled{cursor:default;opacity:.85}
.ct43-error{min-height:1em;margin-top:8px;font-size:.82rem;color:#D62818;font-weight:550}

/* Escena: sobre, carta, pluma y buzón */
.ct43-escena{position:relative;height:560px;perspective:1400px}
.ct43-sobre{position:absolute;left:50%;bottom:40px;width:420px;height:250px;margin-left:-210px;transform-origin:50% 50%}
.ct43-sobre-atras{position:absolute;inset:0;border-radius:8px;background:linear-gradient(180deg,#DFE3EA,#CDD3DD);box-shadow:0 40px 70px -30px rgba(5,10,30,.7),0 10px 24px -12px rgba(5,10,30,.35)}
/* Solapa: triángulo que, cerrado, llega más abajo que el centro del bolsillo para que no quede nada a la vista */
.ct43-solapa{position:absolute;left:0;right:0;top:0;height:62%;z-index:1;transform-origin:50% 0;transform:rotateX(180deg);backface-visibility:visible;
  clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(180deg,#EEF1F5 0%,#E3E7EE 70%,#D6DBE4 100%)}
.ct43-carta{position:absolute;left:42px;right:42px;bottom:16px;height:440px;z-index:3;transform-origin:50% 100%;border-radius:4px;padding:22px 24px;color:#3A3A36;
  background:#FFFFFE;box-shadow:0 1px 0 rgba(0,0,0,.04),0 18px 40px -20px rgba(5,10,30,.45);
  background-image:repeating-linear-gradient(180deg,transparent 0,transparent 33px,rgba(46,107,255,.13) 33px,rgba(46,107,255,.13) 34px);background-position:0 168px;background-repeat:no-repeat;background-size:100% calc(100% - 180px)}
.ct43-carta-cab{display:flex;justify-content:space-between;align-items:center;font:500 .7rem -apple-system,BlinkMacSystemFont,system-ui;color:#9A9A94;margin-bottom:18px}
.ct43-carta-logo{display:inline-flex;align-items:center;gap:6px;color:#0A0A0A}
.ct43-carta-logo svg{width:22px;height:18px}
.ct43-carta-logo svg path:first-child{fill:#0A0A0A}
.ct43-carta-logo b{font:700 .9rem -apple-system,BlinkMacSystemFont,system-ui;letter-spacing:-.04em}
.ct43-l{display:flex;align-items:baseline;gap:10px;min-height:30px;border-bottom:1px dashed rgba(10,10,10,.08)}
.ct43-l span{flex:none;width:44px;font:500 .66rem -apple-system,BlinkMacSystemFont,system-ui;color:#9A9A94}
.ct43-mano{font-family:'Caveat',cursive;font-weight:500;font-size:23px;line-height:1.25;color:#1E2E6E;word-break:break-word;white-space:pre-wrap}
.ct43-cuerpo{margin-top:14px;font-size:24px;line-height:34px;max-height:238px;overflow:hidden}
.ct43-mano i{font-style:normal}
.ct43-mano i.tinta{animation:ct43Tinta .34s ease-out both}
@keyframes ct43Tinta{0%{color:transparent;text-shadow:0 0 7px rgba(30,46,110,.55)}60%{color:rgba(30,46,110,.7);text-shadow:0 0 2px rgba(30,46,110,.3)}100%{color:#1E2E6E;text-shadow:none}}
/* Bolsillo delantero: cubre todo menos el triángulo superior (de esquina a esquina pasando por el centro) */
.ct43-sobre-frente{position:absolute;inset:0;z-index:4;border-radius:8px;pointer-events:none;
  background:linear-gradient(180deg,#FBFCFD 0%,#F1F3F7 55%,#E7EAF0 100%);clip-path:polygon(0 0,50% 56%,100% 0,100% 100%,0 100%)}
.ct43-sobre-frente::after{content:'';position:absolute;inset:0;
  background:linear-gradient(to top right,transparent calc(50% - .6px),rgba(10,20,40,.08) 50%,transparent calc(50% + .6px)) left bottom/50% 44% no-repeat,
             linear-gradient(to top left,transparent calc(50% - .6px),rgba(10,20,40,.08) 50%,transparent calc(50% + .6px)) right bottom/50% 44% no-repeat}
.ct43-sobre-frente::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,40,.07),transparent 18%);clip-path:polygon(0 0,50% 56%,100% 0,100% 6%,50% 62%,0 6%)}
.ct43-sello{position:absolute;left:50%;top:60%;width:78px;height:78px;z-index:8;opacity:0;transform:translate(-50%,-50%);filter:drop-shadow(0 5px 6px rgba(60,0,4,.45)) drop-shadow(0 1px 1px rgba(0,0,0,.4))}
.ct43-sello svg{width:100%;height:100%;display:block}
.ct43-pluma{position:absolute;left:0;top:0;width:52px;height:190px;z-index:9;pointer-events:none;opacity:0;transform-origin:26px 190px;
  transition:transform .09s cubic-bezier(.3,.7,.4,1),opacity .4s;filter:drop-shadow(10px 18px 12px rgba(5,10,30,.4))}
.ct43-pluma svg{width:100%;height:100%;display:block}
.ct43-pluma.visible{opacity:1}
.ct43-ok{position:absolute;left:0;right:0;top:34%;text-align:center;opacity:0;transform:translateY(12px);transition:opacity .6s,transform .6s cubic-bezier(.16,1,.3,1);pointer-events:none}
.ct43-ok.visible{opacity:1;transform:none;pointer-events:auto}
.ct43-ok b{display:block;font:700 2rem -apple-system,BlinkMacSystemFont,system-ui;letter-spacing:-.04em}
.ct43-ok span{display:block;max-width:360px;margin:8px auto 18px;font-size:.95rem;line-height:1.5;color:rgba(250,250,247,.82)}
.ct43-ok button{border:0;border-radius:999px;padding:.65rem 1.1rem;background:#fff;color:#7A1B2B;font:600 .88rem -apple-system,BlinkMacSystemFont,system-ui;cursor:pointer}
.ct43-ok.error b{color:#FFB4AC}

@media(max-width:980px){
  .ct43-wrap{grid-template-columns:1fr;padding-top:110px}
  .ct43-form{max-width:none}
  .ct43-escena{height:520px;transform:scale(.86);transform-origin:50% 0;margin-bottom:-60px}
}
@media(max-width:520px){
  .ct43-dos{grid-template-columns:1fr}
  .ct43-escena{transform:scale(.72);margin:0 -60px -150px}
}
@media(prefers-reduced-motion:reduce){.ct43-nube,.ct43-mano i.tinta{animation:none}}

