:root{color-scheme:dark;--bg:#0b1015;--panel:#111921;--text:#f0f3f6;--muted:#a3afbc;--blue:#79b8ff;--green:#80dfbb;--line:#28323d;--width:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--green);outline-offset:6px}[hidden]{display:none!important}.wrap{max-width:var(--width);width:calc(100% - 96px);margin-inline:auto}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:var(--green);color:var(--bg);padding:12px}.skip:focus{top:12px}.header{position:sticky;top:0;z-index:20;background:#0b1015f2;border-bottom:1px solid var(--line)}.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between}.wordmark{display:inline-flex;align-items:center;gap:5px;font-weight:700;font-size:24px;letter-spacing:-1px}.wordmark>span:first-child{font-weight:400;color:var(--muted)}.brand-dot{width:6px;height:6px;border-radius:50%;background:var(--green);margin:0 0 14px 3px}nav{display:flex;align-items:center;gap:30px;font-size:14px;color:#c5ced8}nav a:hover,.text-link:hover{color:var(--green)}.nav-contact{border:1px solid #526273;padding:9px 18px;border-radius:5px}.nav-contact span{margin-left:16px}.hero{padding-top:84px;display:grid;grid-template-columns:1.35fr 1fr;gap:42px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--green);margin:0 0 24px}.hero h1{font-size:clamp(46px,5.5vw,72px);letter-spacing:-3.5px;line-height:1.07;margin:0;font-weight:700}.hero h1>span{color:var(--blue)}.hero-subtitle{font-size:23px;line-height:1.4;margin:28px 0 22px;letter-spacing:-.4px}.signature{font-size:14px;color:var(--muted)}.actions{display:flex;align-items:center;gap:27px;margin:32px 0 0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 21px;border-radius:5px;font-size:14px;font-weight:700;transition:background .2s}.primary{background:var(--blue);color:#08121c}.primary:hover{background:#a7d0ff}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:14px;font-weight:600}.hero-visual{background:radial-gradient(ellipse at 60% 50%,#17304470,transparent 70%);border:1px solid var(--line);border-radius:9px;align-self:center;padding:23px;min-width:0}.visual-top{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:1.5px}.cube-mount{min-height:310px;display:grid;place-items:center;position:relative;isolation:isolate}.cube-placeholder{text-align:center;padding:35px 12px;width:100%;border:1px dashed #3a5264;border-radius:5px;margin:30px 0;color:#bdc9d6}.placeholder-cross{font-weight:200;font-size:35px;color:var(--green)}.cube-placeholder p{font-size:23px;line-height:1.4;letter-spacing:-.5px}.placeholder-note{font-size:10px;letter-spacing:.6px;color:var(--muted)}.visual-bottom{display:flex;justify-content:space-between;margin:4px 0 0;font-size:12px;color:var(--muted)}.visual-bottom span{color:var(--green)}.hero-footer{grid-column:1/-1;display:flex;justify-content:space-between;margin-top:32px;padding:24px 0 28px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:1.5px;color:var(--muted)}.hero-footer a{letter-spacing:0;font-size:12px}.hero-footer a span{color:var(--green);margin-left:20px}.section{padding-block:80px;border-bottom:1px solid var(--line);scroll-margin-top:0}.section-label{display:flex;align-items:center;gap:22px;color:var(--muted);font-size:10px;letter-spacing:1.7px;margin-bottom:34px}.tiny-line{height:1px;width:48px;background:var(--green)}h2{font-size:40px;line-height:1.2;letter-spacing:-1.8px;margin:0}h3{line-height:1.35}.muted{color:var(--muted)}.about-grid,.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:70px}.prose p{font-size:15px;color:var(--muted);margin:0 0 18px}.prose .lead,.lead{font-size:19px;color:var(--text);line-height:1.6}.principle{border-left:2px solid var(--green);padding:12px 20px;margin-top:28px;font-size:14px;color:#d5dee6}.principle span{color:var(--green);margin-right:10px}.section-heading>p{max-width:320px;color:var(--muted);align-self:end;margin:0;font-size:15px}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:44px}.skills-grid article{border-top:1px solid var(--line);padding:25px 0 0}.skill-index{font-size:11px;color:var(--green)}.skills-grid h3{font-size:19px;margin:19px 0 12px}.skills-grid p{color:var(--muted);font-size:14px;min-height:68px;margin:0}.tags{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:23px 0 0}.tags li{border:1px solid #3b4855;border-radius:4px;padding:4px 10px;font-size:11px;color:#c4d0dc}.project-panel{display:grid;grid-template-columns:1fr 1fr;gap:64px;border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:44px}.project-intro h2{font-size:55px;letter-spacing:-2px}.green-dot{color:var(--green)}.project-intro>p:not(.eyebrow):not(.lead){color:var(--muted);font-size:14px}.project-intro .text-link{color:var(--blue);margin-top:32px}.modules article{padding:24px 0;border-bottom:1px solid var(--line)}.modules article:first-child{padding-top:0}.module-number{font-size:10px;letter-spacing:1.5px;color:var(--green)}.modules h3{font-size:24px;letter-spacing:-.5px;margin:10px 0}.modules p{color:var(--muted);font-size:14px;margin:0}.module-topics{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:18px;font-size:11px;color:#c7d2dc}.module-topics span::before{content:'·';color:var(--blue);margin-right:8px}.modules .project-note{font-size:11px;margin-top:20px}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px}.contact h2{font-size:53px}.contact h2 span{color:var(--green)}.contact-grid>div>p:not(.eyebrow){max-width:440px;color:var(--muted);font-size:15px}.contact-panel{border-left:1px solid var(--line);padding-left:40px;align-self:center;display:flex;flex-direction:column;align-items:flex-start;gap:14px}.contact-panel h3{font-size:22px;margin:0}.contact-panel p{margin:0}.contact-panel .contact-note{font-size:12px!important}.contact-panel .button{margin-top:8px}.footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:32px}.footer .wordmark{font-size:20px}.footer p{font-size:11px;color:var(--muted)}.footer .text-link{font-size:11px}.menu-toggle{color:var(--text);background:transparent;border:1px solid var(--line);border-radius:4px;padding:6px 12px;font-size:13px}@media(min-width:761px){.menu-toggle{display:none}}@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.hero{gap:24px}.hero h1{font-size:56px}.actions{gap:20px;flex-wrap:wrap}.about-grid,.section-heading{gap:38px}.project-panel{gap:32px;padding:30px}.contact-grid{gap:35px}.contact h2{font-size:43px}}@media(max-width:760px){html{scroll-padding-top:80px}.wrap{width:calc(100% - 40px)}.header-inner{height:72px;flex-wrap:wrap}.wordmark{font-size:23px}nav{width:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--bg);padding:10px 0 20px}nav a{padding:12px 0}nav .nav-contact{margin-top:8px;padding:10px 14px}body.menu-open .header{border-bottom-color:var(--green)}.header:has(nav:not([hidden])) .header-inner{height:auto;min-height:72px;padding-block:16px}.hero{grid-template-columns:1fr;padding-top:48px;gap:34px}.hero h1{font-size:clamp(40px,10.6vw,65px);letter-spacing:-2.4px}.hero-subtitle{font-size:21px}.signature{font-size:13px}.actions{margin-top:25px;gap:22px}.hero-visual{width:100%;padding:18px}.cube-mount{min-height:230px}.cube-placeholder{margin-block:20px;padding-block:18px}.cube-placeholder p{font-size:21px}.hero-footer{margin:0;gap:18px;align-items:center}.hero-footer>span{font-size:9px;max-width:160px}.hero-footer a{font-size:11px;white-space:nowrap}.hero-footer a span{margin-left:6px}.section{padding-block:52px}.section-label{margin-bottom:26px}.about-grid,.section-heading,.project-panel,.contact-grid{grid-template-columns:1fr;gap:28px}h2{font-size:32px;letter-spacing:-1.2px}.skills-grid{grid-template-columns:1fr;gap:28px;margin-top:32px}.skills-grid p{min-height:0;max-width:440px}.skills-grid h3{margin-top:12px}.tags{margin-top:16px}.project-panel{padding:26px 22px}.project-intro h2{font-size:45px}.modules{margin-top:12px}.contact .eyebrow{line-height:1.8;font-size:10px}.contact h2{font-size:clamp(34px,9vw,46px)}.contact-panel{padding:25px 0 0;border-left:0;border-top:1px solid var(--line)}.footer{flex-wrap:wrap;gap:12px}.footer p{order:3;width:100%;margin:0}.footer .text-link{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Contacto por correo: dirección visible, acción de copia y enlace mailto. */
.email-contact{display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:100%;min-width:0}
.email-label{font-size:12px;color:var(--muted)}
.email-address{font-size:15px;font-weight:600;overflow-wrap:anywhere;user-select:text}
.email-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:3px}
.email-copy{border:1px solid #526273;border-radius:5px;background:transparent;color:var(--text);padding:9px 13px;cursor:pointer;font-size:13px;font-weight:600}
.email-copy:hover{border-color:var(--green);color:var(--green)}
.email-feedback{min-height:1.2em;color:var(--green);font-size:12px}

/* Ajustes de publicación: textos largos, legibilidad y foco */
.email-contact{max-width:100%;min-width:0}.email-address{overflow-wrap:anywhere;word-break:normal}.contact-panel{min-width:0}.email-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}noscript{display:block;padding:14px 20px;margin:20px auto;max-width:1160px;border:1px solid var(--line);border-radius:5px;color:var(--muted)}
