.cf-magic{--magic-accent:#126174;--magic-wash:#fff;--magic-ink:#173039;color:var(--magic-ink);background:var(--magic-wash);font-family:var(--font-body-family);font-size:1.6rem;line-height:1.6;letter-spacing:0}
.cf-magic *{box-sizing:border-box}
.cf-magic [hidden]{display:none!important}
.cf-magic-shell{width:88%;max-width:150rem;margin-inline:auto}
.cf-magic h1,.cf-magic h2,.cf-magic h3,.cf-magic p{margin:0;color:inherit;letter-spacing:0}
.cf-magic h1,.cf-magic h2,.cf-magic h3{font-family:var(--font-heading-family);font-weight:500}
.cf-magic h1{font-size:clamp(3.4rem,3.4vw,6rem);line-height:1.07;max-width:12ch}
.cf-magic h2{font-size:clamp(3rem,3.3vw,5.2rem);line-height:1.1;max-width:15ch}
.cf-magic h3{font-size:clamp(2rem,1.8vw,2.7rem);line-height:1.25}
.cf-magic a{color:inherit;text-underline-offset:.35em}
.cf-magic :focus-visible{outline:3px solid var(--magic-accent);outline-offset:4px;box-shadow:none}
.cf-magic-hero{scroll-margin-top:12rem;padding-block:clamp(2.4rem,5svh,6rem)}
.cf-magic-hero-grid{display:grid;grid-template-columns:1.04fr 1fr;align-items:center;gap:clamp(3rem,6vw,10rem)}
.cf-magic-identity{min-width:0}
.cf-magic-product-frame{display:grid;place-items:center;background:#fff;border-radius:2rem;aspect-ratio:1/1;max-height:67svh;width:100%;overflow:hidden}
.cf-magic-product-image{display:block;width:89%;height:100%;max-height:63svh;object-fit:contain}
.cf-magic-image-label{text-align:center;font-size:1.4rem;margin-top:1rem!important}
.cf-magic-brand,.cf-magic-eyebrow{font-size:1.3rem;font-weight:600;letter-spacing:.16em!important;text-transform:uppercase;color:var(--magic-accent)!important;margin-bottom:1.6rem!important}
.cf-magic-lead{font-size:clamp(2rem,1.9vw,2.7rem);line-height:1.35;margin-top:2rem!important;max-width:26ch}
.cf-magic-copy{max-width:44ch;margin-top:1.5rem!important}
.cf-magic-copy p+p{margin-top:1rem}
.cf-magic-price{font-size:2.3rem;margin-block:2.2rem 1.3rem}
.cf-magic-form{scroll-margin-top:12rem}
.cf-magic-form label{display:block;font-size:1.3rem;font-weight:600;margin-bottom:.5rem}
.cf-magic-form select,.cf-magic-form input{width:100%;min-height:4.8rem;border:1px solid #657a83;border-radius:.5rem;background:#fff;color:var(--magic-ink);font:inherit;padding:.8rem 1.2rem;box-shadow:none}
.cf-magic-form select{cursor:pointer}
.cf-magic-variant-help{font-size:1.35rem;min-height:2.2rem;margin-top:.7rem!important}
.cf-magic-buy-row{display:flex;align-items:end;gap:1.2rem;margin-top:1.6rem}
.cf-magic-quantity{width:8rem;flex-shrink:0}
.cf-magic-button{display:inline-flex;align-items:center;justify-content:center;min-height:4.8rem;padding:1.1rem 2rem;border:1px solid var(--magic-accent);border-radius:.5rem;background:var(--magic-accent);color:#fff!important;font:inherit;font-weight:600;line-height:1.35;text-decoration:none;cursor:pointer}
.cf-magic-buy-row .cf-magic-button{flex:1}
.cf-magic-button:hover{filter:brightness(.91)}
.cf-magic-button:disabled{opacity:.55;cursor:not-allowed}
.cf-magic-included{font-size:1.3rem;margin-top:1.3rem!important}
.cf-magic-nav{display:flex;flex-wrap:wrap;gap:.4rem 2rem;margin-top:2rem;font-size:1.4rem}
.cf-magic-nav a{display:inline-flex;align-items:center;min-height:4.4rem}
.cf-magic-story{padding-block:clamp(4.5rem,8svh,9rem);scroll-margin-top:12rem}
.cf-magic-story-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(3rem,7vw,12rem)}
.cf-magic-story-visual{position:relative;overflow:hidden;border-radius:1.6rem;width:100%;aspect-ratio:3/2;max-height:58svh;background:#f5f6f6}
.cf-magic-story-visual img{display:block;width:100%;height:100%;object-fit:cover}
.cf-magic-detail{width:min(48%,23svh);aspect-ratio:1/1.8;justify-self:center;background:#fff;max-height:50svh;border-radius:0}
.cf-magic-detail img{position:absolute;width:205%;max-width:none;height:auto;top:-3%;left:-99%;object-fit:initial}
.cf-magic-story--detail .cf-magic-points{display:flex;gap:3rem;flex-wrap:wrap}
.cf-magic-points{margin-top:2.5rem;display:grid;gap:2rem}
.cf-magic-point p{margin-top:.65rem;max-width:36ch}
.cf-magic-story--steps{background:#edf5f7}
.cf-magic-story--steps .cf-magic-story-visual{order:2}
.cf-magic-story--steps .cf-magic-story-copy{order:1}
.cf-magic-story-grid:not(:has(.cf-magic-story-visual)){display:block}
.cf-magic-story-grid:not(:has(.cf-magic-story-visual)) .cf-magic-points{grid-template-columns:repeat(3,1fr);gap:4vw}
.cf-magic-note{font-size:1.4rem;line-height:1.6;margin-top:2.5rem!important;max-width:50ch}
.cf-magic-faq{padding-block:clamp(4rem,7svh,8rem);scroll-margin-top:12rem}
.cf-magic-faq-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:7vw}
.cf-magic details{border-bottom:1px solid #cad4d8}
.cf-magic summary{font-size:1.8rem;line-height:1.4;padding:2rem 3rem 2rem 0;position:relative;cursor:pointer;list-style:none;font-weight:500}
.cf-magic summary::-webkit-details-marker{display:none}
.cf-magic summary:after{content:'+';position:absolute;right:.3rem;top:1.8rem;font-size:2.4rem;font-weight:400}
.cf-magic details[open]>summary:after{content:'−'}
.cf-magic-answer{padding:0 2rem 2rem 0;max-width:65ch}
.cf-magic-description{padding-block:0 clamp(4rem,8svh,9rem)}
.cf-magic-native-description{padding:1rem 0 3rem;max-width:75ch}
.cf-magic-native-description h2{font-size:2.4rem;max-width:none;margin-top:2rem}
.cf-magic-native-description p{margin-block:1rem}
.cf-magic-purchase-bar{position:fixed;z-index:8;bottom:max(1.2rem,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:88%;max-width:72rem;display:flex;justify-content:space-between;align-items:center;gap:1.2rem;padding:1rem 1.4rem;background:#fff;border:1px solid #c9d9de;border-radius:1rem;box-shadow:0 .4rem 2rem #102d3b14;font-size:1.4rem}
.cf-magic-purchase-bar>span{font-weight:600}
.cf-magic-purchase-bar [data-magic-bar-variant]{display:block;font-weight:400;font-size:1.2rem}
.cf-magic-purchase-bar .cf-magic-button{min-height:4.4rem;padding:.9rem 1.5rem;font-size:1.4rem}
@media(min-width:1900px){.cf-magic-shell{width:80%}.cf-magic-product-frame{max-height:60svh}.cf-magic-story-visual{max-height:50svh}}
@media(max-width:989px){.cf-magic-shell{width:90%}.cf-magic-hero-grid{gap:3.5vw}.cf-magic h1{font-size:clamp(3rem,4.2vw,4.4rem)}.cf-magic-story-grid{gap:5vw}.cf-magic-detail{width:min(48%,21svh)}.cf-magic-faq-grid{grid-template-columns:1fr 1.7fr;gap:4vw}}
@media(max-width:699px){.cf-magic-shell{width:88%}.cf-magic-hero-grid,.cf-magic-story-grid,.cf-magic-faq-grid{grid-template-columns:1fr;gap:2.8rem}.cf-magic-hero{padding-top:1.8rem}.cf-magic-product-frame{aspect-ratio:1.22;max-height:43svh;border-radius:1.2rem}.cf-magic-product-image{width:88%;max-height:39svh}.cf-magic-image-label{margin-top:.5rem!important}.cf-magic h1{font-size:clamp(3.4rem,9.4vw,4.3rem);max-width:13ch}.cf-magic h2{font-size:clamp(3rem,8.2vw,4rem)}.cf-magic-brand{margin-bottom:1rem!important}.cf-magic-lead{font-size:2.2rem;margin-top:1.4rem!important}.cf-magic-copy{margin-top:1.2rem!important}.cf-magic-story{padding-block:4rem}.cf-magic-story--detail .cf-magic-story-grid{gap:2rem}.cf-magic-detail{width:min(37%,17svh);max-height:36svh}.cf-magic-story-visual{max-height:40svh}.cf-magic-story--steps .cf-magic-story-visual{order:0}.cf-magic-story-grid:not(:has(.cf-magic-story-visual)) .cf-magic-points{grid-template-columns:1fr;gap:2rem}.cf-magic-faq{padding-block:4rem}.cf-magic-faq-grid{gap:1.8rem}.cf-magic-description{padding-bottom:12rem}.cf-magic-purchase-bar{width:92%;padding:.8rem 1rem}.cf-magic-purchase-bar .cf-magic-button{font-size:1.3rem;padding:.8rem 1.2rem}.cf-magic summary{font-size:1.7rem}}
@media(prefers-reduced-motion:reduce){.cf-magic *{scroll-behavior:auto;transition:none!important;animation:none!important}}
