/* V88 · Colección Privada en modal. No altera los 26 bloques CSS originales. */
.private-collection-link{color:#8a633c!important;cursor:pointer}
.private-collection-link:before{content:"";display:inline-block;width:5px;height:5px;margin:0 7px 1px 0;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(181,139,84,.10)}
body.private-order-open{overflow:hidden!important}
.private-order-modal{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:22px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .34s ease,visibility .34s ease}
.private-order-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}
.private-order-backdrop{position:absolute;inset:0;background:rgba(12,9,7,.76);backdrop-filter:blur(14px) saturate(.85);-webkit-backdrop-filter:blur(14px) saturate(.85)}
.private-order-dialog{position:relative;z-index:1;width:min(1180px,96vw);max-height:94vh;overflow:hidden;border:1px solid rgba(198,157,99,.35);border-radius:30px;background:#f7efe5;box-shadow:0 42px 120px rgba(0,0,0,.48),0 0 0 1px rgba(255,255,255,.04);transform:translateY(18px) scale(.985);transition:transform .38s cubic-bezier(.2,.8,.2,1)}
.private-order-modal.is-open .private-order-dialog{transform:none}
.private-order-dialog:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(230,194,139,.88),transparent);z-index:5;pointer-events:none}
.private-order-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:24px 30px 20px;background:linear-gradient(125deg,#17110d 0%,#24170f 52%,#17110d 100%);color:#f7efe5}
.private-order-head:after{content:"M";position:absolute;right:82px;top:-36px;font:400 150px/1 Georgia,serif;color:rgba(181,139,84,.055);pointer-events:none}
.private-order-heading{position:relative;z-index:1;max-width:780px}
.private-order-kicker{margin-bottom:7px;color:#caa36d;font:700 10px/1.3 Arial,sans-serif;letter-spacing:.23em;text-transform:uppercase}
.private-order-head h2{margin:0!important;color:#f7efe5!important;font-size:clamp(28px,3.2vw,48px)!important;line-height:1!important;font-weight:400!important}
.private-order-head p{margin:10px 0 0!important;max-width:760px;color:#d8cab9!important;font-size:15px!important;line-height:1.55!important}
.private-order-close{position:relative;z-index:2;flex:0 0 auto;width:43px;height:43px;border:1px solid rgba(214,177,124,.30);border-radius:50%;background:rgba(255,255,255,.035);color:#ead7bd;font:300 28px/38px Arial,sans-serif;cursor:pointer;transition:.25s ease}
.private-order-close:hover{background:rgba(181,139,84,.16);border-color:rgba(214,177,124,.65);transform:rotate(5deg)}
.private-order-meta{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 30px;border-bottom:1px solid rgba(120,84,45,.17);background:#efe2d3;color:#725e4c;font:700 9px/1.4 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}
.private-order-confidential{display:flex;align-items:center;gap:8px;text-align:right}
.private-order-confidential i{display:block;width:6px;height:6px;border-radius:50%;background:#a77b47;box-shadow:0 0 0 4px rgba(167,123,71,.12)}
.private-order-frame-wrap{position:relative;height:min(69vh,790px);min-height:500px;background:linear-gradient(180deg,#f7efe5,#efe2d3)}
#privateCollectionFrame{display:block;width:100%;height:100%;border:0;background:#f7efe5;opacity:0;transition:opacity .28s ease}
#privateCollectionFrame.is-ready{opacity:1}
.private-order-loading{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;gap:13px;color:#735d49;font:700 10px Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase;background:#f7efe5;transition:opacity .25s ease,visibility .25s ease}
.private-order-loading.is-hidden{opacity:0;visibility:hidden}
.private-order-spinner{width:22px;height:22px;border:1px solid rgba(120,84,45,.20);border-top-color:#b58b54;border-radius:50%;animation:privateOrderSpin .8s linear infinite}
@keyframes privateOrderSpin{to{transform:rotate(360deg)}}
.private-order-success{display:none;min-height:520px;padding:58px 34px;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:radial-gradient(circle at 50% 20%,rgba(181,139,84,.13),transparent 32%),linear-gradient(180deg,#f9f1e8,#ead9c4)}
.private-order-dialog.is-success .private-order-frame-wrap,.private-order-dialog.is-success .private-order-meta{display:none}
.private-order-dialog.is-success .private-order-success{display:flex}
.private-order-success-mark{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:24px}
.private-order-success-mark span{width:64px;height:1px;background:linear-gradient(90deg,transparent,#b58b54)}
.private-order-success-mark span:last-child{background:linear-gradient(90deg,#b58b54,transparent)}
.private-order-success-mark img{width:62px;height:62px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(90,58,28,.16))}
.private-order-success-kicker{color:#9d7548;font:700 10px Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase}
.private-order-success h3{margin:13px 0 0!important;max-width:780px;color:#2d241d!important;font-size:clamp(34px,4.6vw,62px)!important;line-height:1.02!important;font-weight:400!important}
.private-order-success p{max-width:700px;margin:18px auto 0!important;color:#6f6257!important;font-size:18px!important;line-height:1.7!important}
.private-order-success-button{margin-top:28px;padding:14px 26px;border:1px solid rgba(181,139,84,.44);border-radius:999px;background:#20150f;color:#f7efe5;font:700 10px Arial,sans-serif;letter-spacing:.17em;text-transform:uppercase;cursor:pointer;box-shadow:0 13px 30px rgba(32,21,15,.19);transition:.25s ease}
.private-order-success-button:hover{transform:translateY(-2px);box-shadow:0 17px 36px rgba(32,21,15,.27)}
@media(max-width:1380px){.nav{gap:14px!important}.links{gap:12px!important}.links a{font-size:9px!important;letter-spacing:.13em!important}.private-collection-link:before{margin-right:5px}}
@media(max-width:760px){.private-order-modal{padding:8px}.private-order-dialog{width:100%;max-height:98vh;border-radius:22px}.private-order-head{padding:18px 18px 16px;gap:12px}.private-order-head:after{right:42px;font-size:110px}.private-order-head h2{font-size:30px!important}.private-order-head p{font-size:13px!important}.private-order-close{width:38px;height:38px;line-height:34px}.private-order-meta{padding:9px 16px;align-items:flex-start;flex-direction:column;gap:5px}.private-order-confidential{text-align:left}.private-order-frame-wrap{height:calc(98vh - 176px);min-height:430px}.private-order-success{min-height:calc(98vh - 135px);padding:36px 20px}.private-order-success p{font-size:16px!important}}
@media(max-width:440px){.private-order-kicker{letter-spacing:.17em}.private-order-head h2{font-size:27px!important}.private-order-head p{display:none}.private-order-frame-wrap{height:calc(98vh - 142px)}.private-order-meta{font-size:8px}.private-order-success-mark span{width:38px}}
@media(prefers-reduced-motion:reduce){.private-order-modal,.private-order-dialog,#privateCollectionFrame,.private-order-loading,.private-order-close,.private-order-success-button{transition:none!important}.private-order-spinner{animation:none!important}}


/* V89 · compact production pass + mobile-first iframe ergonomics */
.private-order-modal{padding:16px!important}
.private-order-dialog{width:min(1080px,94vw)!important;max-height:92dvh!important;border-radius:24px!important}
.private-order-head{padding:16px 22px 14px!important;gap:18px!important}
.private-order-head:after{right:72px!important;top:-42px!important;font-size:132px!important}
.private-order-kicker{margin-bottom:5px!important;font-size:9px!important;letter-spacing:.20em!important}
.private-order-head h2{font-size:clamp(24px,2.7vw,38px)!important;line-height:1.02!important}
.private-order-head p{margin-top:7px!important;font-size:13px!important;line-height:1.45!important}
.private-order-close{width:38px!important;height:38px!important;font-size:24px!important;line-height:34px!important}
.private-order-meta{padding:7px 22px!important;font-size:8px!important;letter-spacing:.14em!important}
.private-order-frame-wrap{height:min(72dvh,620px)!important;min-height:390px!important}
.private-order-success{min-height:430px!important;padding:42px 28px!important}
.private-order-success h3{font-size:clamp(30px,4vw,50px)!important}
.private-order-success p{font-size:16px!important}
@media(max-width:900px){
  .private-order-modal{padding:10px!important}
  .private-order-dialog{width:calc(100vw - 20px)!important;max-height:96dvh!important;border-radius:20px!important}
  .private-order-head{padding:14px 16px 12px!important}
  .private-order-head h2{font-size:26px!important}
  .private-order-head p{font-size:12px!important}
  .private-order-meta{padding:7px 16px!important}
  .private-order-frame-wrap{height:calc(96dvh - 132px)!important;min-height:390px!important}
}
@media(max-width:560px){
  .private-order-modal{padding:4px!important;align-items:stretch!important}
  .private-order-dialog{width:calc(100vw - 8px)!important;height:calc(100dvh - 8px)!important;max-height:none!important;border-radius:16px!important;margin:auto!important}
  .private-order-head{padding:11px 12px 10px!important;gap:8px!important;align-items:center!important}
  .private-order-head:after{display:none!important}
  .private-order-kicker{font-size:8px!important;letter-spacing:.14em!important;margin-bottom:3px!important}
  .private-order-head h2{font-size:21px!important;line-height:1.02!important}
  .private-order-head p{display:none!important}
  .private-order-close{width:34px!important;height:34px!important;line-height:30px!important;font-size:22px!important}
  .private-order-meta{padding:6px 12px!important;display:flex!important;flex-direction:row!important;align-items:center!important;white-space:nowrap!important;overflow:hidden!important}
  .private-order-confidential{display:none!important}
  .private-order-frame-wrap{height:calc(100dvh - 93px)!important;min-height:0!important}
  .private-order-success{min-height:calc(100dvh - 74px)!important;padding:28px 18px!important}
  .private-order-success h3{font-size:31px!important}
  .private-order-success p{font-size:15px!important;line-height:1.55!important}
}


/* V93 · MOBILE PRODUCTION POLISH
   La modal se comporta como una pantalla nativa en móvil y cubre completamente la navegación. */
.private-order-modal{z-index:20000!important}
#privateCollectionFrame{overscroll-behavior:contain}

@media(max-width:760px){
  .private-order-modal{
    inset:0!important;
    padding:0!important;
    align-items:stretch!important;
    justify-content:stretch!important;
  }
  .private-order-backdrop{
    background:#17110d!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .private-order-dialog{
    display:grid!important;
    grid-template-rows:auto auto minmax(0,1fr)!important;
    width:100vw!important;
    height:100dvh!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    transform:none!important;
    overflow:hidden!important;
  }
  .private-order-head{
    min-height:54px!important;
    padding:9px 12px 8px!important;
    align-items:center!important;
    gap:8px!important;
  }
  .private-order-heading{min-width:0!important}
  .private-order-kicker{
    margin:0 0 2px!important;
    font-size:7px!important;
    letter-spacing:.13em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .private-order-head h2{
    margin:0!important;
    font-size:18px!important;
    line-height:1.05!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .private-order-head p{display:none!important}
  .private-order-head:after{display:none!important}
  .private-order-close{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    font-size:23px!important;
    line-height:32px!important;
  }
  .private-order-meta{
    min-height:28px!important;
    padding:5px 12px!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    font-size:7px!important;
    line-height:1.2!important;
    letter-spacing:.12em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }
  .private-order-confidential{display:none!important}
  .private-order-frame-wrap{
    height:auto!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  #privateCollectionFrame{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    background:#f7efe5!important;
  }
  .private-order-success{
    min-height:0!important;
    height:100%!important;
    padding:28px 18px!important;
  }
  .private-order-success-mark{margin-bottom:16px!important}
  .private-order-success-mark img{width:52px!important;height:52px!important}
  .private-order-success h3{font-size:28px!important}
  .private-order-success p{font-size:14px!important;line-height:1.5!important}
}

/* Barra superior del sitio más limpia en móvil. */
@media(max-width:760px){
  nav{z-index:100!important}
  .nav{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    grid-template-areas:
      "brand spacer lang"
      "links links links"!important;
    align-items:center!important;
    gap:5px 10px!important;
    padding:7px 0 6px!important;
  }
  .brand{grid-area:brand!important;min-width:0!important}
  .brand img{width:40px!important}
  .brand b{display:none!important}
  .lang-switcher{grid-area:lang!important;margin:0!important;justify-self:end!important}
  .links{
    grid-area:links!important;
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    gap:14px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    flex-wrap:nowrap!important;
    padding:4px 1px 2px!important;
    margin:0!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-snap-type:x proximity!important;
  }
  .links::-webkit-scrollbar{display:none!important}
  .links a{
    flex:0 0 auto!important;
    scroll-snap-align:start!important;
    font-size:8px!important;
    letter-spacing:.12em!important;
    padding:4px 0!important;
    white-space:nowrap!important;
  }
  .private-collection-link:before{width:4px!important;height:4px!important;margin-right:5px!important}
}
