/* Single product page: reference-style layout in TukiTaki logo colors */

/* Top breadcrumb (Home > Products); the in-summary breadcrumb, category line and meta are hidden */
.single-product .tt-crumb{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:15px;color:#6B7A70}
.single-product .tt-crumb a{color:#6B7A70;text-decoration:none}
.single-product .tt-crumb a:hover{color:var(--orange)}
.single-product .summary .woocommerce-breadcrumb,.single-product .summary .single-product-category,.single-product .summary .product_meta{display:none!important}

/* Page frame: full width on desktop, much less empty space above the breadcrumb */
.single-product.ast-plain-container.ast-no-sidebar #primary{margin-top:12px!important;margin-bottom:32px!important}
.single-product #content>.ast-container{max-width:100%!important;padding-left:24px!important;padding-right:24px!important}
.single-product .ast-woocommerce-container{max-width:none;margin:0;padding:0}
.single-product .tt-crumb{margin-top:0}

/* Card */
.single-product div.product{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:32px;gap:48px;align-items:start}

/* Gallery: vertical thumbs on the left, large image on the right */
.single-product div.product .woocommerce-product-gallery{display:grid!important;grid-template-columns:96px minmax(0,1fr);gap:14px;align-items:start}
.single-product div.product .woocommerce-product-gallery:not(:has(.flex-control-thumbs)){grid-template-columns:minmax(0,1fr)}
.single-product div.product .woocommerce-product-gallery .flex-viewport,.single-product div.product .woocommerce-product-gallery>.woocommerce-product-gallery__wrapper{grid-area:1/2;min-width:0}
.single-product div.product .woocommerce-product-gallery:not(:has(.flex-control-thumbs)) .flex-viewport,.single-product div.product .woocommerce-product-gallery:not(:has(.flex-control-thumbs))>.woocommerce-product-gallery__wrapper{grid-area:1/1}
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs{grid-area:1/1;display:flex!important;flex-direction:column;grid-template-columns:none!important;gap:10px;margin:0!important}
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li{width:100%!important}
.single-product div.product .woocommerce-product-gallery .flex-control-thumbs img{display:block;width:100%;height:auto;background:var(--surface)}

/* The sale pill sits next to the price, not on the image */
.single-product div.product>.onsale,.single-product div.product .woocommerce-product-gallery .onsale{display:none}

/* Title */
.single-product .summary .product_title{font-size:32px;line-height:1.2;font-weight:600;margin:0 0 10px}

/* Price row (theme price + Save pill) */
.single-product .summary .price{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 16px;padding-bottom:18px;border-bottom:1px solid var(--line);font-size:36px;font-weight:700;line-height:1.2;color:var(--accent)}
.single-product .summary .price ins{order:1;text-decoration:none;background:none}
.single-product .summary .price del{order:2;font-size:22px;font-weight:400;color:#6B7A70;opacity:1}
.single-product .summary .tt-save{order:3;background:var(--orange);color:var(--ink);font-size:14px;font-weight:700;line-height:1;padding:6px 10px;border-radius:99px}

/* Quantity stepper */
.single-product form.cart{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0 14px}
.single-product form.cart.variations_form,.single-product form.cart.grouped_form{display:block}
.single-product form.cart .quantity{grid-column:1/-1;display:flex;align-items:center;gap:16px;margin:0}
.single-product form.cart .quantity::before{content:'Quantity:';font-weight:600;font-size:18px;color:var(--ink)}
.single-product form.cart .quantity .tt-qbox{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:var(--r);padding:4px 6px;background:var(--surface)}
.single-product form.cart .quantity .tt-qbox input.qty{width:56px;height:40px;border:0;padding:0;background:transparent;text-align:center;font-weight:600;-moz-appearance:textfield;appearance:textfield}
.single-product form.cart .quantity .tt-qbox input.qty::-webkit-outer-spin-button,.single-product form.cart .quantity .tt-qbox input.qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.single-product form.cart .quantity .tt-qbtn{width:34px;height:34px;border:0;border-radius:50%;background:var(--tint);color:var(--accent);font-size:20px;line-height:1;font-weight:700;cursor:pointer;padding:0}
.single-product form.cart .quantity .tt-qbtn:hover{background:var(--accent);color:#fff}

/* Buttons: 2 x 2 grid (Add to cart, Buy now / WhatsApp, Call) */
.single-product .single_add_to_cart_button,.single-product .tt-buy-btn{width:100%;flex:none;height:54px;display:flex;align-items:center;justify-content:center;font-size:17px;text-transform:uppercase;letter-spacing:.02em}
.single-product .tt-buy-btn{background:var(--orange);color:#fff;border:2px solid var(--orange)}
.single-product .tt-buy-btn:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.single-product .tt-contact{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 18px}
.single-product .tt-contact a{display:flex;align-items:center;justify-content:center;gap:8px;height:54px;padding:0 14px;border-radius:var(--r);font-size:17px;font-weight:700;text-decoration:none;border:2px solid var(--accent);color:var(--accent);background:var(--surface)}
.single-product .tt-contact a:only-child{grid-column:1/-1}
.single-product .tt-contact a.tt-wa{background:var(--surface);color:var(--accent)}
.single-product .tt-contact a.tt-wa:hover{background:var(--accent);color:#fff}
.single-product .tt-contact a.tt-call{background:var(--ink);border-color:var(--ink);color:#fff}
.single-product .tt-contact a.tt-call:hover{background:var(--accent);border-color:var(--accent)}
.single-product .tt-contact a::before{content:'';width:20px;height:20px;flex:none;background:currentColor;-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat}
.single-product .tt-contact a.tt-wa{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 2H4a2 2 0 00-2 2v18l4-4h14a2 2 0 002-2V4a2 2 0 00-2-2z'/%3E%3C/svg%3E")}
.single-product .tt-contact a.tt-call{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.62 10.79a15.05 15.05 0 006.59 6.59l2.2-2.2a1 1 0 011.02-.24 11.36 11.36 0 003.58.57 1 1 0 011 1V20a1 1 0 01-1 1A17 17 0 013 4a1 1 0 011-1h3.5a1 1 0 011 1c0 1.25.2 2.45.57 3.57a1 1 0 01-.25 1.02z'/%3E%3C/svg%3E")}

/* Links in brand green instead of the theme blue */
.single-product .summary a{color:var(--accent)}
.single-product .summary a:hover{color:var(--orange)}

/* Tablet */
@media(max-width:1024px){
  .single-product div.product{padding:24px;gap:28px}
  .single-product div.product .woocommerce-product-gallery{grid-template-columns:76px minmax(0,1fr);gap:10px}
  .single-product .summary .product_title{font-size:28px}
  .single-product .summary .price{font-size:30px}
  .single-product .single_add_to_cart_button,.single-product .tt-buy-btn,.single-product .tt-contact a{height:50px;font-size:16px}
}

/* Phone and small tablet: one column, thumbs in a row under the image */
@media(max-width:820px){
  .single-product #content>.ast-container{padding-left:12px!important;padding-right:12px!important}
  .single-product div.product{padding:14px;gap:18px}
  .single-product div.product .woocommerce-product-gallery{grid-template-columns:minmax(0,1fr)}
  .single-product div.product .woocommerce-product-gallery .flex-viewport,.single-product div.product .woocommerce-product-gallery>.woocommerce-product-gallery__wrapper{grid-area:1/1}
  .single-product div.product .woocommerce-product-gallery .flex-control-thumbs{grid-area:2/1;flex-direction:row;overflow-x:auto}
  .single-product div.product .woocommerce-product-gallery .flex-control-thumbs li{width:72px!important;flex:none}
  .single-product .summary .product_title{font-size:24px}
  .single-product .summary .price{font-size:28px;padding-bottom:14px}
  .single-product .summary .price del{font-size:18px}
  .single-product form.cart,.single-product .tt-contact{gap:10px}
  .single-product .single_add_to_cart_button,.single-product .tt-buy-btn,.single-product .tt-contact a{height:48px;font-size:15px}
}
@media(max-width:520px){
  .single-product .tt-contact{grid-template-columns:1fr}
}
@media(max-width:360px){
  .single-product form.cart{grid-template-columns:1fr}
}
