*{box-sizing:border-box} :root{--paper:#111111;--ink:#f7f7f2;--muted:#a5a69f;--line:#343631;--coral:#c7f464;--blue:#090a09;--teal:#c7f464;--max:1440px} html{scroll-behavior:smooth;scroll-padding-top:100px} body{margin:0;background:var(--paper);color:var(--ink);font-family:"Mozilla Text",sans-serif;-webkit-font-smoothing:antialiased} a{color:inherit;text-decoration:none} button{font:inherit;color:inherit} .progress{position:fixed;z-index:20;top:0;left:0;width:0;height:2px;background:var(--coral)} .site-header{height:88px;padding:0 clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(23,25,22,.12);position:sticky;top:0;background:rgba(245,243,239,.92);backdrop-filter:blur(14px);z-index:10}.wordmark{display:flex;flex-direction:column;gap:5px;font-family:"Mozilla Headline",sans-serif;font-weight:800;font-size:13px;letter-spacing:-.04em;line-height:1.05}.wordmark small{font:500 8px "Mozilla Text",sans-serif;letter-spacing:.19em;color:var(--muted)}.nav{display:flex;gap:clamp(20px,3.5vw,52px);align-items:center}.nav-link{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#55564f;position:relative;padding:10px 0}.nav-link:after{content:"";position:absolute;left:0;bottom:3px;width:0;height:1px;background:var(--coral);transition:width .25s}.nav-link:hover:after,.nav-link.active:after{width:100%}.menu-toggle{display:none}.section-wrap{max-width:var(--max);margin:0 auto;padding-left:clamp(22px,5vw,76px);padding-right:clamp(22px,5vw,76px)}.hero{min-height:min(770px,calc(100svh - 88px));display:grid;grid-template-columns:.86fr 1.14fr;align-items:center;position:relative;padding-top:70px;padding-bottom:100px;overflow:hidden}.hero-copy{position:relative;z-index:2;padding-bottom:20px}.eyebrow{font-size:9px;letter-spacing:.19em;color:var(--muted);text-transform:uppercase;display:flex;align-items:center;gap:10px;margin:0 0 28px}.eyebrow-line{display:inline-block;width:27px;height:1px;background:var(--coral)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Mozilla Headline",sans-serif;font-weight:700;letter-spacing:-.045em}h1{font-size:clamp(48px,6.2vw,91px);line-height:.98;font-weight:600;margin-bottom:28px}h1 em,h2 em{font-style:normal;color:var(--coral)}.hero-description{max-width:390px;color:#62625c;font-size:14px;line-height:1.8;margin-bottom:30px}.text-link{display:inline-flex;gap:24px;align-items:center;border:0;border-bottom:1px solid var(--ink);padding:0 0 10px;background:none;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:700;cursor:pointer}.text-link span{font-size:17px;transition:transform .25s}.text-link:hover span{transform:translate(3px,-3px)}.hero-art{min-height:450px;height:100%;position:relative;display:flex;align-items:center;justify-content:center;perspective:900px}.hero-art:before{content:"";position:absolute;width:76%;aspect-ratio:1;border-radius:50%;background:#e9e5dd;right:4%;top:10%;filter:blur(1px)}.art-card{position:absolute;width:57%;height:44%;border-radius:3px;box-shadow:0 25px 50px #25221b20;transform:rotate(-10deg)}.card-back{background:var(--coral);width:45%;height:47%;right:10%;top:17%;transform:rotate(8deg)}.card-mid{background:var(--blue);left:16%;bottom:17%;transform:rotate(9deg)}.card-front{background:#fffdf8;left:23%;top:24%;transform:rotate(-8deg);padding:10% 7%;overflow:hidden}.mini-logo{font-family:"Mozilla Headline",sans-serif;font-weight:600;font-size:clamp(28px,4vw,55px);letter-spacing:-.1em;color:#30204e}.mini-logo span{color:#f29c13}.card-front small{display:block;font-size:7px;letter-spacing:.32em;color:#716e77;margin-top:3px}.card-stripe{position:absolute;left:0;bottom:0;width:100%;height:12%;background:linear-gradient(90deg,#29104f 0 35%,#d86c33 60%,#f6b813)}.hero-index{position:absolute;right:0;top:7%;font:600 12px "Mozilla Headline",sans-serif;z-index:2}.hero-index span{color:var(--muted);font-weight:400}.art-caption{position:absolute;bottom:7%;right:2%;font-size:8px;letter-spacing:.16em;color:var(--muted)}.art-caption span{margin-left:18px;color:var(--coral)}.hero-bottom{position:absolute;left:clamp(22px,5vw,76px);right:clamp(22px,5vw,76px);bottom:30px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.16em;color:var(--muted)}.work-section{padding-top:100px;padding-bottom:120px;border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:48px}.section-heading .eyebrow{margin-bottom:18px}.section-heading h2,.about-copy h2,.contact-main h2{font-size:clamp(38px,5vw,68px);line-height:1.04;font-weight:500;margin-bottom:0}.section-note{max-width:270px;font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:5px}.filters{display:flex;gap:24px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:30px;overflow-x:auto}.filter{border:0;background:none;padding:0;white-space:nowrap;color:var(--muted);font-size:10px;cursor:pointer}.filter span{font-size:8px;margin-left:4px;color:var(--coral)}.filter.active{color:var(--ink);font-weight:700}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px 24px}.project{min-width:0;transition:opacity .25s,transform .25s}.project.is-hidden{display:none}.project-open{display:block;text-align:left;padding:0;border:0;background:none;width:100%;cursor:pointer}.project-image{height:clamp(240px,34vw,480px);position:relative;overflow:hidden;background:#e8e5df}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1);display:block}.project-open:hover .project-image img{transform:scale(1.035)}.image-gmm img{object-position:center}.image-auge img{object-position:center}.image-action{position:absolute;bottom:16px;right:16px;padding:12px 15px;background:var(--paper);font-size:9px;letter-spacing:.08em;opacity:0;transform:translateY(5px);transition:.25s}.project-open:hover .image-action,.project-open:focus-visible .image-action{opacity:1;transform:translateY(0)}.project-meta{display:flex;align-items:center;justify-content:space-between;margin-top:20px}.project-number{font-size:8px;letter-spacing:.16em;color:var(--muted);margin-bottom:8px}.project-meta h3{font-size:clamp(24px,3vw,36px);font-weight:500;margin:0}.project-arrow{font-size:23px;transition:transform .2s}.project:hover .project-arrow{transform:translate(3px,-3px)}.project-subtitle{font-size:10px;color:var(--muted);margin:9px 0 0}.placeholder-project{height:clamp(240px,34vw,480px);padding:28px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;position:relative;overflow:hidden}.project-coral{background:var(--coral);color:#fffaf4}.project-blue{background:var(--blue);color:#f5f3ef}.placeholder-kicker,.placeholder-footer{font-size:8px;letter-spacing:.17em}.placeholder-title{font:600 clamp(42px,6vw,88px)/.9 "Mozilla Headline",sans-serif;letter-spacing:-.08em;align-self:center}.project-blue .placeholder-title span{color:#e3a99c}.placeholder-project:after{content:"";position:absolute;width:260px;height:260px;border:1px solid #ffffff50;border-radius:50%;right:-90px;bottom:-120px}.placeholder-project .image-action{color:var(--ink)}.portfolio-note{font-size:10px;color:var(--muted);line-height:1.7;margin-top:28px}.about-section{padding-top:105px;padding-bottom:110px;background:#eae7e0;max-width:none;display:grid;grid-template-columns:.65fr 1.35fr;gap:45px 8%;position:relative}.about-label{display:flex;flex-direction:column;justify-content:space-between}.big-asterisk{font-size:clamp(70px,10vw,140px);line-height:.8;color:var(--coral);font-weight:400}.about-copy h2{font-size:clamp(36px,4.5vw,61px);margin-bottom:28px}.about-copy>p{max-width:610px;color:#62625c;font-size:13px;line-height:1.9}.about-copy .text-link{margin-top:12px}.about-stats{grid-column:2;display:flex;gap:clamp(24px,6vw,90px);padding-top:35px;border-top:1px solid #d0ccc3;margin-top:10px}.about-stats div{display:flex;flex-direction:column;gap:9px}.about-stats strong{font:500 30px "Mozilla Headline",sans-serif;letter-spacing:-.06em}.about-stats span{font-size:8px;letter-spacing:.12em;color:var(--muted)}.contact-section{padding-top:105px;padding-bottom:30px}.contact-section>.eyebrow{margin-bottom:30px}.contact-main{display:flex;align-items:end;justify-content:space-between;padding-bottom:90px}.contact-main h2{font-size:clamp(48px,7.3vw,100px)}.contact-button{display:flex;align-items:center;justify-content:space-between;gap:50px;padding:18px 20px;background:var(--ink);color:white;font-size:11px;min-width:175px;transition:background .2s}.contact-button:hover{background:var(--coral)}.contact-button span{font-size:18px}.contact-bottom{border-top:1px solid var(--line);padding:22px 0;display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.13em;color:var(--muted)}.contact-bottom a:hover{color:var(--coral)}footer{display:flex;justify-content:space-between;padding:18px clamp(22px,5vw,76px);font-size:8px;letter-spacing:.12em;color:var(--muted);border-top:1px solid var(--line)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}.project-dialog{width:min(900px,calc(100% - 32px));max-height:90vh;overflow:auto;border:0;padding:clamp(24px,5vw,60px);background:var(--paper);color:var(--ink);box-shadow:0 20px 100px #0003}.project-dialog::backdrop{background:#111a;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:20px;top:14px;font-size:32px;border:0;background:none;cursor:pointer}.project-dialog .eyebrow{margin-bottom:12px}.project-dialog h2{font-size:clamp(38px,6vw,68px);font-weight:500;margin:0 0 16px}.project-dialog>p:not(.eyebrow){max-width:650px;color:var(--muted);font-size:13px;line-height:1.8}.dialog-image{margin-top:25px;background:#e6e3dc}.dialog-image img{display:block;width:100%;max-height:55vh;object-fit:contain}.dialog-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px}.dialog-bottom>span{font-size:9px;letter-spacing:.12em;color:var(--muted)}@media(min-width:1500px){.about-section{padding-left:max(calc((100vw - 1288px)/2),76px);padding-right:max(calc((100vw - 1288px)/2),76px)}}@media(max-width:760px){.site-header{height:72px}.menu-toggle{display:flex;flex-direction:column;gap:5px;border:0;background:none;padding:10px}.menu-toggle span{width:22px;height:1px;background:var(--ink)}.nav{position:absolute;display:none;top:71px;left:0;right:0;padding:20px 24px 26px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:16px}.nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:65px;padding-bottom:90px;min-height:auto}.hero-copy{padding-bottom:0}.hero-art{min-height:340px;margin-top:20px}.art-card{width:58%;height:43%}.hero-index{top:2%}.art-caption{bottom:2%}.hero-bottom{bottom:22px;font-size:7px}.scroll-cue{display:none}.work-section{padding-top:70px;padding-bottom:80px}.section-heading{align-items:flex-start;flex-direction:column;margin-bottom:30px}.section-note{max-width:380px}.filters{gap:20px}.project-grid{grid-template-columns:1fr;gap:38px}.project-image,.placeholder-project{height:clamp(270px,75vw,450px)}.project-meta h3{font-size:29px}.about-section{grid-template-columns:1fr;gap:25px;padding-top:70px;padding-bottom:75px}.about-label{flex-direction:row;align-items:start}.big-asterisk{font-size:60px}.about-copy h2{font-size:clamp(36px,9vw,55px)}.about-stats{grid-column:1;gap:22px;justify-content:space-between}.about-stats strong{font-size:25px}.about-stats span{font-size:7px}.contact-section{padding-top:75px}.contact-main{align-items:flex-start;flex-direction:column;gap:32px;padding-bottom:60px}.contact-main h2{font-size:clamp(48px,12vw,78px)}.contact-bottom{flex-wrap:wrap;line-height:1.7}.contact-bottom span{width:100%}footer{gap:15px;line-height:1.5}footer span:last-child{text-align:right}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}

/* DARK / ACID GREEN ART DIRECTION */
body{background:#111111;color:#f7f7f2}
.site-header{background:rgba(17,17,17,.9);border-bottom-color:#343631}
.wordmark small,.nav-link,.eyebrow,.hero-description,.section-note,.project-number,.project-subtitle,
.portfolio-note,.about-stats span,.contact-bottom,footer{color:#a5a69f}
.nav-link:after{background:#c7f464}
.hero-art:before{background:#20221d}
.card-front{background:#f7f7f2;color:#111111}
.card-front .mini-logo{color:#242424}
.card-front small{color:#565750}
.card-stripe{background:linear-gradient(90deg,#111111 0 35%,#55594c 60%,#c7f464)}
.hero-bottom{color:#a5a69f}
.text-link{border-bottom-color:#c7f464;color:#f7f7f2}
.text-link:hover{color:#c7f464}
.work-section{border-top-color:#343631}
.filters{border-bottom-color:#343631}
.filter{color:#a5a69f}
.filter.active{color:#f7f7f2}
.filter span{color:#c7f464}
.project-image{background:#20211e}
.image-action{background:#c7f464;color:#111111}
.project-coral{background:#c7f464;color:#111111}
.project-blue{background:#20221d;color:#f7f7f2}
.project-blue .placeholder-title span{color:#c7f464}
.placeholder-project .image-action{color:#111111}
.about-section{background:#1b1d19}
.about-copy>p{color:#b8b9b1}
.big-asterisk{color:#c7f464}
.about-stats{border-top-color:#3a3c35}
.contact-button{background:#c7f464;color:#111111}
.contact-button:hover{background:#f7f7f2;color:#111111}
.contact-bottom{border-top-color:#343631}
.contact-bottom a:hover{color:#c7f464}
footer{border-top-color:#343631}
.project-dialog{background:#171816;color:#f7f7f2}
.project-dialog>p:not(.eyebrow){color:#b8b9b1}
.dialog-image{background:#20211e}
.dialog-bottom>span{color:#a5a69f}
.dialog-close{color:#f7f7f2}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}


/* HERO: ilustración personal en la portada */
.hero-portrait{isolation:isolate;overflow:visible;min-height:520px}
.portrait-orbit{display:none}
.portrait-image{position:absolute;z-index:1;bottom:-2%;right:2%;height:108%;width:auto;max-width:100%;object-fit:contain;object-position:bottom center;filter:contrast(1.04);mix-blend-mode:screen}
.portrait-mark{position:absolute;z-index:0;border:1px solid rgba(199,244,100,.6);pointer-events:none}
.portrait-mark-one{width:70%;height:65%;right:4%;top:19%;transform:rotate(-8deg);border-left:0;border-bottom:0}
.portrait-mark-two{width:56%;height:44%;right:12%;top:29%;transform:rotate(7deg);border-right:0;border-top:0}
.hero-portrait .hero-index{top:2%;right:0}
.hero-portrait .art-caption{bottom:2%;right:0}
@media(max-width:760px){
  .hero-portrait{min-height:400px;margin-top:0}
  .portrait-orbit{display:none}
  .portrait-image{height:105%;right:0;max-width:100%}
  .portrait-mark-one{width:78%;height:63%;right:3%;top:20%}
  .portrait-mark-two{width:66%;height:45%;right:8%;top:31%}
}

/* Sin círculo de fondo: solo ilustración y trazos decorativos */
.hero-portrait .portrait-orbit{display:none!important}

/* Ajustes portada solicitados */
.wordmark{gap:6px}
.wordmark>span{font-size:17px;letter-spacing:-.045em}
.wordmark small{font-size:9px;letter-spacing:.2em}
.hero-portrait .hero-index,.hero-portrait .art-caption{display:none!important}
.hero h1{font-size:clamp(46px,5.5vw,78px);line-height:1.02;letter-spacing:-.065em}
.hero-description{max-width:510px;line-height:1.8}
@media(max-width:760px){
  .wordmark>span{font-size:15px}
  .hero h1{font-size:clamp(43px,10vw,68px)}
}

/* Sección Sobre mí: nuevo titular y bloque de trayectoria */
.about-copy h2{font-size:clamp(34px,4.2vw,58px);line-height:1.08;margin-bottom:30px}
.about-copy>p{max-width:720px;font-size:13px;line-height:1.9;margin-bottom:16px}
.about-copy .text-link{margin-top:8px}
@media(max-width:760px){
  .about-copy h2{font-size:clamp(32px,8.5vw,48px)}
  .about-copy>p{font-size:13px}
  .about-stats {
  grid-column: 1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px 16px;
}
}

/* Iconos de herramientas en la sección Sobre mí */
.skills-icons{
  display:block;
  width:min(100%, 390px);
  height:auto;
  object-fit:contain;
  object-position:left center;
  margin:22px 0 24px;
  opacity:.94;
}
@media(max-width:760px){
  .skills-icons{width:min(100%, 340px);margin:18px 0 22px}
}


/* V9 — Caso de estudio GMM: imagen vertical completa y modal desplazable */
.project-dialog{
  max-height:90vh;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.dialog-image{
  max-height:none;
  overflow:visible;
  background:#f7f7f2;
}
.dialog-image img{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
}
@media(max-width:760px){
  .project-dialog{
    width:calc(100% - 20px);
    max-height:92vh;
    padding:28px 18px;
  }
  .dialog-image img{
    width:100%;
    height:auto;
    max-height:none;
  }
}


/* V10 — Caso de estudio GMM en secciones verticales */
.project-dialog{
  width:min(1040px, calc(100% - 32px));
  max-height:92vh;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-color:#c7f464 #20211e;
  scrollbar-width:thin;
}
.project-dialog[open]{animation:dialog-enter .25s ease-out}
@keyframes dialog-enter{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:translateY(0)}
}
.project-dialog #dialog-kicker{color:#c7f464;margin-bottom:14px}
.project-dialog #dialog-title{
  color:#c7f464;
  font-size:clamp(44px,7vw,82px);
  line-height:.98;
  margin:0 0 22px;
}
.project-dialog #dialog-description{
  max-width:760px;
  color:#f7f7f2;
  font-size:14px;
  line-height:1.85;
  margin-bottom:52px;
}
.gmm-case[hidden], .dialog-image[hidden]{display:none!important}
.gmm-case{display:flex;flex-direction:column;gap:76px}
.case-block{min-width:0}
.case-eyebrow{
  color:#a5a69f;
  margin:0 0 24px;
  font-size:9px;
  letter-spacing:.19em;
}
.case-eyebrow .eyebrow-line{background:#c7f464}
.case-visual{
  margin:0;
  overflow:hidden;
  display:flex;
  justify-content:center;
  align-items:center;
}
.case-visual img{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
}
.case-logo-visual{
  min-height:220px;
  padding:clamp(24px,6vw,70px);
  background:#f7f7f2;
}
.case-logo-visual img{max-width:760px}
.case-board-visual{
  padding:clamp(12px,2vw,26px);
  background:#f7f7f2;
}
.case-board-visual img{max-width:900px}
.case-copy{
  max-width:760px;
  margin:22px 0 0;
  color:#b8b9b1;
  font-size:13px;
  line-height:1.9;
}
.case-van-visual{
  padding:clamp(12px,2vw,28px);
  background:#20211e;
}
.case-van-visual img{max-width:100%}
.case-app-visual{
  margin-top:34px;
  padding:clamp(12px,2vw,28px);
  background:#f7f7f2;
}
.case-app-visual img{max-width:900px}
.case-social-visual{
  margin-top:34px;
  padding:clamp(12px,2vw,28px);
  background:#111;
}
.case-social-visual img{max-width:900px}
.project-dialog .dialog-bottom{
  border-top:1px solid #343631;
  padding-top:22px;
  margin-top:70px;
}
@media(max-width:760px){
  .project-dialog{
    width:calc(100% - 16px);
    max-height:94vh;
    padding:48px 18px 24px;
  }
  .project-dialog #dialog-title{font-size:clamp(42px,12vw,62px)}
  .project-dialog #dialog-description{font-size:13px;margin-bottom:38px}
  .gmm-case{gap:52px}
  .case-eyebrow{margin-bottom:17px}
  .case-logo-visual{min-height:130px;padding:18px}
  .case-copy{font-size:12px;line-height:1.85}
  .project-dialog .dialog-bottom{margin-top:48px;align-items:flex-start}
}


/* V11 — Presentación GMM en fondo claro y visuales sin cajas */
.project-dialog{
  background:#f7f7f2;
  color:#171816;
  scrollbar-color:#c7f464 #e5e3dc;
}
.project-dialog::backdrop{
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(5px);
}
.project-dialog .dialog-close{color:#171816}
.project-dialog #dialog-kicker{color:#62645b}
.project-dialog #dialog-title{color:#c7f464}
.project-dialog #dialog-description{color:#454740}
.project-dialog .case-eyebrow{color:#62645b}
.project-dialog .case-copy{color:#55574f}
.project-dialog .dialog-bottom{border-top-color:#d8d7cf}
.project-dialog .dialog-bottom>span{color:#62645b}
.project-dialog .text-link{color:#171816;border-bottom-color:#c7f464}

/* Imágenes integradas en el fondo claro: sin paneles añadidos */
.project-dialog .case-visual{
  background:transparent!important;
  padding:0;
  overflow:visible;
}
.project-dialog .case-visual img{
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
}
.project-dialog .case-logo-visual img{max-width:760px}
.project-dialog .case-board-visual img{max-width:900px}
.project-dialog .case-van-visual img{max-width:100%}
.project-dialog .case-app-visual img{max-width:900px}
.project-dialog .case-social-visual img{max-width:900px}
.project-dialog .case-visual + .case-visual{margin-top:34px}
.project-dialog .case-block{background:transparent}


/* V12 — Blanco puro y título negro en el caso de estudio */
.project-dialog{
  background:#ffffff;
  color:#111111;
}
.project-dialog #dialog-title{
  color:#111111;
}
.project-dialog .case-logo-visual,
.project-dialog .case-board-visual,
.project-dialog .case-van-visual,
.project-dialog .case-app-visual,
.project-dialog .case-social-visual{
  background:transparent!important;
}


/* V13 — Mantener los ajustes de V12: blanco puro y título negro en el caso de estudio */
.project-dialog{
  background:#ffffff;
  color:#111111;
}
.project-dialog #dialog-title{
  color:#111111;
}
.project-dialog .case-visual{
  background:transparent!important;
  padding:0;
  overflow:visible;
}
.project-dialog .case-visual img{
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
}
.project-dialog .case-logo-visual,
.project-dialog .case-board-visual,
.project-dialog .case-van-visual,
.project-dialog .case-app-visual,
.project-dialog .case-social-visual{
  background:transparent!important;
}

/* Portadas de proyectos: conservar siempre los colores originales */
.project-image img {
  filter: none;
}

/* v25: logo personal y favicon */
.wordmark{display:flex;align-items:center;justify-content:center;flex:0 0 auto;line-height:0}
.wordmark-logo{display:block;width:clamp(100px,10vw,132px);height:auto;max-height:68px;object-fit:contain;filter:brightness(0) invert(1)}
@media(max-width:760px){.wordmark-logo{width:92px;max-height:54px}}

/* Ikigai cover: image fills the complete card without colored bands. */
.image-ikigai{background:#486063}.image-ikigai img{object-fit:cover;width:100%;height:100%}

/* Progressive project loading */
.project.is-paginated-hidden{display:none}
.projects-more-wrap{display:flex;justify-content:center;padding-top:54px}
.projects-more{border:1px solid var(--line);background:transparent;color:var(--ink);padding:15px 22px;font:inherit;font-size:10px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.projects-more:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.projects-more span{margin-left:16px}
.projects-more[hidden]{display:none}
.projects-more-wrap[hidden]{display:none}

/* Cartelería: mostrar el cartel completo en las tarjetas y en el detalle */
.project-image.image-cartel{background:#20211e;display:flex;align-items:center;justify-content:center}
.project-image.image-cartel img{object-fit:contain;width:100%;height:100%}
.project-dialog .case-visual.case-app-visual img{width:100%;height:auto;max-height:none;object-fit:contain}

/* Cartelería: contorno de la paleta de la web para separar los carteles blancos del fondo */
#dialog-cruces-mayo-2023-case .case-visual img,
#dialog-fiestas-san-pedro-2022-case .case-visual img,
#dialog-san-pedro-2018-case .case-visual img,
#dialog-fragmentos-pilarenos-case .case-visual img,
#dialog-miguelturra-carnaval-2024-case .case-visual img{
  border: 2px solid var(--line, #c8cece);
  box-sizing: border-box;
}

/* Navegación de vuelta al inicio */
.back-to-top{position:fixed;right:clamp(18px,3vw,42px);bottom:clamp(18px,3vw,38px);z-index:90;width:48px;height:48px;border:1px solid #c7f464;border-radius:50%;background:#c7f464;color:#111;font-size:25px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 24px #0004;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .25s,transform .25s,visibility .25s}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top:hover{background:#f7f7f2;border-color:#f7f7f2}
.back-to-top:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* V44 — minimalista en blanco y negro */
:root{--paper:#ffffff;--ink:#111111;--muted:#666666;--line:#dddddd;--coral:#111111;--blue:#f2f2f2;--teal:#111111}
body{background:#fff!important;color:#111!important}.site-header{background:rgba(255,255,255,.94)!important;border-bottom-color:#e5e5e5!important}.nav-link{color:#333!important}.nav-link:after,.progress,.eyebrow-line{background:#111!important}h1 em,h2 em,.text-link:hover,.contact-bottom a:hover{color:#111!important}.hero-art:before{background:#f2f2f2!important}.card-back,.card-mid,.card-front,.card-stripe{filter:grayscale(1)}.card-back{background:#e5e5e5!important}.card-mid{background:#111!important}.card-front{background:#fff!important}.card-stripe{background:linear-gradient(90deg,#111 0 35%,#777 60%,#ddd)!important}.image-action{background:#111!important;color:#fff!important}.project-coral{background:#eee!important;color:#111!important}.project-blue{background:#f4f4f4!important;color:#111!important}.project-blue .placeholder-title span{color:#111!important}.about-section{background:#f3f3f3!important}.big-asterisk{color:#111!important}.contact-button{background:#111!important;color:#fff!important}.contact-button:hover{background:#444!important;color:#fff!important}.project-dialog{background:#fff!important;color:#111!important;border:1px solid #ddd!important}.project-dialog>p:not(.eyebrow){color:#555!important}.portrait-orbit{display:none!important}


/* V45 — blanco y negro real: contraste, logotipo e ilustración */
.hero-portrait:before{display:none!important;content:none!important}
.wordmark-logo{filter:brightness(0)!important}
.portrait-image{mix-blend-mode:multiply!important;filter:grayscale(1) contrast(1.12)!important}
.portrait-mark{border-color:rgba(17,17,17,.45)!important}
.portrait-mark-one,.portrait-mark-two{border-color:#111!important}
:root{--paper:#fff;--ink:#111;--muted:#666;--line:#ddd;--coral:#111;--blue:#f2f2f2;--teal:#111}
body, .site-header, .nav, .project-dialog{color:#111!important}
.wordmark,.wordmark small,.nav-link,.eyebrow,.hero-description,.hero-bottom,.section-note,.project-number,.project-subtitle,.portfolio-note,.about-copy>p,.about-stats span,.contact-bottom,footer,.dialog-bottom>span{color:#333!important}
.eyebrow-line,.nav-link:after,.progress{background:#111!important}
.text-link{color:#111!important;border-bottom-color:#111!important}
.text-link:hover,.contact-bottom a:hover{color:#111!important}
.about-section{background:#f3f3f3!important}
.big-asterisk{color:#111!important}
.contact-button{background:#111!important;color:#fff!important}
.contact-button:hover{background:#333!important;color:#fff!important}
.back-to-top{background:#111!important;color:#fff!important;border-color:#111!important;box-shadow:0 8px 24px #0002!important}
.back-to-top:hover{background:#333!important;border-color:#333!important}
.case-eyebrow .eyebrow-line,.project-dialog #dialog-kicker,.project-dialog #dialog-title,.project-dialog .text-link{color:#111!important;border-color:#111!important}
.project-dialog .text-link{border-bottom-color:#111!important}
@media(max-width:760px){.menu-toggle span{background:#111!important}}


/* V49 — portadas a sangre en móvil y sin bandas en Ikigai */
.image-ikigai{background:transparent!important}
.image-ikigai img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important}
@media(max-width:760px){
  .work-section .project-grid{margin-left:calc(-1 * clamp(22px,5vw,76px));margin-right:calc(-1 * clamp(22px,5vw,76px));}
  .work-section .project-image{width:100%;}
}

/* V50 — las portadas llegan al borde; los textos conservan margen en móvil */
@media(max-width:760px){
  .work-section .project-meta,
  .work-section .project-subtitle,
  .work-section .portfolio-note{margin-left:22px;margin-right:22px;}
}
