/*
Theme Name: BigBull
Description: Clean shop layout (hero, feature boxes, deal banners, product grid) for Big Bull Massage Oil for Men. Original code, inspired by modern beard-oil shop templates.
Version: 2.0
Text Domain: bigbull
*/
:root{--bg:#fff;--soft:#faf6ec;--ink:#16120a;--mut:#6b6455;--gold:#c9971c;--gold2:#a67c10;--line:#e8e0cc}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 'Montserrat',system-ui,sans-serif}
img{max-width:100%;height:auto}a{color:var(--gold2);text-decoration:none}a:hover{color:var(--gold)}
h1,h2,h3,h4{font-weight:800;line-height:1.2;margin:0 0 .5em}
.wrap{max-width:1170px;margin:0 auto;padding:0 20px}
.top{background:var(--ink);color:#d9d0b8;font-size:13px}.top .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:7px;padding-bottom:7px}.top a{color:#f3d77a}
header.site{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
header.site .wrap{display:flex;align-items:center;gap:28px;padding-top:12px;padding-bottom:12px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:800;font-size:22px}.brand img{height:46px;width:auto}.brand:hover{color:var(--ink)}
nav.main{margin-left:auto;display:flex;gap:26px;align-items:center;font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.4px}
nav.main a{color:var(--ink)}nav.main a:hover{color:var(--gold2)}
.cartlink{background:var(--ink);color:#fff!important;padding:9px 16px;border-radius:3px}
.btn,.woocommerce a.button,.woocommerce button.button,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce #respond input#submit{background:var(--gold)!important;color:#16120a!important;border:0!important;border-radius:3px!important;padding:13px 26px!important;font:700 14px/1.2 'Montserrat',sans-serif!important;text-transform:uppercase;cursor:pointer;display:inline-block}
.btn:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--ink)!important;color:#fff!important}
.btn.ghost{background:transparent!important;border:2px solid var(--gold)!important;color:var(--gold)!important}
.hero{position:relative;overflow:hidden;color:#f5ecd2;padding:64px 0 84px;background:radial-gradient(ellipse at 72% 50%,#5a430a 0,#1c1606 45%,#090704 85%)}
.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(243,215,122,.55) 1px,transparent 1.6px),radial-gradient(rgba(243,215,122,.35) 1px,transparent 1.6px);background-size:83px 83px,131px 131px;background-position:0 0,40px 55px;opacity:.28;-webkit-mask-image:linear-gradient(90deg,transparent,#000 40%);mask-image:linear-gradient(90deg,transparent,#000 40%)}
.hero .mark{position:absolute;right:-70px;top:50%;transform:translateY(-50%);width:660px;max-width:70%;opacity:.1;pointer-events:none}
.hero .wrap{position:relative;display:grid;grid-template-columns:1fr 1.05fr;gap:30px;align-items:center}
.hero small{display:inline-block;color:#16120a;background:linear-gradient(90deg,#f3d77a,#c9971c);font-weight:800;letter-spacing:1.5px;text-transform:uppercase;padding:6px 14px;border-radius:30px;font-size:12px}
.hero h1{font-size:clamp(52px,8.5vw,112px);line-height:.95;margin:.18em 0 .08em;letter-spacing:-1px;background:linear-gradient(180deg,#fff3b8,#e0b43a 55%,#a67c10);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 14px rgba(201,151,28,.35))}
.hero h2{font-size:clamp(18px,2.4vw,26px);font-weight:600;color:#f5ecd2;letter-spacing:3px;text-transform:uppercase;margin-bottom:14px}
.hero p{max-width:46ch;color:#d9d0b8}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.chips span{border:1px solid #c9971c;background:rgba(201,151,28,.12);color:#f3d77a;border-radius:4px;padding:8px 14px;font-weight:700;font-size:14px}
.hero .cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}
.trust{display:flex;gap:18px;flex-wrap:wrap;margin-top:22px;font-size:13px;color:#b9ad8c}.trust b{color:#f3d77a}
.stage{position:relative;height:540px}
.stage:after{content:"";position:absolute;left:2%;right:2%;bottom:0;height:60px;background:radial-gradient(ellipse at center,rgba(243,215,122,.5),transparent 68%)}
.stage img{position:absolute;bottom:22px;width:auto;max-width:none;z-index:1;filter:drop-shadow(0 28px 28px rgba(0,0,0,.65)) drop-shadow(0 0 22px rgba(243,215,122,.18))}
.stage .j{left:0;height:300px;transform:rotate(-7deg);transform-origin:bottom center}
.stage .b{left:50%;height:480px;transform:translateX(-50%);z-index:2}
.stage .o{right:0;height:370px;transform:rotate(7deg);transform-origin:bottom center}
.badge{position:absolute;right:2%;top:0;z-index:3;width:116px;height:116px;border-radius:50%;background:linear-gradient(135deg,#f3d77a,#c9971c);color:#16120a;text-align:center;display:flex;flex-direction:column;justify-content:center;transform:rotate(12deg);box-shadow:0 0 0 5px rgba(243,215,122,.3),0 10px 24px rgba(0,0,0,.5);font-weight:800;line-height:1.1}
.badge b{font-size:30px}.badge span{font-size:12px;letter-spacing:1px}
.boxes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:-34px;position:relative}
.boxes div{background:#fff;border:1px solid var(--line);border-bottom:3px solid var(--gold);padding:22px;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.boxes b{display:block;margin-bottom:2px}.boxes span{color:var(--mut);font-size:14px}
section.s{padding:64px 0}.alt{background:var(--soft)}
.s>.wrap>h2{font-size:clamp(26px,4vw,36px);text-align:center;margin-bottom:6px}.sub{text-align:center;color:var(--mut);margin:0 auto 34px;max-width:60ch}
.deals{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:40px}
.deal{border-radius:6px;padding:34px;color:#f5ecd2;background:linear-gradient(120deg,#16120a,#3a2c0a)}
.deal.b{background:linear-gradient(120deg,#a67c10,#d4a62a);color:#16120a}
.deal small{font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.deal h3{font-size:clamp(28px,4vw,44px);margin:.2em 0}.deal p{margin:0}
.steps{max-width:720px;margin:0 auto;counter-reset:s;padding:0;list-style:none}
.steps li{counter-increment:s;padding:10px 0 10px 54px;position:relative;border-bottom:1px solid var(--line)}
.steps li:before{content:counter(s);position:absolute;left:0;top:8px;width:34px;height:34px;border-radius:50%;background:var(--gold);color:#16120a;font-weight:800;text-align:center;line-height:34px}
.cta-strip{background:var(--ink);color:#f5ecd2;text-align:center;padding:48px 0}.cta-strip h2{color:#f3d77a}
.contact{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
/* WooCommerce */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,1fr);gap:24px;margin:0!important;padding:0;list-style:none}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}
.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;background:#fff;border:1px solid var(--line);border-radius:6px;padding:16px;text-align:center;position:relative;transition:box-shadow .2s}
.woocommerce ul.products li.product:hover{box-shadow:0 10px 28px rgba(0,0,0,.1)}
.woocommerce ul.products li.product img{border-radius:4px;margin-bottom:12px;aspect-ratio:4/5;object-fit:cover;object-position:center;width:100%;padding:0;background:#1c1606}
.woocommerce-loop-product__title{font-size:16px!important;font-weight:700!important}
.price,.woocommerce div.product p.price,.woocommerce ul.products li.product .price{color:var(--gold2)!important;font-weight:700;font-size:18px!important}
.price del{color:var(--mut);font-weight:400}.price ins{text-decoration:none}
.woocommerce span.onsale{background:var(--ink);color:#f3d77a;min-height:0;line-height:1;padding:8px 10px;border-radius:3px;top:12px;left:12px;right:auto}
.woocommerce div.product .product_title{font-size:32px}
.woocommerce table.shop_table{border-color:var(--line)}
.woocommerce-info,.woocommerce-message{border-top-color:var(--gold)!important}.woocommerce-info:before,.woocommerce-message:before{color:var(--gold)!important}
.woocommerce-checkout #payment{background:var(--soft)!important}.woocommerce-checkout #payment div.payment_box{background:#fff!important}
main.page{padding:44px 0;min-height:50vh}
footer.site{background:var(--ink);border-top:4px solid var(--gold);padding:48px 0 90px;color:#b9ad8c;font-size:14px}
footer.site .wrap{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}footer h4{color:#f3d77a;margin:0 0 10px}footer a{color:#d9d0b8}
footer .legal{grid-column:1/-1;border-top:1px solid #2a2210;padding-top:16px;font-size:12px}
.wa{position:fixed;right:18px;bottom:18px;z-index:60;background:#25d366;color:#fff!important;border-radius:50px;padding:12px 18px;font-weight:700;box-shadow:0 4px 18px rgba(0,0,0,.35)}
@media(max-width:860px){.stage{height:400px}.stage .j{height:190px}.stage .b{height:310px}.stage .o{height:235px}.badge{width:92px;height:92px}.badge b{font-size:24px}.hero .wrap,.deals,footer.site .wrap,.boxes{grid-template-columns:1fr}nav.main a.hide{display:none}.boxes{margin-top:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
@media(max-width:860px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.woocommerce ul.products{grid-template-columns:1fr}}
