:root{color-scheme:dark;--bg:#060d19;--ink:#f2f6fa;--muted:#aab9c8;--line:#2a3b4d;--blue:#4bd7ff;--blue-deep:#0c73c9;--panel:#0d1a2a;--shell:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}::selection{background:var(--blue);color:var(--bg)}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.shell{width:min(calc(100% - 96px),var(--shell));margin-inline:auto}.skip-link{position:fixed;z-index:100;left:16px;top:-80px;padding:12px 16px;background:var(--blue);color:var(--bg)}.skip-link:focus{top:16px}.section-pad{padding-block:clamp(96px,10vw,160px)}
.site-header{position:absolute;z-index:30;inset:0 0 auto;border-bottom:1px solid rgba(219,237,255,.15)}.header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:36px}.brand{display:inline-flex;align-items:center;gap:13px;flex-shrink:0}.brand-symbol{width:40px;height:40px;border:1px solid var(--blue);display:grid;place-items:center;color:var(--blue);font-size:16px;font-weight:900;letter-spacing:-.18em;padding-right:4px;transform:skew(-6deg)}.brand-symbol span{color:white}.brand-word{font-weight:900;letter-spacing:-.055em;line-height:.92;font-size:23px}.brand-word>span{color:var(--blue)}.brand-word small{display:block;margin-top:7px;font-size:9px;letter-spacing:.36em;font-weight:600;color:var(--muted)}.main-nav{display:flex;align-items:center;gap:clamp(20px,2.6vw,45px);font-size:14px;font-weight:600}.main-nav>a:not(.nav-contact){color:#d6e2ec;transition:color .2s}.main-nav>a:hover{color:var(--blue)}.nav-contact{padding:14px 18px;border:1px solid rgba(75,215,255,.65);color:var(--blue);transition:background .2s,color .2s}.nav-contact:hover{background:var(--blue);color:var(--bg)}.nav-contact span{margin-left:18px}.menu-toggle{display:none}
.hero{min-height:min(900px,100svh);height:clamp(740px,100svh,1000px);position:relative;isolation:isolate;display:flex;align-items:center;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-image{object-fit:cover;object-position:center right}.hero-shade{z-index:-1;background:linear-gradient(90deg,#060d19 0%,rgba(6,13,25,.96) 22%,rgba(6,13,25,.64) 48%,rgba(6,13,25,.03) 81%),linear-gradient(0deg,#060d19 0%,rgba(6,13,25,0) 34%,rgba(6,13,25,.22) 100%)}.hero-inner{padding-top:96px;padding-bottom:115px}.eyebrow{margin:0;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.21em;text-transform:uppercase}.hero-eyebrow{display:flex;align-items:center;gap:15px;color:#bce7fb}.eyebrow-line{display:inline-block;width:34px;height:1px;background:var(--blue)}h1,h2,h3,p{margin-top:0}.hero h1{max-width:10ch;margin:32px 0 26px;font-size:clamp(4.3rem,8.35vw,9.1rem);line-height:.92;font-weight:850;letter-spacing:-.077em;text-wrap:balance}.hero h1 em,.contact h2 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.075em;color:var(--blue)}.period{color:var(--blue)}.hero-lead{max-width:525px;color:#d6e3ed;font-size:clamp(18px,1.45vw,21px);line-height:1.55}.hero-actions{display:flex;align-items:center;gap:34px;flex-wrap:wrap;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:60px;padding:0 25px;font-weight:800;font-size:15px;transition:transform .22s,background .22s,color .22s;clip-path:polygon(0 0,calc(100% - 15px) 0,100% 15px,100% 100%,0 100%)}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--blue);color:var(--bg)}.button-primary:hover{background:#a2efff}.button span{font-size:20px;font-weight:400}.text-link,.inline-link{display:inline-flex;align-items:center;gap:22px;font-weight:700;font-size:15px;border-bottom:1px solid currentColor;padding:8px 0}.text-link:hover,.inline-link:hover{color:var(--blue)}.hero-bottom{position:absolute;inset:auto 0 0;display:flex;align-items:center;gap:32px;justify-content:space-between;border-top:1px solid rgba(219,237,255,.24);height:72px;color:#ccdbe6;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.hero-bottom strong{color:var(--blue);font-size:15px;letter-spacing:0}.hero-scroll span{margin-left:12px;color:var(--blue)}
.benefit-ribbon{border-bottom:1px solid var(--line);background:#081522}.ribbon-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:12px;color:#d9e8f4}.ribbon-inner i{width:5px;height:5px;border:1px solid var(--blue);transform:rotate(45deg);flex:0 0 auto}
.intro{background:#0a1522}.intro-grid{display:grid;grid-template-columns:1fr 2.25fr;gap:10vw}.section-kicker{display:flex;align-items:flex-start;gap:18px;color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.16em;padding-top:14px;white-space:nowrap}.section-rule{height:1px;background:var(--blue);flex:1;max-width:60px;margin-top:6px}.intro h2{max-width:1100px;margin:0 0 50px;font-size:clamp(3.1rem,5.7vw,6.9rem);line-height:1.05;letter-spacing:-.07em;font-weight:750}.intro h2 span,.section-top h2 span,.process h2 span{color:#788fa2}.intro-bottom{display:flex;justify-content:space-between;gap:8vw;align-items:flex-end;border-top:1px solid var(--line);padding-top:30px}.intro-bottom p{max-width:620px;margin:0;color:#bfccd7;font-size:18px;line-height:1.7}.intro .inline-link{white-space:nowrap;flex-shrink:0;color:var(--blue)}
.services{background:#08111e}.section-top{display:flex;align-items:end;justify-content:space-between;gap:7vw;margin-bottom:48px}.section-top h2,.process h2{font-size:clamp(3.2rem,5.7vw,6.5rem);line-height:1.04;letter-spacing:-.065em;margin:20px 0 0;max-width:860px}.section-top>p{max-width:380px;color:var(--muted);font-size:17px;line-height:1.65;margin:0 0 5px}.service-explorer{display:grid;grid-template-columns:minmax(320px,44%) 1fr;border:1px solid var(--line);min-height:580px}.service-options{background:#0c1928;display:flex;flex-direction:column}.service-option{border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;cursor:pointer;color:var(--ink);min-height:116px;padding:22px clamp(20px,2.7vw,42px);display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:16px;position:relative;transition:background .25s}.service-option:last-child{border-bottom:0}.service-option:hover{background:#15293b}.service-option.active{background:#16384d}.service-option.active::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--blue)}.option-num{color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.12em}.option-name{font-size:clamp(17px,1.5vw,22px);font-weight:750;letter-spacing:-.035em}.option-price{font-size:14px;font-weight:750;color:#a8c7db;white-space:nowrap}.service-detail{background:radial-gradient(circle at 85% 15%,rgba(40,121,177,.22),transparent 42%),#0d2436;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(27px,4vw,58px);min-width:0}.detail-meta{display:flex;justify-content:space-between;gap:20px;color:#a9c7da;font-weight:800;font-size:11px;letter-spacing:.18em}.detail-label{color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.2em;margin:40px 0 17px}.service-detail h3{font-size:clamp(2.5rem,4vw,5rem);line-height:1.06;letter-spacing:-.06em;font-weight:750;max-width:660px;margin-bottom:22px}.detail-core>p:not(.detail-label){color:#bfd0dd;font-size:18px;line-height:1.6;max-width:520px}.detail-core ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 25px;list-style:none;padding:0;margin:28px 0 35px}.detail-core li{font-size:14px;color:#dae7ef}.detail-core li::before{content:"+";color:var(--blue);margin-right:10px;font-weight:900}.detail-footer{border-top:1px solid #466276;display:flex;align-items:end;justify-content:space-between;gap:25px;padding-top:24px}.detail-footer small{display:block;color:#9dbacb;font-size:10px;letter-spacing:.19em;font-weight:800;margin-bottom:5px}.detail-footer strong{font-size:clamp(2.3rem,3.4vw,4.3rem);letter-spacing:-.06em}.round-action{min-width:150px;min-height:52px;display:inline-flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--blue);color:var(--blue);font-size:15px;font-weight:800}.round-action span{font-size:20px;font-weight:400}.round-action:hover{color:white}.service-note{font-size:13px;color:#879dab;margin:16px 0 0}
.work{background:#0b1724}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.work-card{min-height:420px;padding:33px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative;isolation:isolate;transition:transform .3s,border-color .3s;border:1px solid rgba(255,255,255,.16)}.work-card:hover{transform:translateY(-7px);border-color:rgba(255,255,255,.55)}.work-food{background:linear-gradient(145deg,#2d0f18 12%,#7d3429 100%)}.work-security{background:linear-gradient(145deg,#062329 0%,#155258 100%)}.work-card::after{content:"";position:absolute;z-index:-1;right:-12%;top:20%;width:48%;aspect-ratio:1;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 65px rgba(255,255,255,.035),0 0 0 130px rgba(255,255,255,.015)}.work-top,.work-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px}.work-top{font-size:11px;letter-spacing:.18em;font-weight:800;color:#faeae9}.external{font-size:25px;font-weight:300}.work-title{display:flex;flex-direction:column;text-transform:uppercase;line-height:.9;letter-spacing:-.065em;font-size:clamp(3.5rem,5.6vw,7rem);font-weight:900}.work-title strong{font-family:Georgia,serif;font-size:.77em;font-weight:400;font-style:italic;text-transform:none;letter-spacing:-.07em}.work-security .work-title strong{font-family:inherit;font-style:normal;font-weight:900;font-size:.85em;color:#80fff1}.work-bottom{padding-top:20px;border-top:1px solid rgba(255,255,255,.32);font-size:13px;font-weight:600}.work-bottom span:last-child{font-weight:800;white-space:nowrap}
.process{background:#07111e}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:12vw}.process h2{margin-bottom:25px}.process-intro{font-size:18px;line-height:1.6;color:var(--muted);max-width:470px}.steps{border-top:1px solid var(--line)}.steps article{display:grid;grid-template-columns:80px 1fr;gap:20px;padding:35px 0;border-bottom:1px solid var(--line)}.steps article>span{color:var(--blue);font-size:14px;font-weight:800}.steps h3{font-size:24px;letter-spacing:-.03em;margin:0 0 10px}.steps p{color:var(--muted);line-height:1.6;font-size:16px;max-width:450px;margin:0}
.contact{background:var(--blue);color:#041323}.contact .eyebrow{color:#12435f}.contact h2{font-size:clamp(3.7rem,8vw,9.3rem);font-weight:800;line-height:.98;letter-spacing:-.08em;max-width:1220px;margin:25px 0 65px}.contact h2 em{color:#fff}.contact-bottom{border-top:1px solid rgba(4,19,35,.28);padding-top:30px;display:flex;justify-content:space-between;align-items:end;gap:30px}.contact-bottom p{font-size:19px;line-height:1.55;max-width:540px;margin:0}.button-light{background:#041323;color:white;white-space:nowrap}.button-light:hover{background:#0a3850}
.site-footer{background:#050a12}.footer-main{display:grid;grid-template-columns:1fr 1fr auto;gap:40px;align-items:start;padding-block:74px;border-bottom:1px solid var(--line)}.footer-main p{font-size:15px;color:var(--muted);max-width:270px;line-height:1.6;margin:0}.footer-main>a:last-child{font-size:16px;font-weight:800;border-bottom:1px solid var(--blue);padding-bottom:8px}.footer-main>a:last-child span{color:var(--blue);margin-left:20px}.footer-bottom{padding-block:25px 35px;display:flex;justify-content:space-between;gap:30px;color:#8698a8;font-size:12px;line-height:1.5}.footer-bottom span:last-child{text-align:right}
.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.js .reveal.is-visible{opacity:1;transform:none}
@media(max-width:1100px){.shell{width:min(calc(100% - 64px),var(--shell))}.main-nav{gap:20px}.hero h1{font-size:clamp(4.3rem,8.5vw,7rem)}.service-option{grid-template-columns:28px 1fr;min-height:100px}.option-price{grid-column:2}.service-detail h3{font-size:clamp(2.4rem,4vw,4rem)}.intro-grid{gap:5vw}.intro-bottom{display:block}.intro .inline-link{margin-top:25px}}
@media(max-width:760px){.shell{width:calc(100% - 40px)}.section-pad{padding-block:82px}.header-inner{min-height:73px}.brand-symbol{width:34px;height:34px;font-size:14px}.brand-word{font-size:20px}.brand-word small{font-size:8px}.menu-toggle{display:flex;width:42px;height:42px;background:transparent;border:1px solid rgba(255,255,255,.4);align-items:center;justify-content:center;flex-direction:column;gap:6px;cursor:pointer}.menu-toggle span{width:18px;height:2px;background:white;transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}.main-nav{position:absolute;left:0;right:0;top:73px;background:#071320;padding:24px 20px 30px;display:none;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line);box-shadow:0 30px 40px #0007}.main-nav.is-open{display:flex}.main-nav>a{padding:16px 0;border-bottom:1px solid var(--line)}.main-nav .nav-contact{margin-top:18px;padding:16px;display:flex;justify-content:space-between}.hero{height:auto;min-height:760px;align-items:center}.hero-image{object-position:66% center;opacity:.8}.hero-shade{background:linear-gradient(90deg,rgba(6,13,25,.9),rgba(6,13,25,.55)),linear-gradient(0deg,#060d19 0%,rgba(6,13,25,.03) 48%,rgba(6,13,25,.1) 100%)}.hero-inner{padding-top:150px;padding-bottom:125px}.hero h1{font-size:clamp(3.7rem,13.8vw,6rem);max-width:10ch;margin:26px 0}.hero-lead{font-size:17px;max-width:440px}.hero-bottom{height:64px;font-size:10px}.hero-scroll{display:none}.ribbon-inner{min-height:0;padding-block:24px;display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:10px}.ribbon-inner i{display:none}.ribbon-inner span:last-child{grid-column:1/-1}.intro-grid,.process-grid{display:block}.section-kicker{margin-bottom:34px}.intro h2,.section-top h2,.process h2{font-size:clamp(3rem,9.5vw,5rem)}.intro h2{margin-bottom:30px}.intro-bottom p{font-size:17px}.section-top{display:block;margin-bottom:34px}.section-top>p{margin-top:24px}.service-explorer{display:block}.service-options{display:grid;grid-template-columns:1fr 1fr}.service-option{min-height:104px;padding:16px;display:flex;flex-direction:column;align-items:start;gap:7px;border-right:1px solid var(--line)}.service-option:last-child{grid-column:1/-1}.option-name{font-size:16px}.option-price{font-size:13px}.service-detail{min-height:500px;padding:28px}.service-detail h3{font-size:clamp(2.5rem,8vw,4.2rem)}.detail-label{margin-top:40px}.work-grid{grid-template-columns:1fr}.work-card{min-height:370px}.work-title{font-size:clamp(3.5rem,12vw,6rem)}.process h2{margin:20px 0}.steps{margin-top:42px}.contact h2{font-size:clamp(3.9rem,12vw,6.5rem);margin-bottom:38px}.contact-bottom{display:block}.contact-bottom p{margin-bottom:26px}.footer-main{grid-template-columns:1fr;gap:28px;padding-block:60px}.footer-bottom{display:block}.footer-bottom span{display:block}.footer-bottom span:last-child{text-align:left;margin-top:12px}}
@media(max-width:440px){.hero{min-height:700px}.hero h1{font-size:clamp(3.25rem,13vw,3.8rem)}.hero-actions{gap:14px}.hero-actions .button{width:100%}.hero-bottom{font-size:9px}.service-option{min-height:112px}.option-name{line-height:1.15}.detail-core ul{grid-template-columns:1fr}.detail-footer{align-items:end}.round-action{min-width:105px}.work-card{padding:23px}.work-bottom{font-size:11px}.contact h2{font-size:clamp(3.3rem,13vw,4.2rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}}
.footer-main>.footer-whatsapp{width:58px;height:58px;display:grid;place-items:center;padding:0;border:1px solid var(--blue);color:var(--blue);transition:background .2s,color .2s}.footer-main>.footer-whatsapp svg{width:30px;height:30px}.footer-main>.footer-whatsapp:hover{background:var(--blue);color:var(--bg)}
.brand img{width:235px;height:auto;display:block}.footer-main .brand img{width:255px}.hero h1{max-width:15ch;font-size:clamp(3.8rem,6.1vw,7rem);line-height:.98;letter-spacing:-.068em}.intro h2{font-size:clamp(3rem,5vw,6rem)}
@media(max-width:760px){.brand img{width:197px}.hero{min-height:790px}.hero h1{font-size:clamp(2.85rem,10.3vw,4.6rem);max-width:15ch;line-height:1}.intro h2{font-size:clamp(2.7rem,8.7vw,4.8rem)}}
@media(max-width:440px){.brand img{width:183px}.hero{min-height:760px}.hero h1{font-size:clamp(2.55rem,10.1vw,3.5rem)}}
.hero-inner{padding-bottom:86px}.hero-lead strong{color:#f2f6fa;font-weight:750}.brand img{width:222px}.footer-main .brand img{width:242px}.footer-main>.footer-whatsapp{width:38px;height:38px;border:0;padding:0;color:var(--blue)}.footer-main>.footer-whatsapp svg{width:36px;height:36px}.footer-main>.footer-whatsapp:hover{background:transparent;color:#a2efff}
@media(max-width:760px){.brand img{width:190px}.hero-inner{padding-top:112px;padding-bottom:72px}.main-nav .nav-contact{justify-content:flex-start;border:1px solid rgba(75,215,255,.65)}}
@media(max-width:440px){.brand img{width:180px}.hero-lead{font-size:16px;line-height:1.5}}
.service-option{grid-template-columns:42px 1fr}
@media(max-width:1100px){.service-option{grid-template-columns:28px 1fr}}
.detail-footer .round-action{margin-left:auto}
.brand .logo-still{display:none}
.footer-bottom{align-items:center}
.footer-bottom .uni-credential{display:flex;align-items:center;justify-content:flex-end;gap:20px;max-width:650px;color:#ddeaf2;font-size:clamp(16px,1.35vw,19px);font-weight:650;line-height:1.45}
.footer-bottom .uni-credential span{text-align:right}
.footer-bottom .uni-credential img{width:75px;height:auto;flex:none}
@media(max-width:760px){.footer-bottom .uni-credential{justify-content:flex-start;gap:14px;margin-top:24px;font-size:16px}.footer-bottom .uni-credential span{text-align:left}.footer-bottom .uni-credential img{width:62px}}

/* Keep the desktop headline below the header even when it wraps on shorter screens. */
@media(min-width:761px){.hero{height:auto;min-height:100svh;display:block}.hero-inner{padding-top:150px;padding-bottom:100px}}

/* Current single-offer page */
.hero h1{max-width:14ch;font-size:clamp(3.5rem,5.6vw,6.5rem);line-height:1.02;margin-top:28px}
.hero-inner{padding-bottom:80px}.hero-lead{max-width:500px;font-size:19px}.hero-price{margin-top:28px;display:grid;gap:9px}.hero-price strong{font-size:clamp(25px,2.7vw,39px);letter-spacing:-.04em;color:#fff}.hero-price span{font-size:14px;color:#b9ccd9}.hero-actions{margin-top:28px}
.offer-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:11vw}.offer-grid h2{font-size:clamp(3rem,5.3vw,6rem);line-height:1.02;letter-spacing:-.065em;margin:24px 0 30px}.offer-grid h2 span{color:#8299ac}.offer-intro{max-width:490px;color:var(--muted);font-size:19px;line-height:1.65}.offer-details article{display:grid;grid-template-columns:45px 1fr;gap:20px;border-top:1px solid var(--line);padding:28px 0}.offer-details article>span{color:var(--blue);font-size:12px;font-weight:800}.offer-details h3{font-size:24px;letter-spacing:-.03em;margin-bottom:10px}.offer-details p{color:var(--muted);font-size:17px;line-height:1.6;margin-bottom:0}.offer-details .inline-link{color:var(--blue);margin-top:15px}
@media(max-width:760px){.hero{min-height:800px}.hero-inner{padding-top:135px;padding-bottom:65px}.hero h1{font-size:clamp(2.9rem,10.7vw,4.5rem);max-width:14ch}.hero-lead{font-size:17px;max-width:430px}.hero-price{margin-top:24px}.hero-price strong{font-size:29px}.offer-grid{display:block}.offer-intro{font-size:17px}.offer-details{margin-top:40px}.offer-grid h2{font-size:clamp(3rem,10vw,5rem)}.hero-eyebrow{font-size:10px;letter-spacing:.14em}.hero-eyebrow .eyebrow-line{width:20px}}
@media(max-width:440px){.hero{min-height:790px}.hero h1{font-size:clamp(2.8rem,10.6vw,3.8rem)}.hero-actions{gap:15px}.hero-price span{font-size:13px}.hero-actions .button{width:100%}}

.projects-active{display:inline-flex;align-items:center;gap:7px;border:1px solid #3a7c7655;border-radius:40px;padding:10px 13px;background:#0d242cb8;color:#c9e9df;font-size:11px;letter-spacing:.01em;white-space:nowrap;min-height:36px}.projects-active strong{font-weight:650;color:#fff}.projects-active i{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#69e3b4;box-shadow:0 0 0 4px #69e3b415;animation:activity-pulse 2.8s ease-in-out infinite}@keyframes activity-pulse{50%{box-shadow:0 0 0 6px #69e3b406;opacity:.65}}@media(max-width:760px){.hero-actions{gap:17px 20px}.projects-active{font-size:10px;padding:9px 11px}}

.projects-active{position:absolute;top:130px;right:48px;z-index:2}@media(max-width:1100px){.projects-active{right:32px}}@media(max-width:760px){.projects-active{top:96px;right:20px}}

/* Acceso flotante a WhatsApp */
.floating-whatsapp{position:fixed;left:auto;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));z-index:90;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 0 0 7px #25d3661c,0 6px 22px #0003;transition:transform .2s,box-shadow .2s}.floating-whatsapp svg{width:36px;height:36px;display:block}.floating-whatsapp:hover{transform:translateY(-3px);box-shadow:0 0 0 9px #25d3661c,0 9px 25px #0004}.floating-whatsapp:focus-visible{outline:3px solid #fff;outline-offset:5px}.whatsapp-badge{position:absolute;top:-4px;right:-4px;width:22px;height:22px;border:2px solid #fff;border-radius:50%;background:#ef4444;color:#fff;display:grid;place-items:center;font:700 11px/1 Arial,sans-serif;opacity:0;transform:scale(.2);transition:opacity .25s,transform .3s cubic-bezier(.2,.8,.2,1.3);pointer-events:none}.floating-whatsapp.has-badge .whatsapp-badge{opacity:1;transform:scale(1)}@media(max-width:600px){.floating-whatsapp{left:auto;right:max(19px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));width:56px;height:56px}.floating-whatsapp svg{width:34px;height:34px}}@media(prefers-reduced-motion:reduce){.floating-whatsapp,.whatsapp-badge{transition:none}}

/* Construcción luminosa del portal: SVG local, sin vídeo ni librerías */
.welding-layer{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;opacity:0;transition:opacity .8s}.welding-layer.is-ready{opacity:1}.welding-svg{position:absolute;max-width:none;overflow:visible}.weld-head{isolation:isolate}.weld-glow{transform-origin:0 0;animation:weld-glow 2.4s ease-in-out infinite}.weld-flare{animation:weld-flare 3.2s ease-in-out infinite;transform-origin:0 0;opacity:.7}.weld-spark{animation:weld-spark 1.5s cubic-bezier(.15,.55,.55,1) infinite;animation-delay:var(--delay);opacity:0;will-change:transform,opacity}.weld-seam{stroke-dasharray:1;stroke-dashoffset:1;opacity:.55;animation:weld-seam 12s linear infinite}.welding-layer.is-paused *{animation-play-state:paused!important}@keyframes weld-spark{0%{transform:translate(0,0);opacity:0}8%{opacity:.95}72%{opacity:.6}100%{transform:translate(var(--sx),var(--sy));opacity:0}}@keyframes weld-glow{0%,100%{opacity:.7;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}@keyframes weld-flare{0%,100%{opacity:.4;transform:rotate(10deg) scale(.7)}50%{opacity:.8;transform:rotate(55deg) scale(1.1)}}@keyframes weld-seam{0%{stroke-dashoffset:1}96%,100%{stroke-dashoffset:0}}@media(max-width:760px){.welding-layer.is-ready{opacity:.65}}@media(prefers-reduced-motion:reduce){.welding-layer{display:none}}

.samples { background: #0a1522; border-top: 1px solid var(--line); }
.samples-intro { max-width: 720px; margin-bottom: clamp(28px, 5vw, 52px); }
.samples h2 { margin: 14px 0 16px; font-size: clamp(2.75rem, 6vw, 6rem); line-height: .98; letter-spacing: -.065em; }
.samples-intro > p:last-child { color: var(--muted); line-height: 1.6; max-width: 44ch; }
.samples-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 2vw, 26px); }
.samples-grid article { min-width: 0; }
.samples-grid a { display: block; height: 100%; overflow: hidden; border: 1px solid var(--line); border-radius: 16px; background: #101b2b; color: inherit; text-decoration: none; }
.samples-grid a:hover { border-color: var(--blue); }
.samples-grid a:focus-visible { outline: 2px solid var(--blue); outline-offset: 4px; }
.samples-grid img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; background: #0d1624; }
.samples-caption { padding: clamp(16px, 2.3vw, 26px); }
.samples-caption p { color: var(--muted); font-size: .8rem; margin: 0 0 7px; }
.samples-caption h3 { margin: 0 0 14px; font-size: clamp(1.2rem, 2.15vw, 1.9rem); line-height: 1.15; letter-spacing: -.035em; }
.samples-caption > span { color: var(--blue); font-size: .88rem; font-weight: 650; }
@media (max-width: 700px) {
  .samples-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
}
