@font-face{font-family:"Nexa";src:url("../fonts/Nexa-Light.woff2") format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Clarika";src:url("../fonts/Clarika.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}

*{box-sizing:border-box}
html{margin:0;padding:0;background:#020b14;scroll-behavior:smooth}
body{margin:0;padding:0;background:#020b14;color:#fff;font-family:"Nexa",Arial,sans-serif;font-weight:300;overflow-x:hidden}
button,input{font-family:"Nexa",Arial,sans-serif}
div#rsvpNoContent div h3 {font-size: 14px;}
div#rsvpNoContent div p {font-size: 12px;}
/* CABECERA */
.clave-hero{--gold:#d7a94d;--gold-light:#f6d27a;--gold-dark:#9e7027;--blue:#07192a;--blue-light:#0b2c4a;--blue-deep:#020b14;position:relative;width:100%;min-height:100svh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:max(32px,env(safe-area-inset-top)) 22px max(28px,env(safe-area-inset-bottom));background:radial-gradient(circle at 75% 20%,rgba(14,67,108,.48),transparent 35%),linear-gradient(145deg,#020912 0%,#07192a 48%,#02070d 100%)}
.clave-hero-content{position:relative;z-index:5;width:100%;max-width:430px;margin:auto;text-align:center}
.clave-brands{display:flex;justify-content:center;align-items:center;gap:18px;margin-bottom:20px;animation:claveFadeDown 1s ease forwards}
.clave-logo{display:block;object-fit:contain;transition:transform .4s ease,filter .4s ease}
.clave-logo-ramos{width:125px;max-height:58px}
.clave-logo-clave{width:145px;max-height:58px}
.clave-logo:hover{transform:translateY(-3px) scale(1.03);filter:drop-shadow(0 5px 15px rgba(215,169,77,.35))}
.clave-brand-divider{width:1px;height:42px;background:linear-gradient(transparent,var(--gold),transparent);opacity:.8}

.clave-symbol{position:relative;width:100%;display:flex;align-items:center;justify-content:center;margin:12px auto 20px}
.clave-symbol::before{content:"";position:absolute;width:125px;height:125px;border-radius:50%;background:rgba(14,67,108,.24);filter:blur(30px);animation:claveGlow 3s ease-in-out infinite}
.clave-symbol svg{position:relative;z-index:2;width:88px;height:auto;display:block;filter:drop-shadow(0 8px 18px rgba(215,169,77,.22));animation:claveFloat 3.2s ease-in-out infinite;transition:transform .4s ease,filter .4s ease}
.clave-symbol:hover svg{filter:drop-shadow(0 10px 24px rgba(215,169,77,.4))}

.clave-copy{animation:claveFadeUp 1s .3s both}
.clave-pretitle{display:block;margin-bottom:11px;color:#e7d5af;font-size:9px;font-weight:300;letter-spacing:4px}
.clave-copy h1{margin:0;color:var(--gold-light);font-family:"Clarika","Nexa",Arial,sans-serif;font-size:clamp(47px,13vw,65px);font-weight:400;line-height:.85;letter-spacing:6px;text-shadow:0 4px 20px rgba(215,169,77,.15)}
.clave-copy h1 span{display:block;margin-top:16px;font-family:"Nexa",Arial,sans-serif;font-size:.28em;font-weight:300;letter-spacing:10px}
.clave-gold-line{width:42px;height:1px;margin:21px auto;background:linear-gradient(90deg,var(--gold-dark),var(--gold-light));transition:width .5s ease}
.clave-copy:hover .clave-gold-line{width:90px}

.clave-concepts{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin:0 auto 25px;color:rgba(255,255,255,.82);font-size:11px;letter-spacing:1.6px}
.clave-concepts i{display:block;width:3px;height:3px;border-radius:50%;background:var(--gold)}

.clave-event-info{width:100%;display:grid;gap:8px;padding:14px 17px;border:1px solid rgba(215,169,77,.2);border-radius:15px;background:rgba(255,255,255,.02);backdrop-filter:blur(10px);animation:claveFadeUp 1s .55s both}
.clave-info-item{display:flex;align-items:center;gap:14px;padding:7px 5px;text-align:left;border-radius:9px;transition:transform .35s ease,background .35s ease,padding .35s ease}
.clave-info-item:hover{transform:translateX(5px);padding-left:10px;background:rgba(215,169,77,.06)}
.clave-info-icon{width:34px;height:34px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1px solid rgba(215,169,77,.4);border-radius:50%}
.clave-info-icon svg{width:17px;height:17px;fill:none;stroke:var(--gold-light);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.clave-info-item span{display:block;margin-bottom:3px;color:rgba(255,255,255,.45);font-size:10px;letter-spacing:2px}
.clave-info-item strong{color:#fff;font-size:12px;font-weight:300;letter-spacing:.4px}

.clave-scroll{margin-top:20px;color:rgba(255,255,255,.42);font-size:9px;letter-spacing:3px;animation:claveFadeUp 1s .8s both}
.clave-scroll-mouse{position:relative;width:19px;height:30px;margin:9px auto 0;border:1px solid rgba(215,169,77,.55);border-radius:20px}
.clave-scroll-mouse span{position:absolute;width:3px;height:5px;top:6px;left:50%;transform:translateX(-50%);border-radius:10px;background:var(--gold-light);animation:claveScroll 1.8s infinite}

.clave-glow{position:absolute;pointer-events:none;border-radius:50%;filter:blur(90px)}
.clave-glow-1{width:250px;height:250px;top:-100px;right:-100px;background:rgba(13,82,133,.28)}
.clave-glow-2{width:180px;height:180px;bottom:-90px;left:-100px;background:rgba(13,82,133,.15)}
.clave-line{position:absolute;width:180px;height:1px;background:linear-gradient(90deg,transparent,rgba(215,169,77,.5),transparent);pointer-events:none}
.clave-line-1{top:12%;right:-80px;transform:rotate(-45deg)}
.clave-line-2{bottom:14%;left:-80px;transform:rotate(-45deg)}
.clave-brands img {width: 100px;}

@keyframes claveFadeDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}
@keyframes claveFadeUp{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}
@keyframes claveFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes claveGlow{0%,100%{opacity:.45;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}
@keyframes claveScroll{0%{opacity:0;transform:translate(-50%,0)}40%{opacity:1}100%{opacity:0;transform:translate(-50%,11px)}}

/* CONFIRMACIÓN */
.rsvp-section{--gold:#d7a94d;--gold-light:#f6d27a;--gold-dark:#9e7027;position:relative;padding:42px 18px 65px;background:#020b14;color:#fff}
.rsvp-card{width:100%;max-width:650px;margin:auto;padding:32px 25px;border:1px solid rgba(215,169,77,.26);border-radius:22px;background:rgba(255,255,255,.018);box-shadow:0 30px 60px rgba(0,0,0,.2)}
.rsvp-heading-small{display:block;margin-bottom:10px;text-align:center;color:rgba(246,210,122,.6);font-size:8px;letter-spacing:5px}
.rsvp-card>h2{margin:0;text-align:center;color:var(--gold-light);font-family:"Clarika","Nexa",Arial,sans-serif;font-size:20px;font-weight:400;line-height:1.45;letter-spacing:5px}
.rsvp-line{width:55px;height:1px;margin:17px auto 27px;background:linear-gradient(90deg,var(--gold-dark),var(--gold-light),var(--gold-dark));transition:width .4s ease}
.rsvp-card:hover .rsvp-line{width:95px}

.rsvp-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rsvp-btn{position:relative;width:100%;min-height:60px;display:flex;align-items:center;justify-content:center;gap:13px;border-radius:40px;border:1px solid var(--gold);cursor:pointer;font-size:12px;font-weight:300;letter-spacing:.8px;transition:transform .35s ease,box-shadow .35s ease,background .35s ease,color .35s ease}
.rsvp-btn:hover{transform:translateY(-3px)}
.rsvp-btn-yes{background:linear-gradient(135deg,#f1cf76,#c98d30);color:#071421;box-shadow:0 8px 30px rgba(215,169,77,.15)}
.rsvp-btn-no{background:transparent;color:#fff}
.rsvp-btn-no:hover{background:rgba(215,169,77,.06)}
.rsvp-btn.active{transform:translateY(-2px);box-shadow:0 0 0 3px rgba(215,169,77,.08),0 12px 35px rgba(215,169,77,.18)}
.rsvp-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;font-size:18px}
.rsvp-btn-yes .rsvp-icon{background:#051524;color:var(--gold-light)}
.rsvp-btn-no .rsvp-icon{border:1px solid rgba(255,255,255,.55)}
.rsvp-field select{
    width:100%;
    height:54px;
    padding:0 44px 0 16px;
    border:1px solid rgba(215,169,77,.35);
    border-radius:10px;
    background-color:#071727;
    color:#fff;
    font-family:inherit;
    font-size:14px;
    outline:none;
    cursor:pointer;
    transition:.3s ease;
    -webkit-appearance:auto;
    appearance:auto;
}

.rsvp-field select:hover{
    border-color:rgba(215,169,77,.6);
}

.rsvp-field select:focus{
    border-color:#d7a94d;
    box-shadow:0 0 0 3px rgba(215,169,77,.08);
}

.rsvp-field select option{
    background:#071727;
    color:#fff;
    font-size:14px;
}

.rsvp-field select:invalid{
    color:rgba(255,255,255,.45);
}

.rsvp-field select:valid{
    color:#fff;
}

.rsvp-field select{
    display:block!important;
    width:100%!important;
    min-height:54px!important;
    padding:0 48px 0 16px!important;
    border:1px solid rgba(215,169,77,.4)!important;
    border-radius:10px!important;
    background:#071727!important;
    background-color:#071727!important;
    color:#fff!important;
    font-family:"Nexa",sans-serif!important;
    font-size:14px!important;
    font-weight:300!important;
    line-height:54px!important;
    outline:none!important;
    box-shadow:none!important;
    cursor:pointer!important;
    -webkit-appearance:none!important;
    appearance:none!important;
    position:relative!important;
    z-index:10!important;
}

.rsvp-field select:hover{
    border-color:#d7a94d!important;
}

.rsvp-field select:focus{
    border-color:#f6d27a!important;
    box-shadow:0 0 0 3px rgba(215,169,77,.12)!important;
}

.rsvp-field select:invalid{
    color:rgba(255,255,255,.45)!important;
}

.rsvp-field select:valid{
    color:#fff!important;
}

.rsvp-field select option{
    background:#071727!important;
    color:#fff!important;
}
.internal-guest-box{padding:30px 24px;border:1px solid rgba(215,169,77,.28);border-radius:14px;background:rgba(7,23,39,.72);text-align:center}
.internal-guest-label{display:block;margin-bottom:10px;color:#d7a94d;font-family:"Nexa",sans-serif;font-size:11px;letter-spacing:.18em}
.internal-guest-box h3{margin:0 0 10px;color:#fff;font-family:"Clarika",serif;font-size:27px;font-weight:400}
.internal-guest-box p{margin:0 0 24px;color:rgba(255,255,255,.7);font-family:"Nexa",sans-serif;font-size:14px}
.internal-guest-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.internal-guest-actions button{min-height:52px;border:1px solid rgba(215,169,77,.45);border-radius:10px;background:transparent;color:#fff;font-family:"Nexa",sans-serif;font-size:12px;letter-spacing:.08em;cursor:pointer;transition:.3s ease}
.internal-guest-actions button:hover{border-color:#d7a94d;background:rgba(215,169,77,.1)}
@media(max-width:560px){.internal-guest-actions{grid-template-columns:1fr}}
.rsvp-internal-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;margin-top:14px;padding:0 20px;border:1px solid rgba(215,169,77,.55);border-radius:10px;background:linear-gradient(135deg,rgba(215,169,77,.08),rgba(215,169,77,.02));color:#d7a94d;font-family:"Nexa",sans-serif;font-size:12px;font-weight:300;letter-spacing:.14em;cursor:pointer;transition:all .3s ease;-webkit-appearance:none;appearance:none}
.rsvp-internal-btn:hover{border-color:#f6d27a;background:rgba(215,169,77,.12);color:#f6d27a;transform:translateY(-1px);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.rsvp-internal-btn:active{transform:translateY(0)}
.rsvp-internal-btn.active{border-color:#d7a94d;background:rgba(215,169,77,.14);color:#f6d27a}
.rsvp-internal-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:#d7a94d;font-size:8px}
@media(max-width:560px){.rsvp-internal-btn{min-height:52px;margin-top:12px;font-size:11px}}
.rsvp-response{display:none}
.rsvp-response.show{display:block}

.rsvp-divider{display:flex;align-items:center;width:100%;margin:28px 0 20px;color:rgba(215,169,77,.55);font-family:"Nexa",sans-serif;font-size:8px;letter-spacing:.2em}
.rsvp-divider::before,.rsvp-divider::after{content:"";flex:1;height:1px;background:rgba(215,169,77,.25)}
.rsvp-divider span{padding:0 18px;white-space:nowrap}
.rsvp-internal-wrapper{display:flex;justify-content:center;width:100%}
.rsvp-internal-wrapper .rsvp-internal-btn{width:100%;max-width:420px;margin:0}
.rsvp-divider{grid-column:1/-1}
.rsvp-internal-wrapper{grid-column:1/-1;display:flex;justify-content:center;width:100%}
.rsvp-internal-wrapper .rsvp-internal-btn{width:100%;max-width:420px;margin:0}
.rsvp-internal-wrapper .rsvp-internal-btn{width:100%;max-width:360px;margin:0}

.employee-search{display:flex;align-items:stretch;gap:10px;width:100%}
.employee-search input{flex:1;min-width:0}
.employee-search-btn{min-width:110px;padding:0 20px;border:1px solid #d7a94d;border-radius:10px;background:rgba(215,169,77,.08);color:#d7a94d;font-family:"Nexa",sans-serif;font-size:10px;font-weight:300;letter-spacing:.1em;cursor:pointer;transition:all .25s ease}
.employee-search-btn:hover{background:#d7a94d;color:#020b14}
.employee-search-btn:disabled{opacity:.5;cursor:not-allowed}
.employee-result{display:none;margin:4px 0 20px;padding:16px 18px;border:1px solid rgba(111,211,162,.22);border-radius:10px;background:rgba(111,211,162,.06)}
.employee-result.show{display:block}
.employee-result-label{display:block;margin-bottom:6px;color:rgba(255,255,255,.4);font-size:8px;letter-spacing:.15em}
.employee-result strong{display:block;color:#fff;font-family:"Clarika",sans-serif;font-size:17px;font-weight:400}
@media(max-width:560px){.employee-search{gap:8px}.employee-search-btn{min-width:90px;padding:0 14px;font-size:9px}}

.rsvp-response{max-height:0;opacity:0;overflow:hidden;transform:translateY(-10px);pointer-events:none;transition:max-height .8s cubic-bezier(.2,.8,.2,1),opacity .45s ease,transform .45s ease,margin .45s ease}
.rsvp-response.show{max-height:1200px;opacity:1;transform:translateY(0);pointer-events:auto;margin-top:28px}

.rsvp-form-box{padding:30px 26px;border:1px solid rgba(215,169,77,.18);border-radius:18px;background:rgba(5,22,38,.7)}
.rsvp-small-title{display:block;margin-bottom:9px;text-align:center;color:var(--gold-light);font-size:9px;letter-spacing:4px}
.rsvp-form-box h3{margin:0 0 27px;text-align:center;font-family:"Clarika","Nexa",Arial,sans-serif;font-size:21px;font-weight:400}

.rsvp-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.rsvp-field{display:flex;flex-direction:column;gap:7px}
.rsvp-field.full{grid-column:1/-1}
.rsvp-field label{color:rgba(255,255,255,.7);font-size:10px;letter-spacing:.3px}
.rsvp-field input{width:100%;height:48px;padding:0 14px;border:1px solid rgba(130,174,211,.28);border-radius:8px;outline:none;background:rgba(7,28,46,.72);color:#fff;font-size:13px;font-weight:300;transition:border .3s ease,box-shadow .3s ease,background .3s ease}
.rsvp-field input::placeholder{color:rgba(255,255,255,.28)}
.rsvp-field input:focus{border-color:var(--gold);background:rgba(7,28,46,.95);box-shadow:0 0 0 3px rgba(215,169,77,.07)}

.rsvp-submit{width:min(100%,390px);height:54px;margin:28px auto 0;display:flex;align-items:center;justify-content:center;gap:15px;border:0;border-radius:35px;background:linear-gradient(135deg,#f2d37e,#c88a2b);color:#071421;font-size:12px;font-weight:300;letter-spacing:.8px;cursor:pointer;box-shadow:0 10px 30px rgba(215,169,77,.16);transition:transform .35s ease,box-shadow .35s ease}
.rsvp-submit:hover{transform:translateY(-3px);box-shadow:0 15px 40px rgba(215,169,77,.3)}
.rsvp-submit span{font-size:21px;transition:transform .35s ease}
.rsvp-submit:hover span{transform:translateX(5px)}
.rsvp-submit:disabled{cursor:default;opacity:.9;transform:none}

.rsvp-success{display:none;margin-top:25px;padding:22px 18px;text-align:center;border-top:1px solid rgba(215,169,77,.18);animation:claveFadeUp .6s ease}
.rsvp-success.show{display:block}
.rsvp-success-icon{width:46px;height:46px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;border:1px solid var(--gold);border-radius:50%;color:var(--gold-light);font-size:20px}
.rsvp-success strong{display:block;color:var(--gold-light);font-size:10px;font-weight:300;letter-spacing:3px}
.rsvp-success p{max-width:400px;margin:9px auto 0;color:rgba(255,255,255,.62);font-size:11px;line-height:1.6}

.rsvp-decline{text-align:center;padding:0 25px}
.rsvp-decline.show{padding-top:27px;padding-bottom:15px}
.decline-icon{width:58px;height:58px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;border:1px solid var(--gold);border-radius:50%;color:var(--gold-light);font-size:25px}
.rsvp-decline>span{display:block;margin-bottom:10px;color:var(--gold-light);font-size:9px;letter-spacing:4px}
.rsvp-decline h3{max-width:480px;margin:0 auto 10px;font-family:"Clarika","Nexa",Arial,sans-serif;font-size:25px;font-weight:400;line-height:1.2}
.rsvp-decline p{max-width:490px;margin:auto;color:rgba(255,255,255,.6);font-size:12px;line-height:1.7}

.rsvp-divider{display:flex;align-items:center;width:100%;margin:28px 0 20px;color:rgba(215,169,77,.55);font-family:"Nexa",sans-serif;font-size:8px;letter-spacing:.2em;grid-column:1/-1}
.rsvp-divider::before,.rsvp-divider::after{content:"";flex:1;height:1px;background:rgba(215,169,77,.25)}
.rsvp-divider span{padding:0 18px;white-space:nowrap}

.rsvp-internal-wrapper{grid-column:1/-1;display:flex;justify-content:center;width:100%}
.rsvp-internal-wrapper .rsvp-internal-btn{width:100%;max-width:460px;margin:0}

.rsvp-internal-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;margin-top:14px;padding:0 20px;border:1px solid rgba(215,169,77,.55);border-radius:10px;background:linear-gradient(135deg,rgba(215,169,77,.08),rgba(215,169,77,.02));color:#d7a94d;font-family:"Nexa",sans-serif;font-size:12px;font-weight:300;letter-spacing:.14em;cursor:pointer;transition:all .3s ease;-webkit-appearance:none;appearance:none}
.rsvp-internal-btn:hover{border-color:#f6d27a;background:rgba(215,169,77,.12);color:#f6d27a;transform:translateY(-1px);box-shadow:0 8px 24px rgba(0,0,0,.18)}
.rsvp-internal-btn:active{transform:translateY(0)}
.rsvp-internal-btn.active{border-color:#d7a94d;background:rgba(215,169,77,.14);color:#f6d27a}
.rsvp-internal-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:#d7a94d;font-size:8px}

.employee-search{display:flex;align-items:stretch;gap:10px;width:100%}
.employee-search input{flex:1;min-width:0}

.employee-search-btn{min-width:110px;padding:0 20px;border:1px solid #d7a94d;border-radius:10px;background:rgba(215,169,77,.08);color:#d7a94d;font-family:"Nexa",sans-serif;font-size:10px;font-weight:300;letter-spacing:.1em;cursor:pointer;transition:all .25s ease;-webkit-appearance:none;appearance:none}
.employee-search-btn:hover{background:#d7a94d;color:#020b14}
.employee-search-btn:active{transform:translateY(1px)}
.employee-search-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}

.employee-result{display:none;margin:4px 0 20px;padding:16px 18px;border:1px solid rgba(111,211,162,.22);border-radius:10px;background:rgba(111,211,162,.06)}
.employee-result.show{display:block}
.employee-result-label{display:block;margin-bottom:6px;color:rgba(255,255,255,.4);font-family:"Nexa",sans-serif;font-size:8px;font-weight:300;letter-spacing:.15em}
.employee-result strong{display:block;color:#fff;font-family:"Clarika",sans-serif;font-size:17px;font-weight:400;line-height:1.35}

#internalForm .rsvp-field input:disabled,#internalForm .rsvp-field select:disabled{opacity:.45;cursor:not-allowed}
#internalForm .rsvp-field input:disabled{background:rgba(7,23,39,.55)}
#internalForm .rsvp-field select:disabled{background:#071727!important;color:rgba(255,255,255,.35)!important}
#submitInternal:disabled{opacity:.45;cursor:not-allowed;transform:none}

@media(max-width:560px){
    .rsvp-divider{margin:24px 0 18px;font-size:7px}
    .rsvp-divider span{padding:0 14px}
    .rsvp-internal-btn{min-height:52px;margin-top:12px;font-size:11px}
    .employee-search{gap:8px}
    .employee-search-btn{min-width:90px;padding:0 14px;font-size:9px}
    .employee-result{padding:14px 16px}
    .employee-result strong{font-size:16px}
}
.nfc-used-guest{display:none;width:100%;max-width:none;box-sizing:border-box;margin:30px 0 0;padding:34px 30px;border:1px solid rgba(215,169,77,.38);border-radius:22px;background:linear-gradient(145deg,rgba(7,23,39,.98),rgba(2,11,20,.98));box-shadow:0 22px 60px rgba(0,0,0,.35);position:relative;overflow:hidden}
.nfc-used-guest.show{display:block;animation:nfcGuestIn .45s ease}
.nfc-used-guest::before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,transparent,#d7a94d,#f6d27a,#d7a94d,transparent)}
.nfc-used-guest::after{content:"";position:absolute;width:240px;height:240px;right:-100px;top:-120px;border-radius:50%;background:radial-gradient(circle,rgba(215,169,77,.1),transparent 70%);pointer-events:none}

.nfc-used-label{display:block;margin-bottom:18px;color:#d7a94d;font-family:"Nexa",sans-serif;font-size:10px;font-weight:300;letter-spacing:.22em;text-align:center}
.nfc-used-guest h3{margin:0;color:#fff;font-family:"Clarika",sans-serif;font-size:34px;font-weight:400;line-height:1.15;text-align:center}
.nfc-used-company{margin:10px 0 30px;color:rgba(255,255,255,.55);font-family:"Nexa",sans-serif;font-size:15px;font-weight:300;letter-spacing:.05em;text-align:center}

.nfc-checkin-status{width:100%;box-sizing:border-box;padding:24px 20px;border:1px solid rgba(215,169,77,.2);border-radius:14px;background:rgba(255,255,255,.025);text-align:center}
.nfc-checkin-status span{display:block;margin-bottom:10px;color:rgba(255,255,255,.4);font-family:"Nexa",sans-serif;font-size:9px;font-weight:300;letter-spacing:.18em}
.nfc-checkin-status strong{display:block;font-family:"Nexa",sans-serif;font-size:17px;font-weight:300;line-height:1.4;letter-spacing:.04em}
.nfc-checkin-status.pending strong{color:#d7a94d}
.nfc-checkin-status.checked{border-color:rgba(111,211,162,.3);background:rgba(111,211,162,.06)}
.nfc-checkin-status.checked strong{color:#6fd3a2}
.nfc-checkin-status small{display:block;margin-top:8px;color:rgba(255,255,255,.45);font-family:"Nexa",sans-serif;font-size:10px}

.nfc-used-message{margin:26px 0 0;padding-top:20px;border-top:1px solid rgba(215,169,77,.18);color:rgba(255,255,255,.45);font-family:"Nexa",sans-serif;font-size:11px;font-weight:300;letter-spacing:.07em;text-align:center}
.nfc-used-guest{
    display:none;
    grid-column:1/-1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    justify-self:stretch!important;
    align-self:stretch!important;
    margin:30px 0 0!important;
    padding:34px 30px;
    border:1px solid rgba(215,169,77,.38);
    border-radius:22px;
    background:linear-gradient(145deg,rgba(7,23,39,.98),rgba(2,11,20,.98));
    box-shadow:0 22px 60px rgba(0,0,0,.35);
    position:relative;
    overflow:hidden;
}
.nfc-used-guest.show{
    display:block!important;
    grid-column:1/-1!important;
    width:100%!important;
    max-width:100%!important;
}
@media(max-width:700px){
    .nfc-used-guest{
        grid-column:1/-1!important;
        width:100%!important;
        max-width:100%!important;
        margin:22px 0 0!important;
        padding:28px 18px;
        border-radius:18px;
    }
}
@keyframes nfcGuestIn{
    from{opacity:0;transform:translateY(14px)}
    to{opacity:1;transform:translateY(0)}
}

@media(max-width:700px){
    .nfc-used-guest{width:100%;margin:22px 0 0;padding:28px 18px;border-radius:18px}
    .nfc-used-label{margin-bottom:14px;font-size:8px}
    .nfc-used-guest h3{font-size:29px}
    .nfc-used-company{margin:8px 0 24px;font-size:13px}
    .nfc-checkin-status{padding:21px 15px}
    .nfc-checkin-status strong{font-size:15px}
    .nfc-used-message{margin-top:22px;padding-top:18px;font-size:10px}
}
/* FOOTER */
.clave-footer{--gold:#d7a94d;--gold-light:#f6d27a;position:relative;width:100%;min-height:290px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:55px 24px 55px;background:#020b14;color:#fff}
.clave-footer-content{position:relative;z-index:3;width:100%;max-width:600px;margin:auto;text-align:center}
.footer-symbol{width:60px;margin:0 auto 20px}
.footer-symbol svg{display:block;width:100%;height:auto}
.clave-footer h2{margin:0;color:var(--gold-light);font-family:"Clarika","Nexa",Arial,sans-serif;font-size:17px;font-weight:400;line-height:1.8;letter-spacing:7px}
.clave-footer-divider{display:block;width:55px;height:1px;margin:18px auto 25px;background:linear-gradient(90deg,transparent,var(--gold-light),transparent);transition:width .5s ease}
.clave-footer:hover .clave-footer-divider{width:90px}
.clave-footer-brands{display:flex;align-items:center;justify-content:center;gap:18px;color:var(--gold-light);font-size:10px;font-weight:300;letter-spacing:4px}
.clave-footer-brands i{display:block;width:1px;height:15px;background:var(--gold);opacity:.7}
.clave-footer p{margin:11px 0 0;color:rgba(246,210,122,.65);font-size:6px;font-weight:300;letter-spacing:4px}
.clave-footer-line{position:absolute;width:320px;height:1px;bottom:10px;background:linear-gradient(90deg,transparent,rgba(215,169,77,.45),transparent);opacity:.45;pointer-events:none}
.clave-footer-line-left{left:-170px;transform:rotate(38deg)}
.clave-footer-line-right{right:-170px;transform:rotate(-38deg)}
.clave-scroll span {
    color: #fff;
    font-size: 11px;
}


/* MÓVIL */
@media(max-width:700px){
    .rsvp-section{padding:30px 14px 50px}
    .rsvp-card{padding:28px 18px;border-radius:18px}
    .rsvp-card>h2{font-size:16px;line-height:1.55;letter-spacing:4px}
    .rsvp-actions{grid-template-columns:1fr;gap:11px}
    .rsvp-btn{min-height:58px;font-size:12px}
    .rsvp-response.show{margin-top:22px}
    .rsvp-form-box{padding:25px 17px}
    .rsvp-form-box h3{font-size:19px;line-height:1.3}
    .rsvp-fields{grid-template-columns:1fr;gap:14px}
    .rsvp-field,.rsvp-field.full{grid-column:1}
    .rsvp-submit{margin-top:23px}
    img.img-img {width: 185px;}
    img.img-img2 {width: 28%; margin: 0 0 20px 0;}
    div#rsvpNoContent div h3 {font-size: 14px;}
    div#rsvpNoContent div p {font-size: 12px;}
}

@media(max-width:600px){
    .clave-footer{min-height:270px;padding:50px 20px}
    .clave-footer h2{font-size:14px;line-height:1.8;letter-spacing:5px}
    .clave-footer-brands{gap:13px;font-size:9px;letter-spacing:3px}
    .clave-footer p{font-size:6px;letter-spacing:3px}
    .clave-footer-line{width:230px;bottom:5px}
    .clave-footer-line-left{left:-135px}
    .clave-footer-line-right{right:-135px}
}

@media(max-width:380px){
    .clave-hero{padding-left:17px;padding-right:17px}
    .clave-brands{gap:13px;margin-bottom:15px}
    .clave-logo-ramos{width:102px}
    .clave-logo-clave{width:118px}
    .clave-brand-divider{height:36px}
    .clave-symbol{margin:8px auto 18px}
    .clave-symbol svg{width:74px}
    .clave-symbol::before{width:95px;height:95px}
    .clave-copy h1{font-size:43px}
    .clave-pretitle{font-size: 14px;letter-spacing: 4px;padding: 10px 0;}
    .clave-concepts{gap:6px;font-size:10px;letter-spacing:1.2px}
    .rsvp-card{padding:25px 14px}
    .rsvp-card>h2{font-size:14px;letter-spacing:3px}
    .rsvp-btn{font-size:11px}
    .rsvp-form-box{padding:22px 13px}
    .clave-footer h2{font-size:13px;letter-spacing:4px}
}
.rsvp-field{position:relative}
.rsvp-field select{
    position:relative;
    z-index:20;
    pointer-events:auto!important;
    touch-action:manipulation;
    -webkit-user-select:auto;
    user-select:auto;
}