:root{color-scheme:light;--sw-purple:#6600ff;--sw-purple-dark:#5100ce;--sw-navy:#15203d;--sw-muted:#526079;--sw-border:#e5e2ee}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body.sw-page{margin:0;min-width:320px;background:#fff;color:var(--sw-navy);font:16px/1.6 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body.sw-page img{max-width:100%}body.sw-page:not(.sw-service-page) a{color:inherit;text-decoration:none}body.sw-page :is(a,button,input,select,summary):focus-visible,.sw-footer a:focus-visible{outline:3px solid #b18cff;outline-offset:3px}body.sw-page button,body.sw-page input,body.sw-page select{font:inherit}.sw-shell{width:min(100% - 40px,1200px);margin-inline:auto}.sw-skip{position:absolute;left:-9999px;top:10px;z-index:100;padding:10px 18px;background:#fff;color:var(--sw-navy)}.sw-skip:focus{left:10px}.sw-header{position:relative;z-index:10;border-bottom:1px solid #ebe8f2;background:#fff}.sw-nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.sw-brand{display:inline-flex;align-items:center;gap:10px;font-size:1.1rem;font-weight:850;letter-spacing:-.035em;white-space:nowrap}.sw-logo{max-width:150px;max-height:42px;width:auto;height:auto;object-fit:contain}.sw-mark{display:grid;place-items:center;width:37px;height:37px;flex:none;border-radius:11px;background:#6600ff;color:#fff;font-size:1.2rem}.sw-nav-links,.sw-nav-actions{display:none;align-items:center;gap:26px;font-size:.9rem;font-weight:680}.sw-nav-links a:hover,.sw-nav-actions a:hover{color:var(--sw-purple)}.sw-mobile-menu{position:relative}.sw-mobile-menu summary{cursor:pointer;list-style:none;padding:9px 14px;border:1px solid var(--sw-border);border-radius:11px;font-size:.9rem;font-weight:750}.sw-mobile-menu summary::-webkit-details-marker{display:none}.sw-mobile-items{position:absolute;right:0;top:calc(100% + 10px);width:min(300px,85vw);display:grid;padding:10px;border:1px solid var(--sw-border);border-radius:16px;background:#fff;box-shadow:0 20px 45px #15203d25}.sw-mobile-items a{padding:11px 13px;border-radius:9px;font-size:.92rem;font-weight:650}.sw-mobile-items a:hover{background:#f4efff;color:var(--sw-purple)}.sw-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:12px 21px;border:1px solid transparent;border-radius:12px;background:var(--sw-purple);color:#fff!important;font-size:.91rem;font-weight:760;line-height:1.25;transition:transform .18s,box-shadow .18s,background .18s}.sw-button:hover{transform:translateY(-2px);background:var(--sw-purple-dark);box-shadow:0 13px 25px #6600ff36}.sw-button-light{background:#fff;color:var(--sw-purple)!important}.sw-button-light:hover{background:#f7f3ff;color:var(--sw-purple-dark)!important}.sw-button-outline{border-color:#cbb6fc;background:transparent;color:var(--sw-purple)!important}.sw-button-outline:hover{background:#f5efff;color:var(--sw-purple-dark)!important}.sw-button-row{display:flex;flex-wrap:wrap;gap:12px}.sw-hero{position:relative;overflow:hidden;padding:62px 0 72px;background:radial-gradient(circle at 80% 15%,#e5d8ff 0,transparent 37%),linear-gradient(135deg,#faf9ff 0,#f1eaff 70%,#fbfaff 100%)}.sw-hero::before{content:"";position:absolute;inset:auto -90px -220px auto;width:370px;height:370px;border:1px solid #d6c1ff;border-radius:50%;opacity:.8}.sw-hero-inner{position:relative;display:grid;align-items:center;gap:32px}.sw-eyebrow,.sw-kicker{margin:0;color:var(--sw-purple);font-size:.72rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.sw-eyebrow{display:inline-flex;padding:7px 13px;border:1px solid #d9c8ff;border-radius:100px;background:#fff}.sw-hero h1{max-width:730px;margin:18px 0 20px;font-size:clamp(2.55rem,6.2vw,5.15rem);font-weight:850;line-height:1.045;letter-spacing:-.061em}.sw-hero h1 span{color:var(--sw-purple)}.sw-lead{max-width:610px;margin:0;color:#4b5872;font-size:clamp(1rem,2vw,1.13rem);line-height:1.72}.sw-hero-actions{margin-top:25px}.sw-search{display:flex;flex-wrap:wrap;gap:8px;max-width:640px;margin-top:24px;padding:8px;border:1px solid #d9c9fd;border-radius:15px;background:#fff;box-shadow:0 18px 40px #35146a12}.sw-search label{width:100%;padding:2px 10px 0;color:#4b5571;font-size:.76rem;font-weight:750}.sw-search input{flex:1 1 200px;min-width:0;padding:10px;border:0;background:transparent;color:var(--sw-navy);outline:0}.sw-search button{cursor:pointer}.sw-trust{display:flex;flex-wrap:wrap;gap:10px 21px;margin:22px 0 0;padding:0;list-style:none;color:#54607a;font-size:.82rem;font-weight:630}.sw-trust li::before{content:"✓";margin-right:7px;color:var(--sw-purple);font-weight:900}.sw-hero-image{display:block;width:100%;max-width:640px;aspect-ratio:6/5;object-fit:contain;margin-inline:auto}.sw-section{padding:76px 0}.sw-soft{background:#faf9ff}.sw-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:29px}.sw-section h2,.sw-page-title{margin:7px 0 0;font-size:clamp(1.85rem,3.4vw,2.8rem);line-height:1.16;letter-spacing:-.047em}.sw-sub{max-width:720px;margin:11px 0 0;color:var(--sw-muted);line-height:1.72}.sw-text-link{color:var(--sw-purple)!important;font-size:.9rem;font-weight:760}.sw-text-link:hover{text-decoration:underline!important}.sw-grid{display:grid;grid-template-columns:1fr;gap:20px}.sw-card{display:flex;flex-direction:column;min-width:0;padding:27px;border:1px solid var(--sw-border);border-radius:21px;background:#fff;box-shadow:0 8px 26px #18244308;transition:transform .2s,border-color .2s,box-shadow .2s}.sw-card:hover{transform:translateY(-3px);border-color:#c4a6ff;box-shadow:0 18px 35px #35206914}.sw-card h3{margin:0;font-size:1.12rem;line-height:1.32;letter-spacing:-.025em}.sw-card p{margin:11px 0 18px;color:var(--sw-muted);font-size:.91rem;line-height:1.67}.sw-card-link{margin-top:auto;color:var(--sw-purple)!important;font-size:.87rem;font-weight:800}.sw-card-link:hover{text-decoration:underline!important}.sw-icon-wrap{display:grid;place-items:center;width:59px;height:59px;margin-bottom:22px;border-radius:18px;background:#efe8ff;color:var(--sw-purple)}.sw-category-icon{width:35px;height:35px}.sw-category-card{min-height:252px}.sw-category-count{margin-top:auto;padding-top:10px;color:#626f83;font-size:.76rem;font-weight:700}.sw-category-card .sw-card-link{margin-top:6px}.sw-steps{display:grid;gap:18px;counter-reset:step}.sw-step{position:relative;min-height:215px;padding:27px;border:1px solid #e5d9ff;border-radius:19px;background:#fff}.sw-step::before{counter-increment:step;content:counter(step,decimal-leading-zero);display:grid;place-items:center;width:42px;height:42px;margin-bottom:18px;border-radius:12px;background:#efe7ff;color:var(--sw-purple);font-size:.85rem;font-weight:850}.sw-step h3{margin:0 0 8px;font-size:1.04rem}.sw-step p{margin:0;color:var(--sw-muted);font-size:.9rem;line-height:1.65}.sw-promo{overflow:hidden;position:relative;border-radius:29px}.sw-promo-inner{display:grid;align-items:center;gap:15px;padding:30px}.sw-promo-one{background:linear-gradient(135deg,#1b1a48,#341772 60%,#6600ff);color:#fff}.sw-promo-two{background:linear-gradient(130deg,#f4efff,#eae0ff 75%,#f8f5ff);color:var(--sw-navy)}.sw-promo h2{max-width:610px;margin:8px 0 14px;font-size:clamp(1.9rem,4vw,3rem);line-height:1.13;letter-spacing:-.049em}.sw-promo p{max-width:620px;margin:0 0 22px;color:inherit;opacity:.85;line-height:1.7}.sw-promo .sw-kicker{color:inherit;opacity:.78}.sw-promo img{display:block;width:100%;max-height:330px;object-fit:contain}.sw-promo-one img{max-height:300px}.sw-promo-two .sw-promo-inner{min-height:300px}.sw-featured-card{min-height:280px}.sw-featured-card .sw-card-category{margin:0 0 12px;color:var(--sw-purple);font-size:.73rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.sw-featured-card h3{font-size:1.23rem}.sw-featured-card p{flex:1}.sw-article-image{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;margin-bottom:17px;border-radius:13px}.sw-article-meta{display:block;margin:0 0 11px;color:#68738a;font-size:.78rem}.sw-faq-search{display:block;width:100%;max-width:580px;margin-bottom:20px;padding:13px 16px;border:1px solid #cfc8df;border-radius:12px;background:#fff;color:var(--sw-navy)}.sw-faq-group{margin:20px 0}.sw-faq-group h3{margin:0 0 10px;color:#4a536d;font-size:.86rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.sw-faq-list{display:grid;gap:10px}.sw-faq-list details{border:1px solid var(--sw-border);border-radius:14px;background:#fff}.sw-faq-list summary{position:relative;cursor:pointer;padding:17px 48px 17px 19px;font-weight:700;list-style:none}.sw-faq-list summary::-webkit-details-marker{display:none}.sw-faq-list summary::after{content:"+";position:absolute;right:19px;top:12px;color:var(--sw-purple);font-size:1.5rem;font-weight:400}.sw-faq-list details[open] summary::after{content:"−"}.sw-faq-list p{margin:0;padding:0 19px 18px;color:var(--sw-muted);font-size:.92rem;line-height:1.76}.sw-quote{margin:0;padding:26px;border:1px solid var(--sw-border);border-radius:19px;background:#fff}.sw-quote blockquote{margin:0;color:#26314d;line-height:1.72}.sw-quote figcaption{margin-top:19px;color:#566176;font-size:.85rem}.sw-search-result{margin-top:30px}.sw-footer{background:#111b36;color:#d5dcef;padding:58px 0 23px}.sw-footer-grid{display:grid;gap:30px}.sw-footer .sw-brand{color:#fff!important}.sw-footer .sw-footer-brand p{max-width:310px;margin:17px 0;color:#bbc5db;font-size:.9rem;line-height:1.75}.sw-footer h2{margin:0 0 15px;color:#fff;font-size:.94rem}.sw-footer-nav{display:grid;gap:9px}.sw-footer-nav a,.sw-footer-contact{color:#cad3e8!important;font-size:.88rem}.sw-footer :is(.sw-footer-nav a,.sw-footer-contact):hover{color:#fff!important;text-decoration:underline!important}.sw-social{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.sw-social a{display:grid;place-items:center;width:39px;height:39px;border:1px solid #425070;border-radius:11px;color:#fff!important;transition:background .16s}.sw-social a:hover{background:#6600ff}.sw-social svg{width:20px;height:20px}.sw-bottom{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:44px;padding-top:20px;border-top:1px solid #33405f;color:#abb7cf;font-size:.78rem}.sw-page-hero{padding:58px 0 55px;background:linear-gradient(135deg,#f9f7ff,#eee7ff)}.sw-page-main{padding:45px 0 80px;background:#f8f8fc}.sw-document{max-width:920px;margin:auto;padding:clamp(25px,5vw,58px);border:1px solid var(--sw-border);border-radius:24px;background:#fff;box-shadow:0 18px 45px #16203d0a;overflow-wrap:anywhere}.sw-prose{color:#36415a;line-height:1.85}.sw-prose h2{margin:2.1em 0 .5em;color:var(--sw-navy);font-size:1.47rem;letter-spacing:-.025em}.sw-prose h3{margin:1.7em 0 .5em;color:var(--sw-navy)}.sw-prose a{color:var(--sw-purple)!important;text-decoration:underline!important}.sw-prose ul,.sw-prose ol{padding-left:1.5rem}.sw-prose li{margin:.4rem 0}.sw-prose blockquote{margin:1.6rem 0;padding:14px 19px;border-left:4px solid var(--sw-purple);border-radius:0 12px 12px 0;background:#f5f0ff}.sw-prose pre,.sw-prose table{display:block;max-width:100%;overflow-x:auto}.sw-toc{padding:19px 22px;border:1px solid #e5dcfc;border-radius:15px;background:#faf8ff}.sw-toc strong{display:block;margin-bottom:8px}.sw-toc ul{display:grid;grid-template-columns:1fr;gap:5px;margin:0;padding-left:20px}.sw-toc a{color:var(--sw-purple)!important;font-size:.86rem}.sw-blog-grid{display:grid;gap:20px}.sw-blog-card{overflow:hidden}.sw-blog-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.sw-blog-card-body{padding:25px}.sw-blog-card-body h2{margin:8px 0;font-size:1.2rem}.sw-blog-form{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.sw-blog-form :is(input,select){min-height:45px;flex:1 1 180px;padding:10px 13px;border:1px solid #cfc8df;border-radius:9px}.sw-blog-article img{height:auto;max-width:100%;border-radius:13px}.sw-blog-article .sw-lead{margin:25px 0}
@media(min-width:650px){.sw-grid,.sw-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sw-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.sw-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sw-toc ul{grid-template-columns:repeat(2,minmax(0,1fr))}.sw-promo-inner{grid-template-columns:1.2fr .8fr;padding:35px 45px}}
@media(min-width:900px){.sw-nav-links,.sw-nav-actions{display:flex}.sw-mobile-menu{display:none}.sw-hero-inner{grid-template-columns:1.1fr .9fr;gap:12px}.sw-grid,.sw-blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sw-steps{grid-template-columns:repeat(4,minmax(0,1fr))}.sw-footer-grid{grid-template-columns:1.55fr 1fr 1fr .8fr}.sw-promo-inner{padding:42px 60px}.sw-promo-two .sw-promo-inner{min-height:340px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sw-button,.sw-card,.sw-social a{transition:none}.sw-button:hover,.sw-card:hover{transform:none}}

/* Public colour theme and visual refinement. */
:root{--sw-primary:#6600ff;--sw-primary-hover:#5100ce;--sw-primary-soft:#f3edff;--sw-navy:#111b3c;--sw-surface:#fff;--sw-text:#111b3c;--sw-focus:#5100ce;--sw-purple:var(--sw-primary);--sw-purple-dark:var(--sw-primary-hover)}
body.sw-page{color:var(--sw-text);background:var(--sw-surface)}
.sw-page :is(.sw-header,.sw-card,.sw-faq-item,.sw-faq-list details){background-color:var(--sw-surface)}
.sw-page :is(.sw-soft,.sw-page-main){background-color:var(--sw-primary-soft)}
.sw-page :is(.sw-mark,.sw-button,.sw-step-number,.sw-carousel-controls>button){background-color:var(--sw-primary)}
.sw-page :is(.sw-kicker,.sw-eyebrow,.sw-card-link,.sw-text-link,.sw-step-icon,.sw-showcase-category,.sw-showcase-link){color:var(--sw-primary)}
.sw-page :is(.sw-button,.sw-social a,.sw-card,.sw-step,.sw-faq-list details){transition:color .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.sw-page :is(a,button,input,select,summary):focus-visible{outline-color:var(--sw-focus)}
.sw-page .sw-button:hover{background-color:var(--sw-primary-hover)}
.sw-page .sw-button-light{background:#fff;color:var(--sw-primary)!important}
.sw-page .sw-button-light:hover{background:var(--sw-primary-soft);color:var(--sw-primary-hover)!important}
.sw-page .sw-button-outline{border-color:color-mix(in srgb,var(--sw-primary) 35%,white);color:var(--sw-primary)!important}
.sw-page .sw-button-outline:hover{background:var(--sw-primary-soft);color:var(--sw-primary-hover)!important}
.sw-page .sw-header{border-color:color-mix(in srgb,var(--sw-primary) 13%,white)}
.sw-page .sw-mobile-items a:hover{background:var(--sw-primary-soft);color:var(--sw-primary)}
.sw-page .sw-hero{background:radial-gradient(circle at 80% 15%,color-mix(in srgb,var(--sw-primary) 16%,white) 0,transparent 38%),linear-gradient(135deg,#fff 0,var(--sw-primary-soft) 72%,#fff 100%)}
.sw-page .sw-hero::before{border-color:color-mix(in srgb,var(--sw-primary) 24%,white)}
.sw-page .sw-eyebrow,.sw-page .sw-search{border-color:color-mix(in srgb,var(--sw-primary) 25%,white)}
.sw-page .sw-hero h1 span{color:var(--sw-primary)}
.sw-page .sw-trust li::before{color:var(--sw-primary)}
.sw-page .sw-card:hover{border-color:color-mix(in srgb,var(--sw-primary) 46%,white)}
.sw-page .sw-icon-wrap,.sw-page .sw-step-number{background:var(--sw-primary-soft);color:var(--sw-primary)}
.sw-page .sw-step{border-color:color-mix(in srgb,var(--sw-primary) 18%,white);box-shadow:0 10px 30px color-mix(in srgb,var(--sw-primary) 8%,transparent)}
.sw-page .sw-step-icon{display:block;width:34px;height:34px;margin-bottom:20px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.sw-page .sw-step-number{position:absolute;right:22px;top:22px;display:grid;place-items:center;width:42px;height:42px;border-radius:14px;font-size:.8rem;font-weight:850}
.sw-page .sw-steps{counter-reset:none}
.sw-page .sw-step::before{content:none}
.sw-page .sw-step::after{content:"";position:absolute;z-index:1;top:50%;right:-19px;width:19px;border-top:2px dashed color-mix(in srgb,var(--sw-primary) 40%,white)}
.sw-page .sw-step:last-child::after{display:none}
.sw-page .sw-promo-one{background:linear-gradient(125deg,color-mix(in srgb,var(--sw-navy) 95%,var(--sw-primary)),color-mix(in srgb,var(--sw-primary) 74%,var(--sw-navy)) 68%,var(--sw-primary));box-shadow:0 20px 50px color-mix(in srgb,var(--sw-primary) 18%,transparent)}
.sw-page .sw-promo-two{background:radial-gradient(circle at 87% 15%,#fff 0,transparent 32%),linear-gradient(130deg,var(--sw-primary-soft),color-mix(in srgb,var(--sw-primary) 17%,white));border:1px solid color-mix(in srgb,var(--sw-primary) 17%,white);box-shadow:0 18px 42px color-mix(in srgb,var(--sw-primary) 9%,transparent)}
.sw-page .sw-promo-claim{font-size:1.18rem;font-weight:800;line-height:1.35;opacity:1}
.sw-page .sw-promo-points{display:grid;gap:7px;margin:-8px 0 23px;padding:0;list-style:none;color:var(--sw-text);font-size:.9rem}
.sw-page .sw-promo-points li::before{content:"✓";margin-right:9px;color:var(--sw-primary);font-weight:900}
.sw-page .sw-featured-card{min-height:0;align-self:stretch}
.sw-page .sw-featured-copy{display:block}
.sw-page .sw-featured-card .sw-card-category{margin:0 0 9px;color:var(--sw-primary);line-height:1.3}
.sw-page .sw-featured-card h3{margin:0;min-height:0;line-height:1.35}
.sw-page .sw-featured-copy>p:last-child{margin:13px 0 0;flex:none}
.sw-page .sw-featured-card .sw-card-link{margin-top:auto;padding-top:23px}
.sw-page .sw-quote{border-color:color-mix(in srgb,var(--sw-primary) 15%,white);box-shadow:0 12px 32px color-mix(in srgb,var(--sw-primary) 7%,transparent)}
.sw-page .sw-faq-search{border-color:color-mix(in srgb,var(--sw-primary) 35%,white)}
.sw-page .sw-faq-search:focus{outline:3px solid color-mix(in srgb,var(--sw-focus) 35%,transparent);outline-offset:2px}
.sw-page .sw-prose a,.sw-page .sw-toc a{color:var(--sw-primary)!important}
.sw-page .sw-prose blockquote,.sw-page .sw-toc{border-color:color-mix(in srgb,var(--sw-primary) 28%,white);background:var(--sw-primary-soft)}
.sw-page .sw-footer{background:var(--sw-navy)}
.sw-page .sw-footer .sw-brand--dark{color:#fff!important}
.sw-page .sw-footer .sw-mark{background:var(--sw-primary)}
.sw-page .sw-social a:hover{background:var(--sw-primary)}
.sw-page .sw-wordmark{display:inline-flex;gap:.16em;color:var(--sw-navy);font-weight:900;letter-spacing:-.04em}
.sw-page .sw-wordmark span:last-child{color:var(--sw-primary)}.sw-page .sw-brand--light .sw-wordmark span:first-child{color:var(--sw-navy)}.sw-page .sw-brand--light .sw-wordmark span:last-child{color:var(--sw-primary)}.sw-page .sw-brand--dark .sw-wordmark span:first-child{color:#fff}.sw-page .sw-brand--dark .sw-wordmark span:last-child{color:var(--sw-primary-on-dark,#C4B0FF)}
.sw-page .sw-logo{max-width:150px;max-height:42px;width:auto;height:auto;object-fit:contain}.sw-page .sw-brand--dark .sw-logo{padding:4px 8px;border-radius:8px;background:#fff}
.sw-page .sw-brand:has(.sw-wordmark){font-size:1.18rem}
.sw-page .sw-showcase-frame{position:relative;isolation:isolate;display:flex;min-height:420px;align-items:center;justify-content:center;overflow:hidden;padding:34px;border:1px solid color-mix(in srgb,var(--sw-primary) 18%,white);border-radius:32px;background:radial-gradient(ellipse at 22% 20%,color-mix(in srgb,var(--sw-primary) 22%,white),transparent 46%),linear-gradient(150deg,#fff,var(--sw-primary-soft));box-shadow:0 30px 80px color-mix(in srgb,var(--sw-primary) 14%,transparent)}
.sw-page .sw-showcase-frame::before,.sw-page .sw-showcase-frame::after{content:"";position:absolute;z-index:-1;border-radius:50%;background:color-mix(in srgb,var(--sw-primary) 12%,white)}
.sw-page .sw-showcase-frame::before{width:250px;height:250px;right:-75px;top:-90px}
.sw-page .sw-showcase-frame::after{width:170px;height:170px;left:-65px;bottom:-70px}
.sw-page .sw-showcase-art{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover;opacity:.16}
.sw-page .sw-showcase-slides{width:min(100%,430px)}
.sw-page .sw-showcase-slide{position:relative;min-height:290px;padding:28px;border:1px solid color-mix(in srgb,var(--sw-primary) 17%,white);border-radius:23px;background:color-mix(in srgb,#fff 94%,var(--sw-primary));box-shadow:0 22px 60px color-mix(in srgb,var(--sw-navy) 17%,transparent);animation:sw-slide-in .35s ease both}
.sw-page .sw-showcase-slide[hidden]{display:none}
.sw-page .sw-showcase-icon{display:grid;place-items:center;width:56px;height:56px;margin-bottom:17px;border-radius:18px;background:var(--sw-primary-soft);color:var(--sw-primary)}
.sw-page .sw-showcase-icon svg{width:31px;height:31px}
.sw-page .sw-showcase-empty .sw-showcase-icon svg{stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sw-page .sw-showcase-category{margin:0 0 7px;font-size:.72rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.sw-page .sw-showcase-slide h2{margin:0;font-size:clamp(1.35rem,2.8vw,2rem);line-height:1.2;letter-spacing:-.04em;color:var(--sw-navy)}
.sw-page .sw-showcase-description{min-height:3.2em;margin:12px 0 20px;color:#526079;font-size:.91rem;line-height:1.65}
.sw-page .sw-showcase-link{display:inline-flex;gap:8px;align-items:center;font-weight:850}
.sw-page .sw-carousel-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:22px}
.sw-page .sw-carousel-controls>button{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;color:#fff;font-size:1.15rem;cursor:pointer}
.sw-page .sw-carousel-controls>button:hover{background:var(--sw-primary-hover)}
.sw-page .sw-carousel-dots{display:flex;align-items:center;gap:9px}
.sw-page .sw-carousel-dots button{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:color-mix(in srgb,var(--sw-primary) 28%,white);cursor:pointer}
.sw-page .sw-carousel-dots button[aria-pressed="true"]{width:26px;border-radius:10px;background:var(--sw-primary)}
.sw-page .sw-showcase-empty{text-align:center;color:var(--sw-navy);font-weight:800}
.sw-page .sw-faq-page{max-width:900px}
.sw-page .sw-faq-label{display:block;margin-bottom:8px;color:var(--sw-primary);font-size:.8rem;font-weight:800}
.sw-page .sw-faq-list{gap:13px}
.sw-page .sw-faq-item{overflow:hidden;border-color:color-mix(in srgb,var(--sw-primary) 16%,white);box-shadow:0 8px 25px color-mix(in srgb,var(--sw-navy) 5%,transparent)}
.sw-page .sw-faq-item summary{color:var(--sw-navy);font-size:1rem;line-height:1.45;transition:color .15s ease}
.sw-page .sw-faq-item summary:hover,.sw-page .sw-faq-item summary:focus-visible,.sw-page .sw-faq-item[open] summary{color:var(--sw-navy)}
.sw-page .sw-faq-item summary:focus-visible{outline-color:var(--sw-focus);outline-offset:3px}
.sw-page .sw-faq-item summary::after{color:var(--sw-primary);transition:transform .18s ease}
.sw-page .sw-faq-item[open] summary::after{transform:rotate(45deg)}
.sw-page .sw-faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s ease}
.sw-page .sw-faq-item[open] .sw-faq-answer{grid-template-rows:1fr}
.sw-page .sw-faq-answer>div{overflow:hidden}
.sw-page .sw-faq-answer p{margin:0;padding:0 19px 19px;color:#45516a;line-height:1.78}
.sw-service-page{--sw-service-primary:var(--sw-primary);--sw-service-focus:var(--sw-focus)}
.sw-service-page [class~="text-[#6600FF]"]{color:var(--sw-primary)!important}
.sw-service-page [class~="bg-[#6600FF]"]{background-color:var(--sw-primary)!important}
.sw-service-page [class~="bg-[#6600FF]/5"]{background-color:color-mix(in srgb,var(--sw-primary) 5%,transparent)!important}
.sw-service-page [class~="bg-[#6600FF]/10"]{background-color:color-mix(in srgb,var(--sw-primary) 10%,transparent)!important}
.sw-service-page [class~="border-[#6600FF]"]{border-color:var(--sw-primary)!important}
.sw-service-page [class~="border-[#6600FF]/15"]{border-color:color-mix(in srgb,var(--sw-primary) 15%,transparent)!important}
.sw-service-page [class~="border-[#6600FF]/20"]{border-color:color-mix(in srgb,var(--sw-primary) 20%,transparent)!important}
.sw-service-page [class~="hover:text-[#6600FF]"]:hover,.sw-service-page [class~="group-hover:text-[#6600FF]"]{color:var(--sw-primary)!important}
.sw-service-page [class~="hover:bg-[#6600FF]"]:hover{background-color:var(--sw-primary-hover)!important}
.sw-service-page [class~="hover:bg-[#6600FF]/5"]:hover{background-color:color-mix(in srgb,var(--sw-primary) 5%,transparent)!important}
.sw-service-page [class~="hover:border-[#6600FF]"]:hover,.sw-service-page [class~="hover:border-[#6600FF]/40"]:hover{border-color:color-mix(in srgb,var(--sw-primary) 40%,white)!important}
.sw-service-page [class~="focus:border-[#6600FF]"]:focus{border-color:var(--sw-primary)!important}
.sw-service-page [class~="focus-visible:outline-[#6600FF]"]:focus-visible{outline-color:var(--sw-focus)!important}
.sw-service-page [class~="focus:ring-[#6600FF]/15"]:focus{--tw-ring-color:color-mix(in srgb,var(--sw-focus) 15%,transparent)!important}
@keyframes sw-slide-in{from{opacity:0;transform:translateX(9px)}to{opacity:1;transform:translateX(0)}}
@media(min-width:540px){.sw-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:900px){.sw-step:not(:last-child)::after{display:block}.sw-steps{grid-template-columns:repeat(4,minmax(0,1fr))}.sw-step{min-height:260px}.sw-step::after{right:-19px}.sw-showcase-frame{min-height:520px}.sw-promo-two .sw-promo-inner{min-height:360px}}
@media(max-width:899px){.sw-page .sw-step::after{display:none}}
@media(prefers-reduced-motion:reduce){.sw-page .sw-showcase-slide{animation:none}.sw-page .sw-faq-answer,.sw-page .sw-faq-item summary,.sw-page .sw-faq-item summary::after{transition:none}}

/* Keep the public hero and its controls readable at narrow viewport widths. */
.sw-page .sw-shell{min-width:0}
.sw-page .sw-hero{overflow:visible;padding:clamp(30px,4vw,48px) 0 clamp(42px,5vw,64px);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
.sw-page .sw-hero::before{right:clamp(8px,3vw,38px);bottom:18px;width:clamp(120px,20vw,260px);height:clamp(120px,20vw,260px)}
.sw-page .sw-hero-inner{grid-template-columns:minmax(0,1fr);gap:clamp(28px,5vw,42px)}
.sw-page .sw-hero-inner>div{min-width:0}
.sw-page .sw-hero h1{max-width:19ch;margin:0 0 16px;font-size:clamp(2.25rem,6.2vw,5.15rem);line-height:1.08;text-wrap:balance;overflow-wrap:anywhere}
.sw-page .sw-lead{max-width:62ch;overflow-wrap:anywhere}
.sw-page .sw-hero-actions .sw-button{flex:1 1 220px;max-width:100%;white-space:normal;text-align:center}
.sw-page .sw-promo-one .sw-kicker{color:#fff;opacity:1}
.sw-page .sw-promo{overflow:visible}
.sw-page .sw-promo-inner{grid-template-columns:minmax(0,1fr);gap:24px;padding:clamp(22px,5vw,38px)}
.sw-page .sw-promo-inner>div{min-width:0}
.sw-page .sw-promo img{width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain;border-radius:16px}
.sw-page .sw-showcase-frame{min-width:0;min-height:0;overflow:visible;padding:clamp(16px,4vw,30px)}
.sw-page .sw-showcase-frame::before{top:12px;right:12px}
.sw-page .sw-showcase-frame::after{bottom:12px;left:12px}
.sw-page .sw-showcase-art{width:100%;height:100%;object-fit:contain;pointer-events:none}
.sw-page .sw-showcase-slides,.sw-page .sw-showcase-slide{min-width:0;width:100%}
.sw-page .sw-showcase-slide{min-height:0;padding:clamp(18px,5vw,28px);overflow-wrap:anywhere}
.sw-page .sw-showcase-description{min-height:0;overflow-wrap:anywhere}
.sw-page .sw-carousel-controls{flex-wrap:wrap;gap:12px}
.sw-page .sw-carousel-dots{flex-wrap:wrap;justify-content:center}
.sw-page .sw-promo h2,.sw-page .sw-promo p{overflow-wrap:anywhere}
@media(min-width:650px){.sw-page .sw-promo-inner{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}}
@media(min-width:900px){.sw-page .sw-hero-inner{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px}.sw-page .sw-showcase-frame{min-height:520px;padding:30px}.sw-page .sw-promo-two .sw-promo-inner{min-height:360px}}
@media(max-width:480px){.sw-page .sw-shell{width:calc(100% - 32px)}.sw-page .sw-hero-actions{display:grid;grid-template-columns:minmax(0,1fr)}.sw-page .sw-hero-actions .sw-button{width:100%;min-width:0}.sw-page .sw-search{display:grid;grid-template-columns:minmax(0,1fr) auto;max-width:100%;min-width:0}.sw-page .sw-search label{grid-column:1/-1}.sw-page .sw-search input{grid-column:1;min-width:0;width:100%}.sw-page .sw-search button{grid-column:2;min-width:0;padding-inline:12px}.sw-page .sw-showcase-frame{border-radius:22px}.sw-page .sw-carousel-controls{gap:9px}.sw-page .sw-carousel-dots{gap:6px}}
@media(max-width:359px){.sw-page .sw-search{grid-template-columns:minmax(0,1fr)}.sw-page .sw-search input,.sw-page .sw-search button{grid-column:1;width:100%}.sw-page .sw-carousel-controls{gap:8px}.sw-page .sw-carousel-controls>button{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.sw-page .sw-button{transition:none}.sw-page .sw-button:hover,.sw-page .sw-button:active{transform:none}}

/* One authoritative public CTA cascade: link states and child labels follow each variant. */
body:is(.sw-page, .sw-service-page) a.sw-button:not(.sw-button-outline):not(.sw-button-light):is(:link, :visited),
body:is(.sw-page, .sw-service-page) button.sw-button:not(.sw-button-outline):not(.sw-button-light),
body:is(.sw-page, .sw-service-page) input.sw-button:not(.sw-button-outline):not(.sw-button-light) {
    border-color: var(--sw-primary);
    background-color: var(--sw-primary);
    color: #fff !important;
    white-space: normal;
}

body:is(.sw-page, .sw-service-page) a.sw-button:not(.sw-button-outline):not(.sw-button-light):is(:hover, :focus-visible, :active),
body:is(.sw-page, .sw-service-page) button.sw-button:not(.sw-button-outline):not(.sw-button-light):is(:hover, :focus-visible, :active),
body:is(.sw-page, .sw-service-page) input.sw-button:not(.sw-button-outline):not(.sw-button-light):is(:hover, :focus-visible, :active) {
    border-color: var(--sw-primary-hover);
    background-color: var(--sw-primary-hover);
    color: #fff !important;
}

body:is(.sw-page, .sw-service-page) a.sw-button-outline:is(:link, :visited),
body:is(.sw-page, .sw-service-page) button.sw-button-outline,
body:is(.sw-page, .sw-service-page) input.sw-button-outline {
    border-color: var(--sw-primary);
    background-color: #fff;
    color: var(--sw-primary) !important;
}

body:is(.sw-page, .sw-service-page) a.sw-button-outline:is(:hover, :focus-visible, :active),
body:is(.sw-page, .sw-service-page) button.sw-button-outline:is(:hover, :focus-visible, :active),
body:is(.sw-page, .sw-service-page) input.sw-button-outline:is(:hover, :focus-visible, :active) {
    border-color: var(--sw-primary-hover);
    background-color: var(--sw-primary-hover);
    color: #fff !important;
}

body:is(.sw-page, .sw-service-page) a.sw-button-light:is(:link, :visited),
body:is(.sw-page, .sw-service-page) button.sw-button-light,
body:is(.sw-page, .sw-service-page) input.sw-button-light {
    border-color: #fff;
    background-color: #fff;
    color: var(--sw-primary) !important;
}

body:is(.sw-page, .sw-service-page) a.sw-button-light:is(:hover, :focus-visible, :active),
body:is(.sw-page, .sw-service-page) button.sw-button-light:is(:hover, :focus-visible, :active),
body:is(.sw-page, .sw-service-page) input.sw-button-light:is(:hover, :focus-visible, :active) {
    border-color: var(--sw-primary-soft);
    background-color: var(--sw-primary-soft);
    color: var(--sw-primary-hover) !important;
}

body:is(.sw-page, .sw-service-page) .sw-promo-one a.sw-button-light:is(:link, :visited),
body:is(.sw-page, .sw-service-page) .sw-promo-one button.sw-button-light {
    border-color: #fff;
    background-color: #fff;
    color: var(--sw-primary-hover) !important;
}

body:is(.sw-page, .sw-service-page) .sw-promo-one a.sw-button-light:is(:hover, :focus-visible, :active),
body:is(.sw-page, .sw-service-page) .sw-promo-one button.sw-button-light:is(:hover, :focus-visible, :active) {
    border-color: var(--sw-primary-soft);
    background-color: var(--sw-primary-soft);
    color: var(--sw-primary-hover) !important;
}

body:is(.sw-page, .sw-service-page) a.sw-button :is(span, svg),
body:is(.sw-page, .sw-service-page) button.sw-button :is(span, svg),
body:is(.sw-page, .sw-service-page) input.sw-button :is(span, svg) {
    color: inherit !important;
}

body:is(.sw-page, .sw-service-page) a.sw-button:focus-visible,
body:is(.sw-page, .sw-service-page) button.sw-button:focus-visible,
body:is(.sw-page, .sw-service-page) input.sw-button:focus-visible {
    outline: 3px solid var(--sw-navy);
    outline-offset: 3px;
}

body:is(.sw-page, .sw-service-page) .sw-promo-one a.sw-button:focus-visible,
body:is(.sw-page, .sw-service-page) .sw-promo-one button.sw-button:focus-visible {
    outline-color: #fff;
}

body:is(.sw-page, .sw-service-page) a.sw-button:is(:disabled, [aria-disabled="true"]),
body:is(.sw-page, .sw-service-page) button.sw-button:is(:disabled, [aria-disabled="true"]),
body:is(.sw-page, .sw-service-page) input.sw-button:is(:disabled, [aria-disabled="true"]) {
    border-color: #9ca3af;
    background-color: #e5e7eb;
    color: #374151 !important;
    cursor: not-allowed;
    box-shadow: none;
    transform: none;
}

body:is(.sw-page, .sw-service-page) .sw-promo-one .sw-kicker {
    color: #fff;
    opacity: 1;
}

.sw-search-suggestions { position: relative; min-width: 0; flex: 1 1 18rem; }
.sw-search-suggestions > input { width: 100%; }
.sw-suggestion-list { position: absolute; z-index: 20; top: calc(100% + .35rem); left: 0; right: 0; max-height: 22rem; overflow: auto; margin: 0; padding: .35rem; list-style: none; border: 1px solid var(--sw-border, #dbe2ea); border-radius: .85rem; background: var(--sw-surface, #fff); box-shadow: 0 12px 32px #17255424; }
.sw-suggestion-list a { display: block; padding: .65rem .75rem; border-radius: .55rem; color: var(--sw-text, #172033); text-decoration: none; }
.sw-suggestion-list a:hover, .sw-suggestion-list a:focus-visible, .sw-suggestion-list a[aria-selected="true"] { background: var(--sw-soft, #f3efff); outline: 2px solid var(--sw-primary, #6600ff); outline-offset: -2px; }
.sw-suggestion-list small { display: block; margin-top: .15rem; color: var(--sw-muted, #526071); }
.sw-suggestion-status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }


.sw-button-pill {
    border-radius: 9999px;
}

.sw-service-page .sw-header .sw-nav-links a,
.sw-service-page .sw-header .sw-nav-actions a:not(.sw-button),
.sw-service-page .sw-mobile-items a {
    color: inherit;
}
