:root{--ink:#10231f;--pine:#173b34;--pine2:#0d2925;--gold:#d89432;--sand:#f5efe2;--paper:#fffdf7;--muted:#6e746f;--line:rgba(16,35,31,.13);--shadow:0 18px 55px rgba(8,29,25,.13)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif;line-height:1.6}a{color:inherit}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 32px));margin:auto}.top{background:#0b201d;color:#f8e6c2;text-align:center;padding:7px;font-size:.76rem;letter-spacing:.09em;text-transform:uppercase}.nav{position:sticky;top:0;z-index:20;background:rgba(255,253,247,.95);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.navin{height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{width:220px;height:52px;object-fit:contain}.links{display:flex;align-items:center;gap:20px;font-weight:800}.links a{text-decoration:none}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:12px 19px;text-decoration:none;font-weight:850;cursor:pointer}.primary{background:var(--gold);color:#14231e}.dark{background:var(--pine);color:#fff}.hero{background:linear-gradient(135deg,var(--pine2),#1d4a40);color:#fff;padding:72px 0 65px}.hero h1{font-family:Georgia,serif;font-size:clamp(2.8rem,6vw,5.7rem);line-height:.95;margin:8px 0 18px;letter-spacing:-.04em}.hero p{max-width:680px;color:rgba(255,255,255,.75);font-size:1.08rem}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-weight:900;font-size:.74rem;color:#efb85d}.filters{padding:28px 0;border-bottom:1px solid var(--line);background:var(--sand)}.filterbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.filterbar input,.filterbar select{padding:12px 14px;border:1px solid #d8ddd8;border-radius:12px;background:#fff;font:inherit}.filterbar input{min-width:260px;flex:1}.catalogue{padding:56px 0 90px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}.product img{width:100%;aspect-ratio:4/3;object-fit:cover}.body{padding:20px;display:flex;flex-direction:column;flex:1}.body h2{font-size:1.25rem;margin:0 0 5px}.meta{color:var(--muted);font-size:.9rem}.price{font-size:1.18rem;font-weight:900;margin:12px 0}.badge{display:inline-flex;width:max-content;padding:5px 9px;border-radius:999px;background:#e9f2e8;font-size:.76rem;font-weight:900}.actions{display:flex;gap:9px;margin-top:auto;padding-top:18px}.actions .btn{flex:1}.empty{padding:50px;text-align:center;border:1px dashed var(--line);border-radius:20px}.detail{padding:65px 0 90px}.detailgrid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start}.mainimg{width:100%;border-radius:26px;box-shadow:var(--shadow);aspect-ratio:4/3;object-fit:cover}.detail h1{font-family:Georgia,serif;font-size:clamp(2.6rem,5vw,4.8rem);line-height:1;margin:10px 0}.facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:25px 0}.fact{background:#fff;padding:15px}.fact small{display:block;color:var(--muted)}.back{text-decoration:none;font-weight:850}.footer{background:#091c19;color:#fff;padding:38px 0}.footer img{width:240px}.adminlink{opacity:.55;font-size:.78rem}.notice{padding:12px 14px;border-radius:12px;background:#e7f4e8;margin-bottom:16px}.error{background:#fde8e5}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:5px}.field.full{grid-column:1/-1}.field input,.field textarea,.field select{padding:11px 12px;border:1px solid #d5dbd6;border-radius:10px;font:inherit}.field textarea{min-height:100px}.adminwrap{width:min(1180px,calc(100% - 28px));margin:35px auto}.adminhead{display:flex;justify-content:space-between;gap:18px;align-items:center}.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;margin:20px 0}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:11px;border-bottom:1px solid var(--line);vertical-align:middle}.thumb{width:70px;height:52px;object-fit:cover;border-radius:8px}.smallbtn{padding:7px 10px;border-radius:8px;border:0;font-weight:800;cursor:pointer}.danger{background:#8b2525;color:#fff}@media(max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}.detailgrid{grid-template-columns:1fr}.links a:not(.btn){display:none}}@media(max-width:560px){.grid{grid-template-columns:1fr}.logo{width:165px}.hero{padding:50px 0}.filterbar{display:grid}.filterbar input{min-width:0;width:100%}.actions{flex-direction:column}.facts,.formgrid{grid-template-columns:1fr}.field.full{grid-column:auto}.table{font-size:.82rem}.table th:nth-child(3),.table td:nth-child(3){display:none}}
.cartlink{display:inline-flex;align-items:center;gap:7px;text-decoration:none;font-weight:850}.cartlink span{display:grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:#d89432;color:#10231f;font-size:.78rem}.product .actions form{margin:0;display:flex}.addform{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.addform label{display:grid;gap:5px;font-weight:800;font-size:.82rem}.addform input{width:74px;padding:12px;border:1px solid #d7ddd8;border-radius:12px;font:inherit}.microcopy{font-size:.83rem;color:#6e746f}.basketpage{padding:60px 0 90px;min-height:65vh}.baskethead{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.baskethead h1,.successbox h1{font-family:Georgia,serif;font-size:clamp(2.6rem,5vw,5rem);line-height:1;margin:.2em 0}.baskethead p,.successbox p{color:#6e746f;max-width:680px}.basketgrid{display:grid;grid-template-columns:1.18fr .82fr;gap:24px;align-items:start}.basketitems{display:grid;gap:12px;margin-bottom:20px}.basketitem{display:grid;grid-template-columns:100px 1fr auto;gap:16px;align-items:center;padding:12px;border:1px solid rgba(16,35,31,.13);border-radius:16px}.basketitem img{width:100px;height:80px;object-fit:cover;border-radius:12px}.basketitem div{display:grid;gap:2px}.basketitem small{color:#6e746f}.basketitem span{font-weight:850}.basketitem label{display:grid;gap:5px;font-weight:800;font-size:.78rem}.basketitem input{width:68px;padding:10px;border:1px solid #d7ddd8;border-radius:10px}.checkout{position:sticky;top:92px}.checkout h2{margin-top:0;font-family:Georgia,serif;font-size:2rem}.checkout form{display:grid;gap:13px}.checkout textarea{min-height:90px}.full{width:100%}.summarytotal{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-top:1px solid rgba(16,35,31,.13);font-size:1.05rem}.summarytotal strong{font-size:1.35rem}.successbox{max-width:780px;margin:30px auto;background:white;border:1px solid rgba(16,35,31,.13);border-radius:28px;padding:45px;box-shadow:0 24px 70px rgba(8,29,25,.12);text-align:center}.successicon{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:#173b34;color:white;font-size:2rem;font-weight:900;margin:0 auto 20px}.successbox .actions{justify-content:center}.orderstats{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin:0 0 22px}.orderstats a{background:white;border:1px solid rgba(16,35,31,.13);border-radius:16px;padding:16px;text-decoration:none}.orderstats strong{display:block;font-size:1.7rem}.orderstats span{color:#6e746f;font-size:.82rem}.paneltitle{display:flex;justify-content:space-between;align-items:center;gap:15px}.orderlist{display:grid;gap:16px}.ordercard{border:1px solid rgba(16,35,31,.13);border-radius:18px;padding:20px}.ordertop{display:flex;justify-content:space-between;gap:25px}.ordertop h3{margin:8px 0 0}.ordercustomer{display:grid;text-align:right}.ordercustomer a{text-decoration:none}.status{display:inline-flex;padding:5px 10px;border-radius:999px;background:#ece8dd;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.status-new{background:#ffe3a8}.status-confirmed,.status-ready,.status-completed{background:#d7f1df}.status-cancelled{background:#f5d4d4}.orderitems{display:grid;gap:7px;margin:17px 0;padding:14px;background:#f5f1e7;border-radius:13px}.orderitems div{display:flex;justify-content:space-between;gap:15px}.customernotes{border-left:4px solid #d89432;padding-left:14px}.customernotes p{margin:3px 0}.orderupdate{display:grid;grid-template-columns:180px 1fr auto;gap:12px;align-items:end;margin-top:17px}.orderupdate .grow{min-width:0}.orderactions{display:flex;justify-content:space-between;gap:10px;margin-top:13px}.orderactions form{margin:0}
@media(max-width:900px){.basketgrid{grid-template-columns:1fr}.checkout{position:static}.orderstats{grid-template-columns:repeat(3,1fr)}.orderupdate{grid-template-columns:1fr}.links .cartlink{display:inline-flex}}
@media(max-width:600px){.baskethead{display:block}.baskethead .btn{margin-top:14px}.basketitem{grid-template-columns:72px 1fr}.basketitem img{width:72px;height:72px}.basketitem label{grid-column:2}.successbox{padding:28px 18px}.orderstats{grid-template-columns:repeat(2,1fr)}.ordertop{display:grid}.ordercustomer{text-align:left}.orderitems div{display:grid;gap:0}.orderactions{flex-wrap:wrap}.links>a:not(.cartlink){display:none}.cartlink{font-size:.8rem}}

/* Patch 05A — Fishing-themed Tackle Box */
.cartlink{display:inline-flex;align-items:center;gap:8px}
.tackleicon{width:22px;height:22px;display:inline-block;object-fit:contain;filter:none}
.btn .tackleicon,.adminhead .tackleicon{width:19px;height:19px;vertical-align:-4px;margin-right:7px}
.emptytackle{display:flex;flex-direction:column;align-items:center;gap:8px}
.emptytackle>img{width:72px;height:72px;opacity:.82}
@media(max-width:600px){.cartlink .tackleicon{width:21px;height:21px}.cartlink span{min-width:22px;height:22px}.cartlink{gap:6px}}
.trackwrap{max-width:980px;margin:0 auto;padding:50px 20px 80px}.trackhero{text-align:center;max-width:720px;margin:0 auto 28px}.trackhero h1{font-size:clamp(2.2rem,6vw,4.4rem);margin:.2em 0}.trackform,.trackcard{background:#fff;border:1px solid rgba(18,54,42,.14);border-radius:24px;padding:28px;box-shadow:0 18px 50px rgba(15,42,33,.10)}.trackform{max-width:620px;margin:auto;display:grid;gap:18px}.tracksummary{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;border-bottom:1px solid #e7ece8;padding-bottom:22px}.tracksummary h2{margin:10px 0 4px}.tracksummary>div:last-child{display:grid;text-align:right;gap:5px}.timeline{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:30px 0}.timelinestep{position:relative;text-align:center;color:#839088;font-size:.77rem}.timelinestep:before{content:"";height:4px;background:#dfe6e2;position:absolute;left:-50%;right:50%;top:17px;z-index:0}.timelinestep:first-child:before{display:none}.timelinestep span{position:relative;z-index:1;width:38px;height:38px;margin:0 auto 9px;border-radius:50%;display:grid;place-items:center;background:#e8edea;font-weight:800}.timelinestep strong{display:block}.timelinestep.done{color:#173f31}.timelinestep.done:before,.timelinestep.done span{background:#e57f2a;color:#fff}.trackgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.trackgrid>div{background:#f4f6f3;padding:16px;border-radius:14px;display:grid;gap:6px}.trackgrid small{color:#68766e}.publicnote{background:#fff4e8;border-left:5px solid #e57f2a;padding:18px;border-radius:12px;margin:20px 0}.trackitems{margin:24px 0}.trackitems>div{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #e8ece9}.orderextras{width:100%;display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:12px}.orderextras .grow{grid-column:1/-1}@media(max-width:760px){.tracksummary{display:grid}.tracksummary>div:last-child{text-align:left}.timeline{grid-template-columns:1fr;gap:0}.timelinestep{display:flex;align-items:center;text-align:left;gap:12px;padding:6px 0}.timelinestep:before{width:4px;height:100%;left:17px;right:auto;top:-50%}.timelinestep span{margin:0;flex:0 0 38px}.trackgrid{grid-template-columns:1fr 1fr}.orderextras{grid-template-columns:1fr}.shophead nav{gap:10px}.shophead nav a{font-size:.82rem}}@media(max-width:480px){.trackgrid{grid-template-columns:1fr}.trackform,.trackcard{padding:20px}.trackitems>div{display:grid;gap:4px}}

/* Patch 09 — five-image galleries */
.productgallery{min-width:0}.gallerymain{position:relative;width:100%;padding:0;border:0;background:#fff;border-radius:26px;overflow:hidden;box-shadow:var(--shadow);cursor:zoom-in}.gallerymain>img{width:100%;aspect-ratio:4/3;object-fit:cover}.zoomhint{position:absolute;right:14px;bottom:14px;background:rgba(9,28,25,.88);color:#fff;border-radius:999px;padding:7px 12px;font-size:.76rem;font-weight:850}.gallerythumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:12px}.gallerythumb{padding:0;border:2px solid transparent;border-radius:12px;overflow:hidden;background:#fff;cursor:pointer;text-align:left}.gallerythumb.active{border-color:var(--gold)}.gallerythumb img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallerythumb span{display:block;padding:5px 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.68rem;font-weight:800}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(4,15,13,.97);color:#fff;display:grid;grid-template-rows:auto 1fr}.lightboxbar{height:62px;display:flex;align-items:center;gap:16px;padding:0 20px;border-bottom:1px solid rgba(255,255,255,.15)}.lightboxbar strong{flex:1}.lightboxbar button{width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:1.8rem;cursor:pointer}.lightboxtrack{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.lightboxtrack::-webkit-scrollbar{display:none}.lightbox figure{min-width:100%;height:calc(100vh - 62px);margin:0;padding:30px 70px 42px;display:grid;grid-template-rows:1fr auto;gap:12px;scroll-snap-align:center}.lightbox figure img{width:100%;height:100%;object-fit:contain}.lightbox figcaption{text-align:center;font-weight:800}.gallerynav{position:fixed;z-index:1001;top:50%;transform:translateY(-50%);width:50px;height:70px;border:0;border-radius:14px;background:rgba(255,255,255,.13);color:#fff;font-size:3rem;cursor:pointer}.gallerynav.prev{left:12px}.gallerynav.next{right:12px}.galleryopen{overflow:hidden}.galleryadmin{margin:24px 0}.galleryadmin h3{margin-bottom:2px}.galleryslots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.galleryslot{border:1px solid var(--line);border-radius:15px;padding:12px;display:grid;gap:9px;background:#faf9f4}.galleryslot img,.slotempty{width:100%;aspect-ratio:4/3;border-radius:10px;object-fit:cover}.slotempty{display:grid;place-items:center;border:1px dashed #bdc7c0;color:var(--muted);font-size:.8rem}.slothead{display:flex;justify-content:space-between;gap:7px;align-items:center}.mainpick,.removecheck{font-size:.72rem;font-weight:800}.galleryslot label{display:grid;gap:4px;font-size:.74rem;font-weight:800}.galleryslot input[type=file]{font-size:.7rem;max-width:100%}.galleryslot input[type=text],.galleryslot input:not([type]){min-width:0;padding:8px;border:1px solid #d5dbd6;border-radius:8px}.removecheck{display:flex!important;grid-template-columns:auto 1fr;align-items:center;color:#8b2525}
@media(max-width:900px){.galleryslots{grid-template-columns:repeat(2,1fr)}.gallerythumbs{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.gallerythumbs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px}.gallerythumb{flex:0 0 30%;scroll-snap-align:start}.zoomhint{font-size:.68rem}.lightbox figure{padding:16px 10px 30px}.gallerynav{display:none}.lightboxbar{padding:0 12px}.galleryslots{grid-template-columns:1fr}}

/* Patch 09A — single-stage gallery correction */
.productgallery{display:block!important;min-width:0}
.gallerystage{position:relative;width:100%;overflow:hidden;border-radius:26px}
.gallerymain{display:block!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;border:0!important;background:#fff!important;border-radius:26px!important;overflow:hidden!important;box-shadow:var(--shadow)!important;cursor:zoom-in!important}
.gallerymain>img,#productMainImage{display:block!important;width:100%!important;height:auto!important;aspect-ratio:4/3!important;object-fit:contain!important;background:#fff!important}
.gallerythumbs{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important;margin:12px 0 0!important;padding:0!important;overflow:visible!important}
.gallerythumb{display:block!important;min-width:0!important;width:100%!important;margin:0!important;padding:0!important;border:2px solid transparent!important;border-radius:12px!important;overflow:hidden!important;background:#fff!important;box-shadow:none!important;cursor:pointer!important}
.gallerythumb.active{border-color:var(--gold)!important;box-shadow:0 0 0 2px rgba(216,148,50,.16)!important}
.gallerythumb img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:4/3!important;object-fit:cover!important;margin:0!important}
.gallerythumb span{display:block!important;padding:6px 7px!important;font-size:.68rem!important;line-height:1.2!important;font-weight:800!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.mainnav{position:absolute;top:50%;z-index:4;transform:translateY(-50%);width:44px;height:58px;border:0;border-radius:12px;background:rgba(9,28,25,.78);color:#fff;font-size:2.4rem;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.mainnav:hover{background:rgba(9,28,25,.94)}
.mainprev{left:12px}.mainnext{right:12px}
@media(max-width:900px){.gallerythumbs{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:600px){.gallerythumbs{display:flex!important;gap:8px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;padding-bottom:5px!important}.gallerythumb{flex:0 0 28%!important;scroll-snap-align:start!important}.mainnav{width:38px;height:50px;font-size:2rem}.mainprev{left:7px}.mainnext{right:7px}.zoomhint{right:10px;bottom:10px}}


/* Patch 09B — mobile hamburger navigation */
.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:13px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer;padding:0;box-shadow:0 7px 20px rgba(8,29,25,.08)}
.menu-toggle span{display:block;width:21px;height:2px;border-radius:2px;background:var(--ink);transition:transform .22s ease,opacity .18s ease}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:860px){
 .navin{position:relative}.menu-toggle{display:flex;margin-left:auto;flex:0 0 44px}.links.mobile-menu{display:none!important;position:absolute;top:100%;left:0;right:0;background:rgba(255,253,247,.99);border:1px solid var(--line);border-top:0;border-radius:0 0 20px 20px;padding:14px 18px 18px;box-shadow:0 20px 40px rgba(8,29,25,.15);flex-direction:column!important;align-items:stretch!important;gap:3px!important}.links.mobile-menu.is-open{display:flex!important}.links.mobile-menu>a{display:flex!important;min-height:46px;align-items:center;padding:10px 12px;border-radius:11px}.links.mobile-menu>a:hover{background:var(--sand)}.links.mobile-menu .cartlink{justify-content:flex-start}.links.mobile-menu .btn{margin-top:7px;justify-content:center}body.menu-open{overflow:hidden}
 .shophead{position:relative;display:flex;align-items:center}.shophead .menu-toggle{display:flex;margin-left:auto}.shophead nav.mobile-menu{display:none;position:absolute;z-index:50;top:100%;left:12px;right:12px;background:#fff;border:1px solid rgba(16,35,31,.14);border-radius:0 0 18px 18px;padding:12px;box-shadow:0 20px 40px rgba(8,29,25,.16);flex-direction:column;align-items:stretch}.shophead nav.mobile-menu.is-open{display:flex}.shophead nav.mobile-menu a{display:flex;min-height:45px;align-items:center;padding:9px 12px;border-radius:10px}
}


/* Patch 09C — animated tackle-box mobile menu */
.tackle-menu-toggle{position:relative!important;display:none;width:52px!important;height:46px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible;align-items:center;justify-content:center;flex-direction:initial!important;gap:0!important}
.tackle-menu-toggle>span{position:absolute;display:block;background:none;width:auto;height:auto;transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .18s ease,background .2s ease}
.tackle-menu-toggle .tb-handle{left:17px;top:3px;width:18px;height:12px;border:3px solid var(--ink);border-bottom:0;border-radius:8px 8px 0 0;transform-origin:center bottom}
.tackle-menu-toggle .tb-lid{left:6px;top:14px;width:40px;height:10px;border:3px solid var(--ink);border-radius:6px 6px 2px 2px;background:var(--paper);transform-origin:8px 100%;z-index:3}
.tackle-menu-toggle .tb-body{left:7px;top:22px;width:38px;height:20px;border:3px solid var(--ink);border-radius:2px 2px 7px 7px;background:var(--paper);z-index:2}
.tackle-menu-toggle .tb-tray{position:absolute;left:4px;right:4px;top:4px;height:3px;border-radius:2px;background:var(--gold)}
.tackle-menu-toggle .tb-latch{position:absolute;left:50%;top:8px;width:10px;height:7px;transform:translateX(-50%);border:2px solid var(--ink);border-radius:2px;background:var(--paper)}
.tackle-menu-toggle::after{content:'Menu';position:absolute;left:50%;top:44px;transform:translateX(-50%);font-size:.58rem;line-height:1;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:var(--ink);opacity:.72;white-space:nowrap}
.tackle-menu-toggle[aria-expanded="true"] .tb-handle{transform:translateY(-2px) rotate(-7deg)}
.tackle-menu-toggle[aria-expanded="true"] .tb-lid{transform:translate(-1px,-4px) rotate(-24deg);background:#fff9ed}
.tackle-menu-toggle[aria-expanded="true"] .tb-body{transform:translateY(1px)}
.tackle-menu-toggle[aria-expanded="true"] .tb-latch{background:var(--gold)}
.tackle-menu-toggle:focus-visible{outline:3px solid rgba(216,148,50,.45);outline-offset:5px;border-radius:12px}
@media(max-width:860px){.tackle-menu-toggle{display:flex!important;margin-left:auto!important;flex:0 0 52px!important}.navin{min-height:76px;height:auto;padding:8px 0 13px}.shophead .tackle-menu-toggle{display:flex!important}.links.mobile-menu,.shophead nav.mobile-menu{transform-origin:top center;animation:tackleMenuDrop .22s ease both}.links.mobile-menu:not(.is-open),.shophead nav.mobile-menu:not(.is-open){animation:none}}
@keyframes tackleMenuDrop{from{opacity:0;transform:translateY(-8px) scaleY(.96)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.tackle-menu-toggle>span,.links.mobile-menu,.shophead nav.mobile-menu{transition:none!important;animation:none!important}}


/* Patch 09D — definitive inline SVG tackle-box menu (cache-safe) */
.tackle-menu-toggle{display:none!important;position:relative!important;width:58px!important;height:58px!important;min-width:58px!important;padding:4px 5px 10px!important;border:1px solid rgba(16,35,31,.16)!important;border-radius:17px!important;background:#fff!important;box-shadow:0 8px 22px rgba(8,29,25,.10)!important;align-items:center!important;justify-content:center!important;overflow:visible!important}
.tackle-menu-toggle .tb-svg{display:block!important;width:45px!important;height:40px!important;overflow:visible;fill:#fffdf7;stroke:var(--ink);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.tackle-menu-toggle .tb-handle-svg{fill:none;transform-origin:32px 15px;transition:transform .28s ease}
.tackle-menu-toggle .tb-lid-svg{transform-origin:12px 28px;transition:transform .28s cubic-bezier(.2,.8,.2,1)}
.tackle-menu-toggle .tb-body-svg{transition:transform .28s ease}
.tackle-menu-toggle .tb-tray-svg{stroke:var(--gold);stroke-width:3}
.tackle-menu-toggle .tb-latch-svg{fill:#fffdf7;transition:fill .2s ease}
.tackle-menu-toggle .tb-menu-label{position:absolute!important;display:block!important;left:50%!important;bottom:3px!important;width:auto!important;height:auto!important;transform:translateX(-50%)!important;background:transparent!important;color:var(--ink)!important;font-size:.52rem!important;font-weight:900!important;line-height:1!important;letter-spacing:.07em!important;text-transform:uppercase!important}
.tackle-menu-toggle[aria-expanded="true"] .tb-handle-svg{transform:translateY(-2px) rotate(-7deg)}
.tackle-menu-toggle[aria-expanded="true"] .tb-lid-svg{transform:translate(-2px,-7px) rotate(-22deg)}
.tackle-menu-toggle[aria-expanded="true"] .tb-body-svg{transform:translateY(1px)}
.tackle-menu-toggle[aria-expanded="true"] .tb-latch-svg{fill:var(--gold)}
@media(max-width:860px){.tackle-menu-toggle{display:flex!important;margin-left:auto!important;flex:0 0 58px!important}}
@media(prefers-reduced-motion:reduce){.tackle-menu-toggle .tb-handle-svg,.tackle-menu-toggle .tb-lid-svg,.tackle-menu-toggle .tb-body-svg{transition:none!important}}

/* Patch 09E — premium tackle-box menu tab */
.tackle-menu-toggle{
  width:108px!important;height:46px!important;min-width:108px!important;
  padding:0 13px 0 10px!important;border:1px solid #b88a3a!important;
  border-radius:14px!important;background:linear-gradient(180deg,#183f37 0%,#0d2b26 100%)!important;
  box-shadow:0 8px 20px rgba(8,29,25,.18),inset 0 1px rgba(255,255,255,.12)!important;
  color:#f8e8bf!important;gap:9px!important;overflow:hidden!important;
}
.tackle-menu-toggle::before{content:'';position:absolute;inset:1px;border:1px solid rgba(245,210,141,.18);border-radius:12px;pointer-events:none}
.tackle-menu-toggle .tb-svg{position:relative!important;width:31px!important;height:29px!important;flex:0 0 31px!important;fill:#173b34!important;stroke:#f3d28d!important;stroke-width:3.2!important;filter:drop-shadow(0 2px 2px rgba(0,0,0,.18))}
.tackle-menu-toggle .tb-tray-svg{stroke:#e09a31!important}.tackle-menu-toggle .tb-latch-svg{fill:#e09a31!important;stroke:#f3d28d!important}
.tackle-menu-toggle .tb-menu-label{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;display:block!important;color:#f8e8bf!important;font-size:.76rem!important;letter-spacing:.11em!important;line-height:1!important;min-width:43px!important;text-align:left!important;text-shadow:0 1px 1px rgba(0,0,0,.25)}
.tackle-menu-toggle[aria-expanded="true"]{background:linear-gradient(180deg,#214f45 0%,#12342e 100%)!important;box-shadow:0 9px 24px rgba(8,29,25,.22),0 0 0 3px rgba(216,148,50,.12)!important}
.tackle-menu-toggle[aria-expanded="true"] .tb-menu-label{color:#ffd88a!important}
.tackle-menu-toggle:hover{transform:translateY(-1px);border-color:#d9ad5a!important}.tackle-menu-toggle:active{transform:translateY(0)}
.tackle-menu-toggle:focus-visible{outline:3px solid rgba(216,148,50,.38)!important;outline-offset:3px!important}
@media(max-width:420px){.tackle-menu-toggle{width:99px!important;min-width:99px!important;padding-left:8px!important;padding-right:10px!important;gap:7px!important}.tackle-menu-toggle .tb-menu-label{font-size:.7rem!important}}


/* Patch 12 — optional 360-degree turntable viewer */
.spin360-trigger{margin-top:14px;width:100%;min-height:48px;border:1px solid rgba(216,148,50,.55);border-radius:14px;background:linear-gradient(180deg,#183f37,#0d2b26);color:#f8e8bf;font:inherit;font-weight:900;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;box-shadow:0 8px 22px rgba(8,29,25,.12)}
.spin360-trigger>span{font-size:1.45rem;line-height:1;color:#efb85d}.spin360-trigger small{font-size:.72rem;opacity:.72;font-weight:700}.spin360-trigger:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(8,29,25,.18)}
.spin360-modal[hidden]{display:none}.spin360-modal{position:fixed;inset:0;z-index:1100;background:rgba(4,15,13,.92);display:grid;place-items:center;padding:18px}.spin360-card{width:min(920px,100%);max-height:calc(100vh - 36px);background:#fffdf7;border-radius:22px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.38);display:grid;grid-template-rows:auto minmax(0,1fr) auto}.spin360-head{display:flex;align-items:center;gap:18px;padding:15px 18px;border-bottom:1px solid var(--line)}.spin360-head>div{flex:1}.spin360-head strong,.spin360-head small{display:block}.spin360-head small{color:var(--muted)}.spin360-head button{width:42px;height:42px;border:0;border-radius:50%;background:var(--pine);color:#fff;font-size:1.7rem;cursor:pointer}.spin360-stage{position:relative;min-height:340px;background:#fff;display:grid;place-items:center;overflow:hidden;cursor:ew-resize;touch-action:pan-y;user-select:none}.spin360-stage.is-dragging{cursor:grabbing}.spin360-stage img{width:100%;height:100%;max-height:68vh;object-fit:contain;pointer-events:none}.spin360-hint{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);padding:7px 12px;border-radius:999px;background:rgba(9,28,25,.82);color:#fff;font-size:.74rem;font-weight:800;white-space:nowrap}.spin360-controls{display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 18px;border-top:1px solid var(--line);background:#f7f2e7}.spin360-controls button{min-width:46px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:inherit;font-weight:850;cursor:pointer}.spin360-controls #spin360Play{min-width:120px;background:var(--pine);color:#fff}.spin360-controls span{min-width:64px;text-align:center;font-weight:850}.spin360-open{overflow:hidden}
@media(max-width:600px){.spin360-modal{padding:0}.spin360-card{width:100%;height:100%;max-height:none;border-radius:0}.spin360-stage{min-height:0}.spin360-head{padding:12px}.spin360-controls{padding:11px 8px;gap:8px}.spin360-controls button{min-width:42px}.spin360-controls #spin360Play{min-width:104px}.spin360-hint{font-size:.68rem}}
@media(prefers-reduced-motion:reduce){.spin360-trigger{transition:none!important}.spin360-hint{display:none}}

/* Patch 12B: align product action buttons */
.detail .actions{align-items:flex-end}
.detail .actions .custom-colors-btn{flex:0 0 auto;min-height:50px;height:50px;padding:0 26px;white-space:nowrap;align-self:flex-end}
.detail .addform .btn{min-height:50px;height:50px;padding-top:0;padding-bottom:0}
@media(max-width:560px){.detail .actions{align-items:stretch}.detail .actions .custom-colors-btn,.detail .addform .btn{width:100%;height:50px;min-height:50px}.detail .addform{align-items:end}.detail .addform label{flex:0 0 74px}.detail .addform .btn{flex:1}}
