*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:'Montserrat',sans-serif;background:#0f0f0f;color:#fff}.container{width:100%;max-width:1400px;margin:auto;padding:0 clamp(16px,4vw,40px)}section{padding:100px 0;break-inside:avoid}h3{margin-bottom:40px;letter-spacing:4px;font-size:22px;position:relative}h3:after{content:"";width:40px;height:2px;background:#f59c2a;position:absolute;bottom:-10px;left:0}.hero{min-height:100vh;background:url("img/01_PORTADA_v3.JPG") center/cover no-repeat;display:flex;align-items:center;position:relative;overflow:hidden}.overlay,.about-overlay{position:absolute;inset:0;background:rgba(0,0,0,.55)}.hero-content,.about-content{position:relative;z-index:2}.hero-content{max-width:800px}.hero h1{font-size:60px}.hero h2{margin:8px 0 20px}.hero p,.about p{line-height:1.7;opacity:.9}.hero-links{display:flex;gap:16px;margin-top:24px}.hero-links a,.btn-primary,.btn-secondary{padding:11px 18px;border-radius:8px;text-decoration:none;transition:.3s}.hero-links a,.btn-primary{background:#f59c2a;color:#000}.btn-secondary{border:1px solid #f59c2a;color:#f59c2a}.hero-links a:hover,.btn-primary:hover,.btn-secondary:hover{transform:translateY(-2px)}.about{position:relative;height:100vh;display:flex;align-items:center;overflow:hidden}.about-video{position:absolute;width:100%;height:100%;object-fit:cover}.about-overlay{background:rgba(0,0,0,.7)}.about-content{max-width:700px}.flex{display:flex;gap:80px}.col{flex:1}.timeline{position:relative;padding-left:40px}.timeline:before{content:"";position:absolute;left:10px;top:0;width:2px;height:100%;background:rgba(245,156,42,.45)}.timeline-item{position:relative;margin-bottom:55px;opacity:0;transform:translateY(25px);transition:.6s}.timeline-item.visible{opacity:1;transform:none}.timeline-dot{position:absolute;left:-35px;top:7px;width:12px;height:12px;border-radius:50%;background:#f59c2a;box-shadow:0 0 12px rgba(245,156,42,.6)}.date{font-size:11px;opacity:.55}.timeline-content h4{font-size:18px;margin:6px 0}.role,.project-client{display:block;color:#f59c2a;font-size:12px;font-weight:600;margin-bottom:12px}.timeline-content p{font-size:13px;line-height:1.6;opacity:.7}.project-highlight{background:#070707}.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin-top:60px}.project-card{display:grid;grid-template-columns:42% 58%;min-height:260px;background:#111;border:1px solid rgba(255,255,255,.05);border-radius:16px;overflow:hidden;transition:transform .35s,border-color .35s,box-shadow .35s,background .35s}.project-card:hover{transform:translateY(-6px);border-color:rgba(245,156,42,.4);box-shadow:0 18px 45px rgba(0,0,0,.35);background:rgba(245,156,42,.045)}.project-thumb{min-height:260px;overflow:hidden;background:#0b0b0b;display:flex;align-items:center;justify-content:center}.project-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:.5s}.logo-thumb img{object-fit:contain;padding:28px}.project-card:hover .project-thumb img{transform:scale(1.04);filter:brightness(1.05)}.project-info{padding:32px;display:flex;flex-direction:column;justify-content:center}.project-info h4{font-size:21px;margin-bottom:6px}.project-client{text-transform:uppercase;letter-spacing:1px;margin-bottom:16px}.project-info p{font-size:13px;line-height:1.6;opacity:.7;margin-bottom:22px}.project-actions{display:flex;flex-wrap:wrap;gap:10px}.project-actions a{font-size:13px}.disabled{opacity:.55}.services{background:#0a0a0a}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.service-card,.cert-card,.contact-card,.map-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);padding:30px;border-radius:14px;transition:.35s}.service-card:hover,.cert-card:hover,.contact-card:hover,.map-card:hover{transform:translateY(-6px);background:rgba(245,156,42,.07);border-color:rgba(245,156,42,.3)}.service-card h4{margin-bottom:15px}.service-card p{font-size:14px;line-height:1.6;opacity:.8;margin-bottom:20px}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags span{font-size:12px;padding:6px 10px;background:rgba(245,156,42,.1);border-radius:20px}.clients{overflow:hidden}.clients-wrapper{overflow:hidden}.clients-track{display:flex;gap:70px;align-items:center;width:max-content;animation:scrollClients 25s linear infinite}.clients-track img{height:45px;max-width:150px;object-fit:contain}@keyframes scrollClients{to{transform:translateX(-50%)}}.certificados{background:radial-gradient(circle at top,rgba(245,156,42,.08),transparent 60%)}.cert-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.cert-card{display:flex;align-items:center;gap:20px}.cert-icon{font-size:28px}.cert-card p{font-size:14px;opacity:.7}.cert-badge{margin-left:auto;font-size:12px;padding:6px 10px;border-radius:20px;background:rgba(245,156,42,.2);color:#f59c2a}.contact-pro{text-align:center;background:linear-gradient(to top,#050505,#0a0a0a)}.contact-sub{opacity:.7;margin:10px 0 45px}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-bottom:45px}.contact-card{color:#fff;text-decoration:none}.contact-card p{font-size:14px;opacity:.7;margin-top:8px}.map-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;margin:40px 0 55px}.map-card{text-align:left;padding:20px}.map-card h4{margin-bottom:15px}.map-link{display:block;overflow:hidden;border-radius:10px}.map-link iframe{width:100%;height:200px;border:0;pointer-events:none}.map-static{display:none;width:100%}.contact-cta{display:flex;justify-content:center}.floating-contact{position:fixed;right:30px;bottom:30px;background:#f59c2a;color:#000;padding:14px 20px;border-radius:30px;text-decoration:none;font-weight:600;z-index:99;box-shadow:0 10px 25px rgba(0,0,0,.4)}
@media(max-width:1024px){.projects-grid{gap:25px}.project-card{grid-template-columns:1fr}.project-thumb{height:220px;min-height:220px}.services-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){section{padding:70px 0}.hero h1{font-size:34px}.about{height:auto;min-height:80vh}.flex{flex-direction:column;gap:30px}.projects-grid,.services-grid,.cert-grid,.contact-grid,.map-grid{grid-template-columns:1fr}.project-thumb{height:190px;min-height:190px}.project-info{padding:22px}.project-actions a{width:100%;text-align:center}.floating-contact{right:18px;bottom:18px;font-size:12px}.clients-track{gap:40px}}


@page{size:A4 landscape;margin:0}
@media print{
*{animation:none!important;transition:none!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
html,body{width:297mm;margin:0!important;padding:0!important;background:#0f0f0f!important}
body{overflow:visible!important}.floating-contact{display:none!important}
.container{max-width:none!important;width:100%!important;padding:0 27mm!important}

/* Hojas independientes */
.hero,.about,.experience,.project-highlight,.certificados,.contact-pro{
 width:297mm!important;height:210mm!important;min-height:210mm!important;max-height:210mm!important;
 margin:0!important;page-break-before:always;break-before:page;page-break-after:always;break-after:page;
 page-break-inside:avoid!important;break-inside:avoid-page!important;overflow:hidden!important}
.hero{page-break-before:auto;break-before:auto}

/* 1 · PORTADA */
.hero{padding:0!important}
.hero .container{height:210mm!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
.hero h1{font-size:44px!important}.hero h2{font-size:19px!important}
.hero p{font-size:13px!important;line-height:1.65!important;max-width:220mm!important}

/* 2 · SOBRE MÍ */
.about{padding:0!important}
.about .container{height:210mm!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
.about-content{max-width:235mm!important}.about p{font-size:13px!important;line-height:1.65!important}

/* 3 · EXPERIENCIA + EDUCACIÓN */
.experience{padding:18mm 0 8mm!important}
.experience .flex{gap:20mm!important}
.experience h3{margin-bottom:9mm!important;font-size:18px!important}
.experience .timeline{padding-left:28px!important}
.experience .timeline-item{margin-bottom:7mm!important;opacity:1!important;transform:none!important;break-inside:avoid!important}
.experience .timeline-content h4{font-size:14px!important;margin:2px 0!important}
.experience .role{font-size:9px!important;margin-bottom:5px!important}
.experience .date{font-size:8px!important}
.experience .timeline-content p{font-size:9px!important;line-height:1.35!important}
.experience .timeline-dot{width:9px!important;height:9px!important}

/* 4 · TODOS LOS PROYECTOS */
.project-highlight{padding:12mm 0 7mm!important}
.project-highlight h3{font-size:18px!important;margin-bottom:7mm!important}
.projects-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:3.5mm!important;margin-top:0!important}
.project-card{display:grid!important;grid-template-columns:36% 64%!important;height:38mm!important;min-height:0!important;border-radius:8px!important;transform:none!important;box-shadow:none!important;break-inside:avoid!important}
.project-thumb{height:38mm!important;min-height:38mm!important}.logo-thumb img{padding:7mm!important}
.project-info{padding:3.5mm!important}.project-info h4{font-size:12px!important;margin-bottom:1px!important}
.project-client{font-size:7px!important;margin-bottom:3px!important}.project-info p{font-size:7.5px!important;line-height:1.3!important;margin-bottom:4px!important}
.project-actions{gap:3px!important}.project-actions a{font-size:7px!important;padding:4px 7px!important;border-radius:4px!important}

/* 5 · QUÉ PUEDO APORTAR + CLIENTES */
.services{width:297mm!important;height:145mm!important;min-height:145mm!important;max-height:145mm!important;padding:14mm 0 0!important;margin:0!important;page-break-before:always!important;break-before:page!important;page-break-after:auto!important;break-after:auto!important;overflow:hidden!important}
.services h3{font-size:18px!important;margin-bottom:7mm!important}
.services-grid{grid-template-columns:repeat(3,1fr)!important;gap:5mm!important}
.service-card{padding:5mm!important;min-height:72mm!important}.service-card h4{font-size:12px!important;margin-bottom:3mm!important}
.service-card p{font-size:9px!important;line-height:1.4!important;margin-bottom:3mm!important}.tags{gap:3px!important}.tags span{font-size:7px!important;padding:3px 6px!important}
.clients{display:block!important;width:297mm!important;height:65mm!important;min-height:65mm!important;max-height:65mm!important;padding:3mm 0 7mm!important;margin:0!important;page-break-before:auto!important;break-before:auto!important;page-break-after:always!important;break-after:page!important;overflow:hidden!important}
.clients h3{font-size:15px!important;margin-bottom:5mm!important}
.clients-track{animation:none!important;transform:none!important;width:100%!important;display:grid!important;grid-template-columns:repeat(6,1fr)!important;gap:4mm!important}
.clients-wrapper{overflow:visible!important}.clients-track img{height:8mm!important;max-width:27mm!important;margin:auto!important}

/* 6 · CERTIFICADOS */
.certificados{padding:18mm 0!important}.certificados h3{font-size:18px!important;margin-bottom:9mm!important}
.cert-grid{grid-template-columns:repeat(2,1fr)!important;gap:5mm!important}.cert-card{padding:6mm!important;min-height:27mm!important}
.cert-card h4{font-size:12px!important}.cert-card p{font-size:9px!important}.cert-icon{font-size:18px!important}.cert-badge{font-size:7px!important}

/* 7 · CONTACTO */
.contact-pro{padding:13mm 0 6mm!important}.contact-pro h2{font-size:21px!important}
.contact-sub{font-size:10px!important;margin:2mm 0 6mm!important}.contact-grid{grid-template-columns:repeat(3,1fr)!important;gap:4mm!important;margin-bottom:6mm!important}
.contact-card{padding:4mm!important}.contact-card h4{font-size:11px!important}.contact-card p{font-size:8px!important}
.map-grid{grid-template-columns:1fr 1fr!important;gap:5mm!important;margin:5mm 0 6mm!important}.map-card{padding:3.5mm!important}.map-card h4{font-size:11px!important;margin-bottom:2mm!important}
.map-link iframe{display:none!important}.map-static{display:block!important;width:100%!important;height:50mm!important;object-fit:cover!important;border-radius:7px!important}
.contact-cta .btn-primary{font-size:9px!important;padding:6px 12px!important}
}
