:root{
  --ink:#171412;
  --paper:#f4efe8;
  --paper-2:#eee6dc;
  --wine:#6f1425;
  --muted:#796f66;
  --line:rgba(23,20,18,.18);
  --pad:clamp(24px,4.4vw,72px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.5;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button{font:inherit;color:inherit}
::selection{background:var(--wine);color:#fff}
.skip-link{position:fixed;left:16px;top:-60px;z-index:200;background:#fff;padding:12px 16px;border-radius:2px;transition:.2s}
.skip-link:focus{top:16px}
.site-header{position:fixed;z-index:100;top:0;left:0;right:0;height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);transition:background .35s ease,box-shadow .35s ease,height .35s ease;color:var(--ink);background:rgba(244,239,232,0.85);backdrop-filter:blur(12px)}
.site-header.scrolled{height:68px;background:rgba(244,239,232,.95);backdrop-filter:blur(16px);box-shadow:0 1px 0 rgba(23,20,18,.1)}
.header-mark{font-family:Georgia,"Times New Roman",serif;font-size:20px;font-style:italic;letter-spacing:-.02em}
.desktop-nav{display:flex;gap:30px;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:.15em}
.desktop-nav a{position:relative;padding:8px 0}
.desktop-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:4px;height:1px;background:currentColor;transition:right .25s ease}
.desktop-nav a:hover::after{right:0}
.menu-toggle,.mobile-menu{display:none}

/* PORTADA PC: FOTO A LA IZQUIERDA */
.hero{position:relative;min-height:100svh;overflow:hidden;background:#d9c2a9;padding-top:82px}
.hero-media{position:absolute;top:82px;left:0;right:0;bottom:0}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:30% 20%}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(244,239,232,.30) 0%,rgba(244,239,232,.05) 45%,rgba(0,0,0,.08) 100%)}
.hero-content{position:absolute;left:var(--pad);top:50%;transform:translateY(-35%);width:min(48vw,680px);display:flex;flex-direction:column;align-items:flex-start}
.hero-logo{width:min(550px,100%);height:auto;margin-left:-2.5%}
.hero-content p{margin:25px 0 18px;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:clamp(18px,1.6vw,26px)}
.text-link{display:inline-flex;align-items:center;gap:16px;font-size:11px;text-transform:uppercase;letter-spacing:.18em;border-bottom:1px solid currentColor;padding-bottom:7px}
.text-link span{font-size:16px;transition:transform .2s ease}.text-link:hover span{transform:translateY(3px)}
.hero-index{position:absolute;right:var(--pad);bottom:28px;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.78)}

.section-pad{padding:clamp(90px,11vw,180px) var(--pad)}
.section-pad-x{padding-left:var(--pad);padding-right:var(--pad)}
.eyebrow{margin:0 0 24px;font-size:10px;text-transform:uppercase;letter-spacing:.24em;color:var(--muted)}
.manifesto{min-height:72vh;display:flex;flex-direction:column;justify-content:center}
.manifesto-title{margin:0;max-width:1300px;font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(48px,7.6vw,118px);line-height:.94;letter-spacing:-.055em}
.manifesto-copy{margin:42px 0 0 auto;max-width:550px;font-size:clamp(17px,1.4vw,23px);color:#5c554f}
.collection{padding:30px 0 clamp(110px,12vw,190px)}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:34px}
.section-head h2,.project-copy h2,.contact-title{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,5.5vw,82px);font-weight:400;letter-spacing:-.045em;line-height:1}
.section-note{margin:0 0 7px;font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}

.slider-shell{position:relative}
.slider-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;touch-action:pan-y;padding-left:var(--pad);padding-right:var(--pad);scroll-behavior:smooth;outline:none}
.slider-viewport::-webkit-scrollbar{display:none}
.slider-viewport.dragging{cursor:grabbing;scroll-behavior:auto;user-select:none}
.slider-track{display:flex;gap:clamp(14px,1.7vw,28px);width:max-content}
.slide{width:clamp(275px,28vw,500px);margin:0;flex:none}
.slide img{width:100%;aspect-ratio:4/5;object-fit:cover;background:#ddd;transition:transform .65s cubic-bezier(.22,.61,.36,1);will-change:transform}
.slide:hover img{transform:scale(1.012)}
.slide figcaption{display:flex;justify-content:space-between;padding-top:12px;font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted)}
.slider-progress{height:1px;background:var(--line);margin:34px var(--pad) 0;position:relative;overflow:hidden}
.slider-progress span{position:absolute;inset:0 auto 0 0;width:12.5%;background:var(--ink);transform-origin:left;transition:width .45s cubic-bezier(0.25, 1, 0.5, 1)}

.project{background:#181512;color:#f5efe8}
.project-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:clamp(40px,8vw,130px);align-items:center}
.project-image{margin:0;overflow:hidden}.project-image img{width:100%;aspect-ratio:4/5;object-fit:cover}
.project-copy{max-width:610px}.project-copy .eyebrow{color:#ad9f93}.project-copy h2{font-size:clamp(48px,6vw,92px);margin-bottom:42px}.project-copy p:not(.eyebrow){font-family:Georgia,"Times New Roman",serif;font-size:clamp(18px,1.55vw,25px);line-height:1.6;color:#d6cec5;margin:0 0 20px}

.editorial{padding-top:clamp(90px,11vw,170px);padding-bottom:clamp(110px,13vw,200px)}
.editorial-grid{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:auto auto auto;gap:clamp(18px,2.7vw,44px);max-width:1500px;margin:auto}
.editorial-grid figure{margin:0;overflow:hidden}.editorial-grid img{width:100%;height:100%;object-fit:cover}
.editorial-tall{grid-column:1;grid-row:1/4;aspect-ratio:4/5}.editorial-a,.editorial-b{aspect-ratio:4/3}.editorial-a{grid-column:2;grid-row:1}.editorial-b{grid-column:2;grid-row:3}
.editorial-quote{display:flex;align-items:center;min-height:220px;padding:30px 4vw;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.editorial-quote p{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(35px,4.2vw,68px);line-height:.98;letter-spacing:-.04em;font-style:italic}

/* CONTACTO LIMPIO (CORREGIDO EL ERROR DE POSICIONAMIENTO) */
.contact{border-top:1px solid var(--line)}
.contact-title{font-size:clamp(70px,11vw,170px)}
.contact-sub{margin:28px 0 60px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(18px,1.5vw,24px);color:var(--muted)}
.contact-links{border-top:1px solid var(--line)}
.contact-links a{display:flex;align-items:center;gap:20px;padding:26px 0;border-bottom:1px solid var(--line);transition:padding-left .25s ease;position:relative}
.contact-links a:hover{padding-left:10px}
.contact-links strong{font-family:Georgia,"Times New Roman",serif;font-size:clamp(19px,2vw,30px);font-weight:400;flex-grow:1}
.contact-links b{font-size:22px;font-weight:400}

/* LOGOS DE CONTACTO FIJOS A LA IZQUIERDA */
.contact-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  position: static;
}
.contact-icon svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  display: block;
}

.site-footer{padding:32px var(--pad);border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;gap:25px;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:.15em}
.footer-brand{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:15px;text-transform:none;letter-spacing:0}.footer-brand span{font-family:Inter,ui-sans-serif,sans-serif;font-style:normal;text-transform:uppercase;font-size:8px;letter-spacing:.18em;margin-left:8px}.footer-links{display:flex;gap:20px}.site-footer>div:last-child{text-align:right;color:var(--muted)}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .85s cubic-bezier(.22,.61,.36,1),transform .85s cubic-bezier(.22,.61,.36,1)}.reveal.is-visible{opacity:1;transform:none}

/* Legal pages */
.legal-page{padding:150px var(--pad) 100px;max-width:980px;margin:auto}.legal-page h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(52px,7vw,92px);font-weight:400;letter-spacing:-.05em;line-height:1;margin:0 0 60px}.legal-page h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:28px;margin:48px 0 15px}.legal-page p,.legal-page li{color:#514b46;line-height:1.75}.legal-page a{text-decoration:underline;text-underline-offset:3px}.legal-back{display:inline-block;margin-bottom:50px;font-size:10px;text-transform:uppercase;letter-spacing:.18em}

@media(max-width:900px){
  .desktop-nav{display:none}
  .menu-toggle{display:flex;width:40px;height:40px;border:0;background:transparent;flex-direction:column;justify-content:center;gap:6px;padding:8px;z-index:112}
  .menu-toggle span{display:block;height:1px;background:currentColor;width:100%;transition:.3s}
  .menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  
  .mobile-menu{
    display:flex;
    position:fixed;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background:var(--paper);
    z-index:105;
    flex-direction:column;
    justify-content:center;
    padding:var(--pad);
    gap:22px;
    transform: translateY(-100vh);
    transition: transform .45s cubic-bezier(.22,.61,.36,1);
    pointer-events: none;
  }
  .mobile-menu.open{
    transform: translateY(0) !important;
    pointer-events: auto;
  }
  .mobile-menu a{font-family:Georgia,"Times New Roman",serif;font-size:clamp(36px,9vw,58px);letter-spacing:-.04em}
  
  .project-grid{grid-template-columns:1fr}.project-image{max-width:78vw}.project-copy{margin-left:auto;max-width:700px}
  .section-note{display:none}
  .site-footer{grid-template-columns:1fr;gap:18px}.site-footer>div:last-child{text-align:left}.footer-links{flex-wrap:wrap}
}

@media(max-width:760px){
  :root{--pad:20px}
  .site-header{height:70px}
.hero-media{top:70px !important}
.hero-media img{object-position: 20% 35%}
  .hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.02) 20%,rgba(0,0,0,.28) 100%)}
  .hero-content{left:var(--pad);right:var(--pad);top:auto;bottom:64px;transform:none;width:auto;color:#fff;align-items:flex-start}
  .hero-logo{width:min(88vw,520px);filter:invert(1);margin-left:-2%}
  .hero-content p{font-size:18px;text-shadow:0 1px 6px rgba(0,0,0,.16)}
  .hero-index{bottom:18px}
  .manifesto{min-height:auto}.manifesto-title{font-size:clamp(49px,14.6vw,76px)}.manifesto-copy{margin:34px 0 0;max-width:100%}.desktop-only{display:none}
  .section-head{align-items:start}.section-head h2{font-size:48px}
  .slide{width:78vw}.slider-viewport{padding-right:10vw}.slider-track{gap:12px}
  .project{padding-top:92px;padding-bottom:100px}.project-image{max-width:100%}.project-copy h2{font-size:55px}.project-copy p:not(.eyebrow){font-size:18px}
  .editorial-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto auto auto}.editorial-tall{grid-column:1/3;grid-row:1;aspect-ratio:4/5}.editorial-a{grid-column:1;grid-row:2;aspect-ratio:4/5}.editorial-b{grid-column:2;grid-row:2;aspect-ratio:4/5}.editorial-quote{grid-column:1/3;grid-row:3;min-height:180px;padding:36px 8px}.editorial-quote p{font-size:44px}
  
  .contact-links a{display:flex;align-items:center;gap:16px;padding:22px 0;position:relative}
  .contact-links strong{font-size:18px;overflow-wrap:anywhere;flex-grow:1}
  .contact-links b{font-size:20px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
  .slide img,.mobile-menu,.site-header{transition:none}
}