/* La Casa del Plotter — brand-first bilingual landing page.
   Does not alter PHP lead processing, dialog JavaScript or admin interface. */
:root{--ink:#152d44;--navy:#10273f;--navy2:#1a3854;--accent:#c8a376;--gold:#d9b98b;--muted:#637383;--line:#e3e8ed;--paper:#fcfcfa;--shell:1300px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.55 Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}
a{color:inherit}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #81b7e2;outline-offset:3px}
.skip-link{position:absolute;top:-100px;left:12px;z-index:50;background:white;padding:12px}.skip-link:focus{top:12px}
.site-wrap{max-width:1500px;width:100%;padding-inline:clamp(20px,4.5vw,76px);min-height:100svh;margin:auto;display:flex;flex-direction:column}
.site-header{height:90px;min-height:90px;flex:none;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #e6e9ea}
.brand{display:flex;align-items:center;gap:14px;min-width:0}.brand-symbol{display:flex;justify-content:center;align-items:center;height:54px;width:54px;flex:0 0 54px;background:var(--navy);color:#fff;border-radius:10px;overflow:hidden}.brand-symbol svg{width:36px;height:36px}.brand-symbol .brand-image{width:100%;height:100%;object-fit:contain;background:white}
.brand-words{display:flex;flex-direction:column;gap:3px;min-width:0}.brand-title{font-weight:860;font-size:16px;letter-spacing:.095em;white-space:nowrap}.brand-caption{font-size:9px;letter-spacing:.11em;font-weight:750;color:#82909a;text-transform:uppercase}
.header-actions{display:flex;gap:22px;align-items:center}.b2b-pill{font-size:9px;font-weight:800;letter-spacing:.12em;white-space:nowrap;color:#57748b;display:inline-flex;gap:9px;align-items:center}.status-light{width:7px;height:7px;background:var(--accent);border-radius:99px;box-shadow:0 0 0 4px #e9ddca;display:block}
.lang-switch{display:flex;gap:3px;border:1px solid #e0e5e8;border-radius:50px;padding:4px;background:#f4f6f6}.lang-switch a{text-decoration:none;color:#788693;font-size:11px;font-weight:850;padding:8px 11px;min-width:35px;text-align:center;line-height:1;border-radius:50px}.lang-switch a.active{color:white;background:var(--navy);box-shadow:0 2px 7px #18344a20}
.landing-main{flex:1;display:flex;align-items:center;padding:28px 0}
.reveal-hero{width:100%;display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);gap:clamp(30px,5vw,80px);align-items:center}
.hero-content{padding:28px 0 32px;min-width:0}.eyebrow{display:flex;gap:12px;align-items:center;color:#8c7559;font-size:10px;font-weight:850;letter-spacing:.19em}.eyebrow-line{width:24px;height:2px;background:var(--accent);flex:none}
h1{font-size:clamp(50px,5.35vw,80px);line-height:1.055;letter-spacing:-.062em;font-weight:830;margin:24px 0 23px;max-width:760px}h1 span{display:block}.h1-accent{color:#487293}
.hero-lead{font-size:clamp(17px,1.4vw,21px);line-height:1.6;letter-spacing:-.015em;font-weight:480;max-width:550px;margin:0 0 13px;color:#415567}.hero-detail{font-size:13px;line-height:1.65;max-width:500px;margin:0;color:#7a8794}
.hero-actions{margin-top:31px}.button-primary{display:inline-flex;align-items:center;gap:30px;justify-content:space-between;border:1px solid var(--navy);background:var(--navy);color:white;border-radius:7px;padding:16px 20px;font-size:13px;font-weight:800;letter-spacing:.01em;transition:transform .18s,background .18s}.button-primary svg{width:17px;height:17px;flex:none}.button-primary:hover{background:#244a6c;transform:translateY(-1px)}
.hero-chips{margin-top:45px;padding-top:18px;border-top:1px solid #e2e5e6;display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:#7a8994}.hero-chips span{font-size:10px;font-weight:780;letter-spacing:.08em;text-transform:uppercase}.hero-chips i{width:3px;height:3px;flex:none;background:#ba986e;border-radius:50%}
.door-panel{position:relative;overflow:hidden;isolation:isolate;width:100%;min-height:470px;display:flex;flex-direction:column;border-radius:15px;background:radial-gradient(ellipse 95% 65% at 60% 40%,#254b67 0%,#183750 47%,#0f263d 100%);color:#fff;box-shadow:0 26px 60px #10273f17;padding:26px 28px 23px}
.door-panel:before{content:"";position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(90deg,transparent,transparent 56px,#ffffff06 57px,#ffffff06 58px);opacity:.4}.door-panel:after{content:"";position:absolute;right:-74px;top:-74px;width:270px;height:270px;border-radius:50%;border:1px solid #e4c6931f;z-index:-1}
.panel-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-overline{font-size:9px;font-weight:800;letter-spacing:.17em;color:#b8d0dc}.panel-star{font-size:24px;color:var(--gold);line-height:1}
.door-art{position:relative;flex:1;min-height:225px;display:flex;justify-content:center;align-items:end;margin:8px 0 3px}.door-aura{position:absolute;width:290px;height:245px;left:50%;top:12px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse at center,#e6b57526 0%,#d8ad7d0e 48%,transparent 73%)}
.door-outline{position:relative;height:193px;width:148px;border:2px solid #d6b583a8;border-bottom:0;border-radius:80px 80px 0 0;box-shadow:0 0 34px #d3a36322, inset 0 0 22px #00000026;padding:10px 9px 0;z-index:1}
.door-inside{width:100%;height:100%;border:1px solid #d2ad793b;border-radius:66px 66px 0 0;position:relative;overflow:hidden;background:linear-gradient(115deg,#f8d8a63a -45%,#1a4057 36%,#102d43 78%)}
.door-inside:before{content:"";position:absolute;inset:18px 13px 0;border:1px solid #e1b98621;border-bottom:0;border-radius:52px 52px 0 0}.door-vertical{position:absolute;right:0;top:0;bottom:0;width:2px;background:#d9b78255}.door-knob{position:absolute;right:16px;top:59%;width:5px;height:5px;border-radius:50%;background:#e5c596;box-shadow:0 0 15px #e5c5968c}.door-floor{position:absolute;width:260px;height:1px;background:linear-gradient(90deg,transparent,#d0ad7d78,transparent);bottom:0}
.door-copy{text-align:center;position:relative;margin:19px auto 22px;max-width:360px}.door-copy h2{font-weight:710;font-size:clamp(23px,2.1vw,30px);letter-spacing:-.035em;line-height:1.14;margin:0 0 10px}.door-copy p{font-size:12px;line-height:1.5;color:#b9cfdd;margin:0 auto;max-width:315px}
.door-bottom{border-top:1px solid #b7d1df2b;padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#d4b386}.door-bottom span:first-child{font-size:9px;letter-spacing:.13em;font-weight:720}.door-bottom span:last-child{font-size:21px;line-height:1}
.footer{border-top:1px solid #e6e9ea;min-height:57px;flex:none;display:flex;justify-content:space-between;align-items:center;gap:16px;color:#88939e;font-size:10px;line-height:1.5;padding-block:12px}.admin-entry{color:#647f92;text-decoration:none}.admin-entry:hover{text-decoration:underline}
/* Contact modal: same PHP fields, CSRF, POST endpoint and external site.js. */
.inquiry-dialog{border:0;padding:0;width:min(640px,calc(100vw - 32px));max-height:min(92dvh,790px);overflow-y:auto;overscroll-behavior:contain;background:white;color:var(--ink);border-radius:15px;box-shadow:0 30px 95px #04142380}.inquiry-dialog::backdrop{background:#081c30ae;backdrop-filter:blur(4px)}.dialog-inner{position:relative;padding:clamp(22px,4vw,38px)}.dialog-close{position:absolute;right:20px;top:20px;border:1px solid #dde5eb;background:white;color:#405668;border-radius:50%;width:36px;height:36px;display:grid;place-items:center}.dialog-close svg{width:17px;height:17px}.dialog-close:hover{background:#f1f5f7}
.dialog-kicker{color:#61849f;letter-spacing:.13em;font-size:10px;font-weight:850;margin:0 40px 10px 0}.inquiry-dialog h2{font-size:clamp(24px,3vw,34px);line-height:1.13;letter-spacing:-.042em;margin:0 40px 12px 0}.dialog-description{font-size:12px;line-height:1.64;color:#6a7b89;max-width:525px;margin:0 0 22px}.inquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.inquiry-form label{font-size:11px;font-weight:760;line-height:1.3;color:#395169;display:flex;flex-direction:column;gap:7px}.inquiry-form .form-full{grid-column:span 2}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;border:1px solid #d9e3eb;border-radius:6px;background:#fbfcfd;color:#21394f;padding:11px 12px;font-size:12px;outline:none}.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus{border-color:#5288b6;box-shadow:0 0 0 2px #c4e1f16b}.inquiry-form textarea{min-height:77px;resize:vertical}.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{color:#99a7b3}.inquiry-form .form-submit{grid-column:span 2;justify-content:center;gap:12px;margin-top:3px}.inquiry-form .check-field{display:flex;align-items:flex-start;flex-direction:row;gap:9px;font-weight:500;line-height:1.45}.inquiry-form .check-field input{width:15px;height:15px;flex:0 0 15px;margin:1px 0 0;accent-color:#28567b}.dialog-privacy{font-size:10px;color:#85949e;line-height:1.55;margin:13px 0 0}.form-status{font-size:11px;padding:11px 13px;border-radius:7px;margin:0 0 15px;line-height:1.4}.form-status.success{background:#eef7f0;border:1px solid #c2dfca;color:#27663d}.form-status.error{background:#fff4f1;border:1px solid #f4d0c8;color:#9a4b39}.form-status.notice{background:#f5f7f9;border:1px solid #e2e8ee;color:#58697a}.hp-field{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.dialog-open{overflow:hidden}
@media(max-height:785px) and (min-width:950px){.site-header{height:76px;min-height:76px}.landing-main{padding:14px 0}.hero-content{padding:8px 0}.hero-content h1{font-size:clamp(49px,4.8vw,68px);margin:15px 0 15px}.hero-lead{font-size:17px;line-height:1.53}.hero-actions{margin-top:21px}.hero-chips{margin-top:26px}.door-panel{min-height:420px;padding-top:23px}.door-art{min-height:189px}.door-outline{height:170px;width:133px}.door-copy{margin-top:13px;margin-bottom:16px}.footer{min-height:46px}}
@media(max-width:1000px){.reveal-hero{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:28px}h1{font-size:clamp(45px,5.2vw,60px)}.brand-caption{font-size:8px}.door-panel{min-height:420px}.door-art{min-height:190px}}
@media(max-width:800px){.site-wrap{padding-inline:clamp(20px,5vw,44px)}.landing-main{padding:30px 0}.reveal-hero{grid-template-columns:1fr;gap:22px}.hero-content{padding:6px 0 0}.hero-content h1{font-size:clamp(47px,8.4vw,70px);margin:20px 0}.hero-chips{margin-top:25px}.door-panel{min-height:385px;max-width:560px;margin:auto}.door-art{min-height:170px}.door-outline{height:155px;width:126px}.door-copy{margin:16px auto}.footer{flex-wrap:wrap}}
@media(max-width:560px){.site-header{height:76px;min-height:76px;gap:12px}.brand{gap:10px}.brand-symbol{width:43px;height:43px;flex-basis:43px}.brand-symbol svg{width:29px;height:29px}.brand-title{font-size:12px;letter-spacing:.06em}.brand-caption{font-size:7px;letter-spacing:.025em}.header-actions{gap:9px}.b2b-pill{display:none}.lang-switch a{padding:7px 9px;min-width:30px}.hero-content h1{font-size:clamp(44px,10.3vw,57px)}.eyebrow{font-size:9px}.hero-lead{font-size:16px}.hero-detail{font-size:12px}.door-panel{min-height:355px;padding:19px}.door-art{min-height:160px}.door-outline{height:150px;width:117px}.door-copy h2{font-size:23px}.door-copy p{font-size:11px}.hero-chips{gap:9px}.hero-chips span{font-size:9px}.footer span:nth-child(2){display:none}.inquiry-form{grid-template-columns:1fr}.inquiry-form .form-full,.inquiry-form .form-submit{grid-column:span 1}.dialog-inner{padding:25px 20px}}
@media(max-width:360px){.site-wrap{padding-inline:15px}.brand-title{font-size:11px}.brand-caption{font-size:6.8px}.hero-content h1{font-size:41px}.hero-chips{gap:7px}.door-panel{padding:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* La Casa del Plotter — ocultar tarjeta de la puerta.
   Conserva portada, idiomas y formulario sin modificar PHP. */
.door-panel {
  display: none !important;
}
.reveal-hero {
  display: block;
  width: 100%;
  max-width: 820px;
  margin-inline: auto;
}
.hero-content {
  width: 100%;
  max-width: 790px;
  margin-inline: auto;
}
