/*
Theme Name: Speakeasy Vape Club
Theme URI: https://speakeasyvapeclub.ca
Author: Perplexity
Author URI: https://www.perplexity.ai
Description: A custom WordPress starter theme for Speakeasy Vape Club with atmospheric smoke and vape-inspired hero visuals.
Version: 1.2.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
Text Domain: speakeasy-vape-club
*/

:root,[data-theme="light"]{--text-xs:clamp(.75rem,.7rem + .25vw,.875rem);--text-sm:clamp(.875rem,.8rem + .35vw,1rem);--text-base:clamp(1rem,.95rem + .25vw,1.125rem);--text-lg:clamp(1.125rem,1rem + .75vw,1.5rem);--text-xl:clamp(1.5rem,1.2rem + 1.25vw,2.25rem);--text-2xl:clamp(2rem,1.2rem + 2.5vw,3.5rem);--text-3xl:clamp(2.5rem,1rem + 4vw,5rem);--text-hero:clamp(3.5rem,.5rem + 7vw,7.5rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--color-bg:#090b11;--color-surface:#11141b;--color-surface-2:#161b24;--color-surface-offset:#1f2631;--color-border:rgba(255,255,255,.12);--color-divider:rgba(255,255,255,.08);--color-text:#f4f7fb;--color-text-muted:#aab2c0;--color-text-faint:#6f7785;--color-text-inverse:#090b11;--color-primary:#8b6cff;--color-primary-hover:#a18bff;--color-accent:#1fded0;--color-accent-soft:rgba(31,222,208,.13);--color-gold:#e5b96f;--color-smoke:rgba(226,232,255,.1);--color-glow:rgba(139,108,255,.32);--radius-sm:.375rem;--radius-md:.85rem;--radius-lg:1.35rem;--radius-xl:1.9rem;--radius-full:9999px;--shadow-sm:0 8px 24px rgba(0,0,0,.18);--shadow-md:0 18px 48px rgba(0,0,0,.28);--shadow-lg:0 30px 90px rgba(0,0,0,.42);--content-default:1180px;--font-display:'Clash Display','Inter',sans-serif;--font-body:'Satoshi','Inter',sans-serif;--transition-interactive:180ms cubic-bezier(.16,1,.3,1)}
[data-theme="dark"]{--color-bg:#05070b;--color-surface:#0f131a;--color-surface-2:#151923;--color-surface-offset:#1d2430;--color-border:rgba(255,255,255,.13);--color-divider:rgba(255,255,255,.08);--color-text:#f8faff;--color-text-muted:#b0b9ca;--color-text-faint:#747d91;--color-text-inverse:#07090d;--color-primary:#9478ff;--color-primary-hover:#af99ff;--color-accent:#2ce9da;--color-accent-soft:rgba(44,233,218,.14);--color-glow:rgba(148,120,255,.36);--color-smoke:rgba(235,240,255,.12)}
*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:none;text-size-adjust:none;scroll-behavior:smooth}body{margin:0;min-height:100dvh;font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;background:radial-gradient(circle at 82% 8%,rgba(139,108,255,.2),transparent 25%),radial-gradient(circle at 12% 38%,rgba(31,222,208,.08),transparent 24%),linear-gradient(180deg,#0b0d12 0%,#06080c 100%);color:var(--color-text)}a{color:inherit;text-decoration:none;transition:color var(--transition-interactive),opacity var(--transition-interactive),background var(--transition-interactive),border-color var(--transition-interactive),transform var(--transition-interactive),box-shadow var(--transition-interactive)}img,svg{display:block;max-width:100%;height:auto}button,input,textarea,select{font:inherit}h1,h2,h3,h4{line-height:1.02;letter-spacing:-.03em}p{max-width:70ch}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}
.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:1rem;top:1rem;background:var(--color-primary);color:#fff;padding:.75rem 1rem;border-radius:var(--radius-full);z-index:1000}.site-shell{position:relative;overflow:hidden}.container{width:min(calc(100% - 2rem),var(--content-default));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(5,7,11,.68);backdrop-filter:blur(16px);border-bottom:1px solid var(--color-divider)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) 0}.brand{display:flex;align-items:center;gap:1rem;font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.14em}.brand-mark{width:3.25rem;height:3.25rem;border-radius:1rem;display:grid;place-items:center;background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 1px rgba(139,108,255,.2),0 10px 24px rgba(0,0,0,.25);overflow:hidden}.brand-mark img{width:100%;height:100%;object-fit:cover}.brand-logo-lockup{padding:0}.brand-wordmark{display:flex;flex-direction:column;line-height:1}.brand-wordmark strong{font-family:var(--font-display);font-size:1.15rem;letter-spacing:-.02em;text-transform:none}.brand-wordmark span{color:var(--color-text-muted);font-size:.72rem;letter-spacing:.16em}.site-nav ul{display:flex;align-items:center;gap:var(--space-5);list-style:none;margin:0;padding:0}.site-nav a{font-size:var(--text-sm);color:var(--color-text-muted)}.site-nav a:hover,.site-nav a[aria-current="page"]{color:var(--color-text)}.header-actions{display:flex;align-items:center;gap:var(--space-3)}.theme-toggle,.menu-toggle{width:2.85rem;height:2.85rem;border-radius:var(--radius-full);border:1px solid var(--color-border);background:rgba(255,255,255,.03);color:var(--color-text);display:grid;place-items:center;cursor:pointer}.menu-toggle{display:none}
.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.95rem 1.35rem;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:700;letter-spacing:.01em;border:1px solid transparent;background:linear-gradient(135deg,var(--color-primary),#5f8cff);color:#fff;box-shadow:0 0 0 1px rgba(139,108,255,.26),0 12px 30px rgba(95,140,255,.22)}.button:hover,.wp-block-button__link:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(139,108,255,.38),0 18px 38px rgba(95,140,255,.28)}.button-secondary{background:rgba(255,255,255,.03);color:var(--color-text);border-color:var(--color-border);box-shadow:none}.button-secondary:hover{background:rgba(255,255,255,.06)}
.hero{position:relative;padding:clamp(4rem,9vw,8rem) 0 clamp(3rem,7vw,6rem);isolation:isolate}.hero:before,.hero:after{content:"";position:absolute;inset:auto;pointer-events:none;filter:blur(32px);opacity:.7}.hero:before{left:-8rem;top:4rem;width:28rem;height:18rem;background:radial-gradient(ellipse at center,var(--color-smoke),transparent 66%);animation:smokeFloatOne 18s ease-in-out infinite}.hero:after{right:-5rem;bottom:0;width:24rem;height:16rem;background:radial-gradient(ellipse at center,rgba(255,255,255,.08),transparent 68%);animation:smokeFloatTwo 22s ease-in-out infinite}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,4.5rem);align-items:center;position:relative}.hero-copy{position:relative;z-index:2}.eyebrow{display:inline-flex;align-items:center;gap:.55rem;padding:.5rem .9rem;border-radius:var(--radius-full);background:var(--color-accent-soft);color:var(--color-accent);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.14em;border:1px solid rgba(44,233,218,.18)}.hero h1,.entry-title{font-family:var(--font-display);font-size:var(--text-hero);max-width:9ch;margin:1rem 0 1rem}.hero p{font-size:var(--text-lg);color:var(--color-text-muted);max-width:35rem}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}
.smoke-ribbon{position:absolute;left:-2rem;bottom:2rem;width:26rem;height:12rem;opacity:.42;pointer-events:none;filter:blur(2px)}
.hero-card{position:relative;padding:var(--space-8);border-radius:var(--radius-xl);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow-lg);overflow:hidden;min-height:30rem}.hero-card:before{content:"";position:absolute;inset:-1px auto auto -1px;width:10rem;height:10rem;background:radial-gradient(circle,rgba(31,222,208,.18),transparent 70%)}.hero-card:after{content:"";position:absolute;inset:auto -3rem -3rem auto;width:13rem;height:13rem;background:radial-gradient(circle,rgba(139,108,255,.22),transparent 70%)}
.vape-illustration{position:relative;height:100%;min-height:25rem;z-index:1}.vape-device{position:absolute;right:2.2rem;bottom:1.2rem;width:11rem;height:23rem;border-radius:2.2rem;background:linear-gradient(180deg,#2b313e 0%,#161b24 46%,#0e1219 100%);border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 44px rgba(0,0,0,.34)}.vape-device:before{content:"";position:absolute;top:1.3rem;left:50%;transform:translateX(-50%);width:2.8rem;height:.38rem;border-radius:var(--radius-full);background:rgba(255,255,255,.55)}.vape-device:after{content:"";position:absolute;left:50%;bottom:1.6rem;transform:translateX(-50%);width:4.6rem;height:4.6rem;border-radius:50%;background:radial-gradient(circle,rgba(31,222,208,.36),rgba(31,222,208,.06) 60%,transparent 70%)}
.vape-glint{position:absolute;right:10rem;bottom:7rem;width:1.2rem;height:10rem;border-radius:var(--radius-full);background:linear-gradient(180deg,rgba(255,255,255,.4),transparent);opacity:.28;transform:rotate(12deg)}
.vape-outline{position:absolute;inset:1.25rem;border-radius:calc(var(--radius-xl) - .75rem);border:1px solid rgba(255,255,255,.06)}
.vapor-path{position:absolute;right:8.8rem;bottom:21rem;width:15rem;height:12rem;opacity:.8}.vapor-path svg{width:100%;height:100%}.vapor-path path{fill:none;stroke:rgba(230,236,255,.28);stroke-width:10;stroke-linecap:round;filter:blur(2px)}
.vapor-path .accent-vapor{stroke:rgba(31,222,208,.22);stroke-width:5}
.hero-stats{position:absolute;left:1.4rem;bottom:1.4rem;display:grid;gap:.9rem;width:min(16rem,54%)}.stat-card{padding:1rem 1.1rem;border-radius:1rem;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(10px)}.stat-card strong{display:block;font-size:var(--text-sm)}.stat-card p{margin:.35rem 0 0;font-size:.95rem;color:var(--color-text-muted)}
.section{padding:clamp(3rem,7vw,6rem) 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-8)}.section-heading h2{font-family:var(--font-display);font-size:var(--text-2xl)}.section-heading p{color:var(--color-text-muted);max-width:36rem}.card-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:var(--space-5)}.card{padding:var(--space-6);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.card:before{content:"";position:absolute;inset:0 auto auto 0;height:2px;width:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-accent),transparent)}.card h3{font-size:var(--text-lg);margin:0 0 .75rem}.card p{margin:0;color:var(--color-text-muted)}.membership-strip{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--space-6);padding:var(--space-8);background:linear-gradient(135deg,rgba(139,108,255,.16),rgba(31,222,208,.1));border:1px solid rgba(255,255,255,.1);color:var(--color-text);border-radius:var(--radius-xl);box-shadow:var(--shadow-md)}.membership-strip p{color:var(--color-text-muted)}.site-footer{padding:var(--space-10) 0;border-top:1px solid var(--color-divider);color:var(--color-text-muted)}.footer-grid{display:flex;justify-content:space-between;gap:var(--space-4);align-items:center;flex-wrap:wrap}.entry-content,.archive-shell{padding:clamp(2rem,6vw,4rem) 0}.entry-content > *{max-width:70ch}.entry-content > * + *{margin-top:1.2em}.entry-content h2,.entry-content h3,.entry-content h4{font-family:var(--font-display)}.entry-content img{border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.post-card{display:grid;gap:var(--space-3);padding:var(--space-5);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02))}.post-meta{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-muted)}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);padding:0;border:0;height:1px;width:1px;overflow:hidden}
@keyframes smokeFloatOne{0%,100%{transform:translate3d(0,0,0) scale(1);opacity:.38}50%{transform:translate3d(2rem,-1rem,0) scale(1.08);opacity:.56}}
@keyframes smokeFloatTwo{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-1.5rem,-1.2rem,0) scale(1.06)}}
@media (max-width:920px){.hero-grid,.membership-strip,.card-grid{grid-template-columns:1fr}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(5,7,11,.96);border-bottom:1px solid var(--color-divider)}.site-nav.open{display:block}.site-nav ul{flex-direction:column;align-items:flex-start;padding:1rem}.menu-toggle{display:grid}.hero h1,.entry-title{max-width:11ch}.hero-card{min-height:28rem}.hero-stats{position:relative;left:auto;bottom:auto;width:100%;margin-top:1rem}.vape-device{right:50%;transform:translateX(50%)}.vapor-path{right:50%;transform:translateX(50%)}.vape-glint{right:50%;transform:translateX(50%) rotate(12deg)}.smoke-ribbon{left:-5rem;width:18rem}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.hero-logo-panel{display:grid;place-items:center;margin-bottom:1.25rem}.hero-logo-panel img{width:min(520px,100%);height:auto;filter:drop-shadow(0 18px 46px rgba(0,0,0,.38));border-radius:1rem}.logo-watermark{position:absolute;right:-2rem;top:-1rem;width:20rem;opacity:.08;pointer-events:none;filter:blur(.2px)}

.brand-logo-lockup{background:rgba(255,255,255,.04);border:1px solid rgba(212,176,104,.28);box-shadow:0 14px 40px rgba(0,0,0,.25)}
.hero-logo-panel img{width:min(440px,100%);border-radius:50%;border:1px solid rgba(212,176,104,.24);background:radial-gradient(circle at center, rgba(255,255,255,.04), rgba(255,255,255,0));padding:1rem}
.logo-watermark{width:18rem;opacity:.06;border-radius:50%}

.health-warning-bar{position:relative;z-index:50;background:#fff;padding:.35rem 0;border-bottom:1px solid rgba(0,0,0,.08)}
.health-warning-bar .container{max-width:100%;padding-inline:0}
.health-warning-bar img{display:block;width:100%;height:auto;max-height:88px;object-fit:contain;background:#fff}
@media (max-width:768px){.health-warning-bar img{max-height:none}}

.health-warning-bar{position:relative;z-index:60;background:#fff;padding:0;margin:0}
.health-warning-shell{width:100%;background:#fff}
.health-warning-box{box-sizing:border-box;width:100%;min-height:clamp(108px,20vh,180px);background:#fff;color:#000;border:4px solid #000;display:flex;align-items:center;justify-content:center;padding:clamp(14px,2vw,24px)}
.health-warning-text{margin:0;text-align:center;font-family:Arial,Helvetica,sans-serif;font-size:clamp(22px,3.6vw,42px);line-height:1.14;font-weight:400;color:#000;max-width:96vw}
.health-warning-lead{font-weight:700;text-transform:uppercase}
.health-warning-attribution{font-weight:400;white-space:nowrap}
@media (max-width:768px){.health-warning-box{min-height:96px;padding:12px}.health-warning-text{font-size:clamp(18px,5.2vw,28px);line-height:1.16}.health-warning-attribution{display:inline}}
