/*
Theme Name: Kloklo w Paryżu
Description: Motyw Kloklo dla WooCommerce z zachowaniem oryginalnego projektu.
Version: 2.3
Requires PHP: 7.4
Text Domain: kloklo
*/

:root{--ink:#24394a;--red:#d94b3d;--cream:#fbf7ef;--blue:#dceef0;--gold:#f1c879;--muted:#68757b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}.wrap{width:min(1180px,calc(100% - 42px));margin:auto}.topline{background:#263c4a;color:white;text-align:center;font-size:12px;padding:10px}.nav{background:#fffdf8;border-bottom:1px solid #eee6d9;position:sticky;top:0;z-index:20}.navinner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:26px;font-weight:800;letter-spacing:-1.5px}.brand span{color:var(--red)}.links{display:flex;gap:29px;font-size:14px;font-weight:700}.links a:hover{color:var(--red)}.cart{border:1px solid #e5ded4;background:#fff;border-radius:30px;padding:12px 18px;font-weight:700}.hero{background:radial-gradient(circle at 75% 35%,#f5ded3 0,transparent 38%),linear-gradient(115deg,#e2f1f0,#fdf7ed 60%);overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;min-height:650px;gap:55px}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:2.5px;color:#bc5949;font-weight:800;font-size:12px;margin-bottom:18px}.hero h1{font-family:'Playfair Display',serif;font-size:clamp(47px,5.5vw,78px);letter-spacing:-2px;line-height:1.08;margin:0 0 24px}.hero h1 em{color:var(--red);font-style:normal}.hero p{color:#596a70;font-size:18px;line-height:1.8;max-width:530px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:29px}.btn{border:0;border-radius:50px;padding:16px 27px;font-weight:800;display:inline-flex;justify-content:center;align-items:center;gap:9px}.primary{background:var(--red);color:white;box-shadow:0 9px 20px #d94b3d2e}.primary:hover{background:#bf3b30}.secondary{background:white;color:var(--ink);border:1px solid #e8ded2}.hero-visual{position:relative;text-align:center;padding:50px 20px}.hero-visual:before{content:'';position:absolute;width:85%;aspect-ratio:1;background:#f1cfab;border-radius:50%;left:8%;top:12%;opacity:.6}.book{width:min(360px,85%);position:relative;filter:drop-shadow(19px 24px 16px #22313c35);transform:rotate(5deg);border-radius:8px}.sticker{position:absolute;right:0;top:13%;background:#fff;color:#bd5545;border-radius:50%;height:112px;width:112px;display:grid;place-items:center;text-align:center;font-size:15px;font-weight:800;transform:rotate(13deg);box-shadow:0 8px 22px #0002}.benefits{background:#fff;border-bottom:1px solid #eee9e0}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:27px 0}.benefit{display:flex;align-items:center;gap:13px;font-size:13px;font-weight:700}.benefit b{font-size:25px}.section{padding:95px 0}.center{text-align:center}.section h2{font:600 clamp(34px,4vw,51px) 'Playfair Display',serif;letter-spacing:-1px;margin:10px 0 18px}.lead{color:var(--muted);line-height:1.85;max-width:650px;margin:0 auto}.story{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.story-img{width:100%;border-radius:25px;max-height:530px;object-fit:cover;box-shadow:18px 18px 0 #e4e9d8}.story p{color:var(--muted);line-height:1.9}.checks{padding:0;list-style:none;line-height:2.5;font-weight:700}.checks li:before{content:'✦';color:var(--red);margin-right:13px}.gallery-section{background:#e6f0ee}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:42px}.gallery button{padding:0;border:0;background:white;border-radius:16px;overflow:hidden;box-shadow:0 8px 22px #203e4411}.gallery img{width:100%;height:245px;object-fit:cover;display:block;transition:transform .25s}.gallery button:hover img{transform:scale(1.04)}.gallery small{display:block;padding:13px;font-weight:700}.product{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.product-image{background:#e8ece6;border-radius:26px;padding:25px;text-align:center}.product-image img{max-height:540px;max-width:100%;border-radius:10px;box-shadow:13px 17px 23px #0002}.tag{display:inline-block;background:#fce5dc;color:#aa4438;padding:8px 15px;border-radius:20px;font-size:12px;font-weight:800}.product p{line-height:1.8;color:var(--muted)}.price{font-size:20px;font-weight:800;margin:22px 0}.product-details{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0;font-size:13px}.product-details div{border-bottom:1px solid #e8e1d5;padding:12px 0}.product-details strong{display:block;margin-bottom:5px}.notice{font-size:12px!important;color:#8b7770!important}.about{background:#f4e5d9}.about-inner{text-align:center;max-width:750px;margin:auto}.about-inner p{line-height:1.9;color:#6b6762}.faq{max-width:800px;margin:40px auto 0}.faq details{border-bottom:1px solid #e4ddd3;padding:19px 4px}.faq summary{font-weight:800;cursor:pointer}.faq p{line-height:1.8;color:var(--muted)}footer{background:#263c4a;color:#fff;padding:48px 0}.footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:center}footer p{color:#c7d1d3;font-size:13px;line-height:1.8}.modal{position:fixed;inset:0;background:#142b39c9;z-index:50;display:none;align-items:center;justify-content:center;padding:22px}.modal.open{display:flex}.modal-content{position:relative;background:white;border-radius:18px;padding:15px;max-width:min(800px,95vw);max-height:92vh;overflow:auto}.modal-content img{display:block;max-width:100%;max-height:78vh;object-fit:contain;border-radius:8px}.close{position:absolute;top:19px;right:19px;border:0;border-radius:50%;background:#fff;box-shadow:0 2px 10px #0003;width:39px;height:39px;font-size:22px}.drawer{position:fixed;right:0;top:0;bottom:0;width:min(420px,100%);background:#fff;z-index:60;box-shadow:-10px 0 50px #0002;padding:30px;transform:translateX(110%);transition:transform .25s}.drawer.open{transform:translateX(0)}.drawer h2{font-family:'Playfair Display',serif}.drawer-row{display:flex;gap:16px;align-items:center;margin:35px 0}.drawer-row img{width:85px;border-radius:7px}.qty{display:flex;gap:15px;align-items:center;margin:20px 0}.qty button{border:1px solid #ddd;background:white;border-radius:7px;padding:7px 13px}.overlay{position:fixed;inset:0;background:#0005;z-index:55;display:none}.overlay.open{display:block}.full{width:100%}.muted{color:var(--muted)}@media(max-width:800px){.links{display:none}.hero-inner,.story,.product{grid-template-columns:1fr;gap:30px}.hero-inner{padding:55px 0 25px}.hero-visual{padding:25px}.hero h1{font-size:51px}.sticker{right:4%;width:86px;height:86px;font-size:12px}.benefit-grid{grid-template-columns:1fr;gap:10px}.section{padding:65px 0}.story-img{max-height:380px}.gallery{grid-template-columns:repeat(2,1fr)}.gallery img{height:195px}.product{gap:35px}.footer-grid{display:block}}@media(max-width:420px){.wrap{width:calc(100% - 30px)}.hero h1{font-size:43px}.gallery img{height:155px}.product-details{grid-template-columns:1fr}.brand{font-size:22px}}

.admin-bar .nav{top:32px} .woocommerce .button,.woocommerce button.button,.woocommerce a.button{background:#d94b3d;color:white;border-radius:30px} .wc-area{padding:60px 0;min-height:60vh}.wc-area input,.wc-area select{max-width:100%} .kloklo-purchase{display:flex;gap:12px;align-items:center;flex-wrap:wrap} .kloklo-purchase .quantity input{width:72px;padding:12px;border:1px solid #ddd;border-radius:12px}.kloklo-purchase button{cursor:pointer}.kloklo-purchase .single_add_to_cart_button{border:0} .woocommerce-notices-wrapper{margin-bottom:18px}

.kloklo-legal{max-width:900px;margin:auto;min-height:45vh}.kloklo-legal h1{font-family:'Playfair Display',serif;font-size:clamp(2rem,5vw,3.3rem);margin-bottom:1.5rem}.kloklo-legal-content{font-size:1.05rem;line-height:1.85}.kloklo-legal-content h2{font-size:1.5rem;margin:2rem 0 .75rem}.kloklo-legal-content p{margin:0 0 1rem}.kloklo-legal-content a{text-decoration:underline}

/* Kloklo: odswiezona sekcja zakupu */
#kup .price{font-family:'Playfair Display',Georgia,serif;font-size:clamp(38px,4vw,52px);line-height:1.1;font-weight:800;color:#dc493d;margin:24px 0 24px;letter-spacing:-1px}
#kup .price .amount{color:inherit}
#kup .kloklo-purchase{background:#fff;border:1px solid #eadfd4;border-radius:28px;padding:12px;display:flex;align-items:center;gap:14px;flex-wrap:nowrap;box-shadow:0 9px 24px #263c4a0a}
#kup .kloklo-purchase>label{font-size:14px;font-weight:800;white-space:nowrap}
#kup .kloklo-purchase .quantity{display:flex;align-items:center;border:1px solid #e7e0da;border-radius:18px;overflow:hidden;flex:0 0 auto}
#kup .kloklo-purchase .quantity input{width:45px;min-width:0;padding:12px 2px;border:0;border-radius:0;background:#fff;text-align:center;font-weight:800;font-size:16px;appearance:textfield;-moz-appearance:textfield}
#kup .kloklo-purchase .quantity input::-webkit-inner-spin-button,#kup .kloklo-purchase .quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
#kup .kloklo-qty-step{border:0;background:#fff;padding:9px 12px;font-size:22px;font-weight:700;color:#24394a;min-height:44px}
#kup .kloklo-qty-step:hover{background:#fff3ee}
#kup .kloklo-purchase .single_add_to_cart_button{flex:1;min-width:0;white-space:nowrap;min-height:52px;padding:13px 20px;font-size:15px;border-radius:999px;background:#df4b3d;color:white;box-shadow:0 7px 16px #df4b3d2b;display:flex;justify-content:center;gap:12px}
#kup .kloklo-purchase .single_add_to_cart_button:hover{background:#c63e33}
@media(max-width:650px){#kup .kloklo-purchase{flex-wrap:wrap;gap:10px;padding:12px}#kup .kloklo-purchase .single_add_to_cart_button{flex-basis:100%}#kup .price{font-size:40px}}


/* Interaktywna książka Kloklo */
.kloklo-flipbook{max-width:970px;margin:36px auto 0}.kloklo-book-scene{perspective:1900px;padding:18px 18px 24px;overflow:visible}.kloklo-book-pages{position:relative;display:grid;grid-template-columns:1fr 1fr;aspect-ratio:1.52;max-height:620px;border-radius:8px 14px 14px 8px;box-shadow:0 25px 55px rgba(32,52,62,.19),0 3px 10px rgba(32,52,62,.13);background:#fffaf2;isolation:isolate}.kloklo-book-pages:after{content:"";position:absolute;z-index:4;left:calc(50% - 10px);top:0;bottom:0;width:20px;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.15),transparent 48%,rgba(0,0,0,.12))}.kloklo-page{position:relative;min-width:0;min-height:0;background:#fffdf8;overflow:hidden}.kloklo-page-left{border-radius:7px 0 0 7px}.kloklo-page-right{border-radius:0 12px 12px 0}.kloklo-page img,.kloklo-turn-sheet img{display:block;width:100%;height:100%;object-fit:contain;background:#f9f4e9}.kloklo-page-number{position:absolute;bottom:8px;right:12px;padding:3px 7px;background:rgba(255,255,255,.85);border-radius:10px;font-size:11px;color:#314353}.kloklo-page-left .kloklo-page-number{right:auto;left:12px}.kloklo-turn-sheet{display:none;position:absolute;z-index:5;top:0;left:50%;width:50%;height:100%;transform-origin:left center;transform-style:preserve-3d;pointer-events:none}.kloklo-turn-sheet.is-turning{display:block;transition:transform .72s cubic-bezier(.3,.1,.25,1)}.kloklo-turn-sheet.turn-forward{transform:rotateY(-180deg)}.kloklo-turn-sheet.turn-backward{transform:rotateY(180deg);left:0;transform-origin:right center}.kloklo-turn-front,.kloklo-turn-back{position:absolute;inset:0;overflow:hidden;backface-visibility:hidden;background:#fffdf8}.kloklo-turn-back{transform:rotateY(180deg)}.kloklo-turn-sheet img{height:100%}.kloklo-book-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:10px}.kloklo-book-arrow{border:1px solid #e8dcd0;border-radius:999px;background:white;color:#23394a;padding:13px 20px;cursor:pointer;font:inherit;font-weight:700;transition:background .2s,transform .2s}.kloklo-book-arrow:hover:not(:disabled){background:#fbe9e2;transform:translateY(-2px)}.kloklo-book-arrow:disabled{opacity:.35;cursor:not-allowed}.kloklo-book-progress{font-weight:700;color:#23394a;min-width:58px}.kloklo-book-hint{font-size:13px;color:#6c7981;margin:14px 0 0}@media(max-width:640px){.kloklo-book-scene{padding:6px 0 16px}.kloklo-book-pages{aspect-ratio:1.12}.kloklo-book-arrow{padding:11px 13px;font-size:13px}.kloklo-book-controls{gap:10px}.kloklo-page-number{font-size:9px;bottom:4px;right:4px}.kloklo-book-hint{font-size:12px}}@media(prefers-reduced-motion:reduce){.kloklo-turn-sheet.is-turning{transition-duration:.01ms}}

/* Kloklo flipbook v2: closed cover, edge-to-edge spreads */
.kloklo-book-scene{position:relative;display:flex;justify-content:center;align-items:center;min-height:470px}
.kloklo-book-cover{width:min(410px,70%);aspect-ratio:3/4;max-height:610px;overflow:hidden;border-radius:5px 13px 13px 5px;box-shadow:12px 20px 40px rgba(20,45,50,.24),inset 8px 0 10px rgba(0,0,0,.1);transform-origin:left center;transition:transform .55s ease,opacity .4s ease;cursor:pointer}
.kloklo-book-cover img{display:block;width:100%;height:100%;object-fit:cover}
.kloklo-book-cover.is-opening{transform:perspective(1100px) rotateY(-65deg);opacity:0}
.kloklo-book-pages[hidden]{display:none!important}
.kloklo-book-pages{width:100%;aspect-ratio:2/1;max-height:none}
.kloklo-page img,.kloklo-turn-sheet img{object-fit:cover;background:transparent}
.kloklo-page{background:transparent}
.kloklo-book-progress:empty{display:none}
@media(max-width:640px){.kloklo-book-scene{min-height:260px}.kloklo-book-cover{width:70%}.kloklo-book-pages{aspect-ratio:2/1}.kloklo-book-controls{flex-wrap:wrap}}

/* v2.1: oryginalna okładka zamiast zdjęcia książki na blacie */
.kloklo-book-cover{aspect-ratio:652/619;width:min(500px,88%);max-height:none}
.kloklo-book-cover img{object-fit:contain}
@media(max-width:640px){.kloklo-book-cover{width:90%}}

/* Kloklo v2.3: galeria zdjęć produktu (niezależna od książki) */
.kloklo-product-gallery{min-width:0;display:flex;flex-direction:column;gap:14px;align-self:start;background:transparent!important;padding:0!important;box-shadow:none!important;border:0!important}
.kloklo-gallery-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:24px;background:#e8eeea;padding:20px}
.kloklo-gallery-main{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;border-radius:12px;box-shadow:none;transition:opacity .16s ease}
.kloklo-gallery-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:43px;height:43px;border:1px solid #e9ded3;border-radius:50%;background:rgba(255,255,255,.96);color:#20384a;font-size:24px;line-height:1;cursor:pointer;box-shadow:0 4px 18px #243e4924;display:flex;align-items:center;justify-content:center;transition:background .2s,transform .2s}
.kloklo-gallery-nav:hover{background:#fff;transform:translateY(-50%) scale(1.07)}
.kloklo-gallery-prev{left:12px}.kloklo-gallery-next{right:12px}
.kloklo-gallery-thumbs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.kloklo-gallery-thumb{width:72px;height:72px;padding:4px;overflow:hidden;border:2px solid transparent;background:#fff;border-radius:12px;cursor:pointer;transition:border-color .2s,transform .2s}
.kloklo-gallery-thumb.is-active,.kloklo-gallery-thumb[aria-pressed="true"]{border-color:#e64b3e}
.kloklo-gallery-thumb:hover{transform:translateY(-2px)}
.kloklo-gallery-thumb img{width:100%;height:100%;object-fit:cover;border-radius:7px;display:block}
@media(max-width:600px){.kloklo-gallery-stage{aspect-ratio:1/1;padding:12px;border-radius:18px}.kloklo-gallery-nav{width:38px;height:38px}.kloklo-gallery-thumb{width:60px;height:60px}}
@media(prefers-reduced-motion:reduce){.kloklo-gallery-main,.kloklo-gallery-nav,.kloklo-gallery-thumb{transition:none}}

/* Kloklo v2.4 — rowny, pojedynczy pasek miniatur bez zawijania. */
.kloklo-product-gallery .kloklo-gallery-thumbs{
  display:flex!important; flex-wrap:nowrap!important; justify-content:flex-start!important;
  align-items:center!important; gap:8px!important; width:100%; min-width:0;
  overflow-x:auto; overflow-y:hidden; padding:4px 2px 10px;
  scrollbar-width:thin; scrollbar-color:#d8c6b8 transparent;
  scroll-snap-type:x proximity; -webkit-overflow-scrolling:touch;
}
.kloklo-product-gallery .kloklo-gallery-thumb{
  flex:0 0 58px!important; width:58px!important; height:62px!important;
  min-width:58px; box-sizing:border-box; margin:0!important;
  padding:3px!important; display:flex!important; align-items:center; justify-content:center;
  scroll-snap-align:start;
}
.kloklo-product-gallery .kloklo-gallery-thumb img{
  display:block!important; width:100%!important; height:100%!important;
  max-height:none!important; max-width:none!important; object-fit:cover!important;
  box-shadow:none!important;
}
@media(max-width:600px){.kloklo-product-gallery .kloklo-gallery-thumb{flex-basis:55px!important;width:55px!important;min-width:55px;height:58px!important}}
