/* v2 "Lush" theme, layered over styles.css */
:root{--cream:#F6F3EC;--forest:#123524;--moss:#2F7A4F;--ink:#0F1F17;
 --splash:linear-gradient(120deg,#E0409A 0%,#9B4FD8 50%,#36B4E0 100%);
 --lush:linear-gradient(135deg,#0E2A1C 0%,#174A31 45%,#2F7A4F 100%);
 --shadow:0 18px 40px -18px rgba(18,53,36,.45)}
body{background:
 radial-gradient(900px 500px at 110% -10%,rgba(224,64,154,.10),transparent 60%),
 radial-gradient(700px 500px at -10% 20%,rgba(54,180,224,.10),transparent 60%),
 radial-gradient(800px 600px at 50% 110%,rgba(47,122,79,.14),transparent 60%),var(--cream);background-attachment:fixed}
.topbar{background:rgba(246,243,236,.78);border-bottom:0;box-shadow:0 1px 0 rgba(18,53,36,.08)}
.topbar::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--splash);opacity:.85}
.brand b{color:var(--forest)}
/* hero */
.hero{border-radius:32px;min-height:540px;box-shadow:0 30px 60px -25px rgba(14,42,28,.7)}
.hero>img{animation:kb 18s ease-in-out infinite alternate}
@keyframes kb{from{transform:scale(1)}to{transform:scale(1.08) translate(-1.5%,-1%)}}
.hero::after{background:linear-gradient(180deg,rgba(14,42,28,0) 15%,rgba(14,42,28,.55) 55%,rgba(10,26,18,.95) 100%),linear-gradient(120deg,rgba(224,64,154,.25),transparent 45%)}
.hero-in{position:relative;z-index:2}
.hero h1{font-size:46px;text-shadow:0 4px 24px rgba(0,0,0,.35)}
.hero h1 i{background:linear-gradient(90deg,#FFB3DB,#D9C8FF,#9BE3FF);-webkit-background-clip:text;background-clip:text;color:transparent}
.chip-live{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(8px)}
.hero-strip{position:absolute;z-index:2;top:18px;right:18px;display:flex;gap:8px}
.hero-strip img{width:64px;height:84px;object-fit:cover;border-radius:16px;border:2px solid rgba(255,255,255,.85);box-shadow:0 10px 24px -8px rgba(0,0,0,.6);transform:rotate(var(--r,0deg))}
.hero-strip img:nth-child(1){--r:-6deg}.hero-strip img:nth-child(2){--r:4deg;margin-top:14px}.hero-strip img:nth-child(3){--r:-3deg}
/* buttons */
.btn{box-shadow:0 8px 20px -10px rgba(0,0,0,.35);transition:transform .15s,box-shadow .2s}
.btn:hover{transform:translateY(-2px)}
.btn-ink{background:var(--lush);color:#fff}
.btn-splash{background:var(--splash);background-size:200% 100%;animation:shine 6s linear infinite}
@keyframes shine{0%{background-position:0 0}50%{background-position:100% 0}100%{background-position:0 0}}
/* sections */
.sec-head h2{font-size:30px;position:relative;padding-bottom:6px}
.sec-head h2::after{content:"";position:absolute;left:0;bottom:0;width:44px;height:3px;border-radius:3px;background:var(--splash)}
.sec-head a{color:#fff;background:var(--forest);padding:5px 12px;border-radius:999px;font-size:12.5px}
.cat{border-radius:22px;box-shadow:var(--shadow)}
.cat::after{background:linear-gradient(180deg,transparent 35%,rgba(14,42,28,.85))}
.cat span{font-size:24px}
.cat span::after{content:" →";font-family:var(--sans);font-size:16px;opacity:.85}
.pcard{border:0;border-radius:22px;box-shadow:0 12px 30px -16px rgba(18,53,36,.4);transition:transform .25s}
.pcard:hover{transform:translateY(-4px)}
.pcard .ph img{transition:transform .6s}.pcard:hover .ph img{transform:scale(1.06)}
.pcard .price{display:inline-block;background:linear-gradient(90deg,#E9F4EC,#F3E9FB);padding:3px 10px;border-radius:999px;color:var(--forest);font-weight:600}
.ai-promo{background:radial-gradient(120% 120% at 0% 100%,#2A145A 0%,#0F1F17 55%);box-shadow:0 30px 60px -30px rgba(122,79,216,.8)}
.ai-promo::before{opacity:.8;width:340px;height:340px}
.ai-promo::after{content:"";position:absolute;width:220px;height:220px;left:-70px;bottom:-90px;background:radial-gradient(circle,#36B4E0,transparent 70%);opacity:.45;border-radius:50%}
.ai-feats span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2)}
.ls-card{border-radius:28px;box-shadow:var(--shadow)}
.socials .social{border:0;box-shadow:0 10px 26px -14px rgba(18,53,36,.45);padding:18px}
.social .ic.ig{background:linear-gradient(45deg,#F9CE34,#EE2A7B,#6228D7)}
.social .ic.fb{background:#1877F2}
.social b{font-size:17px}
.session-card{background:var(--lush)!important;color:#fff!important;border:0!important;box-shadow:var(--shadow)}
.session-card .eyebrow,.session-card p{color:#CFE9D8!important}
.session-card .btn-ink{background:#fff;color:var(--forest)}
.brand-card{background:#fff;border-radius:28px;box-shadow:var(--shadow);border:0;position:relative;overflow:hidden}
.brand-card::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--splash)}
.footer{background:var(--lush);color:#D7EADD;border-radius:28px 28px 0 0;margin-top:30px;padding:28px 20px 34px}
.footer a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.footer img{background:#fff;border-radius:16px;padding:8px 12px}
.chip.on{background:var(--lush);color:#fff;border-color:transparent}
.tabbar{background:rgba(255,255,255,.86);box-shadow:0 -10px 30px -18px rgba(18,53,36,.5);border-top:0}
.tabbar a.on{color:var(--forest)}
.tabbar a.on span{font-weight:600}
.detail-card{box-shadow:0 -20px 40px -30px rgba(18,53,36,.6)}
.pay-box{border-radius:22px;box-shadow:var(--shadow)}
/* desktop: wide layout, tab bar becomes a top menu */
@media(min-width:960px){
 :root{--tab:0px}
 main{max-width:1180px;padding:0 24px 40px}
 .topbar{padding:0 calc(50% - 590px + 12px)}
 .tabbar{position:fixed;top:6px;bottom:auto;left:auto;right:calc(50% - 590px + 70px);height:52px;width:560px;border-radius:999px;padding:4px;box-shadow:none;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;display:flex;gap:4px;justify-content:flex-end}
 .tabbar a{flex-direction:row;font-size:14px;gap:6px;padding:0 14px;border-radius:999px;color:var(--ink2)}
 .tabbar a svg{width:18px;height:18px}
 .tabbar a.on{background:var(--forest);color:#fff}
 .tabbar .tab-ai i{transform:none!important;width:30px!important;height:30px!important;margin:0!important}
 .tabbar .tab-ai i svg{width:16px;height:16px}
 .hero{margin:22px 0 0;min-height:600px}
 .hero h1{font-size:68px;max-width:760px}
 .hero p{font-size:18px;max-width:620px}
 .hero-in{padding:48px!important}
 .hero-strip{top:40px;right:40px;gap:14px}
 .hero-strip img{width:150px;height:200px;border-radius:22px}
 .cats{grid-template-columns:repeat(4,1fr);padding:0}
 .cat.wide{grid-column:span 2;aspect-ratio:auto}
 .hscroll{padding:0 0 10px}.hscroll .pcard{flex-basis:23%}
 .grid{grid-template-columns:repeat(4,1fr);padding:0}
 .sec-head,.pad{padding-left:0!important;padding-right:0!important}
 .ai-promo,.ls-card{margin:0}
 .ai-promo{padding:48px}
 .socials{grid-template-columns:1fr 1fr;padding:0}
 .section.pad{padding:0}
 .detail-hero{max-width:1180px;margin:0 auto}
 .footer{border-radius:28px}
}
@media(min-width:960px){
 .cat{aspect-ratio:1/1}
 .cat.wide{aspect-ratio:auto}
 .cat.wide img{position:absolute;inset:0}
 .ls-card{display:grid;grid-template-columns:1.3fr 1fr;align-items:center}
 .ls-card img{height:100%;aspect-ratio:auto;min-height:340px}
 .ls-card .in{padding:40px}
 .ls-card h2{font-size:40px}
}
