:root{--purple:#6550df;--purple-dark:#4f3ac4;--ink:#252139;--muted:#746f82;--cream:#f7f6f2;--line:#e9e6ed;--lavender:#f0ecfc;--lime:#d4ee9c;--white:#fff;--radius:18px;--font:"Inter","Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;font-family:var(--font);font-size:15px;line-height:1.65;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a896fb;outline-offset:4px}button{border:0}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.15;letter-spacing:-.04em}h2{font-size:36px;font-weight:750}h3{font-weight:700}[hidden]{display:none!important}.container{width:min(1200px,calc(100% - 72px));margin-inline:auto}.purple{color:var(--purple)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-100px;left:24px;z-index:999;background:var(--ink);color:#fff;padding:12px 20px;border-radius:8px}.skip-link:focus{top:12px}.eyebrow{color:var(--purple);font-size:10px;letter-spacing:.14em;font-weight:800;display:flex;gap:9px;align-items:center;line-height:1.5}.little-spark{font-size:22px;line-height:1}
.site-header{height:86px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);position:sticky;top:0;z-index:20;backdrop-filter:blur(16px)}.header-inner{display:flex;align-items:center;height:100%;gap:32px;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark{position:relative;width:40px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--purple);color:#fff;font-size:18px;font-weight:800;letter-spacing:-1px}.brand-mark>span{position:absolute;width:6px;height:6px;background:var(--lime);border-radius:50%;bottom:5px;right:5px}.brand-name{font-size:23px;font-weight:750;letter-spacing:-1.05px;display:flex;align-items:baseline;gap:5px}.brand-extension{color:var(--muted);font-size:15px;letter-spacing:-.3px;font-weight:450}.brand-dot{color:var(--purple);font-weight:900}.desktop-nav{display:flex;gap:31px;align-items:center;font-size:13px;font-weight:550;margin-left:auto;margin-right:auto}.desktop-nav a{padding-block:30px;position:relative}.desktop-nav a:hover{color:var(--purple)}.desktop-nav .nav-selected{color:var(--purple)}.nav-selected:after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:var(--purple);bottom:18px;left:50%;transform:translateX(-50%)}.academy-link{display:flex;align-items:center;gap:16px;border:1px solid var(--line);border-radius:9px;padding:10px 15px;font-size:12px;font-weight:600}.academy-link:hover{border-color:var(--purple);color:var(--purple)}.academy-link span{font-size:19px;line-height:1}.menu-toggle{display:none;background:transparent;width:42px;height:42px;padding:8px}.menu-toggle svg{width:24px;height:24px}.mobile-menu{position:absolute;top:100%;inset-inline:0;padding:16px 24px 22px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 12px 18px #2521390a}.mobile-menu a{display:block;padding:12px 8px;font-weight:600}.mobile-menu a:hover{color:var(--purple)}
.hero{display:grid;grid-template-columns:1.06fr 1fr;gap:12px;align-items:center;min-height:536px;padding-block:55px 42px;position:relative}.hero-shell{background:var(--cream)}.hero:before{content:none}.hero-copy{position:relative;z-index:1;padding-top:5px}.hero h1{font-size:52px;line-height:1.12;font-weight:760;letter-spacing:-2.6px;margin:20px 0 23px;white-space:nowrap}.hero-accent{position:relative;color:var(--purple);display:inline-block}.hero-accent svg{position:absolute;width:100%;height:13px;left:0;bottom:-9px}.hero-copy>p{color:var(--muted);font-size:15px;line-height:1.85;max-width:440px}.hero-actions{display:flex;gap:22px;align-items:center;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;padding:13px 22px;font-weight:650;font-size:13px;line-height:1.4;border-radius:10px;transition:background .2s,transform .2s,box-shadow .2s}.button-primary{background:var(--purple);color:#fff}.button-primary:hover{background:var(--purple-dark);box-shadow:0 7px 17px #6550df22;transform:translateY(-1px)}.button span{font-size:20px;line-height:1}.button-outline{border:1px solid var(--line);background:#fff;color:var(--ink)}.button-outline:hover{border-color:var(--purple);color:var(--purple)}.button-quiet{background:transparent;color:var(--muted)}.button-quiet:hover{color:var(--ink);background:#f8f7fb}.quiet-link{font-size:12px;font-weight:600;display:flex;align-items:center;gap:9px}.quiet-link:hover{color:var(--purple)}.play-circle{display:grid;place-items:center;width:23px;height:23px;border:1px solid #d7d2df;border-radius:50%;font-size:15px}.hero-note{display:flex;gap:9px;align-items:center;font-size:10px;color:#8a8493;margin-top:29px}.small-line{width:23px;height:1px;background:#a49db7}.hero-art{position:relative;align-self:center;width:100%;max-width:580px;padding-left:5px}.hero-art img{width:100%;height:auto;max-height:420px;object-fit:contain}.art-caption{position:absolute;bottom:5px;left:50%;transform:translateX(-50%);display:flex;gap:7px;white-space:nowrap;background:white;border:1px solid #f0edf5;border-radius:7px;box-shadow:0 8px 16px #34204a05;padding:8px 12px;font-size:10px;color:#6b627b}.art-caption span{color:var(--purple);font-size:15px}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);padding-block:27px;border-bottom:1px solid var(--line);gap:35px}.benefit{display:flex;align-items:center;gap:13px;justify-content:center}.benefit:not(:last-child){border-right:1px solid var(--line)}.benefit-icon{width:39px;height:39px;flex-shrink:0;display:grid;place-items:center;background:#f5f2fd;border-radius:11px;color:var(--purple)}.benefit-icon svg{width:22px;height:22px}.benefit strong{display:block;font-weight:650;font-size:12px;letter-spacing:-.2px}.benefit div>span{font-size:10px;color:var(--muted);display:block;margin-top:2px}
.catalog-section{padding-top:64px;padding-bottom:70px}.section-heading{margin-bottom:28px}.catalog-heading{display:flex;gap:35px;justify-content:space-between;align-items:end}.catalog-heading h2{font-size:31px;margin:10px 0 12px;letter-spacing:-1.1px}.section-heading p{color:var(--muted);font-size:13px}.search-box{display:flex;align-items:center;gap:10px;width:310px;flex-shrink:0;height:46px;padding:10px 14px;border:1px solid #e6e1eb;border-radius:10px;background:#fff;margin-bottom:3px}.search-box svg{width:18px;height:18px;flex-shrink:0;color:#9b93a9}.search-box input{width:100%;border:none;outline:none;font-size:12px;color:var(--ink);background:transparent;min-width:0}.search-box:focus-within{border-color:var(--purple);box-shadow:0 0 0 3px #6550df12}.search-box input:focus-visible{outline:none}.search-box input::placeholder{color:#aaa3b2}.catalog-toolbar{display:flex;gap:20px;justify-content:space-between;align-items:center}.category-tabs{display:flex;gap:7px;flex-wrap:wrap}.category-tab{padding:9px 15px;min-height:41px;background:#fff;border:1px solid #eae6ef;border-radius:8px;color:#736b82;font-size:12px;white-space:nowrap}.category-tab:hover{border-color:var(--purple);color:var(--purple)}.category-tab.active{color:#fff;background:var(--purple);border-color:var(--purple);font-weight:600}.category-tab span{margin-left:6px;font-size:10px;border-radius:4px;padding:1px 5px;background:#ffffff25}.sort-control{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--muted);white-space:nowrap}.sort-control select{font-size:11px;border:0;padding:9px 16px 9px 5px;background:#fff;color:var(--ink);font-weight:600;max-width:165px;cursor:pointer}.result-line{display:flex;align-items:center;justify-content:space-between;margin:25px 0 17px;font-size:10px;color:#8f879c}.example-label{font-size:10px;color:#8d849b;display:flex;align-items:center;gap:5px}.example-label>span{width:5px;height:5px;background:#b3a1d7;border-radius:50%}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 25px}.product-card{border:1px solid #eeeaf2;border-radius:15px;overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s;background:#fff;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-4px);border-color:#d7ceef;box-shadow:0 14px 28px #33234c0a}.product-image-link{display:block;position:relative;background:#f4f1f7;overflow:hidden}.product-image-link img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .4s}.product-image-link:hover img{transform:scale(1.035)}.product-badge{position:absolute;top:13px;left:13px;background:#ffffffec;backdrop-filter:blur(10px);border:1px solid #ffffff;border-radius:5px;padding:4px 8px;font-size:8px;font-weight:700;letter-spacing:.035em;color:#534768}.product-body{padding:21px 22px 17px;display:flex;flex-direction:column;flex:1}.product-category{font-size:9px;letter-spacing:.1em;font-weight:750;color:var(--purple);margin-bottom:9px;display:flex;gap:7px;align-items:center}.product-category:before{content:"";height:5px;width:5px;background:#b5a7ed;border-radius:2px}.product-title{font-size:19px;line-height:1.26;letter-spacing:-.55px;margin-bottom:10px;font-weight:700}.product-title a:hover{color:var(--purple)}.product-summary{font-size:12px;color:var(--muted);line-height:1.8;min-height:44px;margin-bottom:19px}.product-bottom{margin-top:auto;padding-top:16px;border-top:1px solid #f0edf4;display:flex;align-items:center;justify-content:space-between;gap:10px}.product-price{font-size:19px;font-weight:750;line-height:1.2;letter-spacing:-.5px}.price-label{display:block;font-size:8px;font-weight:450;color:#9a90a7;letter-spacing:0;margin-top:4px}.product-detail-link{display:flex;align-items:center;gap:9px;font-size:10px;font-weight:650;color:var(--purple)}.product-detail-link>span{width:25px;height:25px;border-radius:50%;background:#f3f0fd;display:grid;place-items:center;font-size:16px}.product-detail-link:hover>span{background:var(--purple);color:white}.empty-state{text-align:center;padding:50px 20px;background:#faf9fc;border-radius:18px;border:1px dashed #ddd5ec}.empty-state>span{display:block;font-size:58px;color:#a493d3;line-height:1;margin-bottom:15px}.empty-state h3{font-size:24px}.empty-state p{margin:13px 0 23px;color:var(--muted);font-size:13px}
.how-section{background:var(--cream);padding:60px 0}.how-inner{display:grid;grid-template-columns:1fr 1.7fr;gap:55px;align-items:start}.how-heading h2{font-size:31px;margin:12px 0 14px;line-height:1.2}.how-heading>p{font-size:12px;color:var(--muted);max-width:300px}.how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:27px;list-style:none;padding:0;margin:5px 0 0;counter-reset:step}.step-number{display:grid;place-items:center;width:38px;height:38px;border:1px solid #e2dcea;color:var(--purple);border-radius:50%;background:#fff;font-size:11px;font-weight:700;margin-bottom:21px}.how-steps li{position:relative}.how-steps li:not(:last-child):after{content:"";position:absolute;left:51px;top:19px;right:0;border-top:1px dashed #d3cadd}.how-steps h3{font-size:15px;letter-spacing:-.3px;line-height:1.35;margin-bottom:10px}.how-steps p{font-size:11px;color:var(--muted);line-height:1.9}.faq-section{display:grid;grid-template-columns:1fr 1.5fr;gap:100px;padding-top:80px;padding-bottom:85px}.faq-heading h2{margin:12px 0 16px;font-size:33px}.faq-heading p{font-size:12px;color:var(--muted);max-width:255px}.faq-list details{border-bottom:1px solid var(--line);padding:17px 0}.faq-list details:first-child{padding-top:0}.faq-list summary{font-size:14px;font-weight:600;list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:25px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{position:relative;width:22px;height:22px;flex-shrink:0;color:var(--purple)}.faq-list summary>span:after,.faq-list summary>span:before{content:"";position:absolute;left:5px;top:10px;width:12px;height:1.5px;background:currentColor}.faq-list summary>span:after{transform:rotate(90deg);transition:transform .2s}.faq-list details[open] summary>span:after{transform:rotate(0)}.faq-list details[open] summary{color:var(--purple)}.faq-list p{font-size:12px;color:var(--muted);line-height:1.95;padding:12px 38px 1px 0}
.site-footer{border-top:1px solid var(--line);background:#f9f8fb}.footer-top{padding-block:32px;display:flex;gap:40px;align-items:center}.footer-top>.brand{min-width:215px}.footer-top>p{font-size:11px;color:var(--muted);line-height:1.8}.footer-links{margin-left:auto;display:flex;gap:25px;font-size:11px;color:#686070}.footer-links a:hover{color:var(--purple)}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-block:19px;font-size:9px;color:#9b92a7}
.detail-container{padding-block:30px 70px}.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:11px;color:var(--muted);margin-bottom:30px}.breadcrumbs a{color:var(--purple)}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs>span[aria-hidden]{color:#b9b0c6}.detail-hero{display:grid;grid-template-columns:1.08fr 1fr;gap:55px;align-items:start}.detail-visual{position:relative}.detail-cover{border-radius:17px;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.detail-example{position:absolute;left:15px;top:15px;background:#ffffffde;border-radius:5px;padding:5px 8px;font-size:9px;color:#746382}.preview-trigger{width:100%;margin-top:12px;gap:8px;font-size:12px}.preview-trigger svg{width:18px;height:18px}.detail-info{padding-top:4px}.detail-info h1{font-size:41px;line-height:1.15;margin:13px 0 17px;letter-spacing:-1.7px}.detail-lead{font-size:14px;color:var(--muted);line-height:1.85}.detail-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:19px}.detail-tags span{font-size:10px;background:#f5f2fa;border-radius:6px;padding:5px 9px;color:#776888}.detail-price-row{margin:25px 0 21px;border-top:1px solid var(--line);padding-top:19px;display:flex;align-items:end;justify-content:space-between;gap:20px}.detail-price{font-size:33px;font-weight:750;letter-spacing:-1.4px;line-height:1.15}.detail-price small{display:block;font-size:9px;color:var(--muted);font-weight:400;letter-spacing:0;margin-bottom:5px}.detail-purchase{width:100%;min-height:51px;font-size:13px}.purchase-subtext{font-size:10px;color:#90869d;text-align:center;margin-top:10px}.detail-description-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:65px;margin-top:55px;padding-top:35px;border-top:1px solid var(--line)}.detail-text h2{font-size:23px;margin-bottom:15px}.detail-text p{font-size:13px;line-height:1.9;color:var(--muted)}.detail-text h3{font-size:17px;margin:27px 0 13px}.inclusions{list-style:none;padding:0;margin:0;display:grid;gap:10px}.inclusions li{font-size:12px;line-height:1.65;color:#756980;display:flex;gap:10px;align-items:start}.inclusions li:before{content:"✓";width:18px;height:18px;flex-shrink:0;border-radius:50%;background:#edf4e5;color:#6b8944;display:grid;place-items:center;font-size:10px;margin-top:1px}.audience-list{display:flex;flex-wrap:wrap;gap:7px;list-style:none;padding:0;margin:0}.audience-list li{font-size:11px;border:1px solid var(--line);padding:6px 10px;border-radius:6px;color:#786b87}.product-specs{padding:25px;background:#f8f6fb;border:1px solid #eee9f4;border-radius:14px;align-self:start}.product-specs h3{font-size:17px;margin-bottom:17px}.product-specs dl{margin:0}.product-specs dl>div{display:flex;gap:20px;justify-content:space-between;border-bottom:1px solid #e9e3f0;padding-block:12px;line-height:1.6;font-size:11px}.product-specs dl>div:last-child{border-bottom:0}.product-specs dt{color:var(--muted);flex-shrink:0}.product-specs dd{margin:0;text-align:right;font-weight:550}.product-specs p{font-size:10px;line-height:1.8;color:#988aa6;margin-top:16px}.related-section{margin-top:62px}.related-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.related-heading h2{font-size:25px}.related-heading a{font-size:12px;color:var(--purple)}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.not-found{text-align:center;padding:110px 20px}.not-found h1{font-size:35px}.not-found p{margin:18px 0;color:var(--muted)}
@media(min-width:1272px){.hero:before{inset-inline:calc((1200px - 100vw)/2)}}
@media(max-width:1271px){.hero:before{inset-inline:-36px}.hero h1{font-size:46px;letter-spacing:-2.3px}.hero{min-height:505px}.desktop-nav{gap:21px}.header-inner{gap:22px}.hero-actions{gap:17px}.hero-actions .button{padding-inline:18px}.quiet-link{font-size:11px}.catalog-heading h2{font-size:28px}.search-box{width:285px}.how-inner{gap:35px}.how-steps{gap:20px}}
@media(max-width:1050px){.container{width:calc(100% - 48px)}.hero:before{inset-inline:-24px}.hero h1{font-size:39px;letter-spacing:-1.8px}.hero-copy>p{font-size:13px}.hero-actions{gap:13px}.hero-actions .button{font-size:11px;padding-inline:16px;gap:11px}.hero-note{font-size:9px}.desktop-nav{gap:19px;font-size:12px}.academy-link{font-size:10px;padding:10px;gap:9px}.brand-name{font-size:21px}.brand-extension{font-size:13px}.hero-art{padding-left:0}.benefits{gap:16px}.benefit{gap:9px}.benefit strong{font-size:10px}.benefit div>span{font-size:9px}.catalog-heading h2{font-size:25px}.search-box{width:263px}.category-tab{padding-inline:12px;font-size:11px}.product-grid,.related-grid{gap:24px 18px}.product-body{padding:18px 17px 16px}.product-title{font-size:17px}.product-summary{font-size:11px}.product-price{font-size:18px}.product-detail-link{font-size:9px;gap:5px}.how-inner{grid-template-columns:1fr;gap:27px}.how-heading h2 br{display:none}.how-heading>p{max-width:none}.how-steps{gap:35px}.faq-section{gap:60px}.detail-hero{gap:30px}.detail-info h1{font-size:35px}.detail-description-grid{gap:40px}.footer-top{gap:25px}.footer-links{gap:17px}}
@media(max-width:820px){.desktop-nav,.academy-link{display:none}.menu-toggle{display:block}.site-header{height:73px}.header-inner{gap:20px}.hero{grid-template-columns:1fr 1fr;gap:0;padding-block:40px;min-height:420px}.hero h1{font-size:34px;letter-spacing:-1.6px}.hero-copy>p{font-size:12px;max-width:350px}.eyebrow{font-size:8px}.hero-actions{flex-wrap:wrap;margin-top:21px;gap:15px}.hero-actions>.quiet-link{font-size:10px}.hero-note{margin-top:21px;font-size:8px}.hero-art img{max-height:330px}.art-caption{font-size:8px;bottom:0;padding:6px 8px}.benefits{padding-block:22px;gap:12px}.benefit-icon{width:33px;height:33px}.benefit-icon svg{width:18px;height:18px}.benefit{align-items:start}.benefit strong{font-size:9px}.benefit div>span{font-size:8px}.catalog-section{padding-top:43px}.catalog-heading{display:block}.search-box{width:100%;margin-top:24px;max-width:none}.catalog-heading h2{font-size:29px}.catalog-toolbar{align-items:start;flex-direction:column;gap:12px}.category-tabs{width:100%;gap:7px}.category-tab{padding-inline:14px;font-size:11px}.sort-control{margin-left:auto}.result-line{margin-top:15px}.product-grid,.related-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 19px}.product-body{padding:19px}.product-title{font-size:19px}.product-summary{font-size:12px}.product-detail-link{font-size:10px}.product-price{font-size:19px}.related-grid>.product-card:last-child{display:none}.faq-section{grid-template-columns:.9fr 1.3fr;gap:35px;padding-block:60px}.faq-heading h2{font-size:29px}.faq-list summary{font-size:12px}.footer-top{flex-wrap:wrap;gap:20px}.footer-top>.brand{min-width:0}.footer-top>p{margin-left:auto}.footer-links{width:100%;justify-content:flex-end}.detail-container{padding-top:25px}.detail-hero{gap:25px;grid-template-columns:1fr 1fr}.detail-info h1{font-size:29px;letter-spacing:-1.1px}.detail-lead{font-size:12px}.detail-tags{margin-top:14px}.detail-tags span{font-size:8px}.detail-price-row{margin-top:18px}.detail-description-grid{gap:30px;grid-template-columns:1.35fr 1fr}.product-specs{padding:19px}.product-specs dl>div{flex-direction:column;gap:4px}.product-specs dd{text-align:left}}
@media(max-width:580px){.container{width:calc(100% - 36px)}.hero:before{inset-inline:-18px}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:28px;gap:0}.hero-copy{text-align:center;padding-top:0}.hero-copy>.eyebrow{justify-content:center;font-size:9px}.hero h1{font-size:37px;letter-spacing:-1.9px;margin-top:17px;margin-bottom:22px}.hero-accent svg{bottom:-6px;height:10px}.hero-copy>p{margin-inline:auto;max-width:330px;font-size:12px;line-height:1.8}.hero-actions{justify-content:center;gap:19px;margin-top:23px}.hero-actions .button{font-size:12px;padding:12px 18px;min-height:46px}.hero-actions>.quiet-link{font-size:10px;gap:6px}.hero-note{justify-content:center;font-size:8px;margin-top:19px}.hero-art{max-width:380px;margin:6px auto 0}.hero-art img{max-height:282px}.art-caption{font-size:8px;bottom:2px}.benefits{grid-template-columns:1fr;gap:15px;padding-block:22px}.benefit{justify-content:start;align-items:center;border:0!important;gap:12px}.benefit-icon{width:34px;height:34px;border-radius:9px}.benefit strong{font-size:11px}.benefit div>span{font-size:9px}.catalog-section{padding-top:34px;padding-bottom:40px}.catalog-heading h2{font-size:27px;letter-spacing:-1px;max-width:335px;line-height:1.2}.catalog-heading .eyebrow{font-size:8px}.section-heading p{font-size:11px;line-height:1.8;max-width:320px}.search-box{margin-top:20px;height:44px}.section-heading{margin-bottom:20px}.category-tabs{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:4px;scrollbar-width:thin;scrollbar-color:#d9d0eb transparent}.category-tab{padding:8px 12px;min-height:37px;font-size:10px;flex-shrink:0}.catalog-toolbar{gap:6px}.sort-control{font-size:9px}.sort-control select{font-size:10px;max-width:155px}.result-line{margin-top:12px;margin-bottom:14px;font-size:9px}.example-label{font-size:8px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 12px}.product-card{border-radius:11px}.product-body{padding:13px 12px 12px}.product-category{font-size:7px;letter-spacing:.05em;margin-bottom:8px;gap:5px}.product-category:before{width:4px;height:4px}.product-title{font-size:14px;line-height:1.28;letter-spacing:-.25px;margin-bottom:7px;min-height:36px}.product-summary{font-size:10px;line-height:1.7;min-height:51px;margin-bottom:11px}.product-bottom{gap:5px;padding-top:12px;flex-wrap:wrap;align-items:center}.product-price{font-size:15px;letter-spacing:-.5px}.price-label{font-size:7px}.product-detail-link{font-size:8px;gap:4px}.product-detail-link>span{width:19px;height:19px;font-size:13px}.product-badge{font-size:6px;top:8px;left:8px;padding:3px 5px}.how-section{padding-block:37px}.how-heading h2{font-size:27px;line-height:1.2;margin-top:10px;max-width:335px}.how-heading>p{font-size:11px;max-width:290px}.how-steps{grid-template-columns:1fr;gap:24px;margin-top:0}.how-steps li{padding-left:52px;min-height:65px}.step-number{position:absolute;left:0;top:0;width:34px;height:34px;margin:0}.how-steps li:not(:last-child):after{left:16px;top:44px;bottom:-13px;height:auto;width:1px;border-top:0;border-left:1px dashed #d3cadd}.how-steps h3{font-size:14px;margin-bottom:5px}.how-steps p{font-size:11px;max-width:300px}.faq-section{grid-template-columns:1fr;gap:26px;padding-block:43px}.faq-heading h2{font-size:28px;margin:10px 0 12px}.faq-heading h2 br{display:none}.faq-heading p{max-width:300px;font-size:11px}.faq-list summary{font-size:12px;line-height:1.6}.faq-list p{font-size:11px;padding-right:20px}.footer-top{padding-block:28px;display:grid;grid-template-columns:1fr;gap:18px}.footer-top>p{margin-left:0;font-size:10px}.footer-links{justify-content:start;gap:22px;font-size:10px}.footer-bottom{flex-direction:column;gap:7px;padding-block:17px;font-size:8px}.detail-container{padding-top:20px;padding-bottom:45px}.breadcrumbs{font-size:9px;gap:7px;margin-bottom:20px}.detail-hero{grid-template-columns:1fr;gap:25px}.detail-cover{max-height:320px;border-radius:14px}.detail-info{padding-top:0}.detail-info h1{font-size:34px;max-width:360px;margin:10px 0 13px}.detail-lead{font-size:13px}.detail-tags span{font-size:9px}.detail-price-row{margin:21px 0 16px}.detail-price{font-size:30px}.detail-purchase{min-height:49px}.purchase-subtext{font-size:9px}.detail-description-grid{grid-template-columns:1fr;gap:28px;margin-top:30px;padding-top:27px}.detail-text h2{font-size:22px}.detail-text p{font-size:12px}.detail-text h3{font-size:17px;margin-top:24px}.product-specs{padding:21px}.product-specs dl>div{flex-direction:row;gap:20px}.product-specs dd{text-align:right}.related-section{margin-top:38px}.related-heading h2{font-size:21px}.related-heading a{font-size:10px}.related-grid{gap:12px}.dialog-top{padding:20px}.dialog-top h2{font-size:20px}.preview-book{padding:20px 17px}.sample-page{padding:23px 21px;min-height:300px}.sample-page-top{font-size:7px;padding-bottom:14px}.sample-page>h3{font-size:22px;margin-top:20px}.sample-page>p{font-size:11px}.sample-page li{font-size:10px}.sample-footer{font-size:7px;gap:15px}.preview-controls{padding:15px 17px;gap:8px}.preview-controls>span{font-size:8px}.purchase-dialog{padding:32px 24px 24px}.purchase-dialog h2{font-size:27px}}
@media(max-width:365px){.hero h1{font-size:33px;letter-spacing:-1.7px}.hero-actions{gap:12px}.hero-actions>.quiet-link{font-size:9px}.brand-name{font-size:20px}.brand-extension{font-size:12px}.product-grid{grid-template-columns:1fr}.product-image-link img{max-height:240px;object-fit:cover}.product-title{font-size:19px;min-height:0}.product-summary{font-size:12px;min-height:0}.product-category{font-size:9px}.product-body{padding:18px}.product-price{font-size:20px}.product-detail-link{font-size:11px}.product-detail-link>span{width:25px;height:25px}.product-badge{font-size:8px}.related-grid{grid-template-columns:1fr}.related-grid>.product-card:last-child{display:flex}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Live storefront: dynamic catalog, real detail routes, and uploaded galleries. */
.header-actions { display:flex; align-items:center; gap:12px; }
.admin-link { padding:10px 2px; color:var(--purple); font-size:11px; font-weight:650; white-space:nowrap; }
.mobile-menu-panel { display:none; }
.menu-toggle { list-style:none; align-items:center; justify-content:center; cursor:pointer; }
.menu-toggle::-webkit-details-marker { display:none; }
.menu-toggle:focus-visible { outline:3px solid #a896fb; outline-offset:4px; }
.catalog-form { min-width:0; }
.catalog-heading > div:first-child { min-width:0; }
.search-submit { flex-shrink:0; background:var(--lavender); color:var(--purple); border-radius:6px; font-size:10px; font-weight:700; padding:6px 8px; }
.category-tabs { min-width:0; }
.category-tab { display:inline-flex; align-items:center; }
.fallback-filter-button { margin-top:14px; font-size:11px; }
.product-card, .product-body, .detail-info, .detail-visual, .detail-text, .product-specs { min-width:0; }
.product-title, .product-summary, .detail-info h1, .detail-lead, .product-description, .product-specs dd, .audience-list li, .inclusions li { overflow-wrap:anywhere; }
.product-category { text-transform:uppercase; overflow-wrap:anywhere; }
.product-demo-badge { position:absolute; right:10px; bottom:10px; border:1px solid #ffffff; border-radius:5px; padding:4px 7px; font-size:8px; line-height:1.4; font-weight:650; background:#ffffffed; color:#756783; }
.product-image-placeholder { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:9px; aspect-ratio:4/3; background:linear-gradient(140deg,#f3effa,#f8f7f3); color:#9c91aa; font-size:11px; }
.product-image-placeholder > span:first-child { font-size:45px; color:#b0a3c3; line-height:1; }
.product-description { white-space:pre-line; }
.demo-product-note, .purchase-pending { margin-bottom:17px; padding:16px 18px; border:1px solid #e4ddf3; border-radius:11px; background:#f7f4fd; font-size:12px; color:#776983; }
.demo-product-note strong, .purchase-pending strong { color:#67577d; font-size:12px; }
.demo-product-note p, .purchase-pending p { margin-top:5px; font-size:11px; line-height:1.8; }
.purchase-pending { background:#f7f7f3; border-color:#e8e5dc; }
.product-price, .detail-price { overflow-wrap:anywhere; }
.product-specs dl > div { min-width:0; }
.product-specs dt { max-width:45%; overflow-wrap:anywhere; }
.related-heading { gap:15px; }
.related-heading h2 { min-width:0; }
.related-heading a { flex-shrink:0; }
.not-found { max-width:650px; }
.not-found .eyebrow { justify-content:center; margin-bottom:15px; }
.not-found p { line-height:1.9; }
.footer-links, .footer-bottom { flex-wrap:wrap; }

/* Every uploaded image is kept in the strip; no three-image limit. */
.gallery-main { display:block; width:100%; padding:0; position:relative; overflow:hidden; border-radius:17px; background:#f4f1f7; cursor:zoom-in; }
.gallery-main .detail-cover { width:100%; height:auto; aspect-ratio:4/3; max-height:none; object-fit:contain; border-radius:0; }
.gallery-enlarge { position:absolute; right:12px; bottom:12px; display:flex; align-items:center; gap:6px; padding:7px 10px; border-radius:7px; background:#ffffffed; color:#6f607e; border:1px solid #fff; font-size:10px; font-weight:600; }
.gallery-enlarge svg { width:14px; height:14px; }
.gallery-meta { display:flex; justify-content:space-between; align-items:flex-start; gap:15px; margin:11px 1px 13px; color:#8b8097; font-size:11px; }
.gallery-meta p { min-width:0; overflow-wrap:anywhere; }
.gallery-meta > span { flex-shrink:0; font-variant-numeric:tabular-nums; color:var(--purple); font-weight:600; margin-left:auto; }
.gallery-thumbnails { display:flex; width:100%; min-width:0; gap:9px; padding:3px 3px 11px; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:#d1c6e6 transparent; scroll-padding:3px; }
.gallery-thumbnail { flex:0 0 84px; width:84px; height:67px; position:relative; padding:3px; border:1px solid #e8e1ef; border-radius:9px; background:#fff; overflow:hidden; transition:border-color .15s,box-shadow .15s; }
.gallery-thumbnail:hover { border-color:#ab98dc; }
.gallery-thumbnail.active { border:2px solid var(--purple); padding:2px; box-shadow:0 0 0 2px #6550df14; }
.gallery-thumbnail img { width:100%; height:100%; object-fit:contain; background:#f7f5f9; border-radius:5px; }
.thumbnail-number { position:absolute; right:4px; bottom:3px; background:#fffef6e6; border-radius:4px; padding:0 4px; color:#7c6a8f; font-size:9px; line-height:1.4; }
.gallery-help { font-size:10px; color:#998ca5; line-height:1.8; margin-top:6px; }
.gallery-placeholder { border-radius:17px; }
.noscript-gallery { display:grid; gap:8px; margin-top:15px; font-size:12px; }
.noscript-gallery p { color:var(--muted); }
.noscript-gallery a { color:var(--purple); text-decoration:underline; overflow-wrap:anywhere; }

/* Native dialog, with keyboard and touch-friendly navigation. */
.gallery-lightbox { width:min(1080px,calc(100% - 40px)); max-width:calc(100% - 40px); max-height:calc(100dvh - 36px); padding:0; border:1px solid #ebe6f1; border-radius:19px; box-shadow:0 30px 100px #20132b33; color:var(--ink); background:#fff; overflow:auto; }
.gallery-lightbox::backdrop { background:#231733a1; backdrop-filter:blur(5px); }
.lightbox-top { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; padding:20px 24px; border-bottom:1px solid var(--line); }
.lightbox-top > div { min-width:0; }
.lightbox-top .eyebrow { font-size:8px; }
.lightbox-top h2 { font-size:21px; line-height:1.3; margin-top:5px; overflow-wrap:anywhere; }
.close-button { height:36px; width:36px; display:grid; place-items:center; font-size:26px; border-radius:50%; background:#f5f1fa; color:#806b95; flex-shrink:0; font-weight:300; line-height:1; }
.close-button:hover { background:#ebe3f7; }
.lightbox-stage { display:grid; grid-template-columns:44px minmax(0,1fr) 44px; align-items:center; gap:14px; padding:20px; background:#f6f4f9; }
.lightbox-stage figure { grid-column:2; min-width:0; margin:0; }
.lightbox-stage figure img { width:100%; height:min(63dvh,680px); object-fit:contain; }
.lightbox-stage figcaption { text-align:center; color:#8c7d99; font-size:12px; padding-top:13px; overflow-wrap:anywhere; }
.lightbox-stage figcaption:empty { display:none; }
.gallery-arrow { display:grid; place-items:center; padding:0; width:42px; height:42px; border:1px solid #e4dceb; border-radius:50%; background:#fff; color:#725b90; font-size:22px; transition:background .2s; }
.gallery-arrow:hover { background:#eee6f8; }
#lightbox-prev { grid-column:1; grid-row:1; }
#lightbox-next { grid-column:3; grid-row:1; }
.lightbox-bottom { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; padding:15px 24px; font-size:10px; color:#93839f; }
#lightbox-count { color:var(--purple); font-size:11px; font-weight:600; font-variant-numeric:tabular-nums; }

@media (max-width:1050px) {
  .header-actions { gap:9px; }
  .admin-link { font-size:10px; }
  .header-inner { gap:17px; }
}
@media (max-width:820px) {
  .header-actions { display:none; }
  .mobile-menu-panel { display:block; margin-left:auto; }
  .menu-toggle { display:flex; }
  .catalog-toolbar { max-width:100%; }
  .gallery-thumbnail { flex-basis:72px; width:72px; height:59px; }
}
@media (max-width:580px) {
  .hero h1 { font-size:clamp(31px,9.3vw,37px); letter-spacing:-1.6px; }
  .hero-copy { min-width:0; }
  .hero-accent { max-width:100%; }
  .hero-actions { column-gap:15px; row-gap:12px; }
  .search-box { padding-right:8px; }
  .search-submit { font-size:10px; }
  .result-line { gap:10px; align-items:flex-start; }
  .result-line .example-label { text-align:right; max-width:135px; line-height:1.6; }
  .result-line .example-label > span { flex-shrink:0; }
  .product-demo-badge { right:7px; bottom:7px; font-size:7px; padding:3px 5px; }
  .product-badge { max-width:calc(100% - 16px); overflow-wrap:anywhere; }
  .product-bottom { align-items:flex-start; }
  .product-detail-link { white-space:nowrap; }
  .detail-info h1 { max-width:100%; }
  .detail-tags { gap:6px; }
  .detail-tags span { overflow-wrap:anywhere; max-width:100%; }
  .detail-price-row { gap:12px; }
  .gallery-main { border-radius:14px; }
  .gallery-thumbnails { gap:8px; }
  .gallery-thumbnail { flex-basis:76px; width:76px; height:61px; }
  .gallery-meta { font-size:10px; gap:10px; }
  .gallery-help { font-size:9px; }
  .gallery-lightbox { width:calc(100% - 20px); max-width:calc(100% - 20px); max-height:calc(100dvh - 20px); border-radius:14px; }
  .lightbox-top { padding:17px 16px; gap:12px; }
  .lightbox-top h2 { font-size:18px; }
  .lightbox-stage { grid-template-columns:34px minmax(0,1fr) 34px; gap:5px; padding:14px 7px; }
  .gallery-arrow { width:32px; height:36px; font-size:18px; }
  .lightbox-stage figure img { height:min(59dvh,540px); }
  .lightbox-stage figcaption { font-size:10px; }
  .lightbox-bottom { padding:13px 17px; gap:7px; }
  .lightbox-bottom > span:last-child { font-size:9px; }
  .related-heading h2 { font-size:20px; }
  .related-heading a { font-size:9px; }
  .not-found { padding-block:75px; }
  .not-found h1 { font-size:30px; }
}
@media (prefers-reduced-motion:reduce) {
  .gallery-thumbnail, .gallery-arrow { transition:none; }
}
