.contact-page{background:var(--paper)}
.contact-scene{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg,#faf8f4 40%,#eef2f0 100%)}
.contact-scene::before{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:.5;background:radial-gradient(ellipse at 85% 6%,#fff 0,transparent 46%),linear-gradient(115deg,transparent 58%,#fff8 65%,transparent 78%)}
.contact-layout{display:flex;align-items:flex-start;justify-content:space-between;gap:7%;padding-block:65px 70px}
.contact-intro{flex:1 1 44%;min-width:0;max-width:540px;padding-top:17px}
.contact-intro h1{font-family:var(--serif);font-size:clamp(2.6rem,3.6vw,3.35rem);line-height:1.08;letter-spacing:-.025em;margin-top:20px;animation:contact-copy-in .85s var(--ease) both}
.contact-intro h1 em{color:var(--blue);white-space:normal}
.contact-intro .gold-stroke{margin-block:26px;animation:stroke-in 1s .15s var(--ease) both}
.contact-lead{max-width:370px;font-size:1.0625rem;line-height:1.65;color:var(--muted);animation:contact-copy-in 1s .06s var(--ease) both}
.direct-contact{margin-top:32px;position:relative;z-index:1}
.direct-label{display:block;font-size:.8125rem;color:var(--muted)}
.email-line{display:flex;align-items:center;gap:8px;min-height:44px}
.email-line>a{font-size:1.0625rem;color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:#b9c8c8;text-underline-offset:7px;overflow-wrap:anywhere;transition:text-decoration-color .2s}
.email-line>a:hover{text-decoration-color:var(--gold)}
#copy-email{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:transparent;transition:background .2s,color .2s;color:var(--muted)}
#copy-email:hover{background:#e4eceb;color:var(--blue)}
.copy-mark{position:relative;width:11px;height:13px;border:1px solid currentColor;border-radius:2px}
.copy-mark::before{content:'';position:absolute;inset:2px -4px -4px 2px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;border-radius:2px}
.copy-status{display:block;position:absolute;top:100%;font-size:.8125rem;color:var(--blue)}
.contact-art{margin:34px -8% -20px -6%;overflow:hidden;mix-blend-mode:multiply;mask-image:linear-gradient(0deg,transparent,#000 13%,#000 92%,transparent);-webkit-mask-image:linear-gradient(0deg,transparent,#000 13%,#000 92%,transparent);animation:contact-material-in 1.25s var(--ease) both}
.contact-art img{width:100%;height:auto;object-fit:cover}
.inquiry-shell{flex:1 1 49%;max-width:565px;min-width:0;position:relative;border-radius:22px 22px 12px 12px;background:#fffdf9f5;border:1px solid #fff;box-shadow:0 30px 65px -42px #103b4b70,0 4px 20px -13px #26495322;animation:contact-paper-in .85s .04s var(--ease) both}
.inquiry-shell::before{content:'';position:absolute;top:0;left:30px;right:30px;height:1px;background:linear-gradient(90deg,transparent,#bfac7a85,transparent)}
.inquiry-form{padding:30px 36px 29px}
.inquiry-heading{margin-bottom:25px}
.inquiry-heading h2{font-size:2.15rem;line-height:1.08;letter-spacing:-.01em}
.inquiry-heading p{font-size:.9375rem;color:var(--muted);margin-top:6px}
.inquiry-pair{display:flex;gap:18px}
.inquiry-pair>.inquiry-field{flex:1 1 0;min-width:0}
.inquiry-field{margin-bottom:18px;min-width:0}
.inquiry-field>label,.message-label>label{display:block;font-size:.875rem;color:#3d535b;line-height:1.5;margin-bottom:6px;transition:color .2s}
.inquiry-field label>span{font-size:.75rem;font-weight:400;color:#637779;margin-left:3px}
.inquiry-field:focus-within>label,.message-field:focus-within label{color:var(--blue)}
.inquiry-field input,.inquiry-field select,.inquiry-field textarea{display:block;width:100%;min-width:0;font:inherit;font-size:1rem;line-height:1.45;color:var(--ink);border:1px solid #c6ceca;background:#fffdfb;border-radius:7px;outline:none;padding:10px 12px;min-height:45px;box-shadow:0 1px 2px #163f4a03;transition:border-color .2s,box-shadow .25s,background .2s}
.inquiry-field input:hover,.inquiry-field textarea:hover,.inquiry-field select:hover{border-color:#91aaae}
.inquiry-field input:focus,.inquiry-field textarea:focus,.inquiry-field select:focus{border-color:#417b8e;box-shadow:0 0 0 3px #004e6f0d,0 2px 8px #004e6f05;background:#fff}
.inquiry-field [aria-invalid=true]{border-color:#a26152;background:#fffcfa}
.inquiry-field [aria-invalid=true]:focus{box-shadow:0 0 0 3px #a2615212}
.inquiry-field input:-webkit-autofill{-webkit-box-shadow:0 0 0 40px #f7faf8 inset;-webkit-text-fill-color:var(--ink)}
.select-wrap{position:relative}
.select-wrap select{appearance:none;padding-right:40px;cursor:pointer}
.select-chevron{position:absolute;right:17px;top:17px;width:7px;height:7px;border-right:1px solid #4e727d;border-bottom:1px solid #4e727d;transform:rotate(45deg);pointer-events:none;transition:transform .25s}
.select-wrap:focus-within .select-chevron{transform:translateY(2px) rotate(45deg)}
.message-label{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
#message-count{font-size:.6875rem;color:#65787b;font-variant-numeric:tabular-nums;white-space:nowrap}
.inquiry-field textarea{resize:vertical;min-height:102px;max-height:330px}
.inquiry-field textarea::placeholder{font-size:.9375rem;color:#718287;opacity:1}
.inquiry-error{display:block;color:#955142;font-size:.8125rem;line-height:1.45}
.inquiry-error:not(:empty){margin-top:5px;animation:status-in .2s var(--ease)}
.consent-field{margin-top:2px;font-size:.8125rem;line-height:1.5;color:#5a6c70}
.consent-label{display:flex;align-items:flex-start;gap:9px;cursor:pointer;padding-block:4px;min-height:36px}
.consent-label input{appearance:none;flex:0 0 16px;width:16px;height:16px;border:1px solid #a5b5b6;border-radius:4px;margin:3px 0 0;position:relative;background:#fff;transition:background .2s,border-color .2s}
.consent-label input:checked{background:var(--blue);border-color:var(--blue)}
.consent-label input:checked::after{content:'';position:absolute;left:4px;top:2px;width:5px;height:8px;border-right:1.4px solid #fff;border-bottom:1.4px solid #fff;transform:rotate(40deg)}
.consent-label input[aria-invalid=true]{border-color:#a26152}
.privacy-toggle{background:none;color:#536b74;padding:6px 0 6px 25px;min-height:32px;text-align:left;font-size:.8125rem;text-decoration:underline;text-decoration-color:#b7c2be;text-underline-offset:3px}
.privacy-toggle:hover{color:var(--blue)}
.privacy-note{background:#edf2ef;border-radius:7px;padding:15px 17px;margin:7px 0 10px;animation:status-in .24s var(--ease)}
.privacy-note p+p{margin-top:9px}
.privacy-note a{color:var(--blue);text-decoration:underline;overflow-wrap:anywhere}
.inquiry-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:22px;padding-top:20px;border-top:1px solid #e0e4df}
.form-hint{font-size:.8125rem;line-height:1.45;color:#667879}
#inquiry-submit{gap:22px;font-size:.9375rem;padding:12px 20px;min-height:48px;position:relative;overflow:hidden}
#inquiry-submit:disabled{opacity:.8;transform:none;box-shadow:none}
.send-symbol{font-size:1.25rem;display:inline-block;line-height:1;transition:transform .25s var(--ease)}
#inquiry-submit:hover:not(:disabled) .send-symbol{transform:translate(2px,-2px)}
.is-submitting .send-symbol{width:16px;height:16px;border:1.5px solid #ffffff50;border-top-color:#fff;border-radius:50%;font-size:0;animation:spin .75s linear infinite}
.inquiry-status{margin-top:18px;padding:14px 16px;background:#f6ebe5;border:1px solid #e8d6ce;border-radius:8px;color:#774838;font-size:.9375rem;line-height:1.5;animation:status-in .2s var(--ease)}
.inquiry-status a{color:inherit;overflow-wrap:anywhere;text-decoration:underline}
.inquiry-status:focus{outline:none}
.chosen-interest{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.875rem;line-height:1.45;background:#edf3f1;padding:11px 12px;border-radius:7px;margin-bottom:21px;color:var(--blue);overflow-wrap:anywhere}
.chosen-interest strong{font-weight:600}
#clear-chosen{flex-shrink:0;align-self:flex-start;background:transparent;font-size:1.4rem;line-height:1;width:30px;height:30px;border-radius:50%}
#clear-chosen:hover{background:#dbe8e5}
.inquiry-success{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;min-height:615px;padding:30px 2px;animation:contact-copy-in .65s var(--ease) both;outline:0}
.success-seal{display:flex;align-items:center;justify-content:center;width:66px;height:66px;border:1px solid #a5bfbd;border-radius:50%;color:var(--blue);background:#eef4f0;margin-bottom:30px}
.success-seal path{stroke-dasharray:35;stroke-dashoffset:0;animation:success-check .65s .1s both}
.inquiry-success>.eyebrow{font-size:.75rem;letter-spacing:.13em}
.inquiry-success h2{margin-block:18px 22px;font-size:2.55rem}
.inquiry-success>p:not(.eyebrow){font-size:1rem;line-height:1.65;color:var(--muted);overflow-wrap:anywhere}
.inquiry-success strong{font-weight:600;color:var(--ink)}
.inquiry-success .success-reference{margin-top:20px;font-size:.75rem!important;letter-spacing:.04em}
.inquiry-success .text-link{margin-top:30px;font-size:.9375rem}
.no-script{padding:15px;background:#e7eff0;border-radius:8px;font-size:.875rem;overflow-wrap:anywhere;margin-top:20px}
.no-script a{text-decoration:underline}
.contact-page .site-footer{border-top:1px solid #e2e5df}
@keyframes contact-copy-in{from{opacity:0;transform:translateY(8px);filter:blur(1px)}to{opacity:1;transform:none;filter:none}}
@keyframes contact-paper-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes contact-material-in{from{opacity:0;transform:translateY(7px) scale(1.015)}to{opacity:1;transform:none}}
@keyframes success-check{from{stroke-dashoffset:35}to{stroke-dashoffset:0}}
@media(min-width:1500px){.contact-layout{padding-block:76px 85px;gap:10%}.contact-intro{padding-top:25px}.contact-art{margin-top:40px}}
@media(max-width:1100px){.contact-layout{gap:5%;padding-block:48px 55px}.contact-intro h1{font-size:2.75rem}.inquiry-form{padding:28px}.inquiry-pair{gap:13px}.email-line>a{font-size:.9375rem}.contact-art{margin-top:45px}.contact-lead{font-size:1rem}.inquiry-actions{gap:12px}.form-hint{font-size:.75rem}#inquiry-submit{padding-inline:16px;gap:15px}}
@media(min-width:761px) and (max-width:900px){.contact-layout{gap:4%;width:calc(100% - 56px)}.contact-intro{flex-basis:43%}.inquiry-shell{flex-basis:53%}.contact-intro h1{font-size:2.45rem;line-height:1.1}.contact-intro h1 br:nth-of-type(2){display:none}.inquiry-form{padding:25px 23px}.inquiry-heading{margin-bottom:23px}.inquiry-heading h2{font-size:2rem}.inquiry-pair{display:block}.direct-label{max-width:200px;font-size:.75rem}.email-line{gap:0}.email-line>a{font-size:.9375rem}.contact-art{margin-inline:-12%;margin-top:55px}.inquiry-actions{flex-wrap:wrap}.form-hint{flex:1}#inquiry-submit{flex-shrink:0;font-size:.875rem}.inquiry-success{min-height:640px}}
@media(max-width:760px){.contact-layout{display:flex;flex-direction:column;gap:29px;padding-block:34px 42px;position:relative}.contact-intro{width:100%;max-width:none;padding:0}.contact-intro h1{font-size:clamp(2.3rem,7.6vw,2.85rem);line-height:1.08;margin-top:15px;max-width:540px}.contact-intro h1 br:nth-of-type(2){display:none}.contact-intro .gold-stroke{margin-block:20px}.contact-lead{max-width:480px;font-size:1rem;line-height:1.6}.direct-contact{margin-top:20px}.direct-label{font-size:.75rem}.email-line>a{font-size:1rem}.contact-art{position:absolute;bottom:-5px;left:-24px;right:-24px;height:185px;margin:0;opacity:.9;mask-image:linear-gradient(0deg,transparent,#000 16%,#000 85%,transparent);-webkit-mask-image:linear-gradient(0deg,transparent,#000 16%,#000 85%,transparent)}.contact-art img{width:100%;height:100%;object-fit:contain;object-position:center}.inquiry-shell{width:100%;max-width:600px;align-self:center;margin-bottom:165px;flex:auto;border-radius:17px 17px 10px 10px}.inquiry-form{padding:26px 24px}.inquiry-pair{gap:15px}.inquiry-heading{margin-bottom:24px}.inquiry-heading h2{font-size:2.1rem}.inquiry-field{margin-bottom:19px}.inquiry-field input,.inquiry-field select{min-height:48px;font-size:max(16px,1rem)}.inquiry-field textarea{min-height:118px;font-size:max(16px,1rem)}.select-chevron{top:19px}.consent-label{min-height:40px}.privacy-toggle{min-height:38px}.inquiry-actions{margin-top:18px;padding-top:20px}.form-hint{font-size:.75rem}#inquiry-submit{min-height:49px;font-size:.9375rem;padding-inline:18px}.inquiry-success{min-height:430px}.inquiry-success h2{font-size:2.45rem}.contact-page .site-footer{padding-top:25px}.copy-status{font-size:.75rem}}
@media(max-width:430px){.inquiry-pair{display:block}.inquiry-form{padding:25px 21px}.email-line>a{font-size:.9375rem}.contact-intro h1{font-size:2.42rem}.inquiry-actions{gap:12px}.form-hint{max-width:112px}.contact-art{height:170px}.inquiry-shell{margin-bottom:150px}}
@media(max-width:360px){.contact-layout{width:calc(100% - 36px)}.contact-intro h1{font-size:2.22rem}.inquiry-form{padding:23px 18px}.direct-label{font-size:.6875rem}.email-line{gap:0}.email-line>a{font-size:.875rem}#copy-email{width:34px}.inquiry-actions{align-items:stretch;flex-direction:column}.form-hint{max-width:none}.form-hint br{display:none}#inquiry-submit{width:100%}.inquiry-success h2{font-size:2.2rem}}
@media(prefers-reduced-motion:reduce){.contact-page *,.contact-page *::before,.contact-page *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.inquiry-shell,.contact-art,#copy-email{display:none}.contact-layout{display:block}.contact-intro{max-width:none}.contact-intro h1{font-size:28pt}}

/* El formulario conserva su lectura al ampliar el texto. */
.contact-intro h1,.inquiry-success h2{overflow-wrap:break-word}.inquiry-actions,.message-label{flex-wrap:wrap}.contact-art{mask-image:radial-gradient(ellipse 72% 67% at 53% 48%,#000 48%,transparent 96%);-webkit-mask-image:radial-gradient(ellipse 72% 67% at 53% 48%,#000 48%,transparent 96%)}

.contact-intro h1>span,.contact-intro h1>em{display:block}
