/* Presentation only: form fields, scripts, validation and delivery remain unchanged. */
body .page-intro h1{font-size:clamp(44px,3.6vw,56px);line-height:1.2;letter-spacing:-.035em;max-width:640px}
body main h2,body #review-title{font-size:clamp(24px,2.1vw,32px);line-height:1.25;letter-spacing:-.025em}
body footer .footer-title{display:block;font-size:clamp(23px,2.4vw,32px);line-height:1.3;letter-spacing:-.025em;max-width:26ch;margin:15px 0}
body footer .footer-description{font-size:14px;line-height:1.7;max-width:52ch;color:#b6beb1}
body footer .footer-top{padding-block:36px}
body .page-intro{padding-top:145px;padding-bottom:45px}body .intro-copy{font-size:16px;line-height:1.8;max-width:54ch}body .page-intro em,body .contact-aside em{font-style:normal}
@media(max-width:760px){body .page-intro h1{font-size:30px}}@media(max-width:600px){body .page-intro{padding-top:120px}body .contact-aside h2{font-size:25px}}
/* Same public-studio dock as the React pages; no legacy menu or duplicate nav. */
body[data-jac-page="contacto"]{--contact-gutter:clamp(22px,6vw,96px);--contact-clearance:calc(108px + env(safe-area-inset-bottom,0px));background:#151714;color:#e8e4dc}
body[data-jac-page="contacto"] .jc-dock{position:fixed;inset:auto auto calc(14px + env(safe-area-inset-bottom,0px)) 50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);height:auto;box-sizing:border-box;padding:8px;background:#171b16f5;border:1px solid #91978666;border-radius:18px;display:flex;gap:12px;align-items:center;color:#e8e4dc;backdrop-filter:blur(20px);box-shadow:0 8px 32px #0004;z-index:100}
body[data-jac-page="contacto"] .jc-dock-logo{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:44px;padding:5px 12px;font-size:25px;font-weight:600;letter-spacing:-2px;line-height:1;border-right:1px solid #ffffff26;text-decoration:none;color:inherit}
body[data-jac-page="contacto"] .jc-dock-logo span{font-size:9px;letter-spacing:.6px;margin-top:4px}
body[data-jac-page="contacto"] .jc-dock nav{position:static;display:flex;flex-direction:row;align-items:center;gap:4px;min-width:0;width:auto;padding:0;background:transparent;border:0}
body[data-jac-page="contacto"] .jc-dock nav a{display:flex;align-items:center;justify-content:center;width:auto;min-height:44px;padding:10px 17px;line-height:1.4;border-radius:10px;font-size:13px;white-space:nowrap;color:inherit;text-decoration:none;transition:background .2s,color .2s}
body[data-jac-page="contacto"] .jc-dock nav a:hover{background:#ffffff14;color:#e3f0c3}
body[data-jac-page="contacto"] .jc-dock nav .jc-dock-contact{margin-left:8px;background:#d3ee94;color:#20251a;box-shadow:inset 0 0 0 2px #fff9}
body[data-jac-page="contacto"] .jc-dock a:focus-visible{outline:2px solid #e4f5ba;outline-offset:3px}
body[data-jac-page="contacto"] .page-intro{padding:64px var(--contact-gutter) 40px;min-height:0}
body[data-jac-page="contacto"] .page-intro h1{font-size:clamp(44px,3.6vw,56px);max-width:680px;line-height:1.2}@media(max-width:760px){body[data-jac-page="contacto"] .page-intro h1{font-size:30px}}
body[data-jac-page="contacto"] .consultation-layout{padding-inline:var(--contact-gutter);gap:clamp(28px,5vw,80px)}
body[data-jac-page="contacto"] .contact-aside h2{font-size:clamp(23px,2.3vw,30px);line-height:1.3;max-width:18ch}
body[data-jac-page="contacto"] footer{padding-bottom:var(--contact-clearance)}
body[data-jac-page="contacto"] main :is(a,button,input,select,textarea,[tabindex]){scroll-margin-block-end:var(--contact-clearance)}
@media(max-width:600px){
 body[data-jac-page="contacto"] .jc-dock{width:calc(100% - 24px);max-width:420px;gap:4px;padding:5px;border-radius:14px;bottom:calc(8px + env(safe-area-inset-bottom,0px))}
 body[data-jac-page="contacto"] .jc-dock-logo{font-size:22px;padding:4px 8px}
 body[data-jac-page="contacto"] .jc-dock nav{flex:1;gap:0}
 body[data-jac-page="contacto"] .jc-dock nav a{flex:1;font-size:12px;padding:10px 6px}
 body[data-jac-page="contacto"] .jc-dock nav .jc-dock-contact{margin-left:3px}
 body[data-jac-page="contacto"] .page-intro{padding-top:42px;padding-bottom:28px}
 body[data-jac-page="contacto"] .consultation-layout{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){body[data-jac-page="contacto"] .jc-dock nav a{transition:none}}
body[data-jac-page="contacto"] .jc-dock nav .jc-language{flex:0 0 auto;padding-inline:10px;margin-left:4px;border-left:1px solid #ffffff26;border-radius:0;font-size:12px;letter-spacing:.08em}
@media(max-width:380px){body[data-jac-page="contacto"] .jc-dock nav a{padding-inline:3px;font-size:12px}body[data-jac-page="contacto"] .jc-dock-logo{padding-inline:5px}body[data-jac-page="contacto"] .jc-dock nav .jc-language{padding-inline:0;margin-left:2px}}
/* Touch: 44 px targets on phones; negative margins give the added height back so the rhythm stays put. */
@media(max-width:760px){
 body[data-jac-page="contacto"] .jc-dock nav .jc-language{min-width:44px}
 body[data-jac-page="contacto"] .consultation-layout .contact-after summary{min-height:44px;margin-block:-7px;align-items:center}
 body[data-jac-page="contacto"] .footer-logo{display:inline-flex;align-items:center;min-height:44px;margin-block:-4px}
 body[data-jac-page="contacto"] .footer-bottom>div{gap:0}
 body[data-jac-page="contacto"] .footer-bottom>div a{display:flex;align-items:center;min-height:44px}
 body[data-jac-page="contacto"] .footer-bottom small a{display:inline-flex;align-items:center;min-width:44px;min-height:44px}
}
/* Very narrow screens: same compact dock as the React pages, so the language link keeps its 44 px. */
@media(max-width:359px){
 body[data-jac-page="contacto"] .jc-dock{width:calc(100% - 8px);gap:0;padding:3px}
 body[data-jac-page="contacto"] .jc-dock-logo{min-width:36px;min-height:40px;padding-inline:2px;font-size:18px;letter-spacing:-1.5px}
 body[data-jac-page="contacto"] .jc-dock-logo span{display:none}
 body[data-jac-page="contacto"] .jc-dock nav .jc-dock-contact{margin-left:2px}
 body[data-jac-page="contacto"] .jc-dock nav .jc-language{letter-spacing:0}
}

/* Paleta JAC (19/10/2026): mismo fondo, tinta y lavanda que las páginas React; sin cobre ni lima. */
body[data-jac-page="contacto"]{--paper:#11151e;--ink:#f3f0e9;--muted:#aeb4c2;--line:#ffffff1f;--text-soft:#c4c9d5;--editorial-line:#ffffff1f;--acid:#b4bdd4;--coral:#b4bdd4;--jac-coral:#b4bdd4;--contact-accent:#b4bdd4;--contact-ink:#f3f0e9;--contact-muted:#aeb4c2;--contact-line:#ffffff26;background:#11151e;color:#f3f0e9}
body[data-jac-page="contacto"] .page-intro{background:radial-gradient(90% 120% at 82% 0%,#202838 0%,#11151e 62%);border-bottom:1px solid #ffffff1a}
body[data-jac-page="contacto"] footer .footer-description{color:#aeb4c2}
body[data-jac-page="contacto"] .jc-dock{background:#11151ef2;border-color:#ffffff1f;color:#f3f0e9}
body[data-jac-page="contacto"] .jc-dock nav a:hover{background:#ffffff14;color:#fff}
body[data-jac-page="contacto"] .jc-dock nav .jc-dock-contact{background:#b4bdd4;color:#171e32;box-shadow:none}
body[data-jac-page="contacto"] .jc-dock a:focus-visible,body[data-jac-page="contacto"] main :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid #a6b2d2;outline-offset:3px}
body[data-jac-page="contacto"] ::selection{background:#b4bdd4;color:#171e32}
body[data-jac-page="contacto"] .page-intro::after{background:#b4bdd4}
body[data-jac-page="contacto"] main p.eyebrow{color:#b4bdd4}
body[data-jac-page="contacto"] main li::before{background:#b4bdd4}
body[data-jac-page="contacto"] .consultation-layout .consultation-panel{--contact-accent:#b4bdd4;--contact-ink:#f3f0e9;--contact-muted:#aeb4c2;background:linear-gradient(155deg,#1a2030,#121620 65%)}
body[data-jac-page="contacto"] .consultation-panel button:focus-visible,body[data-jac-page="contacto"] .consultation-layout summary:focus-visible{outline-color:#a6b2d2}
/* Redes del estudio en el pie. */
.footer-social{display:flex;flex-wrap:wrap;gap:4px 20px;margin-top:14px}
.footer-social a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:inherit;text-decoration:underline;text-underline-offset:4px}
