/*
Theme Name: ThinVeil Canada
Theme URI: https://thinveil.ca/
Author: OpenAI
Description: Responsive ThinVeil Canada product landing page with editable pricing and single affiliate URL.
Version: 1.1.4
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: thinveil-canada
*/
:root{--tv-ink:#182039;--tv-purple:#5537a5;--tv-lilac:#f1edff;--tv-red:#cf3150;--tv-green:#17834a;--tv-text:#24283a;--tv-muted:#666b7d;--tv-line:#e8e5f0;--tv-white:#fff;--tv-bg:#faf9ff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--tv-text);line-height:1.6;background:#fff}a{color:inherit}img{max-width:100%;height:auto}button,a{touch-action:manipulation}.tv-container{width:min(1160px,92%);margin:auto}.tv-top{background:var(--tv-ink);color:#fff;text-align:center;font-size:13px;padding:8px}.tv-header{background:#fff;border-bottom:1px solid var(--tv-line);position:sticky;top:0;z-index:30}.tv-headinner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0}.tv-logo{font-weight:900;font-size:25px;letter-spacing:-.8px;text-decoration:none;color:var(--tv-purple)}.tv-nav{display:flex;gap:22px;align-items:center}.tv-nav a{text-decoration:none;font-size:14px;font-weight:650}.tv-menu{display:none}.tv-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--tv-green);color:#fff;border:0;border-radius:999px;padding:14px 24px;font-weight:800;text-decoration:none;cursor:pointer;min-height:48px;box-shadow:0 8px 20px #17834a30;transition:transform .15s,filter .15s}.tv-btn:hover{filter:brightness(.93);transform:translateY(-1px)}.tv-btn.purple{background:var(--tv-purple)}.tv-btn.green{background:var(--tv-green)}.tv-hero{background:radial-gradient(circle at 82% 20%,#e8e0ff 0,transparent 35%),linear-gradient(120deg,#fbfaff,#f3efff);padding:60px 0 50px}.tv-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:44px}.tv-eyebrow{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #e3dcff;color:var(--tv-purple);border-radius:999px;padding:7px 13px;font-weight:750;font-size:13px}.tv-hero h1{font-size:clamp(34px,4.4vw,58px);line-height:1.06;letter-spacing:-1.9px;margin:20px 0}.tv-hero h1 span{color:var(--tv-purple)}.tv-lead{font-size:18px;color:#575c70;max-width:580px}.tv-checks{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0;color:#43475c;font-size:14px;font-weight:700}.tv-checks span:before{content:'✓';color:var(--tv-green);font-weight:900;margin-right:7px}.tv-product-art{min-height:380px;display:flex;align-items:center;justify-content:center;position:relative}.tv-product-frame{width:min(100%,430px);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;border-radius:36px;background:linear-gradient(145deg,#fff,#e9e2ff);box-shadow:0 28px 65px #30206a20;position:relative;overflow:hidden}.tv-product-frame img{width:85%;height:85%;object-fit:contain}.tv-product-fallback{padding:30px;text-align:center;color:var(--tv-purple);font-weight:900;font-size:28px}.tv-float-tag{position:absolute;right:-4px;bottom:24px;background:#fff;border:1px solid var(--tv-line);padding:14px 18px;border-radius:18px;box-shadow:0 10px 30px #1c15341a;font-weight:800}.tv-trust{padding:20px 0;border-bottom:1px solid var(--tv-line)}.tv-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tv-trust-item{display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px;font-weight:750;color:#4d5266}.tv-trust-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--tv-lilac);color:var(--tv-purple);font-size:18px}.tv-section{padding:72px 0}.tv-section.lilac{background:var(--tv-bg)}.tv-kicker{text-align:center;color:var(--tv-purple);font-weight:850;text-transform:uppercase;letter-spacing:1.5px;font-size:12px}.tv-title{text-align:center;font-size:clamp(28px,3.2vw,42px);line-height:1.15;letter-spacing:-1px;margin:10px 0 14px;color:var(--tv-ink)}.tv-sub{text-align:center;max-width:720px;margin:0 auto 34px;color:var(--tv-muted)}.tv-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tv-card{border:1px solid var(--tv-line);border-radius:22px;padding:25px;background:#fff;box-shadow:0 10px 35px #25204d08}.tv-card-icon{width:48px;height:48px;display:grid;place-items:center;background:var(--tv-lilac);color:var(--tv-purple);border-radius:15px;font-size:23px}.tv-card h3{margin:16px 0 8px;font-size:20px;color:var(--tv-ink)}.tv-card p{margin:0;color:var(--tv-muted);font-size:15px}.tv-steps{counter-reset:steps}.tv-step{position:relative}.tv-step:before{counter-increment:steps;content:counter(steps);width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--tv-purple);color:#fff;font-weight:900}.tv-ingredients{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tv-ing{padding:20px;border-radius:18px;background:#fff;border:1px solid var(--tv-line)}.tv-ing strong{display:block;color:var(--tv-ink);margin-bottom:5px}.tv-ing span{font-size:13px;color:var(--tv-muted)}.tv-reviews-note{font-size:13px;color:var(--tv-muted);text-align:center;margin-top:18px}.tv-pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}.tv-price-card{position:relative;border:1px solid var(--tv-line);border-radius:24px;padding:26px;background:#fff;display:flex;flex-direction:column;box-shadow:0 12px 36px #2017470b}.tv-price-card.popular{border:2px solid var(--tv-purple);transform:translateY(-8px);box-shadow:0 18px 45px #5537a51c}.tv-popular{position:absolute;top:-14px;left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--tv-purple);color:#fff;border-radius:999px;padding:5px 14px;font-size:12px;font-weight:850}.tv-qty{font-size:20px;font-weight:850;color:var(--tv-ink)}.tv-bottle-art{height:115px;display:flex;align-items:center;justify-content:center;margin:12px 0}.tv-bottle-art img{height:100%;width:100%;object-fit:contain}.tv-price{font-size:38px;line-height:1.1;font-weight:950;color:var(--tv-ink);letter-spacing:-1px}.tv-per{font-size:14px;color:var(--tv-muted);margin:7px 0}.tv-save{display:inline-block;align-self:flex-start;background:#e8f7ed;color:#13753d;border-radius:999px;padding:5px 10px;font-weight:850;font-size:12px;margin:7px 0 18px}.tv-price-card .tv-btn{width:100%;margin-top:auto}.tv-small{font-size:12px;color:var(--tv-muted);margin-top:12px}.tv-guarantee{display:flex;align-items:center;gap:25px;max-width:850px;margin:auto;background:#fff;border:1px solid var(--tv-line);border-radius:24px;padding:25px}.tv-guarantee img{width:105px;max-height:120px;object-fit:contain}.tv-guarantee h3{margin:0 0 8px;color:var(--tv-ink)}.tv-faq{max-width:850px;margin:auto}.tv-faq details{border-bottom:1px solid var(--tv-line);padding:18px 4px}.tv-faq summary{cursor:pointer;font-weight:800;color:var(--tv-ink)}.tv-faq details p{color:var(--tv-muted)}.tv-final{background:linear-gradient(120deg,var(--tv-ink),#39266d);color:#fff;text-align:center;padding:65px 0}.tv-final h2{font-size:clamp(30px,4vw,46px);line-height:1.1;margin:0 0 14px}.tv-final p{color:#e2def0;margin:0 auto 25px;max-width:680px}.tv-footer{background:#11162a;color:#d9dbe7;padding:35px 0}.tv-footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.tv-footer a{color:#fff}.tv-disclaimer{font-size:12px;color:#aeb3c7;max-width:760px}.tv-sticky-cta{position:fixed;z-index:50;left:50%;bottom:16px;transform:translateX(-50%);box-shadow:0 8px 30px #11162a55;min-width:240px;max-width:92vw}.tv-admin-warning{background:#fff3cd;padding:12px;border:1px solid #ffe69c;border-radius:8px;color:#664d03}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid #ffbe3d;outline-offset:3px}@media(max-width:800px){.tv-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:20px;box-shadow:0 15px 25px #0001;flex-direction:column;align-items:flex-start}.tv-nav.open{display:flex}.tv-menu{display:inline-flex;background:transparent;border:1px solid var(--tv-line);border-radius:12px;padding:9px 12px;font-size:20px}.tv-headinner>.tv-btn{display:none}.tv-hero{padding:40px 0}.tv-hero-grid{grid-template-columns:1fr;gap:18px}.tv-product-art{min-height:280px}.tv-product-frame{max-width:340px}.tv-float-tag{right:0;bottom:8px}.tv-trust-grid{grid-template-columns:repeat(2,1fr)}.tv-section{padding:52px 0}.tv-grid3,.tv-pricing{grid-template-columns:1fr}.tv-price-card.popular{transform:none;margin-top:10px}.tv-ingredients{grid-template-columns:repeat(2,1fr)}.tv-guarantee{align-items:flex-start;padding:18px}.tv-guarantee img{width:76px}.tv-sticky-cta{bottom:10px;min-height:48px}.tv-title{letter-spacing:-.5px}}@media(max-width:420px){.tv-hero h1{font-size:35px}.tv-lead{font-size:16px}.tv-trust-item{font-size:12px;justify-content:flex-start}.tv-ingredients{grid-template-columns:1fr 1fr}.tv-card{padding:21px}.tv-price-card{padding:22px}.tv-guarantee{gap:14px}.tv-guarantee img{width:62px}}

/* v1.0.2: clear, accessible rounded green CTA buttons */
.tv-btn{background:var(--tv-green)!important;color:#fff!important;border-radius:999px;font-weight:850}.tv-btn:hover{background:#116b3b!important;filter:none}.tv-sticky-cta .tv-btn{min-width:260px;justify-content:center}
@media(max-width:480px){.tv-sticky-cta{width:calc(100% - 28px);max-width:420px}.tv-sticky-cta .tv-btn{width:100%;min-width:0}}

/* v1.0.3: supplied product and lifestyle imagery */
.tv-image-showcase{padding:68px 0;background:linear-gradient(120deg,#f7f4ff,#eff9f1)}.tv-image-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:center}.tv-image-copy .tv-kicker,.tv-image-copy .tv-title,.tv-image-copy .tv-sub{text-align:left;margin-left:0;margin-right:0}.tv-image-panel{border-radius:28px;overflow:hidden;background:#fff;box-shadow:0 20px 55px #30206a18;max-height:540px}.tv-image-panel img{display:block;width:100%;height:auto;object-fit:contain}.tv-banner-section{padding:32px 0;background:#fff}.tv-banner-section img{display:block;width:100%;height:auto;max-height:540px;object-fit:contain;border-radius:24px}.tv-guarantee img{width:145px;height:145px;max-height:none;flex:0 0 auto}@media(max-width:800px){.tv-image-grid{grid-template-columns:1fr;gap:24px}.tv-image-showcase{padding:48px 0}.tv-image-copy .tv-title{font-size:30px}.tv-banner-section{padding:20px 0}.tv-banner-section img{border-radius:16px}.tv-guarantee img{width:100px;height:100px}}


/* v1.1.0 — Holiday Prism-inspired cream + forest-green layout */
:root{--tv-ink:#173f2d;--tv-purple:#173f2d;--tv-lilac:#f4f0df;--tv-red:#c08b2e;--tv-green:#173f2d;--tv-text:#2f342e;--tv-muted:#60665e;--tv-line:#e6dfcb;--tv-bg:#f8f5e9;--tv-white:#fff;--tv-bg:#fbf8ef}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff;color:#30362f}
.tv-header{position:sticky;background:#fff;border-bottom:1px solid #e7dfcb}.tv-headinner{padding:13px 0}.tv-logo{color:#173f2d;font-size:24px}.tv-logo span{color:#bd8b2e!important}.tv-nav{gap:22px}.tv-nav a{font-size:13px;color:#34372f}.tv-btn{background:#173f2d!important;color:#fff!important;box-shadow:0 5px 0 #0d2d20;border-radius:999px;padding:14px 24px}.tv-btn:hover{background:#245a40!important;transform:translateY(-1px)}
.tv-hero{padding:0;background:linear-gradient(110deg,#fbf8ef 0%,#f3efdc 100%);overflow:hidden}.tv-hero-grid{grid-template-columns:1fr 1fr;gap:38px;min-height:530px}.tv-hero h1{font-size:clamp(38px,4.8vw,62px);line-height:1.04;letter-spacing:-2.1px;color:#173f2d;margin:22px 0 18px}.tv-hero h1 span{color:#173f2d}.tv-lead{font-size:17px;line-height:1.8;color:#50564d}.tv-eyebrow{background:#f7e9c5;border-color:#ecd393;color:#76551a;text-transform:uppercase;letter-spacing:1px;font-size:11px;padding:9px 14px}.tv-product-art{align-self:stretch;min-height:530px;margin-right:0}.tv-product-frame{width:100%;height:100%;aspect-ratio:auto;max-height:530px;border-radius:18px 18px 0 0;background:#eee8d5;box-shadow:none;overflow:hidden}.tv-product-frame img{width:100%;height:100%;object-fit:contain;padding:24px}.tv-float-tag{bottom:16px;right:14px;border-radius:14px;color:#173f2d}.tv-checks{gap:13px;color:#42483f}.tv-checks span:before{color:#188a56}.tv-trust{background:#fff;border-bottom:1px solid var(--tv-line)}.tv-trust-icon{background:#f4e9ca;color:#173f2d}.tv-section{background:#fff}.tv-section.lilac{background:#f7f3e6}.tv-kicker{color:#997021}.tv-title,.tv-card h3,.tv-qty{color:#173f2d}.tv-card,.tv-price-card{border-color:#e8e0cd;border-radius:20px;box-shadow:0 12px 32px #263b2510}.tv-card-icon{background:#f3e8c9;color:#173f2d}.tv-step:before{background:#173f2d}.tv-price-card.popular{border-color:#173f2d;box-shadow:0 18px 45px #173f2d20}.tv-popular{background:#173f2d}.tv-save{background:#e4f2e8;color:#17643b}.tv-final{background:#173f2d;color:#fff}.tv-footer{background:#102f22}.tv-image-showcase{background:linear-gradient(120deg,#f8f4e7,#edf0df)}.tv-image-panel{box-shadow:0 20px 55px #273b2018}.tv-banner-section{background:#f8f4e7;padding:24px 0}.tv-banner-section img{display:block;width:100%;height:auto;max-height:390px;object-fit:contain;border-radius:20px}.tv-sticky-cta{bottom:18px}.tv-sticky-cta .tv-btn{min-width:300px;border:2px solid #fff;box-shadow:0 10px 28px #102f2250}
@media(max-width:800px){.tv-hero{padding:0}.tv-hero-grid{grid-template-columns:1fr;gap:12px;padding-top:34px}.tv-hero-grid>div:first-child{padding-bottom:14px}.tv-product-art{min-height:300px;margin:0}.tv-product-frame{max-height:360px;border-radius:18px}.tv-product-frame img{padding:10px}.tv-hero h1{font-size:clamp(36px,10vw,48px)}.tv-nav{background:#fff}.tv-image-grid{grid-template-columns:1fr}.tv-image-copy .tv-title,.tv-image-copy .tv-sub{text-align:left}.tv-sticky-cta{bottom:10px}}

/* v1.1.1 — ThinVeil Patches Canada badge + centered sticky purchase CTA */
.tv-logo{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.tv-eyebrow{gap:7px}.tv-sticky-cta{position:fixed;z-index:999;left:50%;bottom:18px;transform:translateX(-50%);width:auto;min-width:310px;max-width:calc(100vw - 28px);text-align:center}.tv-sticky-cta .tv-btn{display:flex;width:100%;min-width:310px;max-width:calc(100vw - 32px);justify-content:center;background:#173f2d!important;color:#fff!important;border:2px solid #fff;box-shadow:0 10px 28px #102f2250;padding:15px 28px;font-size:15px;font-weight:900;white-space:nowrap}.tv-sticky-cta .tv-btn:focus-visible{outline:3px solid #c08b2e;outline-offset:3px}@media(max-width:480px){.tv-sticky-cta{width:calc(100% - 28px);min-width:0;bottom:12px}.tv-sticky-cta .tv-btn{width:100%;min-width:0;max-width:100%;padding:14px 10px;font-size:14px}}
