/* Mr Bowman's Trading - vibrant override for the OpenCart 4.1 default theme */
:root{--pink:#ff3d7f;--red:#e8173c;--orange:#ff8a00;--yellow:#ffd23f;--mint:#12c4a3;--ink:#2b2140;--cream:#fff8ef}
body{font-family:'Nunito',sans-serif;background:var(--cream);color:var(--ink)}
h1,h2,h3,h4,h5{font-family:'Fredoka',sans-serif;font-weight:700;color:var(--ink)}
a{color:var(--red)}
#container{background:var(--cream)}
/* top bar */
#top{background:var(--ink);border:0;margin:0;padding:.35rem 0;font-size:.85rem}
#top,#top a,#top .dropdown-toggle,#top .list-inline-item>a{color:#ffe7a8!important;text-decoration:none}
#top ul.list-inline{margin:0}
#top .mbt-topnote{color:#fff}
/* delivery strip */
.delivery-strip{background:var(--yellow);color:var(--ink);font-weight:800;text-align:center;padding:.55rem 1rem;font-size:.95rem;background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.25) 0 12px,transparent 12px 24px)}
/* header */
header{background:linear-gradient(110deg,var(--pink) 0%,var(--red) 35%,var(--orange) 75%,var(--yellow) 100%);padding:1rem 0 2rem;box-shadow:0 6px 20px rgba(232,23,60,.25)}
header .row{align-items:center}
#logo{margin:0}
#logo img{max-height:84px;width:auto;background:#fff;border-radius:20px;padding:6px 8px;box-shadow:0 6px 16px rgba(0,0,0,.2),0 0 0 3px rgba(255,255,255,.5);transform:rotate(-3deg)}
#logo a{display:inline-flex;align-items:center;gap:.8rem;text-decoration:none}
#logo a:after{content:"Mr Bowman's Trading";font-family:'Fredoka';font-weight:700;font-size:1.6rem;color:#fff;text-shadow:0 3px 0 rgba(0,0,0,.15);line-height:1.05}
header .input-group{margin:0!important}
header .input-group .form-control{border-radius:50px 0 0 50px;border:0;padding-left:1.2rem}
header .input-group .btn{border-radius:0 50px 50px 0;background:var(--ink);color:#fff;border:0}
#cart{margin:0!important}
#cart>.dropdown>.btn{border-radius:50px;background:#fff;color:var(--red);font-weight:800;border:0;box-shadow:0 4px 0 rgba(0,0,0,.15)}
/* menu */
#menu{background:#fff!important;background-image:none!important;border:0;border-radius:50px;margin:-1.2rem auto 1.5rem;box-shadow:0 8px 24px rgba(43,33,64,.12);padding:.3rem 1rem;position:relative;z-index:5;min-height:auto}
#menu .navbar-nav{margin:0 auto}
#menu .nav-link,#menu .navbar-nav>li>a,#menu .navbar-nav>li>.dropdown-item{font-weight:800;color:var(--ink)!important;border-radius:50px;padding:.5rem 1rem!important;background:transparent;text-shadow:none}
#menu .navbar-nav>li>a:hover,#menu .nav-link:hover{background:linear-gradient(90deg,var(--pink),var(--orange))!important;color:#fff!important}
#menu #category{color:var(--ink);font-weight:800;text-shadow:none}
#menu .navbar-toggler{color:var(--red);border:0}
/* buttons */
.btn-primary{background:linear-gradient(90deg,var(--pink),var(--red));border:0;border-radius:50px;font-weight:800;box-shadow:0 3px 0 #b30f2c;color:#fff}
.btn-primary:hover,.btn-primary:focus{background:linear-gradient(90deg,var(--orange),var(--pink));color:#fff}
/* hero (HTML module) */
.mbt-hero{border-radius:28px;overflow:hidden;background:radial-gradient(circle at 85% 30%,var(--yellow) 0 18%,transparent 19%),linear-gradient(120deg,#ffe0ec,#fff1d6 60%,#d8fff6);padding:2.5rem;margin-bottom:1.5rem}
.mbt-hero h1{font-size:3rem;line-height:1.05;color:var(--red)}
.mbt-hero h1 em{font-style:normal;color:var(--orange)}
.mbt-hero p{font-size:1.15rem;font-weight:600}
.mbt-hero-imgs{position:relative;height:340px}
.mbt-hero-imgs img{position:absolute;width:220px;height:220px;object-fit:contain;background:#fff;border-radius:24px;padding:10px;box-shadow:0 14px 30px rgba(43,33,64,.18)}
.mbt-hero-imgs img:nth-child(1){left:0;top:70px;transform:rotate(-6deg)}
.mbt-hero-imgs img:nth-child(2){left:30%;top:0;transform:rotate(3deg);z-index:2}
.mbt-hero-imgs img:nth-child(3){right:0;top:110px;transform:rotate(7deg)}
/* titles */
.mbt-title,#content h3{text-align:center;margin:2rem 0 1.2rem;font-size:2rem;font-family:'Fredoka'}
.mbt-title:after,#common-home #content h3:after{content:"";display:block;width:80px;height:6px;border-radius:6px;margin:.4rem auto 0;background:linear-gradient(90deg,var(--pink),var(--orange),var(--yellow))}
/* category tiles */
.mbt-tile{display:block;border-radius:22px;padding:1rem;text-align:center;color:#fff!important;text-decoration:none;font-family:'Fredoka';font-size:1.15rem;font-weight:600;transition:.25s;box-shadow:0 8px 18px rgba(43,33,64,.12);height:100%}
.mbt-tile .ico{width:92px;height:92px;margin:0 auto .6rem;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:2.8rem}
.mbt-tile .ico img{width:100%;height:100%;object-fit:cover}
.mbt-tile:hover{transform:translateY(-6px) rotate(-1deg)}
.t1{background:linear-gradient(135deg,#ff5f9e,#e8173c)}.t2{background:linear-gradient(135deg,#a86cff,#ff3d7f)}
.t3{background:linear-gradient(135deg,#ffb000,#ff6a00)}.t4{background:linear-gradient(135deg,#d99a4e,#9c5a24)}
.t5{background:linear-gradient(135deg,#29b6ff,#1565d8)}.t6{background:linear-gradient(135deg,#2ee6a8,#0e9f86)}
/* product cards */
.product-thumb{background:#fff;border:0!important;border-radius:22px;overflow:hidden;box-shadow:0 6px 16px rgba(43,33,64,.08);transition:.25s;border-bottom:5px solid transparent!important;margin-bottom:20px}
.product-thumb:hover{transform:translateY(-8px);box-shadow:0 18px 30px rgba(255,61,127,.25);border-bottom-color:var(--pink)!important}
.product-thumb .image{background:#fff;padding:.8rem;text-align:center}
.product-thumb .content{padding:0 1rem 1rem}
.product-thumb .description h4 a{color:var(--ink);text-decoration:none;font-family:'Fredoka';font-weight:600}
.product-thumb .description p{display:none}
.product-thumb .price{margin:.4rem 0}
.product-thumb .price-new,.product-thumb .price>:first-child:not(.price-old){display:inline-block;background:var(--yellow);color:var(--ink);font-family:'Fredoka';font-weight:700;font-size:1.2rem;padding:.1rem .75rem;border-radius:50px}
.product-thumb .price-old{color:#999;text-decoration:line-through;margin-left:.4rem}
.product-thumb .price-tax{display:none}
.product-thumb .button-group{display:flex;gap:.4rem;border:0;background:transparent}
.product-thumb .button-group button{border:0;border-radius:50px;background:#f3eefc;color:var(--ink);flex:0 0 auto;width:40px;height:40px}
.product-thumb .button-group button:first-child{flex:1;width:auto;background:linear-gradient(90deg,var(--pink),var(--red));color:#fff;font-weight:800;box-shadow:0 3px 0 #b30f2c}
.product-thumb .button-group button:hover{filter:brightness(1.08)}
/* footer */
footer{margin-top:3rem;background:var(--ink)!important;color:#e9e3ff;padding:3rem 0 1rem;position:relative;border-top:0}
footer:before{content:"";position:absolute;top:-28px;left:0;right:0;height:30px;background:radial-gradient(circle at 15px 0,transparent 14px,var(--ink) 15px) repeat-x;background-size:30px 30px}
footer h5{color:var(--yellow)}
footer a{color:#ffc2d6!important;text-decoration:none}footer a:hover{color:#fff!important}
footer hr{border:0;height:6px;opacity:1;background:linear-gradient(90deg,var(--pink) 0 20%,var(--orange) 20% 40%,var(--yellow) 40% 60%,var(--mint) 60% 80%,#a86cff 80%);border-radius:6px}
footer p{color:#cfc6ee}
/* mobile */
@media (max-width:767px){
 #logo{text-align:center;margin-bottom:.6rem}#logo img{max-height:60px}#logo a:after{font-size:1.35rem}
 #cart{text-align:center}
 header .input-group{margin-bottom:.6rem!important}
 #menu{border-radius:18px;margin:-.9rem .5rem 1rem}
 .mbt-hero{padding:1.5rem;text-align:center}.mbt-hero h1{font-size:2rem}
 .mbt-hero-imgs{height:190px;margin-top:1rem}.mbt-hero-imgs img{width:130px;height:130px}
 .mbt-hero-imgs img:nth-child(1){top:40px;left:2%}.mbt-hero-imgs img:nth-child(2){left:calc(50% - 65px)}.mbt-hero-imgs img:nth-child(3){top:50px;right:2%}
 .mbt-tile{font-size:.95rem}.mbt-tile .ico{width:64px;height:64px;font-size:2rem}
 .delivery-strip{font-size:.8rem}
}
#content{min-height:0}
.product-thumb .button-group button:first-child i{margin-right:.3rem}
@media (max-width:575px){
 #common-home .row.row-cols-1>*{flex:0 0 50%;max-width:50%}
 #common-home .product-thumb .content{padding:0 .6rem .6rem}
 #common-home .product-thumb .description h4{font-size:.9rem}
 #common-home .product-thumb .price-new,#common-home .product-thumb .price>:first-child:not(.price-old){font-size:1rem}
 #common-home .product-thumb .button-group button{width:34px;height:34px}
}
@media (max-width:767px){#top .mbt-topnote{display:none!important}}
.product-thumb .button-group{padding:0 1rem 1rem}
.product-thumb .button-group button,.product-thumb .button-group .btn{border:0!important;border-radius:50px!important;background:#f3eefc!important;color:var(--ink)!important}
.product-thumb .button-group button[formaction*="cart"],.product-thumb .button-group form button:first-of-type{background:linear-gradient(90deg,var(--pink),var(--red))!important;color:#fff!important;box-shadow:0 3px 0 #b30f2c}
#container+footer,footer{margin-top:1.5rem}
/* v1.0.3: product card buttons (default markup: form > div.button > 3 buttons) */
.product-thumb form .button{display:flex;gap:.45rem;padding:0 1rem 1rem;border:0;background:transparent}
.product-thumb form .button button{flex:0 0 40px;height:40px;border:0;border-radius:50px;background:#f3eefc;color:var(--pink);font-size:.95rem;transition:.2s;padding:0;width:auto}
.product-thumb form .button button:hover{background:var(--yellow);color:var(--red)}
.product-thumb form .button button[formaction*="cart.add"]{flex:1 1 auto;background:linear-gradient(90deg,var(--pink),var(--red));color:#fff;font-weight:800;box-shadow:0 3px 0 #b30f2c;padding:0 .8rem}
.product-thumb form .button button[formaction*="cart.add"]::after{content:" Add to Cart";font-family:'Nunito',sans-serif}
.product-thumb form .button button[formaction*="cart.add"]:hover{background:linear-gradient(90deg,var(--orange),var(--pink));color:#fff}
@media (max-width:575px){.product-thumb form .button{padding:0 .6rem .6rem;gap:.3rem}.product-thumb form .button button{flex-basis:32px;height:34px}.product-thumb form .button button[formaction*="cart.add"]::after{content:""}}
/* v1.0.3: remove default-theme footer reserve space */
#container{position:relative;min-height:0;margin-bottom:0}
footer{position:static;bottom:auto}
#content,#column-left,#column-right{padding-bottom:1rem!important}
