/*
Theme Name: ALTO Outdoor
Version: 1.0.9
Description: Outdoor WooCommerce store based on the supplied ALTO design.
Author: ALTO
Text Domain: alto-outdoor
Requires at least: 6.4
Requires PHP: 7.4
License: GPL-2.0-or-later
*/


:root{--o:#ff5a1f;--k:#171717;--m:#777;--l:#e8e8e8;--w:1240px}*{box-sizing:border-box}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--k)}a{text-decoration:none;color:inherit}img{width:100%;display:block}.wrap{max-width:var(--w);margin:auto;padding:0 24px}.top{background:#222;color:#fff;padding:8px 0;font-size:11px}.top .wrap{display:flex;justify-content:space-between}.hdr{height:70px;position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #eee}.head{height:100%;display:flex;align-items:center}.logo{font-size:27px;font-weight:800;letter-spacing:-2px}.logo b{color:var(--o)}nav{margin:auto;display:flex;gap:27px;font-size:13px;font-weight:600}.tools{display:flex}.tools button{width:40px;height:40px;border:0;border-radius:50%;background:#fff}.tools button:hover{background:#f3f3f3}.menu{display:none!important}
.hero{height:570px;position:relative;overflow:hidden;background:#222}.slide{position:absolute;inset:0;opacity:0;transition:.65s}.slide.on{opacity:1}.slide img{height:100%;object-fit:cover}.slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0009,#0000 75%)}.copy{position:absolute;z-index:2;left:max(24px,calc((100% - 1192px)/2));top:50%;transform:translateY(-50%);color:#fff;max-width:510px}.copy h1{font-size:52px;line-height:1.05;margin:10px 0 15px}.copy p{line-height:1.7}.btn{display:inline-flex;align-items:center;gap:9px;background:var(--o);color:#fff;padding:14px 19px;border-radius:4px;font-weight:700;font-size:13px}.btn:hover{background:#111}.hdots{position:absolute;z-index:4;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:6px}.hdots button,.dots button{border:0;padding:0;width:7px;height:7px;border-radius:10px;background:#ccc}.hdots button{height:4px;width:28px;background:#ffffff70}.hdots button.on{width:48px;background:#fff}
.sec{padding:68px 0}.sh{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}.sh h2{margin:0;font-size:29px}.sh p{margin:7px 0 0;color:var(--m);font-size:13px}.rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}.rail::-webkit-scrollbar{display:none}.rail>*{scroll-snap-align:start}.product{flex:0 0 calc((100% - 54px)/4)}.pimg{height:375px;background:#f4f4f4;position:relative;overflow:hidden}.pimg img{height:100%;object-fit:cover;transition:.5s}.product:hover img{transform:scale(1.04)}.badge{position:absolute;top:11px;left:11px;background:#fff;padding:5px 8px;font-size:10px}.quick{position:absolute;left:11px;right:11px;bottom:11px;height:42px;border:0;background:#111;color:#fff;font-weight:700;opacity:0;transition:.25s}.product:hover .quick{opacity:1}.pi{padding:12px 2px}.pi h3{font-size:14px;margin:0 0 5px}.pi p{font-size:11px;color:var(--m);min-height:28px;margin:0 0 7px}.price{font-size:13px;font-weight:800}.price s{font-weight:400;color:#999;margin-right:6px}.stars{color:var(--o);font-size:11px;margin-top:7px}
.cat{flex:0 0 calc((100% - 54px)/4);height:375px;position:relative;border-radius:8px;overflow:hidden}.cat img{height:100%;object-fit:cover}.cat:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000a,#0000 55%)}.ct{position:absolute;z-index:2;left:20px;bottom:20px;color:#fff}.ct h3{margin:0 0 4px;font-size:21px}.ct span{font-size:11px}
.controls{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.dots{display:flex;gap:6px}.dots button.on{width:28px;background:var(--o)}.arr{display:flex;gap:7px}.arr button{width:40px;height:40px;border:1px solid #ddd;border-radius:50%;background:#fff}.arr button:hover{background:#111;color:#fff}.story{background:#f7f7f5}.storygrid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.storyimg{height:500px}.storyimg img{height:100%;object-fit:cover;border-radius:8px}.story h2{font-size:40px;margin:8px 0 15px}.story p{color:#666;line-height:1.8}.checks{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:22px 0}.check{font-size:13px;font-weight:700;display:flex;align-items:center;gap:9px}.check i{width:32px;height:32px;border-radius:50%;background:#fff;color:var(--o);display:grid;place-items:center}
.banner{height:420px;position:relative;color:#fff}.banner img{height:100%;object-fit:cover}.banner:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#000b,#0001)}.bc{position:absolute;z-index:2;left:max(24px,calc((100% - 1192px)/2));top:50%;transform:translateY(-50%);max-width:500px}.bc h2{font-size:39px;margin:0 0 10px}
.testi{flex:0 0 calc((100% - 36px)/3);padding:25px;border:1px solid var(--l);border-radius:8px}.testi blockquote{margin:16px 0 22px;line-height:1.7;font-size:14px}.person{display:flex;gap:10px;align-items:center}.person img{width:44px;height:44px;border-radius:50%;object-fit:cover}.person b,.person small{font-size:12px}.person small{display:block;color:#888}
.faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px}.faq h2{font-size:37px;margin:5px 0}.faq p{color:#777;line-height:1.7}.faq details{border-top:1px solid var(--l)}.faq details:last-child{border-bottom:1px solid var(--l)}.faq summary{padding:20px 0;list-style:none;display:flex;justify-content:space-between;font-size:14px;font-weight:700;cursor:pointer}.faq details p{font-size:13px;margin:0;padding:0 40px 20px 0}
footer{background:#222;color:#fff;padding:50px 0 24px}.foot{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:35px}.foot h3{font-size:25px}.foot h4{font-size:11px}.foot p,.foot a{font-size:11px;color:#bbb;line-height:2}.nl{display:flex;max-width:350px}.nl input{height:40px;flex:1;min-width:0;border:0;padding:0 12px}.nl button{width:42px;border:0;background:var(--o);color:#fff}
@media(max-width:850px){nav{display:none}.menu{display:block!important;margin-left:5px}.hero{height:500px}.copy h1{font-size:42px}.product,.cat{flex-basis:46%}.storygrid,.faq{grid-template-columns:1fr}.testi{flex-basis:48%}.foot{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.wrap{padding:0 16px}.top span:last-child{display:none}.hdr{height:62px}.logo{font-size:23px}.tools button:nth-child(-n+2){display:none}.hero{height:455px}.copy{left:20px;right:20px}.copy h1{font-size:35px}.copy p{font-size:13px}.sec{padding:50px 0}.sh h2{font-size:24px}.product{flex-basis:78%}.pimg{height:365px}.quick{opacity:1}.cat{flex-basis:82%;height:345px}.storyimg{height:340px}.story h2{font-size:31px}.checks{grid-template-columns:1fr}.banner{height:370px}.bc{left:20px;right:20px}.bc h2{font-size:31px}.testi{flex-basis:86%}.faq{gap:22px}.faq h2{font-size:30px}.foot>div:first-child{grid-column:1/-1}}

/* V2 visual identity — editorial typography, unique mobile header & premium footer */
h1,h2,h3,h4,.logo,.btn,.ct h3,.pi h3{font-family:"Manrope",sans-serif}
.logo{letter-spacing:-2.2px}

/* New footer */
.site-footer{background:#171918;color:#fff;padding:0}
.footer-top{padding:58px 0 44px}
.footer-grid{display:grid;grid-template-columns:1.45fr .72fr .72fr 1.05fr;gap:54px}
.footer-brand .logo{display:inline-block;color:#fff;font-size:30px;margin-bottom:17px}
.footer-brand p{max-width:350px;color:#aeb2af;font-size:12px;line-height:1.9;margin:0 0 22px}
.socials{display:flex;gap:8px}
.socials a{width:38px;height:38px;border:1px solid #3b3e3c;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;transition:.22s}
.socials a:hover{background:var(--o);border-color:var(--o);transform:translateY(-2px)}
.fcol h4{font-family:"Manrope",sans-serif;font-size:11px;letter-spacing:.13em;margin:5px 0 16px;color:#fff}
.fcol a{display:block;width:max-content;max-width:100%;color:#aeb2af;font-size:12px;line-height:2.15;transition:.2s}
.fcol a:hover{color:#fff;transform:translateX(3px)}
.footer-news h4{font-size:18px;letter-spacing:-.02em;margin:2px 0 7px}
.footer-news p{font-size:11px;color:#aeb2af;line-height:1.7;margin:0 0 15px}
.footer-news .nl{max-width:none;background:#fff;border-radius:5px;padding:4px}
.footer-news .nl input{border-radius:3px;font-family:"DM Sans",sans-serif}
.footer-news .nl button{height:40px;border-radius:3px}
.footer-bottom{border-top:1px solid #303331;padding:19px 0}
.footer-bottom .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}
.footer-bottom span,.footer-bottom a{font-size:10px;color:#858a86}
.footer-mini{display:flex;gap:18px}

/* Mobile header: compact floating outdoor-store navigation */
.mobile-word{display:none}
@media(max-width:600px){
  .top{display:none!important}
  .hdr{
    height:72px!important;
    position:sticky!important;
    top:0!important;
    border:0!important;
    background:#f7f7f4!important;
    padding:8px 0!important;
    box-shadow:none!important
  }
  .head{
    height:56px!important;
    padding:0 10px 0 15px!important;
    background:#fff!important;
    border:1px solid #e8e8e4!important;
    border-radius:14px!important;
    box-shadow:0 7px 24px rgba(20,20,20,.08)!important
  }
  .logo{
    font-size:22px!important;
    display:flex!important;
    align-items:center!important;
    letter-spacing:-1.8px!important
  }
  .logo:before{
    content:"";
    width:8px;height:8px;border-radius:50%;
    background:var(--o);margin-right:7px;
    box-shadow:0 0 0 4px #fff1eb
  }
  .tools{margin-left:auto!important;align-items:center!important;gap:3px!important}
  .tools button{display:none!important}
  .tools button:nth-last-child(2),
  .tools .menu{display:inline-flex!important;align-items:center!important;justify-content:center!important}
  .tools button:nth-last-child(2){
    width:39px!important;height:39px!important;background:#f4f4f1!important
  }
  .tools .menu{
    width:auto!important;height:40px!important;
    padding:0 13px!important;
    gap:7px!important;
    border-radius:10px!important;
    background:#181a19!important;color:#fff!important
  }
  .menu:after{content:"MENU";font-family:"Manrope",sans-serif;font-size:9px;font-weight:800;letter-spacing:.08em}
  .tools .menu:hover{background:var(--o)!important}
  .hero{height:440px!important}
}

/* Drawer generated by JS */
.mobile-drawer{display:none}
@media(max-width:600px){
 .mobile-drawer{
   position:fixed;z-index:49;top:72px;left:10px;right:10px;
   background:#fff;border:1px solid #e7e7e4;border-radius:0 0 14px 14px;
   box-shadow:0 18px 40px rgba(0,0,0,.13);padding:9px;
   transform:translateY(-10px);opacity:0;pointer-events:none;
   transition:.22s
 }
 .mobile-drawer.open{display:block;transform:none;opacity:1;pointer-events:auto}
 .mobile-drawer a{
   min-height:45px;padding:0 12px;border-bottom:1px solid #eee;
   display:flex;align-items:center;justify-content:space-between;
   font-family:"Manrope",sans-serif;font-size:11px;font-weight:700
 }
 .mobile-drawer a:after{content:"→";color:#aaa}
 .mobile-drawer a:last-child{border:0;background:var(--o);color:#fff;border-radius:8px;margin-top:6px;justify-content:center}
 .mobile-drawer a:last-child:after{display:none}
 .footer-top{padding:42px 0 28px}
 .footer-grid{grid-template-columns:1fr 1fr;gap:30px 22px}
 .footer-brand,.footer-news{grid-column:1/-1}
 .footer-brand{padding-bottom:4px}
 .footer-brand .logo{font-size:27px!important}
 .footer-brand .logo:before{display:none}
 .footer-news{padding-top:4px}
 .footer-bottom .wrap{align-items:flex-start;flex-direction:column;gap:9px}
 .footer-mini{gap:12px;flex-wrap:wrap}
}


/* V3 — universal icon centering + protection from Elementor accent/pink states */
.fi{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  vertical-align:middle!important;
  position:static!important;
  transform:none!important;
}
.fi:before{display:block!important;line-height:1!important;margin:0!important;padding:0!important}

.tools button,.ico,.menu,.arr button,.quick,.nl button,.socials a,.check i,.btn{
  align-items:center!important;
  justify-content:center!important;
}
.tools button,.ico,.menu,.arr button,.nl button,.socials a,.check i{
  display:inline-flex!important;
  padding:0!important;
}
.tools button .fi,.ico .fi,.menu .fi,.arr button .fi,.nl button .fi,.socials a .fi,.check i .fi{
  width:1em!important;height:1em!important;line-height:1!important;
}
.btn .fi{margin:0!important}
summary .fi{flex:0 0 24px!important;width:24px!important;height:24px!important;margin-left:auto!important}
.person{align-items:center!important}

/* Explicit states so Elementor/theme accent cannot leak into this store */
body .elementor .btn,
body .elementor .btn:visited{background:var(--o)!important;color:#fff!important;border-color:var(--o)!important}
body .elementor .btn:hover,
body .elementor .btn:focus,
body .elementor .btn:active{background:#111!important;color:#fff!important;border-color:#111!important}

body .elementor .tools button,
body .elementor .arr button,
body .elementor .socials a,
body .elementor .nl button,
body .elementor .quick{
  color:inherit!important;
  box-shadow:none!important;
}
body .elementor .tools button:hover,
body .elementor .tools button:focus,
body .elementor .tools button:active{background:#f3f3f3!important;color:var(--k)!important}
body .elementor .tools .menu,
body .elementor .tools .menu:visited{background:#181a19!important;color:#fff!important}
body .elementor .tools .menu:hover,
body .elementor .tools .menu:focus,
body .elementor .tools .menu:active{background:var(--o)!important;color:#fff!important}

body .elementor .arr button:hover,
body .elementor .arr button:focus,
body .elementor .arr button:active{background:#111!important;color:#fff!important;border-color:#111!important}
body .elementor .quick,
body .elementor .quick:visited{background:#111!important;color:#fff!important}
body .elementor .quick:hover,
body .elementor .quick:focus,
body .elementor .quick:active{background:var(--o)!important;color:#fff!important}
body .elementor .socials a:hover,
body .elementor .socials a:focus,
body .elementor .socials a:active,
body .elementor .nl button:hover,
body .elementor .nl button:focus,
body .elementor .nl button:active{background:var(--o)!important;color:#fff!important;border-color:var(--o)!important}

body .elementor a:hover,
body .elementor a:focus,
body .elementor a:active{--e-global-color-accent:var(--o);text-decoration:none!important}
body .elementor .dots button,
body .elementor .hdots button{box-shadow:none!important;border:0!important}
body .elementor .dots button.on{background:var(--o)!important}
body .elementor .hdots button.on{background:#fff!important}
body .elementor summary:hover,
body .elementor summary:focus,
body .elementor summary:active{color:var(--k)!important;background:transparent!important}

/* Keep footer icons mathematically centered */
.socials a{width:38px!important;height:38px!important;min-width:38px!important}
.footer-news .nl button{display:inline-flex!important;align-items:center!important;justify-content:center!important}


/* V4 — functional search canvas + mini-cart drawer */
.canvas-scrim{position:fixed;inset:0;z-index:89;background:rgba(0,0,0,.38);opacity:0;visibility:hidden;transition:.28s}
.canvas-scrim.show{opacity:1;visibility:visible}
.search-canvas{position:fixed;z-index:90;left:0;right:0;top:0;background:#fff;transform:translateY(-105%);transition:transform .38s cubic-bezier(.2,.75,.2,1);box-shadow:0 18px 50px rgba(0,0,0,.12)}
.search-canvas.open{transform:none}
.search-inner{max-width:var(--w);margin:auto;padding:30px 24px 34px}
.canvas-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}
.canvas-head h3{font-family:"Manrope",sans-serif;margin:0;font-size:22px}
.canvas-close{width:42px;height:42px;border:1px solid #ddd;background:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
.search-form{display:flex;align-items:center;border-bottom:2px solid #181818}
.search-form i{font-size:21px}
.search-form input{flex:1;min-width:0;height:58px;border:0;outline:0;padding:0 15px;font:500 18px "DM Sans",sans-serif}
.search-form button{border:0;background:#181818;color:#fff;height:42px;padding:0 18px;border-radius:4px;font-weight:700}
.search-results{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px}
.sresult{display:flex;gap:10px;align-items:center;padding:9px;border:1px solid #eee;border-radius:7px;cursor:pointer}
.sresult img{width:58px;height:70px;object-fit:cover;background:#f5f5f5}
.sresult b{font-size:11px;display:block}.sresult small{font-size:10px;color:#777}
.no-result{grid-column:1/-1;color:#777;font-size:13px;padding:14px 0}

.cart-drawer{position:fixed;z-index:91;right:0;top:0;bottom:0;width:min(92vw,420px);background:#fff;transform:translateX(105%);transition:transform .38s cubic-bezier(.2,.75,.2,1);display:flex;flex-direction:column;box-shadow:-18px 0 50px rgba(0,0,0,.13)}
.cart-drawer.open{transform:none}
.cart-head{height:74px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee}
.cart-head h3{font-family:"Manrope",sans-serif;margin:0;font-size:18px}.cart-head h3 span{color:#888;font-size:12px}
.cart-items{padding:18px 22px;overflow:auto;flex:1}
.cart-empty{text-align:center;padding:70px 25px;color:#777}.cart-empty i{display:flex!important;margin:0 auto 15px;width:54px;height:54px;border-radius:50%;background:#f5f5f3;font-size:22px}
.cart-item{display:grid;grid-template-columns:76px 1fr auto;gap:12px;padding:0 0 16px;margin-bottom:16px;border-bottom:1px solid #eee}
.cart-item img{width:76px;height:94px;object-fit:cover;background:#f5f5f5}.cart-item h4{font-size:12px;margin:4px 0 6px}.cart-item small{color:#777;font-size:10px}.cart-item b{font-size:12px;display:block;margin-top:8px}
.qty{display:flex;align-items:center;margin-top:10px}.qty button{width:27px;height:27px;border:1px solid #ddd;background:#fff}.qty span{width:30px;text-align:center;font-size:11px}.remove{border:0;background:none;color:#999;font-size:16px;height:30px}
.cart-foot{padding:18px 22px 22px;border-top:1px solid #eee;background:#fafafa}.subtotal{display:flex;justify-content:space-between;font-weight:800;margin-bottom:13px}.cart-foot .checkout{width:100%;height:48px;border:0;border-radius:4px;background:var(--o);color:#fff;font-weight:800}.cart-foot .checkout:hover{background:#111}
.cart-count{position:absolute;right:1px;top:0;min-width:17px;height:17px;border-radius:9px;background:var(--o);color:#fff;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center;padding:0 4px}
.tools button{position:relative}
.cart-toast{position:fixed;z-index:100;left:50%;bottom:24px;transform:translate(-50%,100px);background:#181818;color:#fff;padding:11px 16px;border-radius:99px;font-size:11px;opacity:0;transition:.3s}.cart-toast.show{transform:translate(-50%,0);opacity:1}
@media(max-width:700px){.search-inner{padding:20px 16px 24px}.search-results{grid-template-columns:1fr 1fr}.search-form input{font-size:15px}.search-form button{padding:0 12px}.cart-drawer{width:94vw}.cart-head{height:66px}.cart-toast{bottom:18px}.tools button:nth-last-child(2){display:inline-flex!important}}


/* V5 — strict desktop/mobile header visibility */
@media (min-width:851px){
  .hdr .menu,
  .hdr .menu-btn,
  .mobile-drawer{
    display:none!important;
  }
  .hdr .tools{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:3px!important;
  }
  .hdr .tools > button:not(.menu):not(.menu-btn){
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
}
/* Keep mobile-specific controls mobile only */
@media (max-width:850px){
  .hdr .menu{display:inline-flex!important}
}



/* V6 — real Flaticon social brand icons */
.socials a{
  overflow:hidden!important;
  text-decoration:none!important;
}
.socials a .fi-brands-instagram,
.socials a .fi-brands-facebook,
.socials a .fi-brands-youtube{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:18px!important;
  height:18px!important;
  font-size:18px!important;
  line-height:1!important;
  color:#fff!important;
  position:static!important;
  transform:none!important;
}
.socials a .fi-brands-instagram:before,
.socials a .fi-brands-facebook:before,
.socials a .fi-brands-youtube:before{
  display:block!important;
  margin:0!important;
  padding:0!important;
  line-height:1!important;
}
.site-footer .socials a:hover .fi,
.site-footer .socials a:focus .fi,
.site-footer .socials a:active .fi{
  color:#fff!important;
}
@media(max-width:600px){
  .socials{gap:10px!important}
  .socials a{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
  }
  .socials a .fi-brands-instagram,
  .socials a .fi-brands-facebook,
  .socials a .fi-brands-youtube{
    font-size:19px!important;
    width:19px!important;
    height:19px!important;
  }
}



.wish-btn{position:absolute;right:11px;top:11px;width:40px;height:40px;border:0;border-radius:50%;background:#fff;color:var(--k);display:inline-flex;align-items:center;justify-content:center;z-index:3;transition:.2s}
.wish-btn:hover,.wish-btn.on{background:var(--o);color:#fff}
.wishlist-drawer{position:fixed;z-index:91;right:0;top:0;bottom:0;width:min(92vw,420px);background:#fff;transform:translateX(105%);transition:transform .38s cubic-bezier(.2,.75,.2,1);display:flex;flex-direction:column;box-shadow:-18px 0 50px rgba(0,0,0,.13)}
.wishlist-drawer.open{transform:none}
.mobile-bottom-nav{display:none}
@media(max-width:600px){
 body{padding-bottom:82px}
 /* Mobile header = logo + menu only */
 .hdr .tools>button{display:none!important}
 .hdr .tools .menu{display:inline-flex!important}
 .hdr .head{justify-content:space-between!important}
 .hdr .logo{margin-right:auto!important}
 .hdr .tools{margin-left:auto!important}

 /* Exactly ONE complete item at a time in every horizontal carousel */
 .rail{gap:0!important;scroll-padding:0!important}
 .rail>*,
 .rail .product,
 .rail .cat,
 .rail .testi{
   flex:0 0 100%!important;
   width:100%!important;
   min-width:100%!important;
   max-width:100%!important;
   scroll-snap-align:start!important;
   scroll-snap-stop:always!important;
 }
 .product,.cat,.testi{margin:0!important}
 .pimg{height:390px}
 .cat{height:390px}

 .mobile-bottom-nav{
   display:grid!important;grid-template-columns:repeat(5,1fr);
   position:fixed;z-index:88;left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));
   min-height:66px;padding:5px;background:#fff;border:1px solid #e5e5e1;border-radius:18px;
   box-shadow:0 12px 34px rgba(0,0,0,.17)
 }
 .mobile-bottom-nav a,.mobile-bottom-nav button{
   position:relative;border:0;background:transparent!important;color:var(--k)!important;
   min-width:0;height:55px;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
   gap:3px;font:700 9px "DM Sans",sans-serif;text-decoration:none!important
 }
 .mobile-bottom-nav i{font-size:18px;color:inherit!important}
 .mobile-bottom-nav .mobile-search-main{
   width:58px;height:58px;margin:-15px auto 0;border-radius:17px!important;
   background:var(--k)!important;color:#fff!important;box-shadow:0 8px 20px rgba(0,0,0,.2)
 }
 .mobile-bottom-nav .mobile-search-main:hover,
 .mobile-bottom-nav .mobile-search-main:focus,
 .mobile-bottom-nav .mobile-search-main:active{background:var(--o)!important;color:#fff!important}
 .mobile-count{position:absolute;top:1px;right:calc(50% - 21px);min-width:17px;height:17px;border-radius:10px;background:var(--o);color:#fff;font-size:9px;display:grid;place-items:center;padding:0 4px}
 .search-canvas{top:auto!important;bottom:0!important;transform:translateY(105%)!important;border-radius:22px 22px 0 0;max-height:84vh;overflow:auto}
 .search-canvas.open{transform:none!important}
 .search-inner{padding-bottom:calc(26px + env(safe-area-inset-bottom))}
 .search-results{grid-template-columns:1fr!important}
 .cart-drawer,.wishlist-drawer{width:94vw}
 .site-footer{padding-bottom:78px}
 .cart-toast{bottom:92px!important}
}

/* Shared commerce pages retain the original visual system. */
button,input,select,textarea{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--o);outline-offset:4px}.skip-link{position:fixed;left:15px;top:-100px;z-index:120;background:#fff;padding:12px}.skip-link:focus{top:12px}.view-cart{display:block;text-align:center;margin-top:12px;font-size:12px;text-decoration:underline}.quick{display:flex;align-items:center;justify-content:center;font-size:12px}.page-heading{margin-bottom:32px}.page-heading small{font-size:11px;letter-spacing:.14em;color:var(--o);font-weight:700}.page-heading h1,.woocommerce-products-header h1{font-size:42px;letter-spacing:-1.5px;margin:12px 0 20px}.page-content>p,.page-content>h2,.page-content>h3{max-width:850px}.page-content p{line-height:1.85;color:#666}.page-content details{border-top:1px solid var(--l);padding:20px 0}.page-content summary{cursor:pointer;font-weight:700}.woocommerce ul.products,.woocommerce .products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 18px;clear:both;margin:30px 0;padding:0}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce .products .product{float:none!important;width:auto!important;margin:0!important;min-width:0}.woocommerce .price ins{text-decoration:none}.woocommerce .price del{color:#999;margin-right:5px;font-weight:400}.woocommerce .woocommerce-ordering select{padding:12px;border:1px solid #ddd;background:white;border-radius:4px}.woocommerce .woocommerce-result-count{padding-top:10px;color:#777;font-size:13px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--o);color:white;border-radius:4px;padding:14px 19px;font-family:Manrope,sans-serif;font-size:13px;font-weight:700}.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce button.button.alt:hover,.woocommerce a.button.alt:hover{background:#171717;color:white}.woocommerce div.product div.images img{border-radius:8px;background:#f4f4f4;object-fit:cover}.woocommerce div.product .product_title{font-size:36px;letter-spacing:-1px}.woocommerce div.product p.price{color:var(--k);font-weight:800}.woocommerce div.product .woocommerce-product-details__short-description{color:#666;line-height:1.8}.woocommerce .quantity .qty{min-height:43px;width:65px;border:1px solid #ddd;border-radius:4px}.woocommerce div.product .woocommerce-tabs ul.tabs li{border-color:#ddd;background:#fafafa;border-radius:5px 5px 0 0}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{color:var(--o)}.woocommerce .related.products{display:block}.woocommerce .related.products>h2{font-size:28px}.woocommerce .related.products ul.products{display:grid}.woocommerce table.shop_table{border:1px solid #e8e8e8;border-radius:8px;border-collapse:collapse}.woocommerce table.shop_table th{padding:18px;background:#f7f7f5}.woocommerce table.shop_table td{padding:18px}.woocommerce table.cart img{width:70px;border-radius:4px}.woocommerce .cart-collaterals .cart_totals{padding:24px;background:#f7f7f5;border-radius:8px}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{padding:13px 12px;border:1px solid #ddd;border-radius:4px;background:white;width:100%}.woocommerce form .form-row label{font-size:12px;font-weight:700;margin-bottom:5px}.woocommerce-checkout #payment{background:#f7f7f5;border-radius:8px}.woocommerce-info,.woocommerce-message{border-top-color:var(--o)}.woocommerce-info::before,.woocommerce-message::before{color:var(--o)}.woocommerce-error{border-top-color:#bf3232}.woocommerce .woocommerce-MyAccount-navigation ul{padding:0;border:1px solid #eee;border-radius:8px;list-style:none}.woocommerce .woocommerce-MyAccount-navigation a{display:block;padding:15px;border-bottom:1px solid #eee;font-size:13px}.woocommerce .woocommerce-MyAccount-navigation .is-active a{color:var(--o);background:#fafafa}.woocommerce form.checkout_coupon,.woocommerce form.login,.woocommerce form.register{border-color:#eee;border-radius:8px}.newsletter-consent{position:absolute;top:100%;left:0;font-size:10px;color:#aeb2af;display:flex;align-items:center;gap:5px;margin-top:8px}.footer-news .nl{position:relative;margin-bottom:32px}.newsletter-consent input{height:auto!important;flex:0!important;width:auto!important}.newsletter-consent a{color:#fff;text-decoration:underline}#wishlistPage{max-width:850px}.canvas-close{flex-shrink:0}body.admin-bar .hdr{top:32px}@media(max-width:850px){.woocommerce ul.products,.woocommerce .products{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-brand,.footer-news{grid-column:1/-1}}@media(max-width:600px){.woocommerce ul.products,.woocommerce .products{gap:22px 12px}.woocommerce .products .product{width:auto!important;min-width:0!important;max-width:100%!important}.woocommerce .products .pimg{height:240px}.woocommerce .products .pi h3{font-size:12px}.woocommerce .products .pi p{font-size:10px}.woocommerce .products .quick{font-size:10px}.page-heading h1,.woocommerce-products-header h1{font-size:32px}.woocommerce div.product .product_title{font-size:29px}.woocommerce table.shop_table td{padding:12px}.woocommerce .cart-collaterals .cart_totals{padding:18px}.page-content .storygrid{gap:25px}body.admin-bar .hdr{top:0!important}.woocommerce .woocommerce-ordering{float:none}.woocommerce .woocommerce-result-count{float:none}.search-results{max-height:50vh;overflow:auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.hdr nav li{list-style:none}.mobile-drawer li{list-style:none}.mobile-drawer li:last-child a{border:0;background:var(--o);color:#fff;border-radius:8px;margin-top:6px;justify-content:center}.mobile-drawer li:not(:last-child) a{background:white;color:var(--k);border-bottom:1px solid #eee;border-radius:0;margin:0;justify-content:space-between}.mobile-drawer li:not(:last-child) a:after{display:block}.mobile-drawer li:last-child a:after{display:none}
@media(min-width:601px) and (max-width:850px){.tools{margin-left:auto}.mobile-drawer.open{display:block;position:fixed;z-index:49;top:70px;left:24px;right:24px;padding:16px;background:white;border:1px solid #eee;box-shadow:0 18px 40px #0002}.mobile-drawer a{display:block;padding:12px;font-size:13px}}
.alto-menu{list-style:none;margin:0;padding:0}.hdr .alto-menu{display:flex;gap:27px;align-items:center}.mobile-drawer .alto-menu{display:block}
/* Keep closed off-canvas panels from enlarging mobile browsers' visual viewport. */
html{overflow-x:hidden}body{overflow-x:clip}.rail{max-width:100%}.cart-drawer,.wishlist-drawer{max-width:420px}
.cart-drawer:not(.open),.wishlist-drawer:not(.open),.search-canvas:not(.open){display:none}.cart-drawer.open,.wishlist-drawer.open{animation:alto-drawer-in .38s cubic-bezier(.2,.75,.2,1)}.search-canvas.open{animation:alto-search-in .38s cubic-bezier(.2,.75,.2,1)}@keyframes alto-drawer-in{from{transform:translateX(100%)}to{transform:none}}@keyframes alto-search-in{from{transform:translateY(-100%)}to{transform:none}}@media(max-width:600px){@keyframes alto-search-in{from{transform:translateY(100%)}to{transform:none}}}
.canvas-scrim{right:auto;bottom:auto;width:100vw;height:100dvh}.search-canvas{right:auto;width:100vw}.cart-toast{left:50vw}@media(max-width:600px){.mobile-bottom-nav{right:auto;width:calc(100vw - 20px)}.mobile-drawer{right:auto;width:calc(100vw - 20px)}.cart-drawer,.wishlist-drawer{right:auto;left:6vw;width:94vw;max-width:94vw}}
@media(max-width:600px){.mobile-bottom-nav{top:calc(100dvh - 74px - env(safe-area-inset-bottom));bottom:auto}.cart-drawer,.wishlist-drawer{bottom:auto;height:100dvh}.search-canvas{top:100dvh!important;bottom:auto!important;max-height:84dvh}.search-canvas.open{transform:translateY(-100%)!important}.cart-toast{top:calc(100dvh - 140px);bottom:auto!important}}
/* Product photography has identical frames, independent of source dimensions. */
.product .pimg>a:first-child{display:block;width:100%;height:100%;margin:0;padding:0}.product .pimg img,.woocommerce ul.products li.product .pimg a img{display:block;width:100%;height:100%;max-height:100%;object-fit:cover;object-position:center;margin:0;border-radius:0}.woocommerce ul.products li.product .pimg{height:375px}.woocommerce div.product div.images .woocommerce-product-gallery__image{aspect-ratio:3/4;overflow:hidden;background:#f4f4f4}.woocommerce div.product div.images .woocommerce-product-gallery__image>a{display:block;height:100%}.woocommerce div.product div.images .woocommerce-product-gallery__image img{width:100%;height:100%;object-fit:cover;margin:0}.woocommerce table.cart .product-thumbnail img{width:76px;height:94px;max-width:none;object-fit:cover}.cart-item>a{display:block;width:76px;height:94px}.cart-item>a img{width:76px;height:94px;object-fit:cover}.woocommerce ul.products li.product .pi h3{min-height:38px;line-height:1.4}.woocommerce ul.products li.product .pi p{min-height:36px;line-height:1.6}.woocommerce .products .product{list-style:none}.product .pimg .quick:focus-visible{opacity:1}
/* Checkout is a real form; only the cart drawer link receives CTA sizing. */
.checkout-path{display:flex;align-items:center;gap:12px;font-size:12px;color:#777;margin-bottom:24px}.checkout-path [aria-current]{color:#171717;font-weight:700}.alto-checkout .page-heading p{font-size:14px;color:#777;margin:0}.woocommerce form.checkout{height:auto;min-height:0;background:transparent;color:#171717;font-weight:400;border:0;padding:0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);column-gap:42px;row-gap:18px;align-items:start}.woocommerce form.checkout:before,.woocommerce form.checkout:after{display:none}.woocommerce form.checkout #customer_details{grid-column:1;grid-row:1 / span 3;float:none;width:100%;padding:26px;border:1px solid #e8e8e8;border-radius:8px;background:#fff}.woocommerce form.checkout #customer_details .col-1,.woocommerce form.checkout #customer_details .col-2{float:none;width:100%;clear:both}.woocommerce form.checkout #order_review_heading{grid-column:2;grid-row:1;margin:0;font-size:23px}.woocommerce form.checkout #order_review{grid-column:2;grid-row:2;float:none;width:100%;min-width:0}.woocommerce form.checkout h3{font-size:20px;margin:0 0 20px}.woocommerce form.checkout #ship-to-different-address{font-size:14px;margin-top:26px}.woocommerce form.checkout #ship-to-different-address label{display:flex;gap:10px;align-items:center}.woocommerce form.checkout .form-row{margin-bottom:16px;padding:0}.woocommerce form.checkout .form-row-first,.woocommerce form.checkout .form-row-last{width:48%}.woocommerce form.checkout .woocommerce-additional-fields{padding-top:18px}.woocommerce form.checkout .woocommerce-NoticeGroup{grid-column:1/-1}.woocommerce form.checkout .select2-container .select2-selection--single{height:46px;border:1px solid #ddd;border-radius:4px}.woocommerce form.checkout .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:44px;padding-left:12px;font-size:14px}.woocommerce form.checkout .select2-container--default .select2-selection--single .select2-selection__arrow{height:44px}.woocommerce form.checkout .woocommerce-checkout-review-order-table{margin:0 0 22px;width:100%;font-size:13px}.woocommerce form.checkout table.shop_table th,.woocommerce form.checkout table.shop_table td{padding:15px 16px;color:#171717}.woocommerce form.checkout table.shop_table .product-total{text-align:right}.woocommerce form.checkout .order-total{font-size:17px}.woocommerce form.checkout #payment{background:#f7f7f5;border:1px solid #e8e8e8}.woocommerce form.checkout #payment ul.payment_methods{padding:20px}.woocommerce form.checkout #payment .payment_box{background:#fff;color:#666;border:1px solid #eee;padding:14px;font-size:12px;line-height:1.7;font-weight:400}.woocommerce form.checkout #payment .payment_box:before{border-bottom-color:#fff}.woocommerce form.checkout #payment div.form-row{padding:20px;margin:0}.woocommerce form.checkout #payment .woocommerce-privacy-policy-text p{font-size:11px;line-height:1.8;margin:0 0 16px;font-weight:400}.woocommerce form.checkout .woocommerce-terms-and-conditions-checkbox-text{font-size:11px;line-height:1.7;font-weight:400}.woocommerce form.checkout #place_order{width:100%;float:none;min-height:50px;margin-top:18px}.woocommerce form.checkout #payment .place-order a{text-decoration:underline;color:#171717}.continue-shopping{display:inline-flex;margin-top:24px;font-size:13px;font-weight:700}.woocommerce .checkout_coupon .form-row input.input-text{min-height:44px}
@media(max-width:850px){.woocommerce form.checkout{grid-template-columns:minmax(0,1fr);gap:24px}.woocommerce form.checkout #customer_details,.woocommerce form.checkout #order_review_heading,.woocommerce form.checkout #order_review{grid-column:1;grid-row:auto}.woocommerce form.checkout #customer_details{padding:22px}.woocommerce form.checkout #order_review_heading{margin:6px 0 -10px}.woocommerce ul.products li.product .pimg{height:320px}}
@media(max-width:600px){.woocommerce ul.products li.product .pimg{height:240px}.woocommerce form.checkout #customer_details{padding:18px}.woocommerce form.checkout .form-row-first,.woocommerce form.checkout .form-row-last{float:none;width:100%}.woocommerce form.checkout table.shop_table th,.woocommerce form.checkout table.shop_table td{padding:13px 12px}.woocommerce div.product div.images .woocommerce-product-gallery__image{aspect-ratio:3/4}.checkout-path{margin-bottom:20px}.woocommerce form.checkout #payment ul.payment_methods,.woocommerce form.checkout #payment div.form-row{padding:16px}}

.pswp{width:100vw;height:100dvh}
