:root{--ink:#24213b;--muted:#686778;--violet:#6954df;--line:#e4dfed;--paper:#fffcf8;--lavender:#f2eefb;--white:#fff;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ad9ff5;outline-offset:5px}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.045em;line-height:1.05;font-weight:500}h1{font-size:clamp(42px,4.7vw,70px)}h2{font-size:clamp(35px,3.6vw,49px);margin-bottom:22px}h3{font-size:20px;line-height:1.35;letter-spacing:-.025em}em{font-style:normal;color:var(--violet)}p{color:var(--muted)}.wrap{width:min(1220px,calc(100% - 80px));margin-inline:auto}.header{background:rgba(255,252,248,.98);border-bottom:1px solid var(--line)}.nav{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}.spark{display:grid;place-items:center;width:43px;height:43px;background:var(--violet);border-radius:50%;color:#fff;font-family:Georgia,serif;font-size:43px;line-height:1}.wordmark{font-family:Georgia,serif;font-size:27px;letter-spacing:-1px;font-weight:bold;line-height:1}.wordmark>span{font-weight:400;color:var(--violet);margin-left:4px}.nav nav{display:flex;gap:28px;font-size:13px}.nav nav a:hover,.footer-links a:hover{color:var(--violet)}.button{display:inline-flex;justify-content:center;align-items:center;gap:25px;background:var(--violet);border:1px solid var(--violet);color:#fff;border-radius:8px;padding:14px 22px;font-size:14px;font-weight:600;line-height:1.4;transition:background .18s,transform .18s}.button:hover{background:#5541c3;transform:translateY(-2px)}.button.outline{background:transparent;color:var(--violet)}.button.outline:hover{background:var(--lavender)}.access{font-size:12px;padding:11px 16px}.eyebrow{color:var(--violet);font-size:11px;letter-spacing:2px;font-weight:700;line-height:1.5;margin-bottom:22px}.eyebrow.small{font-size:10px;letter-spacing:1.1px;display:block;margin-bottom:12px}.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;align-items:center;padding-top:80px;padding-bottom:70px}.hero h1{margin-bottom:27px}.lead{font-size:17px;line-height:1.7;max-width:490px;margin-bottom:27px}.hero-note{font-size:12px;margin:15px 0 0}.hero-image{border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:0 15px 50px #3025460a;border:1px solid #eae2d5}.hero-image>img{width:100%;aspect-ratio:16/9;object-fit:contain}.image-caption{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:21px 23px;font-size:12px}.image-caption>span{color:var(--muted)}.image-caption a{font-weight:600}.image-caption a span{margin-left:10px;color:var(--violet)}.benefits{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:29px;padding-bottom:37px;gap:30px}.benefits>div{display:flex;gap:16px;align-items:center}.benefits p{margin:0;font-size:12px}.benefits strong,.benefits p span{display:block}.benefits strong{color:var(--ink);font-size:14px}.benefit-icon{font-size:31px;color:var(--violet);width:34px;line-height:1}.catalog-section{background:#f7f4fb;padding:76px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.section-heading .eyebrow{margin-bottom:14px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:14px;margin-bottom:2px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}.filters button{padding:9px 19px;border:1px solid var(--line);border-radius:30px;background:transparent;color:var(--muted);font-size:12px;cursor:pointer}.filters button[aria-pressed=true]{background:var(--violet);color:#fff;border-color:var(--violet)}.filters button:hover{border-color:var(--violet)}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product{background:var(--white);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}.product[hidden]{display:none}.cover-link{display:block;overflow:hidden}.product img{width:100%;aspect-ratio:16/9;object-fit:contain;transition:transform .25s}.cover-link:hover img{transform:scale(1.025)}.product-body{padding:23px;display:flex;flex-direction:column;flex:1}.product h3{font-family:Georgia,serif;font-size:23px;margin-bottom:13px;line-height:1.2;min-height:56px}.product h3 a:hover{color:var(--violet)}.product-body>p{font-size:13px;line-height:1.65;flex:1;margin-bottom:22px}.product-bottom{border-top:1px solid #eee9f4;padding-top:19px;display:flex;align-items:center;justify-content:space-between;gap:15px}.price{display:block;font-size:20px;font-weight:600;letter-spacing:-.5px}.small-muted{display:block;color:var(--muted);font-size:11px;line-height:1.6}.text-link{color:var(--violet);font-size:13px;font-weight:600}.text-link:hover{text-decoration:underline}.catalog-note{font-size:11px;max-width:900px;margin:25px 0 0;line-height:1.7}.center{text-align:center}.center .eyebrow{margin-bottom:16px}.steps-section{padding-block:86px;text-align:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:62px;text-align:left;margin:46px 0 28px}.step-number{color:var(--violet);font-family:Georgia,serif;font-size:36px;display:block;margin-bottom:18px}.steps h3{font-size:19px;margin-bottom:10px}.steps p{font-size:14px;line-height:1.75}.about-section{background:#eee9f7;padding:78px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.about-grid>div>p:not(.eyebrow){font-size:14px;max-width:490px}.library{background:#fffdf9;border:1px solid #ded7eb;border-radius:var(--radius);padding:40px}.library h3{font-family:Georgia,serif;font-weight:400;font-size:30px;margin-bottom:22px}.library ul{list-style:none;margin:0 0 29px;padding:0}.library li{font-size:13px;margin-block:12px;display:flex;gap:12px}.library li:before{content:'✓';color:var(--violet)}.library .small-muted{margin:20px 0 0}.faq-section{padding-block:80px;display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq details{border-bottom:1px solid var(--line);padding:19px 0}.faq details:first-child{padding-top:0}.faq summary{font-size:15px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary:after{content:'+';font-size:22px;font-weight:400;color:var(--violet)}.faq details[open] summary:after{content:'−'}.faq p{font-size:14px;margin:15px 0 0}.faq a,.policy a,.detail-copy a{text-decoration:underline;color:var(--violet)}.contact{background:#f2edf9;border:1px solid #e4dcef;border-radius:var(--radius);padding:42px;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:75px}.contact h2{font-size:36px;margin-bottom:12px}.contact p{font-size:13px;margin-bottom:0}.contact .eyebrow{margin-bottom:12px}.contact .button{font-size:13px;flex-shrink:0}footer{background:#fff;border-top:1px solid var(--line);padding:43px 0 22px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:start}.footer-top>p{font-size:13px}.footer-links{display:grid;grid-template-columns:1fr;gap:9px;font-size:12px}.legal{border-top:1px solid var(--line);padding-top:20px;margin-top:30px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}.skip{position:absolute;left:20px;top:-100px;z-index:10;background:#fff;padding:14px;border:2px solid var(--violet)}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.breadcrumb{display:inline-block;font-size:13px;color:var(--violet);margin-bottom:38px}.product-detail{padding-block:44px 80px}.detail-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:65px;align-items:start}.detail-image{border:1px solid var(--line);border-radius:16px;width:100%}.image-note{font-size:11px;margin-top:12px}.detail-grid h1{font-size:43px;line-height:1.1;margin-bottom:22px}.detail-grid .eyebrow{margin-bottom:18px}.detail-grid .lead{font-size:15px}.detail-price{font-size:32px;color:var(--ink);line-height:1.3;margin-bottom:20px}.detail-price span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.detail-grid .button{margin-bottom:12px}.detail-facts{margin-top:26px;border-top:1px solid var(--line);padding-top:15px}.detail-facts p{font-size:12px;display:grid;grid-template-columns:80px 1fr;gap:12px;margin-block:12px}.detail-facts strong{color:var(--ink)}.detail-copy{max-width:760px;margin:75px auto 0}.detail-copy h2{font-size:40px;margin-bottom:32px}.detail-copy h3{font-size:18px;margin-top:28px}.detail-copy p{font-size:15px}.policy{max-width:800px;padding-block:45px 85px}.policy h1{font-size:52px}.policy h2{font-family:Arial,Helvetica,sans-serif;font-size:22px;font-weight:600;letter-spacing:-.02em;margin:35px 0 15px;line-height:1.3}.policy p{font-size:15px}.policy .eyebrow{font-size:10px}.updated{font-size:12px!important;margin-bottom:35px}.policy strong{color:var(--ink)}
@media(min-width:1400px){.hero{padding-block:100px 85px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.nav nav{gap:17px}.nav{gap:16px}.wordmark{font-size:23px}.access{font-size:11px}.hero{gap:35px;padding-block:60px}.hero h1{font-size:53px}.product-grid{grid-template-columns:repeat(2,1fr)}.about-grid{gap:45px}.contact{padding:32px}.contact h2{font-size:30px}.contact .button{font-size:11px}.detail-grid{gap:35px}.detail-grid h1{font-size:36px}.faq-section{gap:45px}}
@media(max-width:700px){html{scroll-padding-top:24px}.wrap{width:calc(100% - 36px)}.nav{min-height:82px;flex-wrap:wrap;padding-block:18px;gap:18px}.nav nav{order:3;width:100%;justify-content:space-between;gap:10px;font-size:11px;border-top:1px solid var(--line);padding-top:14px}.spark{width:32px;height:32px;font-size:32px}.wordmark{font-size:22px}.access{font-size:10px;padding:9px 11px;gap:8px}.hero{grid-template-columns:1fr;gap:30px;padding-block:42px 33px}.hero h1{font-size:52px;margin-bottom:22px}.hero h1 br:last-of-type{display:none}.hero .eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:20px}.lead{font-size:15px}.hero-image{margin-top:5px}.image-caption{font-size:10px;padding:15px}.benefits{gap:17px;padding-block:24px 30px;grid-template-columns:1fr}.benefits>div{gap:15px}.benefits p strong{font-size:13px}.benefits p span{font-size:11px}.benefit-icon{font-size:25px}.catalog-section{padding-block:43px}.section-heading{display:block;margin-bottom:22px}.section-heading h2{font-size:37px;margin-bottom:17px}.section-heading>p{font-size:13px}.section-heading>p br{display:none}.eyebrow{font-size:9px;letter-spacing:1.6px}.filters{gap:6px;margin-bottom:24px}.filters button{font-size:11px;padding:8px 12px}.product-grid{grid-template-columns:1fr;gap:22px}.product h3{min-height:0;font-size:26px}.product-body{padding:23px}.product-body>p{font-size:14px}.product-bottom{padding-top:17px}.price{font-size:23px}.catalog-note{font-size:11px}.steps-section{padding-block:48px}.center h2{font-size:36px}.steps{grid-template-columns:1fr;gap:22px;margin-block:28px;text-align:center}.step-number{margin-bottom:8px}.steps h3{margin-bottom:9px}.steps p{max-width:340px;margin:0 auto}.about-section{padding-block:45px}.about-grid{grid-template-columns:1fr;gap:25px}.about-grid h2{font-size:39px}.library{padding:28px}.library h3{font-size:29px}.faq-section{grid-template-columns:1fr;gap:10px;padding-block:43px}.faq-section h2{font-size:38px}.faq summary{font-size:14px}.contact{padding:27px;display:block;margin-bottom:42px}.contact h2{font-size:34px}.contact .button{font-size:11px;margin-top:25px;gap:13px}.footer-top{grid-template-columns:1fr;gap:20px}.footer-top>p{margin-bottom:0}.footer-links{gap:12px}.legal{flex-direction:column;gap:7px;font-size:10px}.detail-grid{grid-template-columns:1fr;gap:27px}.detail-grid h1{font-size:38px}.product-detail{padding-block:25px 45px}.breadcrumb{margin-bottom:25px}.detail-copy{margin-top:42px}.detail-copy h2{font-size:34px}.policy{padding-block:25px 45px}.policy h1{font-size:40px}.policy h2{font-size:21px}.policy p{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:700px){.hero h1{font-size:44px}.hero h1 br{display:none}.nav .brand .wordmark{font-size:20px}.access{font-size:9px;padding:9px;gap:5px}}
