/* La Cartuja — shared header/menu/footer harmonisation v91 */
:root{--cartuja-blue:#012169;--site-unify-content:min(90vw,1760px);--site-unify-ease:cubic-bezier(.22,.61,.36,1);--site-unify-ease-long:cubic-bezier(.16,1,.3,1)}

/* Main navigation: same restrained underline behavior used by Artesanía. */
.nav-left>a,.nav-right>a:not(.search-link):not(.icon-btn){position:relative;padding-bottom:4px}
.nav-left>a:after,.nav-right>a:not(.search-link):not(.icon-btn):after{content:"";position:absolute;left:0;bottom:0;width:100%;height:.5px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform 420ms var(--site-unify-ease)}
.nav-left>a:hover:after,.nav-right>a:not(.search-link):not(.icon-btn):hover:after,.nav-left>a[aria-current="page"]:after,.nav-right>a[aria-current="page"]:after{transform:scaleX(1);transform-origin:left}

/* One mega menu across the site. Keep the special header colour logic on hero pages untouched. */
.mega{position:fixed;z-index:70;top:var(--header-h,104px);left:0;right:0;background:#fff;color:var(--ink,#0F1A2E);border-bottom:.5px solid var(--rule,#D9DDE4);transform:translate3d(0,-112%,0);opacity:0;visibility:hidden;pointer-events:none;transition:transform 680ms var(--site-unify-ease-long),opacity 360ms var(--site-unify-ease),visibility 0s linear 680ms;box-shadow:0 20px 60px rgba(15,26,46,.055)}
.menu-open .mega{transform:translate3d(0,0,0);opacity:1;visibility:visible;pointer-events:auto;transition:transform 680ms var(--site-unify-ease-long),opacity 360ms var(--site-unify-ease),visibility 0s}
.mega-inner{width:var(--site-unify-content)!important;margin:0 auto!important;padding:42px 0 46px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(280px,1.1fr)!important;gap:42px!important;align-items:start!important}
.mega-inner>div:not(.mega-card){border-right:.5px solid rgba(15,26,46,.10)!important;padding-right:30px!important}
.mega-inner>div:nth-child(3){border-right:0!important}
.mega h3{font-family:var(--serif,'EB Garamond',Georgia,serif)!important;font-size:28px!important;font-weight:400!important;line-height:1!important;margin:0 0 18px!important;color:var(--ink,#0F1A2E)!important}
.mega ul{list-style:none!important;margin:0!important;padding:0!important;display:grid!important;gap:0!important}
.mega li{border-top:.5px solid rgba(15,26,46,.10)!important;margin:0!important;padding:0!important}
.mega li:last-child{border-bottom:.5px solid rgba(15,26,46,.10)!important}
.mega li a{position:relative;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:9px 0!important;border:0!important;color:#1F2A40!important;font-family:var(--sans,'Montserrat',Arial,sans-serif)!important;font-size:13px!important;line-height:1.35!important;letter-spacing:.055em!important;transition:color .28s ease,background .28s ease!important}
.mega li a span{display:inline!important;padding:0!important;border:0!important;font:inherit!important;color:inherit!important;transition:transform 380ms var(--site-unify-ease),opacity 280ms ease!important}
.mega li a span:last-child:not(:first-child){font-size:11px!important;color:var(--muted,#6B7280)!important;letter-spacing:.12em!important}
.mega li a:before{content:"";position:absolute;left:-12px;top:50%;width:5px;height:5px;border-radius:50%;background:var(--cartuja-blue);opacity:0;transform:translate(-6px,-50%) scale(.6);transition:opacity .3s ease,transform .38s var(--site-unify-ease)}
.mega li a:hover span:first-child,.mega li a:focus-visible span:first-child,.mega li a.is-current span:first-child{transform:translateX(6px)}
.mega li a:hover:before,.mega li a:focus-visible:before,.mega li a.is-current:before{opacity:1;transform:translate(0,-50%) scale(1)}
.mega li a:active span:first-child{transform:translateX(8px) scale(.985)}
.mega-card{align-self:start!important;min-height:0!important;background:rgba(168,174,186,.18)!important;padding:12px!important;overflow:hidden!important}
.mega-card img{width:100%!important;height:160px!important;object-fit:cover!important;display:block!important}
.mega-card p{font-family:var(--serif,'EB Garamond',Georgia,serif)!important;font-size:23px!important;line-height:1.02!important;margin:15px 0 13px!important;color:var(--ink,#0F1A2E)!important;max-width:15ch!important}
.mega-card .cta{font-size:12px!important;letter-spacing:.17em!important;margin-bottom:2px!important}

/* One footer, based on Artesanía, across all customer-facing pages. */
footer.site-footer-unified{background:#fff!important;color:var(--ink,#0F1A2E)!important;border-top:.5px solid var(--rule,#D9DDE4)!important;padding:80px 0 42px!important}
.site-footer-unified .footer-grid{width:var(--site-unify-content)!important;margin:0 auto!important;display:grid!important;grid-template-columns:1.3fr repeat(3,1fr)!important;gap:48px!important}
.site-footer-unified .footer-logo img{height:64px!important;width:auto!important;margin:0 0 22px!important}
.site-footer-unified .footer-logo p{font-family:var(--serif,'EB Garamond',Georgia,serif)!important;font-size:23px!important;line-height:1.08!important;margin:0!important;color:var(--ink,#0F1A2E)!important;max-width:19ch!important}
.site-footer-unified h4{font-family:var(--sans,'Montserrat',Arial,sans-serif)!important;font-size:10px!important;letter-spacing:.18em!important;text-transform:uppercase!important;margin:0 0 18px!important;font-weight:500!important;color:var(--ink,#0F1A2E)!important}
.site-footer-unified .footer-grid a,.site-footer-unified .footer-grid span{display:block!important;font-family:var(--sans,'Montserrat',Arial,sans-serif)!important;font-size:12px!important;line-height:1.45!important;color:var(--ink-soft,#1F2A40)!important;margin:0 0 11px!important;cursor:pointer!important;transition:color .25s ease,transform .25s var(--site-unify-ease)!important}
.site-footer-unified .footer-grid a:hover{color:var(--cartuja-blue)!important;transform:translateX(3px)!important}
.site-footer-unified .footer-bottom{width:var(--site-unify-content)!important;margin:58px auto 0!important;padding-top:0!important;border-top:0!important;display:flex!important;justify-content:space-between!important;align-items:center!important;gap:20px!important;font-family:var(--sans,'Montserrat',Arial,sans-serif)!important;font-size:10px!important;line-height:1.4!important;letter-spacing:.14em!important;text-transform:uppercase!important;color:var(--muted,#6B7280)!important}
.site-footer-unified .footer-locale{display:inline-flex!important;align-items:center!important;gap:7px!important;margin:0!important;color:var(--muted,#6B7280)!important}
.site-footer-unified .footer-language-sep{display:inline!important;margin:0!important;color:rgba(107,114,128,.58)!important}
.site-footer-unified .footer-language-option{appearance:none;border:0;background:transparent;padding:1px 0 3px;margin:0;font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--muted,#6B7280);cursor:pointer;position:relative}
.site-footer-unified .footer-language-option:after{content:"";position:absolute;left:0;right:0;bottom:0;height:.5px;background:currentColor;transform:scaleX(0);transition:transform .3s ease}
.site-footer-unified .footer-language-option:hover,.site-footer-unified .footer-language-option.is-active{color:var(--ink,#0F1A2E)}
.site-footer-unified .footer-language-option:hover:after,.site-footer-unified .footer-language-option.is-active:after{transform:scaleX(1)}
.site-footer-unified .footer-legal-links{width:var(--site-unify-content)!important}

/* Home: one full-width Add piece button, then the two set sizes side-by-side. */
.scene-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important;width:min(100%,360px)!important}
.scene-actions>.ghost-btn.small-cart:first-child{grid-column:1/-1!important}
.scene-actions>.ghost-btn.small-cart.alt{padding-left:10px!important;padding-right:10px!important;font-size:9px!important;letter-spacing:.12em!important;white-space:nowrap!important}

/* Legal documents use the same global shell while retaining their document tabs/content. */
.unified-legal-shell{--header-h:104px}
.unified-legal-shell .site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:.5px solid rgba(15,26,46,.09);color:var(--ink,#0F1A2E)}
.unified-legal-shell .nav{height:var(--header-h);width:var(--site-unify-content);margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding-top:14px}
.unified-legal-shell .nav-left,.unified-legal-shell .nav-right{display:flex;gap:44px;align-items:center;font-size:10px;letter-spacing:.24em;text-transform:uppercase}
.unified-legal-shell .nav-right{justify-content:flex-end}.unified-legal-shell .logo{height:50px;width:auto;object-fit:contain}.unified-legal-shell .search-link{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px}.unified-legal-shell .search-link svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.25;fill:none}.unified-legal-shell .menu-trigger{display:flex;align-items:center;gap:12px}.unified-legal-shell .hamb{width:24px;height:14px;display:inline-block;position:relative}.unified-legal-shell .hamb:before,.unified-legal-shell .hamb:after{content:"";position:absolute;left:0;width:24px;height:.5px;background:currentColor;transition:transform 420ms var(--site-unify-ease),top 420ms var(--site-unify-ease)}.unified-legal-shell .hamb:before{top:2px}.unified-legal-shell .hamb:after{top:12px}.unified-legal-shell.menu-open .hamb:before{top:7px;transform:rotate(35deg)}.unified-legal-shell.menu-open .hamb:after{top:7px;transform:rotate(-35deg)}
.unified-legal-shell .legal-tabs-wrap{margin-top:var(--header-h)!important;top:var(--header-h)!important}

@media(max-width:1000px){
  .site-footer-unified .footer-grid{grid-template-columns:1fr 1fr!important;gap:38px!important}
  .mega-inner{grid-template-columns:1fr 1fr!important;padding:30px 0 34px!important;gap:28px!important}
  .mega-inner>div:not(.mega-card){border-right:0!important;padding-right:0!important}
  .mega-card{grid-column:1/-1!important;display:grid!important;grid-template-columns:minmax(180px,.8fr) 1fr!important;gap:18px!important;align-items:center!important}
  .mega-card img{height:130px!important;grid-row:1/3!important}.mega-card p{margin:0!important}.mega-card .cta{align-self:start!important}
  .unified-legal-shell{--header-h:76px}.unified-legal-shell .nav{height:76px;padding-top:0}.unified-legal-shell .nav-left>a,.unified-legal-shell .nav-right>a:not(.search-link){display:none}.unified-legal-shell .nav-left,.unified-legal-shell .nav-right{gap:12px}.unified-legal-shell .logo{height:42px}
}
@media(max-width:680px){
  .mega{top:var(--header-h,66px)!important;max-height:calc(100vh - var(--header-h,66px));overflow:auto}
  .mega-inner{width:calc(100vw - 32px)!important;grid-template-columns:1fr!important;padding:24px 0 30px!important;gap:24px!important}
  .mega-inner>div:not(.mega-card){border-bottom:.5px solid rgba(15,26,46,.10)!important;padding-bottom:20px!important}
  .mega h3{font-size:24px!important}.mega li a{padding:8px 0!important}.mega-card{grid-column:auto!important;display:block!important}.mega-card img{height:130px!important}.mega-card p{margin:14px 0 12px!important;font-size:22px!important}
  footer.site-footer-unified{padding:62px 0 34px!important}.site-footer-unified .footer-grid{width:calc(100vw - 32px)!important;grid-template-columns:1fr!important;gap:30px!important}.site-footer-unified .footer-bottom{width:calc(100vw - 32px)!important;display:grid!important;gap:12px!important;margin-top:42px!important}.site-footer-unified .footer-legal-links{width:calc(100vw - 32px)!important}.site-footer-unified .footer-locale{flex-wrap:wrap!important}
  .scene-actions>.ghost-btn.small-cart.alt{font-size:8px!important;letter-spacing:.08em!important;padding:0 7px!important}
  .unified-legal-shell{--header-h:66px}.unified-legal-shell .nav{height:66px;width:calc(100vw - 32px)}.unified-legal-shell .logo{height:34px}.unified-legal-shell .nav-right a{display:none}.unified-legal-shell .legal-tabs-wrap{top:66px!important;margin-top:66px!important}
}


/* v91 — Home scene: keep product name/actions fully inside the bordered viewer. */
.scene-product-view{overflow:hidden!important}
.scene-product-inner{box-sizing:border-box!important;padding:28px 70px 34px!important;justify-content:center!important}
.scene-product-inner img{height:min(38vh,330px)!important;margin-bottom:18px!important}
.scene-product-inner p{margin-bottom:6px!important}
.scene-product-inner h3{margin-bottom:5px!important}
.scene-product-inner .scene-price{display:block!important;margin-bottom:10px!important}
.scene-actions{margin-top:6px!important}
.scene-actions .ghost-btn.small-cart:hover,
.scene-actions .ghost-btn.small-cart.alt:hover{background:var(--cartuja-blue)!important;border-color:var(--cartuja-blue)!important;color:#fff!important}
@media(max-width:1000px){.scene-product-inner img{height:285px!important}.scene-product-inner{padding:28px 56px 38px!important}}
@media(max-width:680px){.scene-product-inner{padding:24px 38px 34px!important}.scene-product-inner img{height:220px!important;margin-bottom:14px!important}}


/* v92 — outer header geometry/typography unified to the homepage. Colour logic remains page-owned. */
.site-header .nav{width:min(90vw,1760px)!important;height:var(--header-h,104px)!important;margin:0 auto!important;display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;padding-top:14px!important}
.site-header .nav-left,.site-header .nav-right{display:flex!important;align-items:center!important;gap:44px!important;font-family:var(--sans,'Montserrat',Arial,sans-serif)!important;font-size:10px!important;line-height:1.15!important;letter-spacing:.24em!important;text-transform:uppercase!important;font-weight:400!important}
.site-header .nav-right{justify-content:flex-end!important}
.site-header .menu-trigger{display:flex!important;align-items:center!important;gap:12px!important;font:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;color:inherit!important}
.site-header .search-link{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:24px!important;height:24px!important;padding-bottom:0!important}
.site-header .search-link svg{width:15px!important;height:15px!important;stroke:currentColor!important;stroke-width:1.25!important;fill:none!important}
.site-header .logo{height:50px!important;max-height:50px!important;width:auto!important;object-fit:contain!important;justify-self:center!important}
.site-header a.logo{height:50px!important;width:auto!important}
.site-header a.logo img{height:50px!important;width:auto!important;object-fit:contain!important}
@media(max-width:1240px){
  .site-header .nav-left>a,.site-header .nav-right>a:not(.search-link):not(:last-child){display:none!important}
  .site-header .nav-left,.site-header .nav-right{gap:18px!important;font-size:9px!important}
}
@media(max-width:680px){
  .site-header .nav{height:var(--header-h,66px)!important;padding-top:6px!important}
  .site-header .logo,.site-header a.logo,.site-header a.logo img{height:34px!important;max-height:34px!important}
  .site-header .nav-left,.site-header .nav-right{gap:12px!important;font-size:9px!important}
}
