
:root{--bg:#fff;--fg:#1d1d1f;--muted:#777;--muted2:#555;--chip:#f3f3f5;--btn:#1d1d1f;--btnfg:#fff;--glass:rgba(255,255,255,.5);--glassb:rgba(255,255,255,.7);--tile:#f6f6f8;--line:#eee;--shadow:rgba(0,0,0,.18);--sat:1}
[data-theme=dark]{--bg:#18181c;--fg:#ececf1;--muted:#9a9aa6;--muted2:#b9b9c4;--chip:#26262c;--btn:#e8e4ef;--btnfg:#1b1b20;--glass:rgba(30,30,36,.42);--glassb:rgba(255,255,255,.08);--tile:#212127;--line:#2c2c33;--shadow:rgba(0,0,0,.35)}
html{background:var(--bg)}
*{box-sizing:border-box}body{margin:0;font-family:-apple-system,'Inter',sans-serif;color:var(--fg);background:var(--bg);transition:background .3s,color .3s}
.wrap{max-width:1180px;margin:auto;padding:0 40px}
.gw-nav{display:flex;justify-content:space-between;align-items:center;padding:26px 40px;max-width:1180px;margin:auto;font-size:14px;color:var(--muted)}
.logo{font-weight:800;font-size:22px;letter-spacing:-.8px;color:var(--fg)}.logo i{font-style:normal;font-weight:300}
.pill{background:var(--btn);color:var(--btnfg);padding:9px 18px;border-radius:30px;margin-left:10px}.navr{display:flex;align-items:center;gap:22px}.tg{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--chip);color:var(--fg);font-size:17px;cursor:pointer;display:flex;align-items:center;justify-content:center}.tg .moon{display:none}[data-theme=dark] .tg .sun{display:none}[data-theme=dark] .tg .moon{display:inline}
.hero{padding:40px 0 10px;text-align:center}.hero h1{font-size:76px;font-weight:700;letter-spacing:-3px;margin:0;line-height:1}.hero h1 span{background:linear-gradient(90deg,#ff8fb1,#b49cff,#6fd3c1);-webkit-background-clip:text;color:transparent}.hero p{color:var(--muted);font-size:19px;margin:16px 0 0}
.chips{display:flex;gap:10px;justify-content:center;margin:34px 0 30px}.chips span{padding:9px 18px;border-radius:20px;background:var(--chip);font-size:14px}.chips .on{background:var(--btn);color:var(--btnfg)}
.scroll{display:flex;gap:22px}
.card{flex:0 0 310px;height:440px;border-radius:34px;padding:24px;position:relative;overflow:hidden;color:var(--fg)}
.card:before{content:'';position:absolute;inset:-30%;filter:blur(40px);z-index:0}
.card>*{position:relative;z-index:1}.card .img{height:270px;display:flex;align-items:center;justify-content:center}.card img{width:240px;filter:drop-shadow(0 18px 20px var(--shadow))}
.glass{position:absolute!important;left:14px;right:14px;bottom:14px;border-radius:24px;padding:16px 18px;background:var(--glass);backdrop-filter:blur(18px) saturate(160%);border:1px solid var(--glassb)}
.glass h3{margin:0 0 2px;font-size:18px}.glass p{margin:0;color:var(--muted2);font-size:13px}.glass .f{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:13px}.add{width:32px;height:32px;border-radius:50%;background:var(--btn);color:var(--btnfg);text-align:center;line-height:32px;font-size:18px}
.c1:before{background:radial-gradient(circle at 20% 20%,#ffc2d4,transparent 55%),radial-gradient(circle at 80% 70%,#ffe0b8,transparent 55%),#ffd9e3}
.c2:before{background:radial-gradient(circle at 25% 25%,#c9f2e4,transparent 55%),radial-gradient(circle at 75% 75%,#bfe4ff,transparent 55%),#d8f5ec}
.c3:before{background:radial-gradient(circle at 30% 20%,#fff1c9,transparent 55%),radial-gradient(circle at 70% 80%,#ffd0dc,transparent 55%),#fff0dc}
.c4:before{background:radial-gradient(circle at 20% 30%,#e3d6ff,transparent 55%),radial-gradient(circle at 80% 75%,#c6ecff,transparent 55%),#ece4ff}
.c5:before{background:radial-gradient(circle at 30% 30%,#ffd6e4,transparent 55%),radial-gradient(circle at 70% 80%,#ffe6d0,transparent 55%),#ffe3ea}
.hint{color:var(--muted);font-size:13px;margin-top:14px;text-align:center}
.bento{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:20px;margin:80px 0}.b{border-radius:30px;padding:36px;background:var(--tile)}.b h2{font-size:30px;font-weight:600;letter-spacing:-.6px;margin:10px 0}.b p{color:var(--muted);line-height:1.6;margin:0}.big{font-size:40px}
.b.a{background:linear-gradient(135deg,#ffe2ea,#efe6ff 60%,#e0f6ef)}
.gw-footer{padding:30px 40px;max-width:1180px;margin:auto;display:flex;justify-content:space-between;color:var(--muted);font-size:13px;border-top:1px solid var(--line)}

[data-theme=dark] .hero h1 span{background:linear-gradient(90deg,#e6a9bd,#bfb0e6,#a6d8c8);-webkit-background-clip:text;color:transparent}
[data-theme=dark] .card{background:var(--bg);border:1px solid rgba(255,255,255,.06);box-shadow:none}
[data-theme=dark] .c1:before{background:radial-gradient(120% 75% at 50% 0%,rgba(230,160,185,.42),transparent 68%),linear-gradient(180deg,rgba(230,160,185,.10),transparent 65%)}
[data-theme=dark] .c2:before{background:radial-gradient(120% 75% at 50% 0%,rgba(222,178,140,.40),transparent 68%),linear-gradient(180deg,rgba(222,178,140,.10),transparent 65%)}
[data-theme=dark] .c3:before{background:radial-gradient(120% 75% at 50% 0%,rgba(190,170,225,.40),transparent 68%),linear-gradient(180deg,rgba(190,170,225,.10),transparent 65%)}
[data-theme=dark] .c4:before{background:radial-gradient(120% 75% at 50% 0%,rgba(160,205,190,.38),transparent 68%),linear-gradient(180deg,rgba(160,205,190,.10),transparent 65%)}
[data-theme=dark] .c5:before{background:radial-gradient(120% 75% at 50% 0%,rgba(235,215,150,.36),transparent 68%),linear-gradient(180deg,rgba(235,215,150,.10),transparent 65%)}
[data-theme=dark] .card:before{inset:0;filter:none}
[data-theme=dark] .glass{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);backdrop-filter:blur(14px)}
[data-theme=dark] .b.a{background:radial-gradient(120% 90% at 0% 0%,rgba(230,160,185,.30),transparent 60%),radial-gradient(100% 80% at 100% 0%,rgba(190,170,225,.18),transparent 60%),var(--bg);border:1px solid rgba(255,255,255,.06)}

/* WP additions */
a{color:inherit}.gw-menu{display:flex;gap:22px;list-style:none;margin:0;padding:0}.gw-menu a{text-decoration:none;color:var(--muted)}.gw-menu a:hover{color:var(--fg)}
.logo{text-decoration:none}.gw-logo-img{max-height:40px;width:auto}.pill{text-decoration:none}
.chips a{padding:9px 18px;border-radius:20px;background:var(--chip);font-size:14px;text-decoration:none;color:var(--fg)}.chips a.on{background:var(--btn);color:var(--btnfg)}
.card .img img{width:240px;height:auto;filter:drop-shadow(0 18px 20px var(--shadow))}.glass h3 a{text-decoration:none}.add{text-decoration:none;display:inline-block}.add.loading{opacity:.5}.add.added{display:none}.glass .added_to_cart{font-size:12px;color:var(--fg)}
.b a{color:var(--fg)}.gw-footer a{color:var(--muted)}
.gw-content{padding:40px 40px 80px}.gw-title{font-size:48px;letter-spacing:-1.5px;margin:10px 0 30px}.gw-entry{line-height:1.7}
@media (max-width:800px){.gw-nav{padding:18px 20px}.gw-menu{display:none}.hero h1{font-size:48px}.bento{grid-template-columns:1fr}.wrap{padding:0 20px}.gw-footer{flex-direction:column;gap:8px}}

/* d3 dark: pastel cards on charcoal */
[data-theme=dark]{--bg:#1c1c21;--fg:#ececf1;--muted:#9a9aa6;--muted2:#c3c3cc;--chip:#2a2a31;--btn:#ececf1;--btnfg:#1c1c21;--tile:#26262c;--line:#2f2f36;--shadow:rgba(0,0,0,.3)}
[data-theme=dark] .card{background:none;border:none;box-shadow:none;color:#1d1d1f;filter:brightness(.86)}
[data-theme=dark] .card:before{inset:-30%;filter:blur(40px)}
[data-theme=dark] .c1:before{background:radial-gradient(circle at 20% 20%,#ffc2d4,transparent 55%),radial-gradient(circle at 80% 70%,#ffe0b8,transparent 55%),#ffd9e3}
[data-theme=dark] .c2:before{background:radial-gradient(circle at 25% 25%,#c9f2e4,transparent 55%),radial-gradient(circle at 75% 75%,#bfe4ff,transparent 55%),#d8f5ec}
[data-theme=dark] .c3:before{background:radial-gradient(circle at 30% 20%,#fff1c9,transparent 55%),radial-gradient(circle at 70% 80%,#ffd0dc,transparent 55%),#fff0dc}
[data-theme=dark] .c4:before{background:radial-gradient(circle at 20% 30%,#e3d6ff,transparent 55%),radial-gradient(circle at 80% 75%,#c6ecff,transparent 55%),#ece4ff}
[data-theme=dark] .c5:before{background:radial-gradient(circle at 30% 30%,#ffd6e4,transparent 55%),radial-gradient(circle at 70% 80%,#ffe6d0,transparent 55%),#ffe3ea}
[data-theme=dark] .glass{background:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.7);backdrop-filter:blur(18px)}
[data-theme=dark] .glass p{color:#555}[data-theme=dark] .card .add{background:#1d1d1f;color:#fff}
[data-theme=dark] .b.a{background:linear-gradient(135deg,#ffe2ea,#efe6ff 60%,#e0f6ef);filter:brightness(.86);border:none;color:#1d1d1f}[data-theme=dark] .b.a p{color:#555}

/* Carousel */
.rail{position:relative;--pad:max(40px,calc((100vw - 1180px) / 2 + 40px))}
.rail .scroll{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding:0 var(--pad);padding:6px var(--pad) 20px;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none}
.rail .scroll::-webkit-scrollbar{display:none}
.rail .card{scroll-snap-align:start}
.rail-btn{position:absolute;top:calc(50% - 30px);z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--glass);backdrop-filter:blur(16px);color:var(--fg);font-size:26px;line-height:1;cursor:pointer;box-shadow:0 6px 20px rgba(0,0,0,.12);display:flex;align-items:center;justify-content:center}
.rail-btn.prev{left:calc(var(--pad) - 60px)}.rail-btn.next{right:calc(var(--pad) - 60px)}.rail-btn:disabled{opacity:0;pointer-events:none}
.card .price .amount,.card .price{font-weight:500}
/* Steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:-40px 0 80px}
.steps div{padding:26px 28px;border-radius:24px;border:1px solid var(--line)}
.steps b{display:inline-flex;width:30px;height:30px;border-radius:50%;align-items:center;justify-content:center;background:linear-gradient(135deg,#ff8fb1,#b49cff);color:#fff;font-size:14px}
.steps h3{margin:12px 0 6px;font-size:18px}.steps p{margin:0;color:var(--muted);line-height:1.55;font-size:15px}
/* Mobile */
@media (max-width:800px){
 .wrap,.gw-content{padding-left:20px;padding-right:20px}
 .gw-nav{padding:16px 20px}.navr{gap:12px}.pill{margin-left:0;padding:8px 14px}
 .hero{padding:24px 0 6px}.hero h1{font-size:44px;letter-spacing:-1.5px}.hero p{font-size:16px}
 .chips{flex-wrap:wrap;justify-content:center}
 .rail .scroll{scroll-padding:0 20px;padding:6px 20px 16px;gap:14px}
 .rail .card{flex:0 0 78%;height:auto;min-height:400px}
 .rail .card .img img{width:200px}
 .rail-btn{display:none}
 .bento{grid-template-columns:1fr;margin:50px 0}.b{padding:28px}
 .steps{grid-template-columns:1fr;margin:0 0 50px}
 .gw-footer{flex-direction:column;gap:8px;margin:0 20px;padding:24px 0 30px;font-size:12px}
}

.minq{text-align:center;color:var(--muted);font-size:14px;margin:4px 20px 0}

/* 1.0.1 live fixes */
html,body{overflow-x:clip;max-width:100%}
.minq{margin:4px 0 0}
.card .img img{width:240px;max-width:100%;height:auto;object-fit:contain;aspect-ratio:1}
.rail .scroll{scroll-padding-inline:var(--pad);padding-inline:var(--pad)}
.rail-btn{appearance:none;-webkit-appearance:none;padding:0;display:flex;align-items:center;justify-content:center}
.price del{opacity:.5}.price ins{text-decoration:none}

/* 1.0.3: arrows as a pair above the rail, right-aligned to the container */
.rail{padding-top:58px}
.rail-btn{top:0}
.rail-btn.prev{left:auto;right:calc(var(--pad) + 56px)}.rail-btn.next{right:var(--pad)}
.rail-btn:disabled{opacity:.35;pointer-events:none}
@media(max-width:700px){.rail{padding-top:0}}

/* 1.0.3: slow gradient drift on cards (transform only, GPU) */
@keyframes gwDrift{0%{transform:translate3d(-6%,-4%,0) rotate(0deg) scale(1.05)}50%{transform:translate3d(5%,3%,0) rotate(8deg) scale(1.12)}100%{transform:translate3d(-3%,6%,0) rotate(-6deg) scale(1.08)}}
.card:before{will-change:transform;animation:gwDrift 12s ease-in-out infinite alternate}
[data-theme=dark] .card:before{inset:-30%}
.card:nth-child(5n+2):before{animation-delay:-2.4s;animation-duration:13s}
.card:nth-child(5n+3):before{animation-delay:-4.8s;animation-duration:11s}
.card:nth-child(5n+4):before{animation-delay:-7.2s;animation-duration:14s}
.card:nth-child(5n+5):before{animation-delay:-9.6s;animation-duration:10s}
@media (prefers-reduced-motion:reduce){.card:before{animation:none;will-change:auto}}

/* 1.0.5: click pulse */
.gw-pulse{position:fixed;z-index:2147483000;pointer-events:none;border-radius:50%;transform:scale(0);opacity:.55;will-change:transform,opacity;mix-blend-mode:multiply;background:radial-gradient(circle,rgba(255,170,200,.55) 0%,rgba(255,205,170,.4) 22%,rgba(200,180,255,.3) 42%,rgba(170,235,215,.18) 60%,transparent 72%);animation:gwPulse 1.4s cubic-bezier(.16,1,.3,1) forwards}
[data-theme=dark] .gw-pulse{mix-blend-mode:screen;opacity:.4}
@keyframes gwPulse{to{transform:scale(1);opacity:0}}
@media (prefers-reduced-motion:reduce){.gw-pulse{display:none}}

/* 1.0.6: bag pill contrast in every context (WooCommerce link colours used to override it) */
.gw-nav a.pill,.gw-nav a.pill:link,.gw-nav a.pill:visited,.gw-nav a.pill:hover,.gw-nav a.pill:focus,.woocommerce .gw-nav a.pill,a.pill,a.pill:visited{color:var(--btnfg)!important;background:var(--btn)}
a.pill .gw-cart-count{color:inherit}
[data-theme=dark] a.pill,[data-theme=dark] a.pill:visited,[data-theme=dark] .woocommerce a.pill{background:#ececf1;color:#1c1c21!important}
a.pill:hover{filter:brightness(.95)}
/* WhatsApp button */
a.gw-wa{display:inline-block;padding:8px 16px;border-radius:30px;background:#25d366;color:#0b3d1f!important;text-decoration:none;font-weight:600;font-size:14px;margin:4px 0}
a.gw-wa:hover{filter:brightness(1.05)}
.gw-footer a.gw-wa{padding:0;background:none;color:inherit!important;font-weight:inherit;font-size:inherit;margin:0;text-decoration:underline}
/* shop grid */
.gw-shop-head{text-align:center;padding:30px 0 10px}.gw-shop-head h1{font-size:56px;letter-spacing:-2px;margin:0}.gw-shop-head p{color:var(--muted);margin:8px 0 0}
.gw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:22px;padding:30px 0 80px}
.gw-grid .card{flex:none;width:auto;height:440px}
@media(max-width:700px){.gw-grid{grid-template-columns:1fr;gap:16px}.gw-grid .card{height:auto;min-height:400px}.gw-shop-head h1{font-size:40px}}
/* about */
.gw-about{padding-top:30px;padding-bottom:80px}
.gw-about-card.card{flex:none;height:auto;max-width:760px;margin:0 auto;padding:56px}
.gw-kicker{text-transform:uppercase;letter-spacing:2px;font-size:12px;color:var(--muted);margin:0}
.gw-about-card h1{font-size:56px;letter-spacing:-2px;margin:6px 0 18px;color:#1d1d1f}
.gw-about-body p{font-size:19px;line-height:1.6;color:#3a3a40;margin:0 0 14px}
.gw-about-cta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:24px}.gw-about-cta .pill{margin:0}
@media(max-width:700px){.gw-about-card.card{padding:32px 24px}.gw-about-card h1{font-size:40px}}

/* 1.0.6: clearly visible pastel colour cycle on cards, shop grid and single product hero */
@keyframes gwHue{0%{filter:blur(40px) hue-rotate(0deg) saturate(1.15)}100%{filter:blur(40px) hue-rotate(360deg) saturate(1.15)}}
@keyframes gwDrift2{0%{transform:translate3d(-8%,-6%,0) scale(1.1)}100%{transform:translate3d(8%,6%,0) scale(1.2)}}
.card:before,[data-theme=dark] .card:before{inset:-30%;animation:gwDrift2 7s ease-in-out infinite alternate,gwHue 8s linear infinite;animation-delay:0s,0s}
.card:nth-child(5n+2):before{animation-delay:-1.4s,-1.6s}
.card:nth-child(5n+3):before{animation-delay:-2.8s,-3.2s}
.card:nth-child(5n+4):before{animation-delay:-4.2s,-4.8s}
.card:nth-child(5n+5):before{animation-delay:-5.6s,-6.4s}
@media (prefers-reduced-motion:reduce){.card:before,[data-theme=dark] .card:before{animation:none}}

/* 1.0.8: minimal editorial about/contact + steps */
.gw-meet{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:start;padding:110px 0 70px;border-top:1px solid var(--line);margin-top:70px}
.gw-meet h2{font-size:44px;font-weight:700;letter-spacing:-1.5px;line-height:1.05;margin:0 0 18px;color:var(--fg)}
.gw-meet p{font-size:19px;line-height:1.6;color:var(--muted);margin:0 0 20px;max-width:30em}
.gw-more{font-size:15px;color:var(--fg)!important;text-decoration:none;font-weight:500}.gw-more:hover{text-decoration:underline}
.gw-contact{list-style:none;margin:6px 0 0;padding:0;border-top:1px solid var(--line)}
.gw-contact li{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);font-size:16px}
.gw-contact span{color:var(--muted);font-size:13px;letter-spacing:.4px;text-transform:uppercase}
.gw-contact a{color:var(--fg)!important;text-decoration:none;font-weight:500}.gw-contact a:hover{text-decoration:underline}
.gw-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:56px;padding:40px 0 110px}
.gw-steps span{display:block;font-size:13px;color:var(--muted);letter-spacing:1px;font-variant-numeric:tabular-nums;margin-bottom:14px}
.gw-steps h3{font-size:19px;font-weight:600;letter-spacing:-.3px;margin:0 0 6px;color:var(--fg)}
.gw-steps p{font-size:15px;line-height:1.5;color:var(--muted);margin:0}
@media(max-width:800px){.gw-meet{grid-template-columns:1fr;gap:40px;padding:70px 0 40px;margin-top:50px}.gw-meet h2{font-size:34px}.gw-meet p{font-size:17px}.gw-steps{grid-template-columns:1fr;gap:30px;padding:20px 0 70px}}
