/*
Theme Name: Soler Atelier
Description: Diseño de escaparate para Antigua Pasamanería J. Soler.
Version: 1.0.0
Text Domain: soler
*/
:root{--paper:#f7f3ea;--wine:#591e30;--ink:#34252a;--line:#d7cbbf;--gold:#bda273}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(1320px,90%);margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:600}.topline{background:var(--wine);color:var(--paper);padding:9px;text-align:center;font-size:12px;letter-spacing:.12em}header{border-bottom:1px solid var(--line);background:var(--paper)}.nav{height:98px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{font:36px Georgia,serif;letter-spacing:-2px}.logo small{display:block;font:9px Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase}.navlinks{display:flex;align-items:center;gap:32px;font-size:14px}.navlinks a:hover{color:#9b3755}.outline{border:1px solid var(--wine);padding:11px 20px}.hero{padding-top:44px}.hero-intro{display:flex;justify-content:space-between;align-items:center;color:var(--wine)}.hero-intro span:last-child{font:italic 17px Georgia,serif}h1{font:clamp(70px,12.9vw,184px)/.92 Georgia,serif;font-weight:400;letter-spacing:-.075em;margin:28px 0 34px;color:var(--wine)}h1 span{font-style:italic}.hero-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:70px;align-items:center}.photo{position:relative;overflow:hidden;background:#dbd1bf;min-height:390px;display:grid;place-items:center}.photo:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 8px,#fff2 8px 9px),repeating-linear-gradient(0deg,transparent 0 8px,#3e273208 8px 9px)}.photo img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}.photo-label{text-align:center;z-index:1;border:1px solid #77654b66;padding:27px 35px;color:#675947}.photo-label span{display:block;font:italic 35px Georgia,serif;margin-bottom:9px}.photo-label small{font-size:11px;letter-spacing:.15em;text-transform:uppercase}.caption{display:flex;justify-content:space-between;font-size:12px;margin-top:10px;color:#756962}.hero-copy{padding-bottom:15px}.hero-copy h2{font:clamp(34px,3.8vw,54px)/1.1 Georgia,serif;letter-spacing:-.035em;font-weight:400;margin:20px 0}.hero-copy p{max-width:370px;color:#70635e}.button{display:inline-flex;gap:30px;align-items:center;background:var(--wine);color:var(--paper);padding:15px 24px;font-size:14px;border:1px solid var(--wine);cursor:pointer}.button:hover{background:#793248}.button.secondary{background:transparent;color:var(--wine)}.textlink{display:inline-block;border-bottom:1px solid;padding-bottom:4px;font-size:14px}.hero-copy .textlink{margin-top:23px}.ribbon{display:flex;justify-content:space-between;gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:55px;padding:20px 0;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.section{padding:90px 0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:38px}h2{font:clamp(38px,5vw,64px)/1.1 Georgia,serif;letter-spacing:-.04em;font-weight:400;margin:14px 0}.section-head p{max-width:330px;font-size:15px;color:#70635e}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product .photo{min-height:300px}.product:nth-child(2) .photo{background:#d5c0b7}.product:nth-child(3) .photo{background:#c1c6b7}.product h3{font:30px Georgia,serif;margin:18px 0 6px}.product p{font-size:14px;color:#71615e;margin:0 0 14px}.product .photo-label{padding:15px;border:0}.product .photo-label span{font-size:65px;opacity:.5}.more{margin-top:34px;border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:14px}.story{background:var(--wine);color:var(--paper);padding:80px 0}.story-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px}.story p{color:#e1cdd2;max-width:460px}.story .photo{background:#753c49;min-height:410px}.story .photo-label{color:#efdadd;border-color:#bc8f9a}.story .textlink{margin-top:16px}.contact-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:90px}.contact-grid p{max-width:490px;color:#70635e}.contact-box{border:1px solid var(--line);padding:32px}.contact-box h3{font:28px Georgia,serif;margin:0 0 22px}.contact-row{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:18px 0;font-size:14px}.contact-row span:first-child{color:#70635e}.contact-row a{text-decoration:underline;text-underline-offset:4px}.contact-note{font-size:12px}.footer{border-top:1px solid var(--line);padding:30px 0 38px;display:flex;justify-content:space-between;align-items:center;gap:20px}.footer p{font-size:12px;color:#70635e}.preview-note{position:relative;background:#e9e0d2;text-align:center;padding:12px 20px;font-size:12px}.skip{position:absolute;left:-9999px}.skip:focus{left:15px;top:15px;background:white;padding:12px;z-index:10}a:focus-visible,button:focus-visible{outline:3px solid #b37c3c;outline-offset:5px}details{margin-top:20px}summary{cursor:pointer;font-size:14px;text-decoration:underline;text-underline-offset:4px}details p{font-size:14px}.menu-toggle{display:none}@media(max-width:800px){.nav{height:85px;flex-wrap:wrap}.menu-toggle{display:block;background:none;border:1px solid var(--line);padding:8px 12px}.navlinks{display:none;width:100%;padding:12px 0 22px;background:var(--paper);flex-wrap:wrap;gap:20px}.nav.open{height:auto;padding:20px 0}.nav.open .navlinks{display:flex}.hero-intro span:last-child{display:none}.hero-grid,.story-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.hero-grid{gap:15px}h1{font-size:clamp(62px,13.1vw,110px);margin:28px 0}.hero-copy h2{max-width:450px}.hero .photo{min-height:300px}.hero-copy{padding:20px 0 0}.ribbon{flex-wrap:wrap;font-size:10px;justify-content:center;margin-top:30px}.section{padding:60px 0}.section-head{display:block}.products{gap:15px}.product .photo{min-height:210px}.product .photo-label span{font-size:40px}.product .photo-label small{font-size:9px}.product h3{font-size:25px}.story{padding:55px 0}.story .photo{min-height:320px}.more{flex-direction:column}.footer{align-items:flex-start}.contact-box{padding:23px}}@media(max-width:520px){.products{grid-template-columns:1fr}.product{display:grid;grid-template-columns:40% 1fr;gap:0 20px;padding-bottom:22px;border-bottom:1px solid var(--line)}.product .photo{grid-row:1/5;min-height:190px}.product h3{margin-top:5px}.product .photo-label{padding:5px}.product .photo-label small{letter-spacing:0}.section-head h2{font-size:42px}.contact-row{flex-direction:column;gap:5px}.footer{flex-direction:column}.hero-intro{font-size:10px}.photo-label{padding:20px}.photo-label span{font-size:30px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Marca actual: símbolo en cabecera/pie y logotipo completo en portada. */
.logo{position:static;display:block;width:auto;max-width:100%;aspect-ratio:auto;overflow:visible;line-height:0;letter-spacing:normal}
.logo img{position:static;display:block;width:100%;max-width:100%;height:auto;mix-blend-mode:normal}
.nav{height:88px;gap:24px}
.navlinks{min-width:0;gap:24px}
.nav .logo,.footer .logo{width:42px;height:64px;flex:0 0 42px}
.nav .logo img,.footer .logo img{width:100%;height:100%;object-fit:contain}
.hero{padding-top:0}
.hero-brand{width:min(704px,72%);margin:0 auto 8px;line-height:0;letter-spacing:normal}
.hero-brand img{display:block;width:100%;height:auto;max-height:330px;object-fit:contain}

/* Ajustes para fotografías reales. */
.photo.has-image:before{display:none}
.product .photo{background:#fff!important}
.product .photo img{object-fit:cover;padding:0}
.hero .photo img{object-position:center 50%}
.story .photo img{object-position:50% 40%}
@media(max-width:1000px){.navlinks{gap:15px;font-size:13px}.navlinks .outline{padding:9px 12px}}
@media(max-width:800px){.nav{height:78px}.nav.open{height:auto}.nav .logo,.footer .logo{width:34px;height:54px;flex-basis:34px}.navlinks{font-size:14px}.hero{padding-top:0}.hero-brand{width:100%;margin:0 auto 6px}.hero-brand img{max-height:240px}}

/* Carrusel continuo controlado por script y arrastrable. */
.products-marquee{overflow:hidden;width:100%;padding:2px 0 18px;cursor:grab;touch-action:pan-y;user-select:none}
.products-marquee.is-dragging{cursor:grabbing}
.products-track{display:flex;width:max-content;gap:24px;will-change:transform}
.products-track .product{flex:0 0 min(360px,31vw)}
@media(max-width:800px){.products-track{gap:16px}.products-track .product{flex-basis:76vw}}
@media(max-width:520px){.products-track .product{display:block}.products-track .product .photo{min-height:230px}.products-track .product h3{margin-top:18px}}

.hours {
  margin-bottom: 28px;
}

.hours-row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 10px 0;
  border-top: 1px solid var(--line);
  font-size: 14px;
}

.hours-row span:first-child {
  color: #70635e;
}

@media(max-width:520px){
  .hours-row {
    gap: 10px;
    font-size: 13px;
  }
}

.contact-side {
  display: grid;
  align-content: start;
  gap: 18px;
}

.hours-box {
  padding: 24px 32px;
  border: 1px solid var(--line);
}

.hours-box .eyebrow {
  display: block;
  margin-bottom: 10px;
}

.hours {
  margin-bottom: 0;
}

.hours-row {
  padding: 3px 0;
  border-top: 0;
}

@media(max-width:800px){
  .hours-box {
    padding: 20px 23px;
  }
}

/* Acerca el logotipo a la línea inferior del menú. */
.hero-brand {
  margin-top: -30px;
  margin-bottom: -12px;
}

@media(max-width:800px){
  .ribbon { display: none; }

  .hero-brand {
    margin-top: 0;
    margin-bottom: 6px;
  }
}

.hero-grid > div:first-child .photo {
  min-height: 520px;
}

@media(max-width:800px){
  .hero-grid > div:first-child .photo {
    min-height: 420px;
  }
}

/* Historia: línea temporal horizontal */
.history-timeline-section{background:#522230;color:var(--paper);padding:30px 0 83px}
.history-timeline-section .history-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}
.history-timeline-section .history-head h2{margin:12px 0 0}
.history-timeline-section .history-head p{max-width:330px;color:#e1cdd2;margin:0}
.history-timeline{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:18px;height:330px;padding:0}
.history-timeline:before{content:"";position:absolute;left:calc((100% - 72px)/10);right:0;top:50%;height:1px;background:#efdadd;opacity:.9}
.history-step{position:relative;height:330px}
.history-number{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;display:block;width:20px;height:20px;border-radius:50%;background:#efdadd;box-shadow:none}
.history-card{position:absolute;left:0;right:0;background:var(--paper);color:var(--ink);padding:17px 18px;min-height:118px}
.history-card:after{content:"";position:absolute;left:50%;width:1px;height:30px;background:#efdadd;transform:translateX(-50%)}
.history-step:nth-child(odd) .history-card{bottom:calc(50% + 30px)}
.history-step:nth-child(odd) .history-card:after{bottom:-30px}
.history-step:nth-child(even) .history-card{top:calc(50% + 30px)}
.history-step:nth-child(even) .history-card:after{top:-30px}
.history-card strong{display:block;font:26px Georgia,serif;color:#522230}.history-card h3{font:20px Georgia,serif;margin:3px 0 6px}.history-card p{font-size:13px;line-height:1.4;color:#70635e;margin:0}
@media(max-width:800px){.history-timeline-section{padding:45px 0 80px}.history-timeline-section .history-head{display:block}.history-timeline-section .history-head p{margin-top:18px}.history-timeline{display:block;height:auto;padding-left:40px}.history-timeline:before{left:13px;right:auto;top:0;bottom:0;width:1px;height:auto}.history-step{height:auto;margin-bottom:18px}.history-number{left:-27px;top:24px;transform:translate(-50%,0)}.history-card,.history-step:nth-child(odd) .history-card,.history-step:nth-child(even) .history-card{position:relative;left:auto;right:auto;top:auto;bottom:auto;min-height:0}.history-card:after{display:none}}

/* Contacto compacto */
.contact-compact-section{padding-top:48px}.contact-section-title{font-size:clamp(34px,4vw,52px);margin:0 0 30px}.contact-compact{border:1px solid var(--line);background:#fbf8f1;padding:30px}
.contact-compact-main{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:center}
.contact-compact-main>div:first-child{padding-right:36px}
.contact-compact p{max-width:420px;color:#70635e;margin:0 0 20px}
.contact-actions{display:flex;gap:10px;flex-wrap:wrap}
.contact-actions .button.secondary{background:var(--wine);color:#fff}
.contact-details{padding-left:28px;display:grid;gap:13px}
.contact-detail{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:10px;font-size:14px}
.contact-detail span{color:#70635e}.contact-detail a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.contact-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:12px;border:1px solid var(--line);background:#fbf8f1}
.contact-mini{padding:18px;background:#fbf8f1}.contact-mini:first-child{border-right:1px solid var(--line)}
.contact-mini strong{display:block;font:20px Georgia,serif;margin-bottom:6px;color:var(--wine)}.contact-mini p{font-size:13px;line-height:1.45;margin:0;color:#70635e}.contact-mini a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.contact-compact-section{padding-top:38px}.contact-compact{padding:22px}.contact-compact-main{grid-template-columns:1fr;gap:25px}.contact-compact-main>div:first-child{padding-right:0}.contact-details{border-top:0;padding:22px 0 0}.contact-mini-grid{grid-template-columns:1fr}.contact-mini:first-child{border-right:0;border-bottom:1px solid var(--line)}}
#coleccion.section{padding-top:70px}
@media(max-width:800px){#coleccion.section{padding-top:40px}}
/* Ajuste de jerarquía en productos */
.section-head .eyebrow{display:block;font-size:14px;letter-spacing:.18em;margin-top:10px}
.section-head h2{margin-top:22px}
/* Ajuste final de historia y título de productos */
.section-head h2{margin-top:14px}
.history-timeline-section{padding-top:50px}
@media(max-width:800px){.history-timeline-section{padding-top:65px}}
/* Centrado del título de historia */
.history-timeline-section .history-head{justify-content:center;text-align:center}
/* Título de historia: izquierda y centrado verticalmente */
.history-timeline-section .history-head{justify-content:flex-start;text-align:left;align-items:center;min-height:100px;margin-bottom:20px}
.history-timeline-section .history-head h2{margin:0}
@media(max-width:800px){.history-timeline-section .history-head{min-height:0;margin-bottom:38px}.history-timeline-section .history-head h2{margin:12px 0 0}}
.history-timeline-section .history-head h2{transform:translateY(-12px)}
@media(max-width:800px){.history-timeline-section .history-head h2{transform:translateY(-12px)}}
#coleccion{padding-bottom:80px}
@media(max-width:800px){#coleccion{padding-bottom:50px}}
#coleccion{padding-bottom:60px}
@media(max-width:800px){#coleccion{padding-bottom:30px}}
.products-track .product .photo{min-height:320px}
@media(max-width:800px){.products-track .product .photo{min-height:230px}}
@media(max-width:520px){.products-track .product .photo{min-height:250px}}
#coleccion{padding-top:70px}
@media(max-width:800px){#coleccion{padding-top:40px}}
.products-track .product:nth-child(2) .photo img{transform:scale(1.08)}
.products-track .product:nth-child(2) .photo img{transform:none}


@media(max-width:800px){
  .products-marquee{padding-bottom:0}
  .products-track .product{border-bottom:0;padding-bottom:0}
  .products-track .product h3{margin-bottom:0}
}

@media(max-width:800px){
  .history-timeline:before{top:34px}
}

/* Flechas dibujadas con CSS para evitar que iOS las convierta en emoji. */
.arrow{display:inline-block;position:relative;width:.86em;height:.68em;vertical-align:-.08em;flex:0 0 .86em;color:currentColor}
.arrow::before{content:"";display:block;width:100%;height:100%;background:currentColor;clip-path:polygon(0 42%,62% 42%,62% 16%,100% 50%,62% 84%,62% 58%,0 58%)}
.arrow-up-right::before{transform:rotate(-45deg)}
.arrow-down-right::before{transform:rotate(45deg)}
.arrow-up::before{transform:rotate(-90deg)}
@media(max-width:800px){.hero-copy .textlink{display:none}}

/* En móvil se conserva la cabecera mínima con la borla y su línea divisoria. */
@media(max-width:800px){
  header .menu-toggle,
  header .navlinks{display:none!important}
  header .nav{height:78px;justify-content:flex-start}
}
