:root{--ink:#111118;--muted:#696977;--paper:#f7f6f3;--white:#fff;--pink:#e50075;--orange:#ff5b24;--yellow:#ffc400;--cyan:#00b9bd;--purple:#6e35b7;--line:#dedde3}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans),Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}em{font-family:Georgia,"Times New Roman",serif;font-weight:400}::selection{background:#ffcae4}
.site-header{height:84px;padding:0 clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;background:rgba(247,246,243,.91);backdrop-filter:blur(15px);border-bottom:1px solid rgba(17,17,24,.08)}
.brand{width:204px;height:64px;display:flex;align-items:center}.brand img{width:100%;height:100%;object-fit:contain}.nav{display:flex;gap:24px;align-items:center;font-size:14px;font-weight:650}.nav>a:not(.nav-cta){position:relative}.nav>a:not(.nav-cta):after{content:"";height:2px;width:0;position:absolute;left:0;bottom:-7px;background:var(--pink);transition:.25s}.nav>a:hover:after{width:100%}.nav-cta{background:var(--ink);color:white;padding:13px 20px;border-radius:100px}.menu-button{display:none;background:none;border:0;padding:8px}.menu-button span{display:block;width:25px;height:2px;background:var(--ink);margin:6px}
.hero{min-height:calc(100vh - 84px);padding:clamp(64px,7vw,104px) clamp(22px,5vw,76px) 68px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:40px;overflow:hidden;position:relative}.hero:before{content:"";width:330px;height:330px;border-radius:50%;background:#e1f7ed;filter:blur(3px);position:absolute;left:-210px;top:10%}.hero-copy{position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:750;display:flex;align-items:center;gap:10px;margin:0 0 24px}.eyebrow span{width:28px;height:2px;background:linear-gradient(90deg,var(--cyan),var(--pink))}.hero h1,.section h2,.cta-section h2{font-size:clamp(51px,6vw,91px);letter-spacing:-.065em;line-height:.91;margin:0}.hero h1 em,.section h2 em,.cta-section h2 em{color:var(--pink);font-style:italic}.hero-text{font-size:18px;line-height:1.72;max-width:625px;color:var(--muted);margin:30px 0 34px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;border-radius:100px;padding:16px 23px;font-size:14px;font-weight:750;transition:.25s}.button-primary{background:var(--ink);color:white}.button-primary:hover{background:var(--pink);transform:translateY(-2px)}.button-ghost{border:1px solid var(--line);background:white}.button-ghost:hover{border-color:var(--pink)}.hero-proof{display:flex;gap:32px;margin-top:54px}.hero-proof div{display:flex;flex-direction:column;padding-left:14px;border-left:2px solid var(--line)}.hero-proof strong{font-size:14px}.hero-proof span{font-size:12px;color:var(--muted);margin-top:3px}
.hero-art{height:min(660px,67vw);max-height:660px;min-height:520px;position:relative}.orbit{position:absolute;border-radius:50%;border:2px solid}.orbit-one{inset:7% 3% 4% 9%;border-color:rgba(229,0,117,.25)}.orbit-two{inset:16% 12% 12% 20%;border-color:rgba(0,185,189,.26)}.hero-art:before{content:"";position:absolute;inset:16% 10% 10% 12%;border-radius:50%;background:radial-gradient(circle at 30% 35%,#fff 0 9%,#fcdbef 10% 27%,#d4f2ec 28% 48%,#ffe2be 49% 69%,#f5b0d3 70%);filter:saturate(.85);box-shadow:0 35px 90px rgba(41,22,40,.16)}.floating-card{position:absolute;z-index:3;overflow:hidden;padding:0;background:#fff;box-shadow:0 26px 50px rgba(26,20,28,.22)}.floating-card img{display:block;width:100%;height:100%;object-fit:cover}.sample-one{width:230px;height:295px;left:0;top:7%;transform:rotate(-7deg)}.sample-two{width:250px;height:165px;right:1%;top:20%;transform:rotate(7deg)}.sample-two img{object-position:center}.sample-three{width:210px;height:265px;right:14%;bottom:2%;transform:rotate(-4deg)}.color-dot{position:absolute;border-radius:50%;z-index:4}.dot-one{width:31px;height:31px;background:var(--cyan);top:12%;right:26%}.dot-two{width:20px;height:20px;background:var(--pink);bottom:22%;left:13%}.dot-three{width:15px;height:15px;background:var(--orange);top:52%;right:2%}
.ticker{overflow:hidden;background:var(--ink);color:white;padding:17px 0;white-space:nowrap;font-size:13px;letter-spacing:.22em;font-weight:700}.ticker div{width:max-content;min-width:100%;text-align:center}.ticker span{color:var(--pink);margin:0 25px}
.section{padding:112px clamp(22px,5vw,76px)}.section-heading{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:60px;margin-bottom:56px}.section-heading h2,.portfolio-title h2,.pricing h2,.process h2{font-size:clamp(43px,5vw,72px)}.section-heading>p{color:var(--muted);line-height:1.75;font-size:16px;max-width:490px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{min-height:305px;padding:31px;position:relative;background:rgba(255,255,255,.38);border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.3s}.service-card:hover{background:white;transform:translateY(-5px);box-shadow:0 24px 60px rgba(35,28,41,.08);z-index:2}.service-number{font-family:var(--font-geist-mono);font-size:11px;color:var(--pink)}.service-card h3{font-size:22px;margin:44px 0 14px}.service-card p{font-size:14px;line-height:1.7;color:var(--muted);max-width:280px}.service-card small{display:block;font-size:11px;margin-top:33px;color:#96939d}.service-card i{font-style:normal;position:absolute;top:28px;right:28px;border:1px solid var(--line);border-radius:50%;width:38px;height:38px;display:grid;place-items:center}
.portfolio{background:white}.portfolio-title{text-align:center}.portfolio-title .eyebrow{justify-content:center}.filters{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:42px 0}.filters button{border:1px solid var(--line);background:white;padding:10px 16px;border-radius:100px;font-size:12px;cursor:pointer;color:#5d5b63;transition:.2s}.filters button.active,.filters button:hover{background:var(--ink);color:white;border-color:var(--ink)}.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:36px 26px;max-width:1240px;margin:auto}.work-item{transition:.3s}.work-item:hover{transform:translateY(-6px)}.work-visual{aspect-ratio:1.16/1;position:relative;overflow:hidden;display:grid;place-items:center}.work-visual>span{position:relative;z-index:2;font-size:clamp(37px,6vw,78px);font-weight:900;letter-spacing:-.07em}.work-visual>i{position:absolute;right:21px;bottom:17px;font:italic 18px Georgia}.work-social{background:linear-gradient(135deg,#ffe0ef,#ff479a);color:#4a0932}.work-social:before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:#ffca00;top:-65px;right:-40px}.work-logo{background:#17171e;color:#fff}.work-logo span{border:3px solid white;width:130px;height:130px;border-radius:50%;display:grid;place-items:center;font-family:Georgia}.work-flyer{background:linear-gradient(145deg,#3b22a5,#ef007d);color:white}.work-flyer:before,.work-flyer:after{content:"";position:absolute;border-radius:50%;border:18px solid #ffb900;width:180px;height:180px}.work-flyer:before{top:-80px;left:-50px}.work-flyer:after{bottom:-100px;right:-40px}.work-menu{background:#e5ead4;color:#174430}.work-menu:before{content:"";width:48%;height:78%;background:#fffdf8;box-shadow:0 18px 45px #70776555;transform:rotate(-6deg);position:absolute}.work-menu span{font-family:Georgia;font-style:italic}.work-banner{background:#93e1d2;color:#073c40}.work-banner:before{content:"";position:absolute;width:105%;height:38%;background:#ff6b2c;transform:rotate(-9deg)}.work-card{background:#efe9e1;color:#34231e}.work-card:before{content:"";width:69%;height:42%;background:#251e1d;box-shadow:0 18px 40px #4a3d3655;transform:rotate(-7deg);position:absolute}.work-card span{color:#ffd0e2;font-size:40px}.work-video{background:linear-gradient(135deg,#191924,#453a71);color:white}.work-video:before{content:"";position:absolute;width:270px;height:270px;border-radius:50%;background:linear-gradient(145deg,var(--cyan),var(--purple),var(--pink));filter:blur(4px)}.work-video span{width:110px;height:110px;border-radius:50%;background:#ffffffdd;color:#111;display:grid;place-items:center;font-size:36px;padding-left:7px}.work-season{background:#ffeb2c;color:#e10063}.work-season:before{content:"";position:absolute;inset:25px;border:4px solid #e10063}.work-info{padding-top:18px;display:flex;justify-content:space-between}.work-info small{text-transform:uppercase;letter-spacing:.15em;color:var(--pink);font-size:10px}.work-info h3{font-size:20px;margin:7px 0 3px}.work-info p{font-size:13px;color:var(--muted);margin:0}.work-info b{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center}.portfolio-note{text-align:center;margin:54px 0 0;color:var(--muted);font-size:14px}.portfolio-note a{color:var(--pink);font-weight:700}
.pricing{background:var(--ink);color:white;display:grid;grid-template-columns:.82fr 1.18fr;gap:9vw;align-items:start}.eyebrow.light{color:#d6d5da}.pricing-intro>p:not(.eyebrow){color:#a7a5ad;line-height:1.7;max-width:475px;margin:30px 0}.button-light{background:white;color:var(--ink)}.button-light:hover{background:var(--pink);color:white;transform:translateY(-2px)}.price-list{border-top:1px solid #36363e}.price-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 4px;border-bottom:1px solid #36363e}.price-row h3{font-size:18px;margin:0 0 7px}.price-row p{color:#9998a0;font-size:12px;margin:0}.price-row strong{font-size:18px;white-space:nowrap}.price-row.featured strong{color:#ff559f}
.process{background:var(--paper)}.process-heading{margin-bottom:45px}.process-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:stretch}.requirements-card{background:var(--ink);color:white;border-radius:18px;padding:38px;position:relative;overflow:hidden}.requirements-card:after{content:"";position:absolute;width:250px;height:250px;border-radius:50%;right:-150px;bottom:-150px;background:linear-gradient(135deg,var(--pink),var(--purple));opacity:.45}.process-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:linear-gradient(135deg,#ffffff22,#ffffff0a);border:1px solid #ffffff22;font-size:28px;margin-bottom:28px}.card-kicker{text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:800;color:var(--pink);margin:0 0 10px}.requirements-card .card-kicker{color:#ff68aa}.requirements-card h3{font-size:28px;letter-spacing:-.03em;margin:0 0 14px}.requirements-intro{color:#bbb9c2;font-size:14px;line-height:1.7;margin:0 0 24px}.requirements-list{list-style:none;padding:0;margin:0;display:grid;gap:14px;position:relative;z-index:2}.requirements-list li{display:grid;grid-template-columns:25px 1fr;gap:10px;color:#e6e4e9;font-size:13px;line-height:1.55}.requirements-list li span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#ffffff12;color:#55e4cf;font-size:12px;font-weight:900}.work-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.work-step{background:white;border:1px solid #ebe9ee;border-radius:16px;padding:25px;display:flex;gap:17px;min-height:190px;transition:.25s}.work-step:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(35,28,41,.08);border-color:#e2c4d4}.step-icon{flex:0 0 auto;width:48px;height:48px;border-radius:14px;background:#fff0f7;display:grid;place-items:center;font-size:23px}.work-step:nth-child(2) .step-icon{background:#eefafa}.work-step:nth-child(3) .step-icon{background:#fff7dc}.work-step:nth-child(4) .step-icon{background:#f2ecfa}.work-step small{text-transform:uppercase;letter-spacing:.14em;color:var(--pink);font-size:9px;font-weight:800}.work-step h3{font-size:18px;margin:8px 0}.work-step p{font-size:13px;line-height:1.6;color:var(--muted);margin:0}.payment-panel{margin-top:24px;border:1px solid var(--line);border-radius:18px;background:white;padding:27px 30px;display:grid;grid-template-columns:.75fr 1fr 1.25fr;align-items:center;gap:28px}.payment-title h3{font-size:25px;margin:0}.payment-methods{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.payment-methods article{background:var(--paper);border-radius:12px;padding:14px;display:flex;align-items:center;gap:11px}.payment-methods article>span{font-size:24px}.payment-methods strong,.payment-methods small{display:block}.payment-methods strong{font-size:13px}.payment-methods small{color:var(--muted);font-size:10px;margin-top:3px}.revision-note{background:#e9faf7;border:1px solid #c6eee7;border-radius:13px;padding:15px 17px;display:flex;align-items:center;gap:13px}.revision-note>span{width:38px;height:38px;border-radius:50%;background:var(--cyan);color:white;display:grid;place-items:center;font-size:23px;font-weight:800;flex:0 0 auto}.revision-note p{margin:0;color:#2b5752;font-size:12px;line-height:1.45}.revision-note strong{display:block;color:#103f3b;font-size:13px;margin-bottom:3px}
.cta-section{background:linear-gradient(125deg,#e50075 0%,#cc006f 45%,#6d24ac 100%);color:white;text-align:center;padding:115px 22px;position:relative;overflow:hidden}.cta-rings{position:absolute;width:520px;height:520px;border:2px solid #ffffff22;border-radius:50%;top:-280px;right:-100px;box-shadow:0 0 0 55px #ffffff09,0 0 0 110px #ffffff08}.cta-section .eyebrow{justify-content:center}.cta-section .eyebrow span{background:white}.cta-section h2 em{color:#ffd15a}.cta-section>p:not(.eyebrow){color:#f0cce0;margin:26px auto}.cta-section .button{position:relative}.cta-section h2,.cta-section p{position:relative}
footer{padding:55px clamp(22px,5vw,76px) 28px;background:#0c0c11;color:white;display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}footer img{width:240px;height:90px;object-fit:contain;filter:brightness(0) invert(1);opacity:.95}.footer-brand p{font-size:13px;color:#929198;max-width:300px;line-height:1.6}footer h4{text-transform:uppercase;letter-spacing:.17em;font-size:10px;color:#7d7c84;margin:16px 0 19px}footer>div:not(.footer-brand):not(.footer-bottom){display:flex;flex-direction:column;gap:11px;font-size:13px}footer>div span{color:#a3a2a8}.footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #292930;padding-top:25px;font-size:11px;color:#74737a}.whatsapp-float{position:fixed;right:22px;bottom:22px;width:55px;height:55px;background:#20c866;color:white;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:900;box-shadow:0 12px 28px #143a2455;z-index:40;transition:.2s}.whatsapp-float:hover{transform:scale(1.08)}
@media(max-width:1100px){.nav{gap:16px;font-size:13px}.nav-cta{padding:12px 16px}}
@media(max-width:980px){.hero{grid-template-columns:1fr;padding-top:74px}.hero-art{height:580px}.hero-copy{max-width:760px}.section-heading{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.pricing{grid-template-columns:1fr}.price-list{margin-top:25px}.nav{gap:20px}.hero-proof{flex-wrap:wrap}.process-layout{grid-template-columns:1fr}.payment-panel{grid-template-columns:1fr 1fr}.revision-note{grid-column:1/-1}}
@media(max-width:720px){.site-header{height:72px}.brand{width:174px}.menu-button{display:block;z-index:2}.nav{display:none;position:absolute;left:15px;right:15px;top:68px;background:white;border:1px solid var(--line);box-shadow:0 20px 60px #25202c22;padding:22px;flex-direction:column;align-items:stretch;border-radius:8px}.nav.open{display:flex}.nav-cta{text-align:center}.hero{min-height:auto;padding-top:58px}.hero h1{font-size:51px}.hero-text{font-size:16px}.hero-proof{gap:15px}.hero-proof div{min-width:43%}.hero-art{height:460px;min-height:460px;margin-top:20px}.sample-one{width:165px;height:220px}.sample-two{width:185px;height:120px}.sample-three{width:150px;height:198px}.section{padding:78px 20px}.section-heading{gap:18px;margin-bottom:36px}.service-grid,.work-grid,.work-steps{grid-template-columns:1fr}.service-card{min-height:260px}.filters{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:8px}.filters button{white-space:nowrap}.pricing{padding-top:82px}.price-row{align-items:flex-start}.price-row strong{font-size:15px}.requirements-card{padding:28px 24px}.requirements-card h3{font-size:24px}.work-step{min-height:auto;padding:21px}.payment-panel{grid-template-columns:1fr;padding:23px}.payment-methods{grid-template-columns:1fr 1fr}.revision-note{grid-column:auto}.cta-section{padding:82px 20px}.cta-section h2{font-size:48px}footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px}.ticker div{animation:ticker 18s linear infinite}}@keyframes ticker{to{transform:translateX(-45%)}}
@media(max-width:440px){.payment-methods{grid-template-columns:1fr}.work-step{flex-direction:column}.step-icon{width:44px;height:44px}.revision-note{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker div{animation:none}.work-item,.button,.service-card{transition:none}}
/* =========================================================
   PORTAFOLIO - TARJETAS + HOVER + LIGHTBOX
   ========================================================= */

.portfolio .work-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:32px 24px;
  max-width:1100px;
  margin:auto;
}

.portfolio .work-item{
  background:var(--white);
  border:1px solid #e7e5e9;
  border-radius:18px;
  overflow:hidden;
  transition:
    transform .35s ease,
    box-shadow .35s ease,
    border-color .35s ease;
}

.portfolio .work-item:hover{
  transform:translateY(-8px);
  border-color:rgba(229,0,117,.22);
  box-shadow:0 24px 55px rgba(25,20,30,.14);
}

.portfolio .work-visual{
  width:100%;
  height:270px;
  aspect-ratio:auto;
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#f3f2ef;
}

.portfolio-photo{
  width:100%;
  height:100%;
  border:0;
  padding:0;
  margin:0;
  background:#f3f2ef;
  cursor:zoom-in;
  position:relative;
  overflow:hidden;
}

.portfolio .work-visual img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover;
  object-position:center;
  display:block;
  transition:
    transform .55s cubic-bezier(.2,.7,.2,1),
    filter .4s ease;
}

.portfolio-photo:hover img{
  transform:scale(1.08);
  filter:brightness(.72);
}

.portfolio-photo::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    to top,
    rgba(10,10,15,.72),
    rgba(10,10,15,.05) 60%,
    transparent
  );
  opacity:0;
  transition:opacity .35s ease;
  pointer-events:none;
}

.portfolio-photo:hover::after{
  opacity:1;
}

.portfolio-photo::before{
  content:"Ver diseño  ↗";
  position:absolute;
  z-index:3;
  left:50%;
  bottom:24px;
  transform:translate(-50%,12px);
  padding:11px 18px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:100px;
  background:rgba(255,255,255,.13);
  backdrop-filter:blur(8px);
  color:white;
  font-size:12px;
  font-weight:750;
  white-space:nowrap;
  opacity:0;
  transition:
    opacity .35s ease,
    transform .35s ease;
}

.portfolio-photo:hover::before{
  opacity:1;
  transform:translate(-50%,0);
}

.portfolio-photo:focus-visible{
  outline:3px solid var(--pink);
  outline-offset:4px;
}

.portfolio .work-info{
  padding:20px 21px 21px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  background:white;
}

.portfolio .work-info small{
  display:block;
  text-transform:uppercase;
  letter-spacing:.16em;
  color:var(--pink);
  font-size:9px;
  font-weight:800;
}

.portfolio .work-info h3{
  font-size:18px;
  line-height:1.2;
  margin:7px 0 4px;
  letter-spacing:-.02em;
}

.portfolio .work-info p{
  font-size:12px;
  color:var(--muted);
  margin:0;
}

.portfolio .work-info b{
  flex:0 0 auto;
  width:40px;
  height:40px;
  border-radius:50%;
  border:1px solid var(--line);
  display:grid;
  place-items:center;
  font-size:16px;
  transition:
    background .3s ease,
    color .3s ease,
    transform .3s ease,
    border-color .3s ease;
}

.portfolio .work-item:hover .work-info b{
  background:var(--ink);
  color:white;
  border-color:var(--ink);
  transform:rotate(45deg);
}


/* =========================================================
   LIGHTBOX
   ========================================================= */

.lightbox{
  position:fixed;
  inset:0;
  z-index:100;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:70px 24px 24px;
  background:rgba(8,8,12,.94);
  opacity:1;
  visibility:visible;
  transition:
    opacity .25s ease,
    visibility .25s ease;
}

.lightbox[aria-hidden="true"]{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

.lightbox img{
  display:block;
  width:auto;
  height:auto;
  max-width:min(92vw,1200px);
  max-height:84vh;
  object-fit:contain;
  border-radius:10px;
  box-shadow:0 30px 100px rgba(0,0,0,.55);
  transform:scale(.96);
  transition:transform .3s ease;
}

.lightbox[aria-hidden="false"] img{
  transform:scale(1);
}

.lightbox-close{
  position:absolute;
  top:20px;
  right:24px;
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:50%;
  background:rgba(255,255,255,.10);
  color:white;
  font-size:30px;
  line-height:1;
  cursor:pointer;
  transition:
    background .25s ease,
    color .25s ease,
    transform .25s ease;
}

.lightbox-close:hover,
.lightbox-close:focus-visible{
  background:white;
  color:var(--ink);
  transform:rotate(90deg);
  outline:0;
}

body.lightbox-open{
  overflow:hidden;
}


/* =========================================================
   TABLET
   ========================================================= */

@media(max-width:980px){

  .portfolio .work-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px 20px;
  }

  .portfolio .work-visual{
    height:250px;
  }
}


/* =========================================================
   CELULAR
   ========================================================= */

@media(max-width:720px){

  .portfolio .work-grid{
    grid-template-columns:1fr;
    gap:24px;
  }

  .portfolio .work-item{
    width:100%;
    max-width:390px;
    margin-left:auto;
    margin-right:auto;
  }

  .portfolio .work-visual{
    height:250px;
  }

  .portfolio .work-info{
    padding:18px;
  }

  .portfolio .work-info h3{
    font-size:17px;
  }

  .portfolio-photo:hover img{
    transform:scale(1.04);
  }

  .lightbox{
    padding:68px 12px 18px;
  }

  .lightbox img{
    max-width:96vw;
    max-height:82vh;
    border-radius:7px;
  }

  .lightbox-close{
    top:12px;
    right:12px;
  }
}


/* =========================================================
   REDUCIR ANIMACIONES SI EL USUARIO LO SOLICITA
   ========================================================= */

@media(prefers-reduced-motion:reduce){

  .portfolio .work-item,
  .portfolio .work-visual img,
  .portfolio-photo::before,
  .portfolio-photo::after,
  .portfolio .work-info b,
  .lightbox,
  .lightbox img{
    transition:none;
  }
}
