:root{--bg:#0b0806;--surface:#1c0f09;--surface-2:#27130a;--line:#5f3312;--text:#fffaf0;--muted:#c6b6a5;--red:#e74317;--orange:#ff6a18;--gold:#f5b92c;--radius:18px;--shadow:0 22px 45px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 5% 0%,rgba(231,67,23,.15),transparent 32rem),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}.skip-link{position:absolute;left:-999px;top:0}.skip-link:focus{left:1rem;top:1rem;z-index:1000;background:#fff;color:#000;padding:.6rem 1rem;border-radius:8px}.site-header{position:sticky;top:0;z-index:30;background:rgba(11,8,6,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(245,185,44,.2)}.nav-shell{width:min(1180px,calc(100% - 2rem));margin:auto;min-height:70px;display:flex;align-items:center;gap:1.5rem;justify-content:space-between}.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none;color:var(--text);font-weight:800;letter-spacing:.08em;font-size:.75rem}.brand img{width:46px;height:46px;object-fit:cover;border-radius:8px}.brand small{display:block;color:var(--gold);font-size:.55rem;letter-spacing:.15em}.site-nav{display:flex;gap:1.2rem;align-items:center}.site-nav a{color:var(--text);text-decoration:none;font-size:.9rem}.site-nav a:hover,.site-nav a[aria-current="page"]{color:var(--gold)}.cart-toggle{border:1px solid transparent;background:transparent;color:var(--gold);font:inherit;cursor:pointer;position:relative;padding:.45rem}.cart-count{position:absolute;right:-.35rem;top:-.25rem;background:var(--red);color:white;border-radius:50%;font-size:.68rem;line-height:1.15;padding:.13rem .35rem;min-width:1.2rem}.mobile-menu-toggle{display:none;border:1px solid rgba(245,185,44,.35);background:transparent;color:var(--gold);border-radius:8px;padding:.42rem .58rem;font:inherit;font-size:1.2rem;line-height:1;cursor:pointer}.section-shell{width:min(1180px,calc(100% - 2rem));margin-inline:auto}.hero{min-height:620px;display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:2rem}.hero__content{padding-block:5rem;position:relative;z-index:1}.hero__logo{width:120px;border-radius:16px;border:1px solid rgba(245,185,44,.45);box-shadow:var(--shadow)}.eyebrow{color:var(--gold);text-transform:uppercase;font-weight:800;letter-spacing:.13em;font-size:.75rem;margin:1.4rem 0 .55rem}.hero h1,.page-intro h1{font-size:clamp(3rem,6.5vw,5.8rem);line-height:.96;max-width:700px;margin:0}.hero h1 span{color:var(--orange)}.hero__lead{max-width:620px;color:var(--muted);font-size:1.1rem;margin-top:1.5rem}.button-row{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:10px;padding:.82rem 1.1rem;font-weight:800;text-decoration:none;border:1px solid transparent;cursor:pointer;font:inherit}.button--primary{color:#1b0803;background:linear-gradient(135deg,var(--gold),var(--orange))}.button--primary:hover{filter:brightness(1.08)}.button--ghost{color:var(--gold);border-color:rgba(245,185,44,.7);background:transparent}.button--whatsapp{background:#20c96a;color:#07170d;margin-top:1.4rem}.hero__visual{align-self:stretch;overflow:hidden;position:relative}.hero__visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg),transparent 36%,rgba(0,0,0,.25))}.hero__visual img{height:100%;width:100%;object-fit:cover;filter:saturate(.9)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:4rem}.feature-card,.services-card{background:linear-gradient(140deg,var(--surface),rgba(37,16,8,.85));border:1px solid rgba(245,185,44,.18);border-radius:var(--radius);padding:1.5rem}.feature-card__icon{color:var(--gold);font-size:1.65rem}.feature-card h2{font-size:1.1rem;margin:.7rem 0}.feature-card p,.section-heading p,.page-intro p,.story-grid p,.contact-section p{color:var(--muted)}.section-space{padding-block:4.5rem}.section-heading{text-align:center;max-width:680px;margin:0 auto 2rem}.section-heading h2,.story-grid h2,.contact-section h2{font-size:clamp(2rem,4vw,3rem);margin:.2rem 0 1rem}.highlight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.highlight-card{position:relative;display:block;color:var(--text);text-decoration:none;background:var(--surface);border-radius:14px;overflow:hidden;border:1px solid rgba(245,185,44,.2)}.highlight-card img{aspect-ratio:1;object-fit:cover;width:100%;display:block;transition:transform .25s}.highlight-card:hover img{transform:scale(1.04)}.highlight-card h3{padding:1rem;margin:0}.badge{position:absolute;top:1rem;left:1rem;background:var(--red);padding:.3rem .55rem;border-radius:999px;font-size:.75rem;font-weight:800}.story-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:start}.services-card h3{margin-top:0}.services-card ul{list-style:none;padding:0;margin:1rem 0 0}.services-card li{padding:.55rem 0;border-bottom:1px solid rgba(245,185,44,.16)}.services-card li:before{content:"✦";color:var(--gold);margin-right:.55rem}.contact-section{display:block;padding-bottom:5rem}.contact-section__intro{max-width:760px;margin:0 auto;text-align:center}.page-content{padding-top:2.5rem;padding-bottom:5rem}.back-link{display:inline-block;color:var(--gold);text-decoration:none;margin-bottom:2rem;font-weight:700}.page-intro{text-align:center;max-width:760px;margin:0 auto 3rem}.page-intro h1{font-size:clamp(2.7rem,6vw,4.8rem);margin:auto}.style-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem}.style-card{border:1px solid rgba(245,185,44,.25);border-radius:var(--radius);background:linear-gradient(130deg,var(--surface),#170c07);color:var(--text);display:grid;grid-template-columns:.9fr 1.1fr;text-decoration:none;overflow:hidden;min-height:270px;transition:transform .2s,border-color .2s}.style-card:hover{transform:translateY(-4px);border-color:var(--gold)}.style-card__image{height:100%;width:100%;object-fit:cover}.style-card__body{padding:1.35rem;display:flex;flex-direction:column}.style-card__body h2{margin:.2rem 0 .65rem;font-size:1.7rem}.style-card__body p{color:var(--muted);margin:0}.style-card__foot{display:flex;justify-content:space-between;gap:.5rem;margin-top:auto;padding-top:1rem;color:var(--gold);font-size:.88rem;font-weight:800;border-top:1px solid rgba(245,185,44,.18)}.collection-hero{border-radius:var(--radius);padding:2rem;background:linear-gradient(120deg,var(--surface-2),var(--surface));border:1px solid rgba(245,185,44,.25);margin-bottom:3rem}.collection-hero h1{font-size:clamp(2.2rem,4vw,3.4rem);margin:.15rem 0 .5rem}.collection-hero p{color:var(--muted);max-width:760px}.chip-row{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:1.3rem}.chip{border:1px solid rgba(245,185,44,.3);border-radius:999px;padding:.36rem .65rem;font-size:.8rem;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.product-card{position:relative;background:var(--surface);border:1px solid rgba(245,185,44,.2);overflow:hidden;border-radius:12px}.product-card>a{color:var(--text);text-decoration:none}.product-card img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.product-card__body{padding:.9rem}.product-card__body h3{margin:0;font-size:1rem}.product-card__body p{margin:.25rem 0 0;color:var(--gold);font-size:.88rem;font-weight:800}.quick-quote{position:absolute;right:.6rem;top:.6rem;border:1px solid var(--gold);background:rgba(12,8,6,.92);color:var(--gold);border-radius:999px;font:inherit;font-weight:800;padding:.4rem .65rem;cursor:pointer;font-size:.76rem}.modal{position:fixed;z-index:50;inset:0;display:none;align-items:center;justify-content:center;padding:1rem;background:rgba(0,0,0,.75)}.modal.is-open{display:flex}.modal__card{width:min(100%,560px);background:var(--surface);border:1px solid rgba(245,185,44,.5);border-radius:var(--radius);padding:1.35rem;box-shadow:var(--shadow);position:relative}.modal__close{position:absolute;right:1rem;top:.8rem;background:none;border:none;color:var(--text);font-size:1.5rem;cursor:pointer}.modal-product{display:grid;grid-template-columns:90px 1fr;gap:1rem;align-items:center;background:#100a07;border:1px solid rgba(245,185,44,.18);padding:.75rem;border-radius:12px}.modal-product img{width:90px;aspect-ratio:1;object-fit:cover;border-radius:8px}.modal-product h2{font-size:1.15rem;margin:0}.modal-price{color:var(--gold);font-weight:900;margin:.25rem 0}.selector-title{font-size:.95rem;margin:1.25rem 0 .6rem}.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem}.size-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.45rem}.choice{border:1px solid rgba(245,185,44,.28);color:var(--text);background:#100a07;border-radius:9px;padding:.7rem;cursor:pointer;font:inherit;text-align:left}.choice.is-selected{border-color:var(--gold);background:rgba(245,185,44,.12)}.choice small{display:block;color:var(--gold);font-weight:800;margin-top:.25rem}.detail-back{margin-bottom:2rem}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.product-detail__image{position:sticky;top:90px;background:var(--surface);padding:1rem;border-radius:var(--radius);border:1px solid rgba(245,185,44,.18)}.product-detail__image img{width:100%;border-radius:10px;display:block}.product-detail__content h1{font-size:clamp(2.2rem,4vw,4rem);line-height:1;margin:.2rem 0}.price-display{color:var(--gold);font-size:1.5rem;font-weight:900}.selector-section{margin-top:1.5rem}.guide-table{width:100%;border-collapse:collapse;margin-top:1.3rem;font-size:.88rem}.guide-table th,.guide-table td{padding:.65rem;border-bottom:1px solid rgba(245,185,44,.18);text-align:left}.guide-table th{color:var(--gold)}.detail-actions{display:grid;gap:.75rem;margin-top:1.5rem}.cart-drawer{position:fixed;right:0;top:0;bottom:0;width:min(100%,400px);z-index:60;transform:translateX(105%);transition:transform .25s;background:#120b07;border-left:1px solid rgba(245,185,44,.3);padding:1.2rem;box-shadow:var(--shadow);overflow:auto}.cart-drawer.is-open{transform:translateX(0)}.cart-drawer__head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(245,185,44,.2);padding-bottom:1rem}.cart-drawer button{font:inherit}.cart-close{background:none;color:var(--text);border:none;font-size:1.4rem;cursor:pointer}.cart-item{display:grid;grid-template-columns:60px 1fr auto;gap:.7rem;padding:1rem 0;border-bottom:1px solid rgba(245,185,44,.15)}.cart-item img{width:60px;height:60px;object-fit:cover;border-radius:8px}.cart-item h3{margin:0;font-size:.9rem}.cart-item p{margin:.15rem 0;color:var(--muted);font-size:.76rem}.cart-remove{background:none;color:#ff9678;border:none;cursor:pointer}.cart-total{display:flex;justify-content:space-between;font-size:1.15rem;font-weight:900;margin:1rem 0}.empty-state{color:var(--muted);padding:2rem 0;text-align:center}.site-footer{border-top:1px solid rgba(245,185,44,.17);background:#080604;padding:2rem 0;color:var(--muted)}.footer-shell{width:min(1180px,calc(100% - 2rem));margin:auto;display:flex;justify-content:space-between;gap:1rem;align-items:center}.footer-shell a{color:var(--gold)}
.cart-notice{position:fixed;z-index:90;left:50%;bottom:1.25rem;max-width:calc(100% - 2rem);transform:translate(-50%,140%);opacity:0;background:#173a24;color:#eaffef;border:1px solid rgba(97,231,139,.65);border-radius:12px;padding:.85rem 1.05rem;font-weight:800;box-shadow:var(--shadow);transition:transform .22s cubic-bezier(.23,1,.32,1),opacity .22s ease}.cart-notice.is-visible{transform:translate(-50%,0);opacity:1}
@media(max-width:800px){.nav-shell{min-height:63px;gap:.45rem;position:relative}.mobile-menu-toggle{display:block;order:2}.cart-toggle{order:3}.site-nav{position:absolute;display:none;left:0;right:0;top:100%;z-index:40;flex-direction:column;align-items:stretch;gap:.25rem;padding:.75rem 1rem 1rem;background:rgba(11,8,6,.98);border-bottom:1px solid rgba(245,185,44,.25);box-shadow:0 12px 24px rgba(0,0,0,.35)}.site-nav.is-open{display:flex}.site-nav a{font-size:.95rem;padding:.7rem .75rem;border-radius:8px}.site-nav a:hover,.site-nav a[aria-current="page"]{background:rgba(245,185,44,.1)}.brand span{display:none}.hero{grid-template-columns:1fr;min-height:auto}.hero__content{padding:3.5rem 0 4.5rem}.hero__visual{display:none}.feature-grid,.highlight-grid,.story-grid{grid-template-columns:1fr}.style-card-grid{grid-template-columns:1fr}.style-card{min-height:220px}.product-grid{grid-template-columns:repeat(2,1fr)}.product-detail{grid-template-columns:1fr;gap:1.5rem}.product-detail__image{position:static}.size-grid{grid-template-columns:repeat(3,1fr)}.footer-shell{align-items:flex-start;flex-direction:column}.hero h1{font-size:clamp(2.5rem,12vw,3.4rem)}.hero__lead{font-size:1rem}.hero__logo{width:104px}.button-row{display:grid;grid-template-columns:1fr}.button-row .button{width:100%}}@media(max-width:460px){.section-shell{width:min(100% - 1.25rem,1180px)}.nav-shell{width:calc(100% - 1.25rem)}.brand img{width:42px;height:42px}.style-card{grid-template-columns:.85fr 1.15fr}.style-card__body{padding:1rem}.style-card__body h2{font-size:1.3rem}.style-card__foot{font-size:.72rem}.product-grid{gap:.65rem}.quick-quote{font-size:.68rem;padding:.33rem .5rem}.product-card__body{padding:.65rem}.hero h1{font-size:clamp(2.35rem,12vw,3rem)}.hero__content{padding-top:2.6rem}.site-nav{max-width:none}}

.personalizer-float{position:fixed;right:1.25rem;bottom:1.25rem;z-index:70;display:inline-flex;align-items:center;gap:.55rem;border:1px solid rgba(245,185,44,.9);border-radius:999px;padding:.8rem 1.05rem;background:linear-gradient(135deg,var(--gold),var(--orange));color:#1b0803;text-decoration:none;font-weight:900;font-size:.78rem;letter-spacing:.02em;box-shadow:0 12px 32px rgba(245,185,44,.28);transition:transform .2s ease,filter .2s ease}.personalizer-float:hover{transform:translateY(-2px);filter:brightness(1.06)}.personalizer-float span{font-size:1.05rem}@media(max-width:520px){.personalizer-float{right:.75rem;bottom:.75rem;padding:.75rem .9rem;font-size:.72rem}.personalizer-float b{white-space:nowrap}}

@media(max-width:800px){.button-row{display:grid;grid-template-columns:1fr}.button-row .button{width:100%}}

.cart-item.without-image{grid-template-columns:minmax(0,1fr) auto}

/* Permite reabrir diseños guardados desde el carrito del sitio principal */
.cart-item-edit-link{display:block;text-decoration:none;color:inherit}
.cart-item-edit-link:hover h3{color:var(--gold);text-decoration:underline}
.cart-item-edit-action{display:inline-block;margin-top:6px;color:var(--gold);border:1px solid rgba(245,185,44,.42);border-radius:7px;padding:6px 9px;text-decoration:none;font-size:12px;font-weight:750}
.cart-item-edit-action:hover{background:rgba(245,185,44,.12)}

/* Control de cantidades y accesibilidad en el carrito */
.cart-quantity{display:inline-flex;gap:0;align-items:center;border:1px solid rgba(245,185,44,.42);border-radius:8px;margin:.25rem 0 .4rem;overflow:hidden;color:var(--text)}
.cart-quantity button{width:32px;min-height:32px;border:0;background:rgba(245,185,44,.10);color:var(--gold);font-weight:900;cursor:pointer}
.cart-quantity button:hover{background:rgba(245,185,44,.22)}
.cart-quantity span{min-width:34px;text-align:center;font-weight:800;font-size:.82rem}
.cart-item{min-width:0}.cart-item>div{min-width:0;overflow-wrap:anywhere}
.cart-item button:focus-visible,.cart-quantity button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}


/* --- Ajuste portada: logo grande integrado al fondo --- */
.hero__content{padding-block:4.5rem}
.hero__visual--logo{display:grid;place-items:center;min-height:100%;overflow:hidden}
.hero__visual--logo::before{content:"";position:absolute;inset:8% 10%;border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(255,110,24,.22),rgba(245,185,44,.08) 30%,rgba(11,8,6,.02) 55%,transparent 70%);filter:blur(18px);animation:heroPulse 5s ease-in-out infinite}
.hero__visual--logo::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 55% 50%,transparent 0 28%,rgba(11,8,6,.08) 58%,rgba(11,8,6,.18) 100%)}
.hero__logo-stage{position:relative;z-index:1;width:min(88%,640px);aspect-ratio:1/1;display:grid;place-items:center;isolation:isolate}
.hero__hero-logo{position:relative;z-index:3;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 24px 55px rgba(0,0,0,.55)) drop-shadow(0 0 28px rgba(255,110,24,.23))}
.hero__flame,.hero__embers{position:absolute;pointer-events:none}
.hero__flame{z-index:1;border-radius:50%;filter:blur(24px);mix-blend-mode:screen;opacity:.9;animation:floatFlame 4.8s ease-in-out infinite}
.hero__flame--one{width:47%;height:47%;left:5%;top:9%;background:radial-gradient(circle at 40% 45%,rgba(255,214,87,.8) 0 18%,rgba(255,120,24,.45) 35%,transparent 72%);animation-delay:-.4s}
.hero__flame--two{width:43%;height:43%;right:4%;top:13%;background:radial-gradient(circle at 50% 40%,rgba(255,196,72,.74) 0 18%,rgba(255,92,18,.42) 36%,transparent 72%);animation-delay:-1.2s}
.hero__flame--three{width:56%;height:56%;left:22%;bottom:0%;background:radial-gradient(circle at 50% 45%,rgba(255,167,44,.58) 0 18%,rgba(231,67,23,.35) 38%,transparent 74%);animation-delay:-2.1s}
.hero__embers{inset:0;z-index:0;background:
radial-gradient(circle at 17% 24%,rgba(255,194,74,.95) 0 2px,transparent 3px),
radial-gradient(circle at 26% 68%,rgba(255,116,20,.72) 0 1.8px,transparent 3px),
radial-gradient(circle at 62% 20%,rgba(255,194,74,.9) 0 1.8px,transparent 3px),
radial-gradient(circle at 82% 34%,rgba(255,116,20,.82) 0 2px,transparent 3px),
radial-gradient(circle at 70% 74%,rgba(255,194,74,.85) 0 1.8px,transparent 3px),
radial-gradient(circle at 34% 82%,rgba(255,116,20,.72) 0 2px,transparent 3px);animation:embersRise 8s linear infinite}
@keyframes floatFlame{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-12px) scale(1.06)}}
@keyframes embersRise{0%{transform:translateY(0)}50%{transform:translateY(-10px)}100%{transform:translateY(0)}}
@keyframes heroPulse{0%,100%{transform:scale(1);opacity:.95}50%{transform:scale(1.03);opacity:1}}

@media (max-width: 860px){
  .hero{grid-template-columns:1fr;min-height:auto;gap:1.25rem;padding-top:1rem}
  .hero__visual--logo{min-height:360px;order:-1}
  .hero__logo-stage{width:min(88vw,520px)}
  .hero__content{padding-top:1rem;padding-bottom:3.2rem}
}
@media (max-width: 580px){
  .hero{gap:.75rem}
  .hero__content{padding-block:1rem 2.5rem}
  .hero__visual--logo{min-height:290px}
  .hero__logo-stage{width:min(92vw,420px)}
  .hero__visual:after{background:linear-gradient(180deg,rgba(11,8,6,.12),transparent 24%,rgba(0,0,0,.18))}
}


/* --- Portada logo integrado + galería interactiva 2026-10-11 --- */
.hero__visual--logo{display:grid;place-items:center;min-height:540px}
.hero__visual--logo:after{background:linear-gradient(90deg,var(--bg),transparent 22%,rgba(0,0,0,.12))}
.hero__logo-stage{position:relative;display:grid;place-items:center;width:min(100%,640px);height:min(100%,560px);margin:auto}
.hero__hero-logo{width:min(100%,560px)!important;height:auto!important;object-fit:contain!important;filter:drop-shadow(0 30px 44px rgba(0,0,0,.52)) drop-shadow(0 0 34px rgba(255,102,20,.18));animation:heroLogoFloat 5.6s ease-in-out infinite}
.hero__logo-stage:before{content:"";position:absolute;inset:10% 12%;background:radial-gradient(circle at center,rgba(255,119,32,.12),transparent 58%);filter:blur(22px)}
.hero__flame,.hero__embers{position:absolute;pointer-events:none}
.hero__flame{width:140px;height:190px;background:radial-gradient(circle at 50% 72%,rgba(255,229,148,.98),rgba(255,153,51,.92) 28%,rgba(255,94,26,.72) 48%,rgba(255,64,0,.2) 72%,transparent 76%);filter:blur(5px);opacity:.85;mix-blend-mode:screen;animation:flameFlicker 2.6s ease-in-out infinite}
.hero__flame--one{left:2%;top:18%;transform:rotate(-14deg) scale(.95)}
.hero__flame--two{right:4%;top:14%;animation-delay:.65s;transform:rotate(12deg) scale(1.08)}
.hero__flame--three{right:16%;bottom:10%;animation-delay:1.2s;transform:rotate(-6deg) scale(.86)}
.hero__embers{inset:0;background-image:radial-gradient(circle,rgba(255,187,66,.95) 0 1.5px,transparent 1.8px),radial-gradient(circle,rgba(255,94,26,.85) 0 1.2px,transparent 1.6px),radial-gradient(circle,rgba(255,215,124,.7) 0 1.1px,transparent 1.6px);background-size:140px 140px,180px 180px,220px 220px;background-position:0 0,40px 60px,90px 20px;opacity:.55;animation:embersDrift 16s linear infinite}
@keyframes flameFlicker{0%,100%{transform:translateY(0) scale(1)}25%{transform:translateY(-6px) scale(1.04)}50%{transform:translateY(4px) scale(.97)}75%{transform:translateY(-2px) scale(1.07)}}
@keyframes embersDrift{from{transform:translateY(10px)}to{transform:translateY(-18px)}}
@keyframes heroLogoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.gallery-browser{display:grid;grid-template-columns:250px minmax(0,1fr);gap:1.25rem;align-items:start}
.gallery-sidebar{position:sticky;top:88px;padding:1rem;border-radius:18px;background:linear-gradient(145deg,var(--surface),#130a06);border:1px solid rgba(245,185,44,.18)}
.gallery-sidebar__title{margin:0 0 .85rem;color:var(--gold);font-weight:900;letter-spacing:.12em;text-transform:uppercase;font-size:.75rem}
.gallery-sidebar__nav{display:grid;gap:.7rem}
.gallery-side-btn{display:flex;align-items:center;justify-content:space-between;gap:.7rem;width:100%;padding:.9rem 1rem;border-radius:14px;border:1px solid rgba(245,185,44,.18);background:#120a07;color:var(--text);cursor:pointer;text-align:left;font:inherit}
.gallery-side-btn strong{display:block;font-size:1rem}.gallery-side-btn span{font-size:.78rem;color:var(--muted)}
.gallery-side-btn.is-active,.gallery-side-btn:hover{border-color:rgba(245,185,44,.55);background:linear-gradient(135deg,rgba(245,185,44,.14),rgba(255,106,24,.08))}
.gallery-sidebar__note{margin-top:1rem;padding:.9rem;border-radius:14px;background:rgba(255,255,255,.03);color:var(--muted);font-size:.88rem}
.gallery-content{min-width:0}.gallery-toolbar{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;margin-bottom:1rem}.gallery-toolbar h2{margin:.2rem 0 .45rem;font-size:clamp(1.8rem,3vw,2.6rem)}
.gallery-grid--50{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
.gallery-item{position:relative;display:flex;flex-direction:column;gap:.75rem;padding:.75rem;border-radius:16px;border:1px solid rgba(245,185,44,.16);background:linear-gradient(145deg,var(--surface),#140a06);color:var(--text);cursor:pointer;text-align:left;min-width:0}
.gallery-item:hover{transform:translateY(-2px);border-color:rgba(245,185,44,.4)}
.gallery-item__frame{display:block;aspect-ratio:1;border-radius:12px;overflow:hidden;background:linear-gradient(180deg,#201008,#120905);border:1px solid rgba(245,185,44,.08)}
.gallery-item__frame img{width:100%;height:100%;object-fit:cover;display:block}.gallery-item__meta strong,.gallery-item__meta small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gallery-item__meta strong{font-size:.9rem}.gallery-item__meta small{color:var(--gold);font-size:.75rem;margin-top:.2rem}
.gallery-item__placeholder{display:none;position:absolute;inset:1rem auto auto 1rem;right:1rem;top:3.6rem;color:var(--muted);font-size:.78rem;text-align:center;padding:0 .3rem}.gallery-item.is-empty .gallery-item__placeholder{display:block}.gallery-item.is-empty .gallery-item__frame{display:flex;align-items:center;justify-content:center}
.gallery-modal{position:fixed;inset:0;display:none;z-index:65}.gallery-modal.is-open{display:block}.gallery-modal__scrim{position:absolute;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(4px)}
.gallery-modal__card{position:relative;z-index:1;width:min(1000px,calc(100% - 2rem));margin:min(5vh,40px) auto;display:grid;grid-template-columns:1.05fr .95fr;background:#120b07;border:1px solid rgba(245,185,44,.35);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}
.gallery-modal__media{min-height:420px;background:linear-gradient(180deg,#1c1008,#0e0906);display:grid;place-items:center}.gallery-modal__media img{max-width:100%;max-height:72vh;display:block;object-fit:contain}.gallery-modal__fallback{color:var(--muted);padding:2rem;text-align:center}
.gallery-modal__body{padding:1.35rem 1.35rem 1.6rem}.gallery-modal__body h2{margin:.2rem 0 .7rem;font-size:clamp(2rem,4vw,3rem);line-height:.98}.gallery-modal__actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.2rem}.gallery-modal__close{position:absolute;right:1rem;top:1rem;width:40px;height:40px;border-radius:999px;border:1px solid rgba(245,185,44,.3);background:rgba(0,0,0,.35);color:#fff;font-size:1.2rem;cursor:pointer}
@media (max-width: 980px){.gallery-browser{grid-template-columns:1fr}.gallery-sidebar{position:static}.gallery-grid--50{grid-template-columns:repeat(4,minmax(0,1fr))}.gallery-toolbar{align-items:flex-start;flex-direction:column}.gallery-modal__card{grid-template-columns:1fr}}
@media (max-width: 760px){.hero{grid-template-columns:1fr}.hero__visual--logo{min-height:340px}.hero__hero-logo{width:min(88vw,420px)!important}.gallery-grid--50{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-modal__body{padding:1rem}.gallery-modal__media{min-height:280px}}
@media (max-width: 520px){.gallery-grid--50{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.gallery-side-btn{padding:.8rem}.gallery-modal__card{width:min(100%,calc(100% - 1rem));margin:.5rem auto}.gallery-modal__actions{display:grid;grid-template-columns:1fr}.gallery-modal__close{right:.6rem;top:.6rem}.gallery-item{padding:.65rem}}


/* Encabezado unificado: anclaje al contenedor real de todas las páginas.
   El header interior se genera por JS dentro de #site-header; hacerlo sticky
   sólo a él limitaba el desplazamiento al alto de su padre. */
#site-header {
  position: sticky;
  top: 0;
  z-index: 35;
  background: rgba(11,8,6,.97);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
#site-header > .site-header {
  position: relative;
  top: auto;
  z-index: auto;
  background: transparent;
}
html { scroll-padding-top: 84px; }
.cart-toggle {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  padding: 8px;
  border: 1px solid rgba(245,185,44,.24);
  border-radius: 12px;
  color: var(--gold);
  background: rgba(255,255,255,.025);
  cursor: pointer;
  position: relative;
}
.cart-toggle:hover, .cart-toggle:focus-visible {
  border-color: rgba(245,185,44,.65);
  background: rgba(245,185,44,.08);
}
.cart-icon { width: 25px; height: 25px; display: block; flex: none; }
.cart-toggle .cart-count {
  position: absolute;
  top: -5px;
  right: -5px;
  border-radius: 999px;
  min-width: 19px;
  height: 19px;
  display: grid;
  place-items: center;
  padding: 0 4px;
  color: #fff;
  background: var(--red);
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
}
@media (max-width:800px) {
  #site-header .site-nav { z-index: 41; }
  html { scroll-padding-top: 73px; }
}

/* Navegación uniforme en mayúsculas */
#site-header .site-nav a{text-transform:uppercase;letter-spacing:.025em;font-weight:750;font-size:.82rem}

/* Galerías por categoría: botones centrados y ventana flotante */
.gallery-entry{width:min(960px,100%);margin:0 auto 4rem;text-align:center;padding:2.2rem clamp(12px,4vw,42px);border:1px solid rgba(245,185,44,.20);border-radius:24px;background:radial-gradient(ellipse at top,rgba(255,119,24,.12),transparent 70%),#170c07}
.gallery-entry .eyebrow{margin:0 0 20px}
.gallery-category-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 auto 18px}
.gallery-category-launch{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:126px;padding:16px 10px;background:linear-gradient(145deg,#29150c,#150a06);border:1px solid rgba(245,185,44,.35);color:#fff5e6;border-radius:16px;font:inherit;cursor:pointer;transition:transform .16s,border-color .16s,box-shadow .16s}
.gallery-category-launch:hover,.gallery-category-launch:focus-visible{transform:translateY(-2px);border-color:#f5b92c;box-shadow:0 8px 25px rgba(255,111,26,.12)}
.gallery-category-launch-label{font-size:clamp(1.15rem,2.7vw,1.7rem);font-weight:850}
.gallery-category-launch-count{color:#ffc368;font-size:.82rem}
.gallery-entry-help{color:var(--muted);margin:1rem 0 1.5rem}
.gallery-category-dialog{box-sizing:border-box;width:min(1120px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 28px);margin:auto;background:#160c08;color:var(--text);border:1px solid rgba(245,185,44,.50);border-radius:20px;padding:0;overflow:hidden;box-shadow:0 30px 95px rgba(0,0,0,.75)}
.gallery-category-dialog::backdrop{background:rgba(0,0,0,.8);backdrop-filter:blur(5px)}
.gallery-category-dialog-inner{display:flex;flex-direction:column;max-height:calc(100dvh - 28px);padding:0 clamp(12px,2vw,24px) 16px}
.gallery-category-dialog-head{flex:none;display:flex;justify-content:space-between;align-items:start;gap:16px;padding:18px 0 14px;border-bottom:1px solid rgba(245,185,44,.25)}
.gallery-category-dialog-head .eyebrow{margin:0}.gallery-category-dialog-head h2{font-size:clamp(1.55rem,3vw,2.5rem);margin:3px 0}.gallery-category-dialog-head p:last-child{margin:0;color:var(--muted);font-size:.85rem}
.gallery-category-close{flex:none;display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(245,185,44,.4);border-radius:12px;background:#29170c;color:#fff;font-size:26px;cursor:pointer}
.gallery-category-dialog .gallery-grid--100{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:14px 5px 3px}
.gallery-category-dialog .gallery-item{padding:8px}
@media(max-width:790px){.gallery-category-dialog .gallery-grid--100{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:490px){.gallery-entry{padding:16px 12px}.gallery-category-buttons{grid-template-columns:1fr 1fr;gap:8px}.gallery-category-launch{min-height:100px}.gallery-category-dialog .gallery-grid--100{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gallery-category-dialog-inner{padding-inline:10px}}


/* Footer social Del Averno */
.site-footer--social{border-top:none;background:#000;padding:1.5rem 0 1rem;color:#fff}
.footer-shell--social{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:2rem;align-items:center}
.footer-brand-block{display:flex;justify-content:flex-start;align-items:center}
.footer-brand-logo{width:min(280px,100%);height:auto;display:block}
.footer-social-block{text-align:center;display:grid;gap:1.5rem}
.footer-social-block h2{margin:0;color:#fff;font-size:clamp(2rem,4vw,4rem);font-weight:500;letter-spacing:.02em;line-height:1.05}
.footer-social-links{display:flex;justify-content:center;align-items:center;gap:1.35rem;flex-wrap:wrap}
.social-icon-link{width:88px;height:88px;border-radius:22px;color:#fff;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:transform .2s ease, color .2s ease, box-shadow .2s ease;background:transparent}
.social-icon-link svg{width:64px;height:64px;display:block}
.social-icon-link:hover{color:var(--gold);transform:translateY(-3px);box-shadow:0 0 0 1px rgba(245,185,44,.35)}
.footer-bottom-line{width:min(calc(100% - 2rem),1830px);height:4px;background:#ff1e1e;margin:1rem auto 0}
.footer-bottom{padding-top:1rem;justify-content:flex-end}
.footer-bottom span{font-size:clamp(1rem,2vw,1.45rem);font-weight:700;letter-spacing:.03em;color:#fff}
@media (max-width: 820px){.footer-shell--social{grid-template-columns:1fr;gap:1.5rem}.footer-brand-block{justify-content:center}.footer-social-block h2{font-size:clamp(1.8rem,8vw,3rem)}.social-icon-link{width:72px;height:72px;border-radius:18px}.social-icon-link svg{width:52px;height:52px}.footer-bottom{justify-content:center;text-align:center}}


/* Contact section enhanced */
.contact-section{display:block;padding-bottom:5rem}
.contact-section__card{position:relative;overflow:hidden;border:1px solid rgba(245,185,44,.2);border-radius:28px;background:radial-gradient(circle at 10% 10%, rgba(231,67,23,.12), transparent 28rem),linear-gradient(135deg, rgba(24,11,7,.98), rgba(10,7,5,.98));padding:clamp(1.5rem,3vw,3rem);box-shadow:var(--shadow)}
.contact-section__card:before,.contact-section__card:after{content:"";position:absolute;border-radius:999px;filter:blur(60px);opacity:.22;pointer-events:none}
.contact-section__card:before{width:220px;height:220px;background:rgba(255,106,0,.45);top:-60px;left:-40px}
.contact-section__card:after{width:240px;height:240px;background:rgba(245,185,44,.25);bottom:-100px;right:-30px}
.contact-section__intro{max-width:820px;margin:0 auto;text-align:center;position:relative;z-index:1}
.contact-section__intro h2{font-size:clamp(2.7rem,6vw,4.8rem);line-height:1.04;margin:.35rem 0 1rem}
.contact-section__intro p{font-size:1.12rem;max-width:760px;margin:0 auto;color:var(--muted)}
.contact-highlight-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem;position:relative;z-index:1}
.contact-highlight-card{background:linear-gradient(150deg, rgba(34,15,9,.96), rgba(18,10,7,.95));border:1px solid rgba(245,185,44,.18);border-radius:22px;padding:1.35rem;display:grid;gap:.55rem;min-height:100%}
.contact-highlight-icon{width:44px;height:44px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;background:rgba(245,185,44,.14);color:var(--gold);font-size:1.35rem;border:1px solid rgba(245,185,44,.28)}
.contact-highlight-card h3{margin:0;font-size:1.08rem}
.contact-highlight-card p{margin:0;color:var(--muted)}
.contact-highlight-card strong{color:var(--text);font-size:.95rem}
.contact-cta-panel{margin-top:1.5rem;position:relative;z-index:1;display:grid;grid-template-columns:1.2fr .8fr;gap:1.2rem;align-items:center;padding:1.25rem;border-radius:24px;border:1px solid rgba(245,185,44,.18);background:linear-gradient(135deg, rgba(245,185,44,.08), rgba(231,67,23,.08))}
.contact-kicker{display:inline-flex;letter-spacing:.16em;font-size:.74rem;font-weight:800;color:var(--gold);margin-bottom:.55rem}
.contact-cta-copy h3{font-size:clamp(1.5rem,3vw,2.4rem);margin:0 0 .45rem}
.contact-cta-copy p{margin:0;color:var(--muted)}
.contact-cta-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.85rem;justify-self:end}
.button--contact{min-width:220px;font-size:1rem;box-shadow:0 18px 30px rgba(32,201,106,.22)}
.contact-phone{margin:0;color:var(--gold);font-size:1.35rem;font-weight:800;letter-spacing:.03em}
@media (max-width: 940px){.contact-highlight-row,.contact-cta-panel{grid-template-columns:1fr}.contact-cta-actions{justify-self:start}.contact-section__intro h2{font-size:clamp(2.2rem,9vw,3.7rem)}}
@media (max-width: 640px){.contact-section__card{padding:1.2rem;border-radius:22px}.contact-highlight-card{padding:1.1rem}.contact-phone{font-size:1.1rem}.button--contact{width:100%}.contact-cta-actions{width:100%}.contact-cta-actions .button{width:100%}}


/* CONTACTO PREMIUM V2: mejoras acotadas a #contacto */
#contacto .contact-section__card {
  isolation: isolate;
  background:
    radial-gradient(ellipse 65% 48% at 0% -7%,rgba(240,98,30,.2),transparent 70%),
    radial-gradient(ellipse 43% 68% at 100% 100%,rgba(223,105,18,.13),transparent 72%),
    linear-gradient(145deg,#140c09 0%,#0c0907 57%,#170e09 100%);
  border-color:rgba(245,185,44,.33);
  box-shadow:0 35px 100px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,232,189,.07);
}
#contacto .contact-section__card::before{width:480px;height:420px;top:-210px;left:-170px;opacity:.12;filter:blur(90px);background:#ff6b21;z-index:-1;animation:contact-glow 10s ease-in-out infinite alternate}
#contacto .contact-section__card::after{width:420px;height:420px;bottom:-200px;right:-170px;opacity:.1;filter:blur(90px);background:#ffb13b;z-index:-1;animation:contact-glow 12s ease-in-out infinite alternate-reverse}
#contacto .contact-ambient{position:absolute;pointer-events:none;z-index:0;opacity:.5;width:320px;height:360px;background-image:radial-gradient(circle,#ff9c47 1px,transparent 1.65px),radial-gradient(circle,#e86b1d 1px,transparent 1.5px);background-size:80px 100px,127px 97px;background-position:25px 20px,60px 40px;mask-image:linear-gradient(90deg,#000,transparent);animation:contact-embers 15s linear infinite}
#contacto .contact-ambient--left{top:0;left:-60px}
#contacto .contact-ambient--right{right:-60px;bottom:0;transform:rotate(180deg);animation-direction:reverse}
#contacto .contact-section__intro{max-width:790px}
#contacto .contact-mini-label{display:inline-flex;gap:.65rem;align-items:center;color:#f7c678;font-size:.7rem;letter-spacing:.22em;font-weight:800;line-height:1.2;border:1px solid rgba(245,185,44,.25);background:rgba(245,185,44,.065);border-radius:999px;padding:.55rem 1rem}
#contacto .contact-mini-label__spark{color:#ff8b38;font-size:.9rem;animation:contact-spark 3.7s ease-in-out infinite}
#contacto .eyebrow{font-size:.72rem;margin:1.3rem 0 .7rem;letter-spacing:.22em}
#contacto .contact-section__intro h2{font-weight:850;letter-spacing:-.045em;line-height:1.05;font-size:clamp(2.6rem,5.6vw,4.6rem);max-width:800px}
#contacto .contact-section__intro h2 span{display:inline;color:#ff7b2f}
#contacto .contact-section__intro>p:last-of-type{max-width:700px;font-size:1.04rem;line-height:1.7;color:#d5c3b4}
#contacto .contact-section__accent-bar{width:92px;height:3px;border-radius:999px;margin:1.4rem auto 0;background:linear-gradient(90deg,#ff6b20,#f5b92c);box-shadow:0 0 18px rgba(255,116,32,.35)}
#contacto .contact-highlight-row{margin-top:2.2rem;gap:1.1rem}
#contacto .contact-highlight-card{position:relative;min-height:235px;padding:1.45rem;background:linear-gradient(145deg,rgba(39,21,14,.92),rgba(17,11,9,.98));border-color:rgba(245,185,44,.18);transition:border-color .28s ease,transform .28s ease,box-shadow .28s ease;overflow:hidden}
#contacto .contact-highlight-card::before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:2px;background:linear-gradient(90deg,transparent,#ff9b3c,transparent);opacity:.36;transition:opacity .28s ease}
#contacto .contact-highlight-card:hover{border-color:rgba(255,154,64,.65);transform:translateY(-5px);box-shadow:0 18px 40px rgba(0,0,0,.3),0 0 22px rgba(255,101,24,.07)}
#contacto .contact-highlight-card:hover::before{opacity:.95}
#contacto .contact-highlight-icon{width:53px;height:53px;border-radius:16px;background:linear-gradient(150deg,rgba(245,185,44,.18),rgba(231,67,23,.09));color:#ffd38f;border-color:rgba(245,185,44,.33);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
#contacto .contact-highlight-icon svg{width:27px;height:27px}
#contacto .contact-card-tag{font-size:.68rem;letter-spacing:.16em;color:#e4a968;font-weight:800;margin:2px 0 0;line-height:1.25}
#contacto .contact-highlight-card h3{font-size:1.22rem;font-weight:800;letter-spacing:-.01em;color:#fff6ec}
#contacto .contact-highlight-card>p:not(.contact-card-tag){line-height:1.55;font-size:.93rem;color:#d8c6b6}
#contacto .contact-highlight-card strong{color:#fff6ec}
#contacto .contact-card-note{font-size:.85rem;line-height:1.5;color:#f8c68a;font-weight:750}
#contacto .contact-card-link{display:inline-flex;align-items:center;gap:.35rem;align-self:end;color:#ffb863;text-decoration:none;font-size:.91rem;font-weight:800;overflow-wrap:anywhere}
#contacto .contact-card-link:hover{text-decoration:underline;color:#ffcf92}
#contacto .contact-card-link span{font-size:1.05rem}
#contacto .contact-cta-panel{padding:clamp(1.2rem,2.6vw,2rem);border-radius:22px;gap:2rem;margin-top:1.35rem;background:linear-gradient(110deg,rgba(90,36,13,.48),rgba(48,22,12,.6) 56%,rgba(19,12,9,.95));border-color:rgba(255,143,51,.29)}
#contacto .contact-kicker{gap:.4rem;font-size:.72rem;color:#ffbc68}
#contacto .contact-cta-copy h3{max-width:560px;line-height:1.09;font-weight:800;letter-spacing:-.025em}
#contacto .contact-cta-copy h3 em{color:#ffa64d;font-style:normal}
#contacto .contact-cta-copy p{font-size:.96rem;line-height:1.65;color:#e5cdbc;max-width:570px}
#contacto .contact-cta-actions{gap:.7rem;width:min(100%,280px);justify-self:end}
#contacto .contact-cta-actions .button{min-height:51px;width:100%;display:flex;justify-content:center;gap:.7rem;text-align:center;font-weight:800;font-size:.95rem;transition:transform .23s ease,filter .23s ease,box-shadow .23s ease}
#contacto .contact-cta-actions .button svg{width:22px;height:22px;flex:0 0 22px}
#contacto .button--contact{color:#062211;background:linear-gradient(120deg,#24d773,#14b863);box-shadow:0 8px 24px rgba(16,189,90,.18)}
#contacto .contact-cta-actions .button:hover{transform:translateY(-3px);filter:brightness(1.08)}
#contacto .button--contact:hover{box-shadow:0 15px 30px rgba(16,189,90,.26)}
#contacto .button--contact-secondary{border-color:rgba(255,197,102,.45);color:#ffdfa6;background:rgba(0,0,0,.14)}
#contacto .contact-cta-caption{font-size:.75rem;color:#d2b99e;text-align:center;line-height:1.4}
#contacto a:focus-visible{outline:3px solid #f5b92c;outline-offset:4px}
@keyframes contact-glow{0%{opacity:.1;transform:translate(0,0)}100%{opacity:.18;transform:translate(20px,-14px)}}
@keyframes contact-embers{0%{background-position:25px 20px,60px 40px}100%{background-position:25px -130px,60px -110px}}
@keyframes contact-spark{0%,100%{opacity:.55;transform:scale(.88)}50%{opacity:1;transform:scale(1.18)}}
@media(max-width:940px){#contacto .contact-highlight-row{grid-template-columns:repeat(2, minmax(0,1fr))}#contacto .contact-highlight-card:last-child{grid-column:1/-1}#contacto .contact-cta-panel{grid-template-columns:1fr}#contacto .contact-cta-actions{justify-self:stretch;width:100%;max-width:none;display:grid;grid-template-columns:1fr 1fr}#contacto .contact-cta-caption{grid-column:1/-1}}
@media(max-width:680px){#contacto .contact-section__card{padding:1.4rem 1rem}#contacto .contact-mini-label{letter-spacing:.09em;font-size:.65rem}#contacto .contact-section__intro h2{font-size:clamp(2.15rem,8.5vw,3.2rem)}#contacto .contact-highlight-row{grid-template-columns:1fr;gap:.8rem;margin-top:1.5rem}#contacto .contact-highlight-card:last-child{grid-column:auto}#contacto .contact-highlight-card{min-height:auto;gap:.4rem;padding:1.1rem}#contacto .contact-cta-actions{grid-template-columns:1fr}#contacto .contact-cta-caption{grid-column:auto}#contacto .contact-cta-panel{gap:1.1rem}}
@media(prefers-reduced-motion: reduce){#contacto *,#contacto *::before,#contacto *::after{animation:none!important;transition:none!important}#contacto .contact-highlight-card:hover,#contacto .contact-cta-actions .button:hover{transform:none!important}}


/* Galería: marca de agua Del Averno en la presentación, nunca en los originales. */
body[data-page="gallery"] .gallery-item__frame,
body[data-page="gallery"] .gallery-modal__media { position:relative; overflow:hidden; }
body[data-page="gallery"] .gallery-item:not(.is-empty) .gallery-item__frame::after,
body[data-page="gallery"] .gallery-modal__media:not(.is-empty)::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  user-select:none;
  -webkit-user-select:none;
  background-image:url("images/logo-del-averno-hero-soft.png");
  background-repeat:repeat;
  background-size:clamp(70px, 38%, 135px) auto;
  background-position:16px 12px;
  opacity:.24;
}
body[data-page="gallery"] .gallery-modal__media:not(.is-empty)::after {
  background-size:160px auto;
  background-position:30px 25px;
  opacity:.23;
}
body[data-page="gallery"] .gallery-item img,
body[data-page="gallery"] .gallery-modal__media img {
  -webkit-user-drag:none;
  user-select:none;
  -webkit-user-select:none;
}
body[data-page="gallery"] .gallery-protection-info {
  margin:.65rem 0 0;
  font-size:.78rem;
  color:#bda78e;
}

/* Galerías adicionales alojadas en el hosting. Misma ventana de colección original. */
.gallery-extra-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:10px 0 9px;border-bottom:1px solid rgba(245,185,44,.19)}
.gallery-extra-open,.gallery-extra-back,.gallery-extra-more{min-height:40px;border:1px solid rgba(255,167,43,.55);border-radius:9px;background:linear-gradient(120deg,#441a0a,#241008);color:#ffce81;padding:9px 15px;font:800 12px/1.15 'Barlow',Inter,sans-serif;letter-spacing:.055em;cursor:pointer}
.gallery-extra-open{margin-left:auto;background:linear-gradient(135deg,#ffb333,#ff651c);color:#210b04;border-color:rgba(255,213,102,.9)}
.gallery-extra-open:hover,.gallery-extra-back:hover,.gallery-extra-more:hover{filter:brightness(1.15)}
.gallery-extra-open[hidden],.gallery-extra-back[hidden],.gallery-extra-bottom[hidden]{display:none!important}
.gallery-extra-status{color:#cfad8f;font-size:12px}
.gallery-extra-bottom{text-align:center;padding-top:12px}
.gallery-extra-more:disabled{opacity:.55;cursor:wait}
.gallery-extra-message{grid-column:1/-1;margin:20px auto;text-align:center;color:#d6bba9;max-width:580px;line-height:1.65}
@media(max-width:550px){.gallery-extra-toolbar{gap:8px;flex-direction:column;align-items:stretch}.gallery-extra-open{margin-left:0;width:100%}.gallery-extra-back{width:100%}.gallery-extra-status{text-align:center}.gallery-extra-bottom{padding-bottom:6px}}

/* El nombre «Películas, Series y Cómics» admite varias líneas en móviles. */
.gallery-category-launch-label{text-align:center;text-wrap:balance;overflow-wrap:break-word;line-height:1.18}
@media(max-width:490px){.gallery-category-launch-label{font-size:clamp(1rem,4.1vw,1.25rem)}}

/* Opciones 30 / 60 / Todas para el catálogo de Google Drive. */
.gallery-category-dialog .gallery-view-picker{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;color:#e1c4a5;font:700 12px 'Barlow',Inter,system-ui,sans-serif}
.gallery-category-dialog .gallery-view-picker span{margin-right:5px}
.gallery-category-dialog .gallery-view-picker button{cursor:pointer;min-width:54px;min-height:39px;padding:8px 12px;color:#ffddaa;background:#190d08;border:1px solid rgba(255,167,43,.4);border-radius:9px;font:800 13px 'Barlow',Inter,system-ui,sans-serif}
.gallery-category-dialog .gallery-view-picker button[aria-pressed="true"]{color:#190b04;background:linear-gradient(130deg,#ffc04b,#ff7826);border-color:#ffc259;box-shadow:0 0 0 1px rgba(255,186,75,.2)}
.gallery-category-dialog .gallery-view-picker button:focus-visible{outline:2px solid #ffcc6d;outline-offset:2px}
@media(max-width:550px){.gallery-category-dialog .gallery-view-picker{justify-content:center}.gallery-category-dialog .gallery-view-picker button{min-height:43px}.gallery-extra-toolbar .gallery-extra-status{width:100%}}
