/* Product-only title banner removal; navigation and all other page headers remain unchanged. */
body.single-product .top_panel .vc_custom_1618345738397 { display:none!important; }
body.single-product .page_content_wrap { padding-top:24px!important; }
body.single-product .woocommerce-breadcrumb { border-top:0!important; padding:0 0 12px!important; margin:0 0 12px!important; }
@media(max-width:767px) { body.single-product .page_content_wrap { padding-top:16px!important; } }
/* Remaining rules are scoped to the enhanced main product. */
.gkpd-ready { --gkpd-orange:#ff5a00; --gkpd-ink:#16181d; --gkpd-muted:#626b78; }
/* Initial server paint, including when WooCommerce gallery JS is delayed or disabled. */
.gkpd-server .gkpd-hero > .woocommerce-product-gallery { opacity:1!important; }
.gkpd-server .gkpd-hero .quantity > .q_inc,
.gkpd-server .gkpd-hero .quantity > .q_dec { display:none!important; }
.gkpd-server .gkpd-hero .quantity:has(input[type=hidden]) { display:none!important; }
.gkpd-server .trx-stretch-width-wrap:empty { display:none!important; }
.gkpd-ready .gkpd-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:start; margin-bottom:32px; }
.gkpd-ready .gkpd-hero::after { display:none; }
.gkpd-ready .gkpd-hero > .woocommerce-product-gallery,
.gkpd-ready .gkpd-hero > .summary { float:none!important; width:100%!important; margin:0!important; min-width:0; box-sizing:border-box; }
.gkpd-ready .gkpd-hero > .summary { padding:28px!important; background:#fff; border:1px solid #edf0f3; border-radius:16px; box-shadow:0 6px 24px #16181d08; }
.gkpd-ready .gkpd-hero .woocommerce-product-gallery__wrapper { margin:0!important; border:0; border-radius:16px; overflow:hidden; }
.gkpd-ready .gkpd-hero .woocommerce-product-gallery__image:not(:first-child),
.gkpd-ready .gkpd-hero .flex-control-thumbs,
.gkpd-ready .gkpd-hero .flex-direction-nav { display:none!important; }
.gkpd-ready .gkpd-hero .woocommerce-product-gallery__image:first-child { width:100%!important; float:none!important; }
.gkpd-ready .gkpd-hero .woocommerce-product-gallery__image img { width:100%; height:auto; border-radius:16px; }
.gkpd-ready .gkpd-hero .summary .product_title { color:var(--gkpd-ink); font-weight:700!important; font-size:clamp(25px,2.3vw,36px)!important; line-height:1.18!important; letter-spacing:-.025em!important; text-transform:none!important; margin:0 0 20px!important; }
.gkpd-ready .gkpd-hero .summary .price { font-size:36px!important; line-height:1.3!important; margin:20px 0!important; color:var(--gkpd-orange)!important; font-weight:700; }
.gkpd-ready .gkpd-hero .summary .price del { color:#8b929b!important; font-size:22px!important; margin-right:12px; font-weight:400; }
.gkpd-ready .gkpd-hero .summary .price ins { font-size:inherit!important; background:transparent!important; color:inherit!important; }
.gkpd-ready .gkpd-hero .summary .price .amount { font-size:inherit!important; font-weight:inherit!important; }
.gkpd-ready .gkpd-hero .summary .price .decimals { font-size:inherit!important; vertical-align:baseline!important; }
.gkpd-ready .gkpd-hero .summary > .onsale { position:static!important; display:inline-block!important; width:auto!important; height:auto!important; min-height:0!important; min-width:0!important; padding:7px 14px!important; margin:0 0 16px!important; border:0!important; border-radius:24px!important; line-height:1.4!important; background:var(--gkpd-orange)!important; color:white!important; }
.gkpd-ready .gkpd-saving { display:inline-block; color:#187447; background:#eef8f1; padding:6px 10px; border-radius:7px; font-size:14px; margin:0 0 10px; }
.gkpd-ready .gkpd-stats { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 16px; }
.gkpd-ready .gkpd-stat { display:inline-flex; align-items:center; gap:9px; background:#f6f7f9; border-radius:9px; padding:10px 13px; color:var(--gkpd-ink); font-size:15px; font-weight:600; }
.gkpd-ready .gkpd-stat svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linejoin:round; stroke-linecap:round; flex-shrink:0; }
.gkpd-ready .gkpd-hero .summary form.cart { margin:20px 0!important; width:100%; scroll-margin-top:180px; }
.gkpd-ready .gkpd-hero .summary form.cart::after { content:''; display:block; clear:both; }
.gkpd-ready .gkpd-hero .summary .single_add_to_cart_button { background:var(--gkpd-orange)!important; color:white!important; border:0!important; border-radius:9px!important; padding:16px 18px!important; min-height:52px; font-size:16px!important; line-height:1.3!important; letter-spacing:0!important; float:none!important; margin:14px 0 0!important; width:100%; white-space:normal; }
.gkpd-ready .gkpd-hero .summary .single_add_to_cart_button:focus-visible,
.gkpd-ready .gkpd-go:focus-visible { outline:3px solid #16181d; outline-offset:3px; }
.gkpd-ready .gkpd-hero .summary .quantity { float:none!important; display:inline-flex; align-items:center; vertical-align:middle; }
.gkpd-ready .gkpd-hero .summary .qty { min-height:44px; }
.gkpd-ready .gkpd-hero .summary input,
.gkpd-ready .gkpd-hero .summary select { max-width:100%; box-sizing:border-box; font-size:16px; }
.gkpd-ready .gkpd-trust { display:grid; gap:9px; margin:20px 0; }
.gkpd-ready .gkpd-trust p { margin:0!important; color:#187447; font-size:15px; line-height:1.5; }
.gkpd-ready .gkpd-hero .summary .product_meta { font-size:13px; color:var(--gkpd-muted); margin-top:20px; line-height:1.6; }
.gkpd-ready .gkpd-section { clear:both; margin:28px 0; box-sizing:border-box; color:var(--gkpd-ink); }
.gkpd-ready .gkpd-heading { font-size:25px!important; font-weight:700!important; line-height:1.3!important; text-transform:none!important; letter-spacing:-.02em!important; margin:0 0 16px!important; }
.gkpd-ready .gkpd-description #tab-description { display:block!important; visibility:visible!important; height:auto!important; opacity:1!important; border:0!important; padding:0!important; margin:0!important; }
.gkpd-ready .gkpd-description p,
.gkpd-ready .gkpd-programme p,
.gkpd-ready .gkpd-description li,
.gkpd-ready .gkpd-programme li { color:#46505d!important; font-size:16px!important; line-height:1.75!important; }
.gkpd-ready .gkpd-section p { margin:0 0 14px; }
.gkpd-ready .gkpd-section ul,
.gkpd-ready .gkpd-section ol { padding-left:24px; margin-bottom:16px; }
.gkpd-ready .gkpd-programme { background:#f6f7f9; border-radius:14px; padding:26px; }
.gkpd-ready .gkpd-programme .woocommerce-product-details__short-description { margin:0!important; }
.gkpd-ready .gkpd-how { border:1px solid #edf0f3; border-radius:14px; padding:24px; }
.gkpd-ready .gkpd-how ol { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); list-style:none; counter-reset:gkpd; gap:20px; padding:0; margin:0; }
.gkpd-ready .gkpd-how li { display:flex; gap:12px; align-items:center; font-size:16px; font-weight:600; }
.gkpd-ready .gkpd-how li::before { counter-increment:gkpd; content:counter(gkpd); position:static; flex-shrink:0; display:grid; place-items:center; width:36px; height:36px; border-radius:50%; color:var(--gkpd-orange); background:#fff0e6; }
.gkpd-ready > .woocommerce-tabs[hidden], .gkpd-ready .gkpd-mobile-buy[hidden] { display:none!important; }
.gkpd-ready .gkpd-empty-tabs { display:none!important; }
.gkpd-ready .gkpd-mobile-buy { display:none; }
/* Consistent native SVG icons, accessible quantity controls and centered CTA. */
.gkpd-ready .gkpd-icon { display:inline-flex; flex:0 0 auto; width:28px; height:28px; align-items:center; justify-content:center; }
.gkpd-ready .gkpd-icon svg { display:block; width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.gkpd-ready .gkpd-hero .summary .single_add_to_cart_button { display:flex!important; align-items:center!important; justify-content:center!important; text-align:center!important; text-indent:0!important; gap:0!important; box-sizing:border-box!important; }
.gkpd-ready .gkpd-hero .summary .single_add_to_cart_button:not(.loading)::before,
.gkpd-ready .gkpd-hero .summary .single_add_to_cart_button:not(.loading)::after { content:none!important; display:none!important; }
.gkpd-ready .gkpd-hero .summary .quantity { display:inline-grid!important; grid-template-columns:44px 52px 44px!important; grid-template-rows:46px!important; width:140px!important; height:46px!important; min-width:0!important; padding:0!important; margin:0!important; gap:0!important; border:1px solid #e1e5eb!important; border-radius:9px!important; background:#fff!important; overflow:visible!important; box-sizing:content-box!important; }
.gkpd-ready .quantity .gkpd-dec,
.gkpd-ready .quantity .gkpd-inc { display:flex!important; align-items:center!important; justify-content:center!important; position:static!important; inset:auto!important; width:44px!important; height:46px!important; line-height:1!important; padding:0!important; margin:0!important; border:0!important; transform:none!important; background:transparent!important; color:#46505d!important; font-size:22px!important; font-weight:500!important; cursor:pointer; grid-row:1; box-sizing:border-box!important; }
.gkpd-ready .quantity .gkpd-dec { grid-column:1; }
.gkpd-ready .quantity .gkpd-inc { grid-column:3; }
.gkpd-ready .quantity .gkpd-dec::before,.gkpd-ready .quantity .gkpd-dec::after,
.gkpd-ready .quantity .gkpd-inc::before,.gkpd-ready .quantity .gkpd-inc::after { content:none!important; display:none!important; }
.gkpd-ready .gkpd-hero .summary .quantity input.qty { grid-column:2; grid-row:1; display:block!important; position:static!important; width:52px!important; min-width:0!important; height:46px!important; min-height:0!important; padding:0!important; margin:0!important; border:0!important; border-left:1px solid #e1e5eb!important; border-right:1px solid #e1e5eb!important; border-radius:0!important; text-align:center!important; text-indent:0!important; font-size:16px!important; line-height:46px!important; box-sizing:border-box!important; appearance:textfield; -moz-appearance:textfield; }
.gkpd-ready .quantity input::-webkit-inner-spin-button,.gkpd-ready .quantity input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.gkpd-ready .quantity [role=button]:focus-visible { outline:2px solid #ff5a00; outline-offset:2px; border-radius:6px; }
.gkpd-ready .gkpd-trust { gap:18px; margin:24px 0; }
.gkpd-ready .gkpd-trust-row { display:grid; grid-template-columns:30px minmax(0,1fr); gap:14px; align-items:start; }
.gkpd-ready .gkpd-trust-row > .gkpd-icon { width:30px; height:30px; color:#158346; margin-top:2px; }
.gkpd-ready .gkpd-trust-title,.gkpd-ready .gkpd-trust-description { display:block; line-height:1.5; }
.gkpd-ready .gkpd-trust-title { font-size:15px; font-weight:700; color:#16181d; }
.gkpd-ready .gkpd-trust-description { font-size:14px; color:#626b78; margin-top:2px; }
.gkpd-ready .gkpd-included-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 28px; list-style:none!important; padding:0!important; margin:18px 0 24px!important; }
.gkpd-ready .gkpd-included-item { display:flex!important; align-items:flex-start; gap:12px; list-style:none!important; padding:0!important; margin:0!important; }
.gkpd-ready .gkpd-included-item::before,.gkpd-ready .gkpd-included-item::after { content:none!important; display:none!important; }
.gkpd-ready .gkpd-included-item > .gkpd-icon { width:24px; height:24px; color:#fff; border-radius:50%; background:#ff5a00; padding:3px; box-sizing:border-box; margin-top:2px; }
.gkpd-ready .gkpd-included-text { min-width:0; flex:1; }
.gkpd-ready .gkpd-how li { position:relative; display:grid; grid-template-columns:36px minmax(0,1fr); gap:8px 12px; align-content:start; align-items:start; padding:0 18px 0 0!important; margin:0!important; }
.gkpd-ready .gkpd-how li + li { border-left:1px solid #e7e9ee; padding-left:20px!important; }
.gkpd-ready .gkpd-how li::before { grid-row:1; grid-column:1; }
.gkpd-ready .gkpd-how li > .gkpd-icon { grid-row:1; grid-column:2; color:#ff5a00; width:30px; height:30px; align-self:center; }
.gkpd-ready .gkpd-step-title { grid-column:2; font-size:15px; line-height:1.5; color:#16181d; }
.gkpd-ready .gkpd-step-description { grid-column:2; font-size:14px; line-height:1.5; color:#626b78; font-weight:400; }
.gkpd-ready .gkpd-conditions { background:#fff; border:1px solid #e1e5eb; border-radius:10px; margin-top:24px; overflow:hidden; }
.gkpd-ready .gkpd-conditions-title { display:flex; align-items:center; gap:12px; list-style:none; padding:16px 18px; color:#16181d; font-size:16px; font-weight:700; cursor:pointer; }
.gkpd-ready .gkpd-conditions-title::-webkit-details-marker { display:none; }
.gkpd-ready .gkpd-conditions-title::after { content:'+'; margin-left:auto; font-size:22px; font-weight:400; }
.gkpd-ready details[open] > .gkpd-conditions-title::after { content:'−'; }
.gkpd-ready .gkpd-conditions-body { padding:0 20px 18px; }
.gkpd-ready .gkpd-conditions-title .gkpd-icon { width:22px; height:22px; }
@media(min-width:1024px) {
 .gkpd-ready .gkpd-hero > .woocommerce-product-gallery { position:sticky!important; top:180px; }
}
@media(max-width:767px) {
 .gkpd-ready .gkpd-hero { grid-template-columns:minmax(0,1fr); gap:18px; margin-bottom:24px; }
 .gkpd-ready .gkpd-hero > .summary { padding:20px!important; }
 .gkpd-ready .gkpd-hero .summary .product_title { font-size:27px!important; }
 .gkpd-ready .gkpd-programme,.gkpd-ready .gkpd-how { padding:18px; }
 .gkpd-ready .gkpd-how ol { grid-template-columns:1fr; gap:14px; }
 .gkpd-ready .gkpd-included-list { grid-template-columns:1fr; gap:14px; }
 .gkpd-ready .gkpd-how li + li { border-left:0; border-top:1px solid #e7e9ee; padding:18px 0 0!important; }
 .gkpd-ready .gkpd-section { margin:24px 0; }
 .gkpd-ready .gkpd-heading { font-size:23px!important; }
 .gkpd-ready .gkpd-mobile-buy { display:flex; align-items:center; gap:14px; position:fixed; z-index:90; bottom:0; left:0; right:0; padding:12px 16px calc(12px + env(safe-area-inset-bottom)); background:#fff; border-top:1px solid #e7e9ee; box-shadow:0 -4px 18px #00000009; }
 .gkpd-ready .gkpd-mobile-price { flex-shrink:0; margin:0!important; font-size:21px!important; line-height:1.3!important; font-weight:700; color:var(--gkpd-ink); }
 .gkpd-ready .gkpd-mobile-price del { display:none; }
 .gkpd-ready .gkpd-mobile-price ins { background:none; }
 .gkpd-ready .gkpd-go { flex:1; min-height:48px; border:0; border-radius:9px; color:white; background:var(--gkpd-orange); padding:12px; font:inherit; font-size:15px; font-weight:700; line-height:1.3; cursor:pointer; }
 .gkpd-ready { padding-bottom:100px; }
}
