.contact-invitation{position:relative;background:#f7f5ef;color:#0b3c26;padding:76px 0 128px;font-family:'Poppins',sans-serif;overflow:hidden}
.contact-invitation__inner{width:min(1200px,calc(100% - 80px));margin:auto;display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}
.contact-invitation__eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;display:flex;align-items:center;gap:12px;line-height:1.6;margin-bottom:26px}
.contact-invitation__eyebrow span{font-size:23px;color:#7ca773}
.contact-invitation h1{font-family:inherit;font-size:clamp(38px,4.4vw,63px);font-weight:500;letter-spacing:-.055em;line-height:1.13;margin:0 0 24px}
.contact-invitation h1>span{color:#65885b;display:inline-block;position:relative}
.contact-invitation h1>span::after{content:'';position:absolute;left:0;right:-12px;bottom:-5px;height:12px;border-top:2px solid #7ca773;border-radius:50%;transform:rotate(-3deg)}
.contact-invitation__text{max-width:440px;font-size:15px;line-height:1.9;margin:30px 0}
.contact-invitation__actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px}
.contact-invitation a{color:inherit;text-decoration:none}
.contact-invitation__button{display:inline-flex;align-items:center;gap:25px;background:#0b3c26;color:#fff!important;font-size:13px;padding:16px 23px;border-radius:40px;transition:background .2s}
.contact-invitation__button:hover{background:#55725c}.contact-invitation__form{font-size:12px;border-bottom:1px solid #8ca37f;padding-bottom:5px}
.contact-invitation__email{display:inline-flex;align-items:center;gap:18px;font-size:12px;margin-top:28px;opacity:.8}
.contact-invitation a:focus-visible{outline:3px solid #7ca773;outline-offset:5px}
.contact-postcard{position:relative;width:100%;height:430px;display:flex;align-items:center;justify-content:center}
.contact-postcard__trail{position:absolute;inset:0;width:100%;height:100%;color:#7ca773;opacity:.8}
.contact-postcard__paper{position:absolute;width:69%;height:340px;top:30px;left:17%;padding:27px 29px;background:#fffef8;border:1px solid #d9dece;border-radius:4px;transform:rotate(-7deg);box-shadow:0 15px 30px #2547300d}
.contact-postcard__label{display:block;font-size:8px;letter-spacing:.08em;text-transform:uppercase;line-height:1.7;border-bottom:1px solid #d9dece;padding-bottom:13px;margin-bottom:14px}
.contact-postcard__hello{font-size:clamp(25px,2.7vw,38px);font-weight:500;letter-spacing:-.055em;line-height:1.15;display:block}
.contact-postcard__signature{display:flex;align-items:center;justify-content:space-between;margin-top:17px;gap:15px;font-size:9px;line-height:1.7}
.contact-postcard__signature img{width:47px;height:47px;object-fit:contain}
.contact-postcard__envelope{position:absolute;bottom:34px;left:8%;width:84%;height:185px;transform:rotate(4deg);border-radius:4px;overflow:hidden;box-shadow:0 18px 35px #0b3c2612}
.contact-postcard__envelope svg{width:100%;height:100%;display:block}
.contact-postcard__seal{position:absolute;left:calc(50% - 22px);top:82px;width:44px;height:44px;background:#0b3c26;color:#f7f5ef;border:4px double #9dbb8f;border-radius:50%;display:grid;place-items:center;font-size:22px}
.contact-postcard__star{position:absolute;color:#0b3c26;font-size:43px;z-index:1}.contact-postcard__star--one{top:8px;right:4%}.contact-postcard__star--two{bottom:53px;left:0;font-size:28px}
.contact-postcard__note{position:absolute;bottom:0;font-size:10px;letter-spacing:.025em;text-align:center}
.page-contacto .footer{margin-top:0!important}.page-contacto #formulario-contacto{scroll-margin-top:24px}
@media(max-width:900px){.contact-invitation__inner{width:calc(100% - 48px);gap:24px}.contact-invitation{padding-top:55px}.contact-postcard__paper{width:78%;left:12%;padding:24px 22px}.contact-postcard__hello{font-size:30px}.contact-postcard__label{font-size:7px}.contact-invitation__actions{gap:17px}}
@media(max-width:650px){.contact-invitation__inner{grid-template-columns:1fr;gap:34px;max-width:480px}.contact-invitation{padding:44px 0 116px}.contact-invitation h1{font-size:clamp(34px,8.7vw,45px)}.contact-invitation__eyebrow{font-size:9px;margin-bottom:22px}.contact-invitation__text{font-size:14px;margin:25px 0}.contact-postcard{width:min(100%,370px);height:385px;margin:auto}.contact-postcard__paper{height:300px;top:25px;width:74%;left:15%;padding:21px}.contact-postcard__hello{font-size:30px}.contact-postcard__envelope{height:156px;bottom:30px}.contact-postcard__seal{top:66px}.contact-postcard__signature{margin-top:13px}.contact-postcard__star--one{font-size:35px}.contact-invitation__email{margin-top:23px}}

/* La nota queda legible por encima del sobre. */
.contact-postcard__hello { font-size: clamp(25px, 2.2vw, 31px); line-height: 1.08; }
.contact-postcard__signature img { position: absolute; width: 35px; height: 35px; top: 74px; right: 25px; }
@media(max-width:650px) { .contact-postcard__hello { font-size: 27px; } .contact-postcard__signature img { top: 68px; right: 17px; width: 30px; height: 30px; } }

/* Más contraste en la postal, con la paleta existente. */
.contact-invitation h1 > span { color: #0b3c26; }
.contact-invitation h1 > span::after { border-color: #55725c; border-width: 3px; }
.contact-invitation__text, .contact-invitation__eyebrow { color: #0b3c26; }
.contact-invitation__email { opacity: 1; color: #0b3c26; }
.contact-postcard__paper { border-color: #55725c; background: #fffef8; }
.contact-postcard__label { border-color: #7ca773; font-weight: 500; }
.contact-postcard__trail { color: #0b3c26; opacity: .9; }
.contact-postcard__envelope { box-shadow: 0 15px 26px #0b3c261f; }
.contact-postcard__envelope svg path:nth-child(1) { fill: #0b3c26; }
.contact-postcard__envelope svg path:nth-child(2) { fill: #55725c; }
.contact-postcard__envelope svg path:nth-child(3) { stroke: #7ca773; stroke-width: 1.5; }
.contact-postcard__seal { background: #7ca773; color: #0b3c26; border-color: #d9e5ce; }
.contact-postcard__note { color: #0b3c26; font-weight: 500; }

.contact-invitation__email svg{display:block;width:18px!important;height:18px!important;max-width:18px;flex:0 0 18px}.contact-invitation__email{gap:10px;max-width:100%}

