/* Theme Name: PILATESGO Theme URI: https://pilatesgo.pl Author: PILATESGO Description: Motyw one-page dla sklepu PILATESGO z integracją WooCommerce Version: 1.0 License: GNU General Public License v2 or later Text Domain: pilatesgo */ /* ===== RESET & BASE ===== */ *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } :root { --primary: #64587e; --primary-container: #eee3ff; --on-primary: #ffffff; --on-primary-container: #6d6188; --surface: #f9f9f7; --surface-container: #eeeeec; --surface-container-low: #f4f4f2; --surface-container-high: #e8e8e6; --surface-container-lowest: #ffffff; --on-surface: #1a1c1b; --on-surface-variant: #46464c; --secondary: #5e604d; --outline: #77767d; --outline-variant: #c7c5cc; } body { font-family: 'Manrope', sans-serif; background-color: var(--surface); color: var(--on-surface); line-height: 1.6; } h1, h2, h3 { font-family: 'Noto Serif', serif; } img { max-width: 100%; height: auto; display: block; } a { text-decoration: none; color: inherit; } html { scroll-behavior: smooth; } /* ===== LAYOUT ===== */ .pilatesgo-container { max-width: 1280px; margin: 0 auto; padding: 0 1.5rem; } /* ===== NAVIGATION ===== */ .pilatesgo-nav { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,0.85); backdrop-filter: blur(20px); box-shadow: 0 1px 3px rgba(0,0,0,0.08); } .pilatesgo-nav__inner { display: flex; justify-content: space-between; align-items: center; padding: 1rem 1.5rem; max-width: 1280px; margin: 0 auto; } .pilatesgo-nav__logo { font-size: 1.25rem; font-weight: 700; color: #4a3f6b; font-family: 'Noto Serif', serif; letter-spacing: -0.02em; } .pilatesgo-nav__links { display: none; gap: 2rem; align-items: center; } @media (min-width: 768px) { .pilatesgo-nav__links { display: flex; } } .pilatesgo-nav__links a { color: #555; font-weight: 500; transition: color 0.2s; font-size: 0.95rem; } .pilatesgo-nav__links a:hover { color: var(--primary); } /* ===== BUTTONS ===== */ .btn-primary { background: var(--primary); color: #ffffff !important; padding: 0.6rem 1.5rem; border-radius: 9999px; font-weight: 700; font-size: 0.9rem; transition: opacity 0.2s, transform 0.2s; display: inline-block; border: none; cursor: pointer; } .btn-primary:hover { opacity: 0.9; transform: scale(1.02); color: #ffffff !important; } .btn-primary-lg { background: var(--primary); color: #ffffff !important; padding: 1.1rem 2.5rem; border-radius: 9999px; font-weight: 700; font-size: 1.1rem; transition: opacity 0.2s, transform 0.2s; display: inline-block; border: none; cursor: pointer; box-shadow: 0 8px 32px rgba(100,88,126,0.25); } .btn-primary-lg:hover { opacity: 0.9; transform: scale(1.02); color: #ffffff !important; } /* ===== HERO ===== */ .pilatesgo-hero { min-height: 90vh; display: flex; align-items: center; overflow: hidden; padding: 5rem 0 3rem; } .pilatesgo-hero__grid { display: grid; gap: 3rem; align-items: center; } @media (min-width: 768px) { .pilatesgo-hero__grid { grid-template-columns: 1fr 1fr; } } .pilatesgo-hero__badge { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.4rem 1rem; border-radius: 9999px; background: var(--primary-container); color: var(--on-primary-container); font-size: 0.7rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; } .pilatesgo-hero__title { font-size: clamp(2.5rem, 6vw, 4.5rem); line-height: 1.1; margin: 1rem 0; color: var(--on-surface); } .pilatesgo-hero__title em { font-style: italic; color: var(--primary); } .pilatesgo-hero__subtitle { font-size: 1.1rem; color: var(--on-surface-variant); max-width: 480px; line-height: 1.7; } .pilatesgo-hero__actions { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; margin-top: 1.5rem; } .pilatesgo-hero__stars { display: flex; align-items: center; gap: 0.25rem; color: var(--primary); font-size: 0.85rem; } .pilatesgo-hero__badges { display: flex; flex-wrap: wrap; gap: 1.5rem; margin-top: 2rem; } .pilatesgo-hero__badge-item { display: flex; align-items: center; gap: 0.5rem; font-size: 0.85rem; font-weight: 600; color: var(--secondary); } .pilatesgo-hero__image { position: relative; } .pilatesgo-hero__image img { border-radius: 0.75rem; width: 100%; aspect-ratio: 4/5; object-fit: cover; box-shadow: 0 8px 32px rgba(26,28,27,0.1); } .pilatesgo-hero__image::before { content: ''; position: absolute; top: -5rem; right: -5rem; width: 24rem; height: 24rem; background: rgba(238,227,255,0.4); border-radius: 50%; filter: blur(60px); z-index: -1; } /* ===== PROBLEM SECTION ===== */ .pilatesgo-problem { padding: 5rem 0; background: var(--surface-container-low); } .pilatesgo-problem__grid { display: grid; gap: 1.5rem; margin-top: 3rem; } @media (min-width: 768px) { .pilatesgo-problem__grid { grid-template-columns: repeat(3, 1fr); } } .pilatesgo-card { padding: 2.5rem; border-radius: 0.75rem; background: var(--surface-container-lowest); box-shadow: 0 4px 16px rgba(26,28,27,0.05); } .pilatesgo-card__icon { color: var(--primary); font-size: 2.5rem; margin-bottom: 1rem; } .pilatesgo-card h3 { font-size: 1.1rem; font-weight: 700; margin-bottom: 0.75rem; font-family: 'Manrope', sans-serif; } .pilatesgo-card p { color: var(--on-surface-variant); line-height: 1.7; font-size: 0.95rem; } .pilatesgo-quote { margin-top: 3rem; max-width: 42rem; margin-left: auto; margin-right: auto; padding: 2rem; border-radius: 0.75rem; background: var(--primary); color: var(--on-primary); text-align: center; } .pilatesgo-quote p { font-size: 1.1rem; font-weight: 700; font-style: italic; } /* ===== BENEFITS ===== */ .pilatesgo-benefits { padding: 5rem 0; } .pilatesgo-benefits__grid { display: grid; gap: 3rem; align-items: center; } @media (min-width: 1024px) { .pilatesgo-benefits__grid { grid-template-columns: 1fr 1fr; } } .pilatesgo-benefits__cards { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; } .pilatesgo-benefit-card { padding: 1.5rem; background: var(--surface-container); border-radius: 0.75rem; } .pilatesgo-benefit-card h4 { font-size: 0.95rem; font-weight: 700; margin-top: 0.75rem; font-family: 'Manrope', sans-serif; } /* ===== HOW IT WORKS ===== */ .pilatesgo-how { padding: 5rem 0; background: var(--surface-container-high); } .pilatesgo-how__grid { display: grid; gap: 3rem; align-items: center; margin-top: 3rem; } @media (min-width: 768px) { .pilatesgo-how__grid { grid-template-columns: 1fr 1fr; } } .pilatesgo-how__img { border-radius: 0.75rem; box-shadow: 0 4px 16px rgba(26,28,27,0.08); width: 100%; object-fit: cover; } .pilatesgo-step { display: flex; gap: 1.5rem; margin-bottom: 2.5rem; } .pilatesgo-step:last-child { margin-bottom: 0; } .pilatesgo-step__num { flex-shrink: 0; width: 3rem; height: 3rem; border-radius: 50%; background: var(--primary); color: var(--on-primary); display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 1rem; } .pilatesgo-step__title { font-size: 1.1rem; font-weight: 700; margin-bottom: 0.4rem; font-family: 'Manrope', sans-serif; } .pilatesgo-step p { color: var(--on-surface-variant); font-size: 0.95rem; line-height: 1.6; } /* ===== VIDEO ===== */ .pilatesgo-video { padding: 5rem 0; } .pilatesgo-video__wrap { position: relative; border-radius: 0.75rem; overflow: hidden; aspect-ratio: 16/9; background: #e2e3e1; box-shadow: 0 8px 32px rgba(26,28,27,0.1); cursor: pointer; } .pilatesgo-video__wrap img { width: 100%; height: 100%; object-fit: cover; opacity: 0.85; transition: transform 0.5s; } .pilatesgo-video__wrap:hover img { transform: scale(1.03); } .pilatesgo-video__play { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; } .pilatesgo-video__play-btn { width: 5rem; height: 5rem; background: rgba(255,255,255,0.92); border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 16px rgba(0,0,0,0.15); transition: transform 0.2s; } .pilatesgo-video__wrap:hover .pilatesgo-video__play-btn { transform: scale(1.1); } .pilatesgo-video__label { position: absolute; bottom: 0; left: 0; right: 0; padding: 2rem; background: linear-gradient(to top, rgba(0,0,0,0.6), transparent); color: white; font-family: 'Noto Serif', serif; font-size: 1.5rem; } /* ===== BEFORE/AFTER ===== */ .pilatesgo-transform { padding: 5rem 0; background: var(--surface-container-low); } .pilatesgo-transform__grid { display: grid; gap: 2rem; margin-top: 3rem; } @media (min-width: 768px) { .pilatesgo-transform__grid { grid-template-columns: 1fr 1fr; align-items: center; } } .pilatesgo-beforeafter { border-radius: 0.75rem; overflow: hidden; box-shadow: 0 4px 16px rgba(26,28,27,0.08); display: flex; flex-direction: column; } @media (min-width: 768px) { .pilatesgo-beforeafter { flex-direction: row; } } .pilatesgo-beforeafter__half { position: relative; height: 20rem; flex: 1; } .pilatesgo-beforeafter__half img { width: 100%; height: 100%; object-fit: cover; } .pilatesgo-beforeafter__label { position: absolute; top: 1rem; left: 1rem; padding: 0.25rem 0.75rem; border-radius: 9999px; font-size: 0.75rem; font-weight: 700; } .pilatesgo-transform__quote { padding: 1rem; } .pilatesgo-transform__stars { display: flex; gap: 0.25rem; color: var(--primary); margin-bottom: 1rem; } .pilatesgo-transform__blockquote { font-family: 'Noto Serif', serif; font-size: 1.4rem; font-style: italic; line-height: 1.5; margin-bottom: 1rem; } /* ===== INCLUDED ===== */ .pilatesgo-included { padding: 5rem 0; } .pilatesgo-included__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; margin-top: 3rem; } @media (min-width: 768px) { .pilatesgo-included__grid { grid-template-columns: repeat(4, 1fr); } } .pilatesgo-item { text-align: center; } .pilatesgo-item__img { aspect-ratio: 1; background: var(--surface-container); border-radius: 0.75rem; display: block; position: relative; margin-bottom: 1rem; transition: background 0.2s; overflow: hidden; padding: 0; } .pilatesgo-item:hover .pilatesgo-item__img { background: var(--primary-container); } .pilatesgo-item__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; } .pilatesgo-item p { font-weight: 700; font-size: 0.9rem; } /* ===== REVIEWS ===== */ .pilatesgo-reviews { padding: 5rem 0; background: var(--surface-container-high); } .pilatesgo-reviews__grid { display: grid; gap: 2rem; margin-top: 3rem; } @media (min-width: 768px) { .pilatesgo-reviews__grid { grid-template-columns: repeat(3, 1fr); } } .pilatesgo-review { padding: 2rem; background: var(--surface-container-lowest); border-radius: 0.75rem; box-shadow: 0 4px 16px rgba(26,28,27,0.05); } .pilatesgo-review__stars { display: flex; gap: 0.25rem; color: var(--primary); margin-bottom: 1rem; } .pilatesgo-review__text { font-style: italic; color: var(--on-surface-variant); line-height: 1.7; margin-bottom: 1.5rem; } .pilatesgo-review__author { font-weight: 700; font-size: 0.9rem; } /* ===== ORDER SECTION ===== */ .pilatesgo-order { padding: 5rem 0; } .pilatesgo-order__box { background: var(--surface-container); border-radius: 0.75rem; overflow: hidden; display: flex; flex-direction: column; } @media (min-width: 1024px) { .pilatesgo-order__box { flex-direction: row; } } .pilatesgo-order__content { flex: 1; padding: 3rem; } .pilatesgo-order__image { flex: 1; min-height: 400px; position: relative; } .pilatesgo-order__image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; background: white; padding: 1rem; } .pilatesgo-price-old { color: #999; text-decoration: line-through; font-size: 1.1rem; margin-bottom: 0.25rem; } .pilatesgo-price-new { font-size: 2.5rem; font-weight: 700; color: var(--primary); display: flex; align-items: baseline; gap: 0.75rem; } .pilatesgo-price-new span { font-size: 0.85rem; font-weight: 400; color: var(--on-surface-variant); } .pilatesgo-guarantee { text-align: center; font-size: 0.8rem; color: var(--on-surface-variant); margin-top: 1rem; } /* ===== WOOCOMMERCE ===== */ .woocommerce .button, .woocommerce button.button, .woocommerce a.button, .woocommerce input.button { background: var(--primary) !important; color: #ffffff !important; border-radius: 9999px !important; font-weight: 700 !important; padding: 0.8rem 2rem !important; border: none !important; font-family: 'Manrope', sans-serif !important; transition: opacity 0.2s !important; font-size: 1rem !important; } .woocommerce .button:hover, .woocommerce button.button:hover { background: var(--primary) !important; opacity: 0.9 !important; color: white !important; } .woocommerce .single_add_to_cart_button { width: 100% !important; font-size: 1.2rem !important; padding: 1.2rem 2rem !important; margin-top: 1.5rem !important; } .woocommerce .quantity input { border: 2px solid var(--outline-variant) !important; border-radius: 0.5rem !important; padding: 0.5rem !important; font-family: 'Manrope', sans-serif !important; font-size: 1rem !important; } .woocommerce .price { color: var(--primary) !important; font-size: 2rem !important; font-weight: 700 !important; } .woocommerce .price del { color: #999 !important; font-size: 1.2rem !important; } .woocommerce .variations select { border: 2px solid var(--outline-variant) !important; border-radius: 0.5rem !important; padding: 0.6rem 1rem !important; font-family: 'Manrope', sans-serif !important; background: white !important; color: var(--on-surface) !important; } .woocommerce div.product { margin: 0 !important; } /* ===== FAQ ===== */ .pilatesgo-faq { padding: 5rem 0; background: var(--surface-container-low); } .pilatesgo-faq__list { max-width: 48rem; margin: 3rem auto 0; display: flex; flex-direction: column; gap: 1rem; } .pilatesgo-faq__item { background: var(--surface-container-lowest); border-radius: 0.75rem; padding: 1.5rem; box-shadow: 0 2px 8px rgba(26,28,27,0.05); } .pilatesgo-faq__item summary { list-style: none; display: flex; justify-content: space-between; align-items: center; cursor: pointer; font-weight: 700; font-size: 1rem; gap: 1rem; } .pilatesgo-faq__item[open] summary .faq-icon::after { content: '−'; } .pilatesgo-faq__icon::after { content: '+'; font-size: 1.3rem; color: var(--primary); font-weight: 300; } .pilatesgo-faq__item p { margin-top: 1rem; color: var(--on-surface-variant); line-height: 1.7; font-size: 0.95rem; } /* ===== FOOTER ===== */ .pilatesgo-footer { background: #fafaf8; padding: 3rem 0; border-top: 1px solid var(--outline-variant); } .pilatesgo-footer__inner { display: flex; flex-direction: column; gap: 1.5rem; align-items: center; text-align: center; } @media (min-width: 768px) { .pilatesgo-footer__inner { flex-direction: row; justify-content: space-between; text-align: left; } } .pilatesgo-footer__logo { font-size: 1.1rem; font-weight: 700; font-family: 'Noto Serif', serif; color: #3d3450; } .pilatesgo-footer__links { display: flex; flex-wrap: wrap; gap: 1.5rem; justify-content: center; } .pilatesgo-footer__links a { font-size: 0.85rem; color: #777; transition: color 0.2s; } .pilatesgo-footer__links a:hover { color: var(--primary); } .pilatesgo-footer__copy { font-size: 0.75rem; color: #aaa; } /* ===== UTILS ===== */ .text-center { text-align: center; } .section-title { font-size: clamp(1.8rem, 4vw, 2.8rem); color: var(--on-surface); margin-bottom: 1rem; } .section-subtitle { color: var(--on-surface-variant); font-size: 1rem; max-width: 36rem; margin: 0 auto; line-height: 1.7; } /* ===== MATERIAL ICONS ===== */ .material-symbols-outlined { font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24; vertical-align: middle; } .icon-filled { font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24; } .pilatesgo-order__image { min-height: 400px !important; } .pilatesgo-order__image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain !important; background: #f9f9f7; padding: 0 !important; } /* ===== ZWROTY I REKLAMACJE ===== */ .zr-title { font-family:'Noto Serif',serif; font-size:2rem; color:#64587e; margin:2rem 0 0.75rem; border-bottom:2px solid #eee3ff; padding-bottom:0.5rem; } .zr-section { margin-bottom:2.5rem; color:#46464c; } .zr-section p { margin-bottom:0.75rem; } .zr-section ol { padding-left:1.5rem; } .zr-section ol li { margin-bottom:0.75rem; } .zr-section ul { padding-left:1.5rem; list-style:disc; } .zr-section ul li { margin-bottom:0.5rem; } .zr-box { border-radius:0.75rem; padding:1.5rem 2rem; margin:1.5rem 0; } .zr-box-green { background:#f0fdf4; border:2px solid #86efac; } .zr-box-purple { background:#eee3ff; border:2px solid #a78bca; } .zr-box-yellow { background:#fffbeb; border:2px solid #fcd34d; } .zr-box h3 { font-family:'Noto Serif',serif; font-size:1.1rem; margin-bottom:0.75rem; } .zr-box-green h3 { color:#166534; } .zr-box-purple h3 { color:#64587e; } .zr-box-yellow h3 { color:#92400e; } .zr-steps { counter-reset:steps; padding:0; list-style:none; } .zr-steps li { display:flex; gap:1.25rem; margin-bottom:1.5rem; align-items:flex-start; } .zr-step-num { min-width:2.5rem; height:2.5rem; background:#64587e; color:white; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:1rem; flex-shrink:0; } .zr-step-content { padding-top:0.25rem; } .zr-step-content strong { display:block; margin-bottom:0.25rem; color:#1a1c1b; } .zr-address { background:#f4f4f2; border-radius:0.75rem; padding:1.25rem 1.5rem; display:inline-block; margin:1rem 0; } .zr-address p { margin:0.2rem 0; font-size:0.95rem; } .zr-header { text-align:center; padding:2rem 0; border-bottom:2px solid #eee3ff; margin-bottom:2rem; } .zr-header h1 { font-family:'Noto Serif',serif; font-size:2rem; color:#1a1c1b; margin-bottom:0.5rem; } .zr-header p { color:#64587e; font-weight:600; font-size:0.9rem; } .zr-divider { border:none; border-top:2px solid #eee3ff; margin:3rem 0; } .zr-highlight { font-size:1.1rem; font-weight:700; color:#64587e; } /* ============================================================ WOOCOMMERCE KOSZYK – styl PILATESGO Wklej na końcu style.css w edytorze motywów ============================================================ */ :root { --pg: #7c3aed; --pg-light: #ede9fe; --pg-light2: #f5f3ff; } /* Tabela koszyka */ .woocommerce-cart table.cart, .woocommerce table.shop_table { border: none !important; border-radius: 1rem; overflow: hidden; box-shadow: 0 2px 16px rgba(0,0,0,0.06); } .woocommerce-cart table.cart th, .woocommerce table.shop_table th { background: var(--pg-light2); color: var(--pg); font-weight: 700; font-size: 0.8rem; text-transform: uppercase; letter-spacing: 0.05em; padding: 1rem; border: none !important; } .woocommerce-cart table.cart td, .woocommerce table.shop_table td { padding: 1rem; vertical-align: middle; border-color: #f0f0f0 !important; } /* Zdjęcie produktu */ .woocommerce-cart table.cart td.product-thumbnail img { width: 80px !important; height: 80px !important; object-fit: contain; border-radius: 0.5rem; border: 1px solid #eee; background: white; padding: 4px; } /* Nazwa produktu */ .woocommerce-cart table.cart td.product-name a { color: #1a1c1b; font-weight: 700; font-size: 0.95rem; text-decoration: none; } .woocommerce-cart table.cart td.product-name a:hover { color: var(--pg); } /* Warianty (kolor) */ .woocommerce-cart table.cart td.product-name .variation { font-size: 0.8rem; color: #888; margin-top: 0.25rem; } /* Przycisk usuń (X) */ .woocommerce-cart table.cart td.product-remove a.remove { color: #aaa !important; font-size: 1.2rem; font-weight: 700; width: 1.75rem; height: 1.75rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; border: 2px solid #eee; transition: all 0.2s; } .woocommerce-cart table.cart td.product-remove a.remove:hover { background: #fee2e2 !important; color: #dc2626 !important; border-color: #fca5a5; } /* Pole ilości */ .woocommerce-cart table.cart td.product-quantity .qty, .woocommerce .quantity input.qty { width: 4rem !important; padding: 0.5rem !important; border: 2px solid #e0e0e0 !important; border-radius: 0.5rem !important; font-size: 1rem !important; font-weight: 700 !important; text-align: center; color: #1a1c1b; -moz-appearance: textfield; } .woocommerce-cart table.cart td.product-quantity .qty:focus, .woocommerce .quantity input.qty:focus { border-color: var(--pg) !important; outline: none; } /* Cena */ .woocommerce-cart table.cart td.product-price, .woocommerce-cart table.cart td.product-subtotal { font-weight: 700; color: var(--pg); font-size: 1rem; } /* Przyciski koszyka */ .woocommerce-cart .cart .actions { padding: 1rem 0; display: flex; gap: 1rem; flex-wrap: wrap; align-items: center; justify-content: space-between; border-top: 2px solid #f0f0f0; } .woocommerce-cart .cart .actions button[name="update_cart"], .woocommerce-cart .cart .actions .button { background: white !important; color: var(--pg) !important; border: 2px solid var(--pg) !important; padding: 0.6rem 1.5rem !important; border-radius: 9999px !important; font-weight: 700 !important; font-size: 0.9rem !important; cursor: pointer; transition: all 0.2s; } .woocommerce-cart .cart .actions button[name="update_cart"]:hover, .woocommerce-cart .cart .actions .button:hover { background: var(--pg) !important; color: white !important; } /* Podsumowanie koszyka */ .woocommerce-cart .cart-collaterals .cart_totals { background: white; border-radius: 1rem; padding: 1.5rem; box-shadow: 0 2px 16px rgba(0,0,0,0.06); border: 1px solid #eee; } .woocommerce-cart .cart_totals h2 { font-family: 'Noto Serif', serif; font-size: 1.3rem; margin-bottom: 1rem; color: #1a1c1b; } .woocommerce-cart .cart_totals table { width: 100%; border: none !important; } .woocommerce-cart .cart_totals table tr td, .woocommerce-cart .cart_totals table tr th { border: none !important; padding: 0.5rem 0 !important; font-size: 0.95rem; border-bottom: 1px solid #f0f0f0 !important; } .woocommerce-cart .cart_totals table .order-total td, .woocommerce-cart .cart_totals table .order-total th { font-weight: 700; font-size: 1.1rem; color: #1a1c1b; border-bottom: none !important; padding-top: 1rem !important; } .woocommerce-cart .cart_totals table .order-total .woocommerce-Price-amount { color: var(--pg); font-size: 1.5rem; } /* Przycisk "Przejdź do kasy" */ .woocommerce-cart .wc-proceed-to-checkout .checkout-button, .woocommerce .wc-proceed-to-checkout a.checkout-button { display: block !important; width: 100% !important; background: var(--pg) !important; color: white !important; padding: 1rem 2rem !important; border-radius: 0.6rem !important; font-weight: 700 !important; font-size: 1.1rem !important; text-align: center !important; text-decoration: none !important; box-shadow: 0 6px 20px rgba(124,58,237,0.3) !important; transition: opacity 0.2s !important; margin-top: 1rem !important; } .woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover { opacity: 0.9 !important; } /* Strona checkout */ .woocommerce-checkout #order_review { background: white; border-radius: 1rem; padding: 1.5rem; box-shadow: 0 2px 16px rgba(0,0,0,0.06); position: sticky; top: 1rem; } .woocommerce-checkout #order_review h3, .woocommerce-checkout #customer_details h3 { font-family: 'Noto Serif', serif; font-size: 1.2rem; margin-bottom: 1rem; color: #1a1c1b; } /* Pola formularza checkout */ .woocommerce-checkout .woocommerce-input-wrapper input, .woocommerce-checkout .woocommerce-input-wrapper select, .woocommerce form .input-text { border: 2px solid #e0e0e0 !important; border-radius: 0.5rem !important; padding: 0.75rem 1rem !important; font-size: 0.95rem !important; transition: border-color 0.2s; } .woocommerce-checkout .woocommerce-input-wrapper input:focus, .woocommerce form .input-text:focus { border-color: var(--pg) !important; outline: none !important; box-shadow: 0 0 0 3px rgba(124,58,237,0.1) !important; } /* Metody dostawy */ .woocommerce-checkout #shipping_method li { display: flex; align-items: center; justify-content: space-between; padding: 0.75rem 1rem; border: 2px solid #eee; border-radius: 0.6rem; margin-bottom: 0.5rem; cursor: pointer; transition: all 0.15s; } .woocommerce-checkout #shipping_method li:has(input:checked) { border-color: var(--pg); background: var(--pg-light2); } .woocommerce-checkout #shipping_method input[type=radio] { accent-color: var(--pg); margin-right: 0.5rem; } /* Przycisk "Złóż zamówienie" */ .woocommerce-checkout #place_order { background: var(--pg) !important; color: white !important; width: 100% !important; padding: 1rem 2rem !important; border-radius: 0.6rem !important; font-weight: 700 !important; font-size: 1.1rem !important; border: none !important; cursor: pointer !important; box-shadow: 0 6px 20px rgba(124,58,237,0.3) !important; transition: opacity 0.2s !important; } .woocommerce-checkout #place_order:hover { opacity: 0.9 !important; } /* Komunikaty WooCommerce */ .woocommerce-message, .woocommerce-info { border-top-color: var(--pg) !important; } .woocommerce-message a.button, .woocommerce-info a.button { background: var(--pg) !important; color: white !important; border-radius: 9999px !important; } /* Responsywność */ @media (max-width: 768px) { .woocommerce-cart table.cart thead { display: none; } .woocommerce-cart table.cart td { display: block; padding: 0.5rem 1rem; } .woocommerce-cart table.cart td::before { content: attr(data-title) ': '; font-weight: 700; color: #888; font-size: 0.8rem; } } /* Usuń mini-cart WooCommerce i dropdown */ .woocommerce-cart-dropdown, .cart-dropdown, .wc-cart-dropdown, .woocommerce-mini-cart, li.cart-widget, .cart-widget, .woocommerce-cart-widget, .site-header-cart, .header-cart, .header-cart-widget, .widget_shopping_cart, .cart-contents, .wc-nav-cart, .header-widget-region .widget_shopping_cart, header .widget_shopping_cart { display: none !important; } .woocommerce-terms-and-conditions-wrapper, .form-row.terms, .woocommerce-form__label-for-checkbox { display: block !important; visibility: visible !important; opacity: 1 !important; }
/* ===== REGULAMIN CHECKOUT / FALLBACK ===== */
.woocommerce-terms-and-conditions-wrapper,
.woocommerce-terms-and-conditions,
.woocommerce-terms-and-conditions-checkbox-text,
#pilatesgo-terms-fallback,
#pilatesgo-terms-fallback label,
#pilatesgo-terms-fallback span,
.form-row.terms,
.form-row.validate-required,
.woocommerce-form__label-for-checkbox {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    overflow: visible !important;
    max-height: none !important;
    clip: auto !important;
    position: static !important;
}

#pilatesgo-terms-fallback {
    margin: 16px 0 12px !important;
    padding: 12px 14px !important;
    background: #fff !important;
    border: 1px solid #e9e9ee !important;
    border-radius: 10px !important;
}

#pilatesgo-terms-fallback label,
.form-row.terms label.woocommerce-form__label-for-checkbox {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: #1a1c1b !important;
    cursor: pointer !important;
    margin: 0 !important;
}

#pilatesgo-terms-fallback input[type="checkbox"],
.form-row.terms input[type="checkbox"],
input#terms {
    appearance: auto !important;
    -webkit-appearance: checkbox !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    margin: 3px 0 0 0 !important;
    padding: 0 !important;
    border: 1px solid #b8b8c2 !important;
    border-radius: 4px !important;
    background: #fff !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    position: static !important;
    transform: none !important;
}

#pilatesgo-terms-fallback a,
.woocommerce-terms-and-conditions-wrapper a,
.form-row.terms a {
    color: #7C3AED !important;
    text-decoration: underline !important;
    font-weight: 600 !important;
}

.woocommerce-invalid #pilatesgo-terms-fallback,
.woocommerce-invalid .form-row.terms {
    border-color: #dc2626 !important;
}

.woocommerce-checkout .woocommerce-privacy-policy-text,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    margin-top: 12px !important;
}
.woocommerce-terms-and-conditions {
    background: #f9f9f7;
    border-radius: 10px;
    padding: 15px;
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.5;
}

.woocommerce-terms-and-conditions-link {
    cursor: pointer;
    font-weight: 600;
    color: #7c3aed;
    text-decoration: underline;
}
/* Zwiń treść regulaminu na checkout */
.woocommerce-checkout .woocommerce-terms-and-conditions {
    display: none !important;
    max-height: 0;
    overflow: hidden;
    margin-top: 0;
    padding: 0;
}

/* Po kliknięciu pokaż */
.woocommerce-checkout .woocommerce-terms-and-conditions.is-open {
    display: block !important;
    max-height: 2000px;
    overflow: auto;
    margin-top: 12px;
    padding: 15px;
    background: #f9f9f7;
    border: 1px solid #e5e5e5;
    border-radius: 10px;
}

/* Link do regulaminu */
.woocommerce-checkout .woocommerce-terms-and-conditions-link {
    cursor: pointer;
    color: #7c3aed;
    text-decoration: underline;
    font-weight: 600;
}